1f4649a4957db091ea1b19ab107888a6bf0f071b
[external/binutils.git] / gdb / ChangeLog
1 2009-11-19  Pedro Alves  <pedro@codesourcery.com>
2
3         * breakpoint.c (breakpoint_address_bits): Visit all locations'
4         gdbarchs, not the breakpoint's gdbarch.
5
6 2009-11-18  Vladimir Prus  <vladimir@codesourcery.com>
7
8         * cli/cli-script.c (process_next_line): Recognize 'end'
9         even when the line has leading space and we're not parsing
10         commands.
11
12 2009-11-18  Tom Tromey  <tromey@redhat.com>
13
14         * symtab.c (symbol_set_names): Correctly set 'name' on symbol when
15         lookup name differs.
16
17 2009-11-18  Tristan Gingold  <gingold@adacore.com>
18
19         * machoread.c (macho_oso_symfile): Fix typo.  Add comments.
20
21 2009-11-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
22
23         * dbxread.c (set_namestring): Remove cast to unsigned.  Check N_STRX
24         overflow.
25
26 2009-11-17  Nathan Sidwell  <nathan@codesourcery.com>
27
28         * features/m68k-core.xml: New file.
29
30 2009-11-17  Nathan Sidwell  <nathan@codesourcery.com>
31
32         * regformats/reg-cf.dat: New file.
33
34 2009-11-17  Daniel Jacobowitz  <dan@codesourcery.com>
35
36         * m68k-tdep.c (m68k_register_name): Check fpregs_present.
37         (m68k_gdbarch_init): Remove a duplicate of set_gdbarch_fp0_regnum.
38
39 2009-11-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
40
41         Fix wrong debug output with `set debug infrun 1'.
42         * gdb/infrun.c (handle_inferior_event <debug_infrun>): New variable
43         old_chain.  Temporarily switch INFERIOR_PTID.
44         * target.h (target_stopped_by_watchpoint): Extend the comment.
45         (target_stopped_data_address): New comment.
46
47 2009-11-16  Tom Tromey  <tromey@redhat.com>
48
49         * xcoffread.c (scan_xcoff_symtab): Update.
50         * symfile.h (add_psymbol_to_list): Update prototype.
51         * symfile.c (add_psymbol_to_bcache): Add copy_name argument.
52         (add_psymbol_to_list): Likewise.
53         * stabsread.c (define_symbol): Update.
54         * mdebugread.c (parse_partial_symbols): Update.
55         (handle_psymbol_enumerators): Update.
56         (new_symbol): Update.
57         * dbxread.c (read_dbx_symtab): Update.
58         * coffread.c (process_coff_symbol): Update.
59         * symtab.h (prim_record_minimal_symbol_full): Declare.
60         (SYMBOL_SET_NAMES): Add copy_name argument.
61         * symtab.c (struct demangled_name_entry): New struct.
62         (hash_demangled_name_entry): New function.
63         (eq_demangled_name_entry): Likewise.
64         (create_demangled_names_hash): Use new functions.
65         (symbol_set_names): Use struct demangled_name_entry.  Add
66         copy_name argument.
67         * minsyms.c (prim_record_minimal_symbol_full): New function.
68         (prim_record_minimal_symbol_and_info): Use it.
69         * elfread.c (record_minimal_symbol): Add name_len and copy_name
70         arguments.  Call prim_record_minimal_symbol_full.
71         (elf_symtab_read): Add copy_names argument.
72         (elf_symfile_read): Update calls to elf_symtab_read.
73         * dwarf2read.c (add_partial_symbol): Don't copy symbol names.
74         (load_partial_dies): Likewise.
75         (new_symbol): Likewise.
76         * cp-namespace.c (check_one_possible_namespace_symbol): Don't save
77         name on the obstack.  Update call to SYMBOL_SET_NAMES.
78
79 2009-11-15  Pedro Alves  <pedro@codesourcery.com>
80
81         * infrun.c (handle_inferior_event): When handling a fork or vfork
82         event, check if the bpstat causes a stop, instead of if it
83         explains the signal.
84         * breakpoint.c (bpstat_causes_stop): New.
85         * breakpoint.h (bpstat_causes_stop): Declare.
86
87 2009-11-15  Pedro Alves  <pedro@codesourcery.com>
88
89         * breakpoint.c (should_be_inserted): Don't insert breakpoints if
90         the pspace doesn't allow breakpoints.
91         (insert_breakpoint_locations): Remove waiting_for_vfork_done
92         special case.  Expect watchpoints that shouldn't be inserted, to
93         not be inserted.
94         * progspace.h (struct program_space) <breakpoints_not_allowed>:
95         New field.
96         * infrun.c (handle_inferior_event): Clear it.
97         * linux-nat.c (linux_child_follow_fork): Set it.
98
99 2009-11-13  Doug Evans  <dje@google.com>
100
101         * dcache.c (dcache_hit, dcache_read_line): Tweak comments.
102         (dcache_peek_byte, dcache_init, dcache_xfer_memory): Ditto.
103         * target.c (memory_xfer_partial): Tweak comments.
104         (target_xfer_partial, target_write_memory): Add comment.
105         (target_read_partial): Remove note from 2003-10-21.
106         (target_read, target_write): Add comments.
107
108 2009-11-13  Daniel Jacobowitz  <dan@codesourcery.com>
109
110         * inline-frame.c (find_inline_frame_state): Check for changed PC
111         here...
112         (inline_frame_sniffer): ... not here.
113
114 2009-11-13  Daniel Jacobowitz  <dan@codesourcery.com>
115
116         * ui-file.c (stdio_file_read): Call gdb_select before read.
117
118 2009-11-13  Maciej W. Rozycki  <macro@codesourcery.com>
119
120         * mips-tdep.c (mips_insn16_frame_this_id): Mark the outermost
121         frame.
122         (mips_insn32_frame_this_id): Likewise.
123
124 2009-11-13  Maciej W. Rozycki  <macro@codesourcery.com>
125
126         * elfread.c (elf_symtab_read): Only mark a minimal symbol as
127         special if it actually exists.  Merge the checks for this
128         conditions.
129
130 2009-11-13  Kazu Hirata  <kazu@codesourcery.com>
131             Maxim Kuvyrkov  <maxim@codesourcery.com>
132
133         * remote-fileio.c (remote_fileio_request): Send Ctrl-C if it is
134         pending.
135         * remote-fileio.h: Update the prototype for remote_fileio_request.
136         * remote.c (struct remote_state): Add ctrlc_pending_p.
137         (remote_open_1): Clear ctrlc_pending_p.
138         (remote_stop_as): Set ctrlc_pending_p to 1.
139         (remote_wait_as): Pass ctrlc_pending_p to remote_fileio_request.
140
141 2009-11-13  Daniel Jacobowitz  <dan@codesourcery.com>
142
143         * arm-tdep.c (arm_skip_stub): Recognize RealView veneer functions.
144
145 2009-11-13  Maciej W. Rozycki  <macro@codesourcery.com>
146
147         * breakpoint.c (update_watchpoint): Only fiddle with frames for
148         local watchpoints.
149
150 2009-11-13  Pedro Alves  <pedro@codesourcery.com>
151
152         * infrun.c (handle_inferior_event): Set stop_print_frame on
153         TARGET_WAITKIND_LOADED events, if stopping on solib-events.
154
155 2009-11-13  Doug Evans  <dje@google.com>
156
157         * dcache.c (dcache_block): Replace member newer with next,prev.
158         (dcache_struct): Delete member newest.
159         (block_func): New typedef.
160         (append_block, remove_block, for_each_block): New functions.
161         (invalidate_block, free_block): New functions.
162         (dcache_invalidate): Update
163         (dcache_invalidate_line, dcache_alloc): Update to use new list
164         accessors.
165         (dcache_free): Ditto.  Fix memory leak.
166
167 2009-11-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
168
169         * python/py-prettyprint.c (print_string_repr): Suppress
170         address printing
171         
172 2009-11-13  Tristan Gingold  <gingold@adacore.com>
173
174         * avr-tdep.c (avr_push_dummy_call): Fix endianness issue and avoid
175         overlap between returned structure and return address/parameters.
176
177 2009-11-12  Daniel Jacobowitz  <dan@codesourcery.com>
178
179         * remote-fileio.c (remote_fileio_func_read): Limit console
180         reads to 16K.
181
182 2009-11-12  Daniel Jacobowitz  <dan@codesourcery.com>
183             Paul Brook  <paul@codesourcery.com>
184
185         * c-typeprint.c (c_type_print_base): Skip artificial fields.
186         Use get_vptr_fieldno to skip the vtable pointer.
187         * dwarf2read.c (dwarf2_add_field): Set FIELD_ARTIFICIAL on artificial
188         fields.
189         (dwarf2_add_member_fn): Complain about virtual member functions
190         without DW_AT_vtable_elem_location and force TYPE_CPLUS_DYNAMIC.
191         * gdbtypes.c (get_vptr_fieldno): Update comment.
192         * gdbtypes.h (struct cplus_struct_type): Add is_dynamic.
193         (TYPE_CPLUS_DYNAMIC): New macro.
194         * gnu-v3-abi.c (gnuv3_dynamic_class): New.
195         (gnuv3_get_vtable): Rewrite to use gnuv3_dynamic_class.  Move higher.
196         (gnuv3_rtti_type, gnuv3_get_virtual_fn, gnuv3_baseclass_offset): Use
197         gnuv3_get_vtable.
198         * varobj.c (cplus_class_num_children, cplus_describe_child): Skip
199         artificial fields.  Use get_vptr_fieldno to skip the vtable pointer.
200
201 2009-11-12  Paul Brook  <paul@codesourcery.com>
202             Daniel Jacobowitz  <dan@codesourcery.com>
203
204         * dwarf2read.c (dwarf2_add_member_fn): Calculate virtual function
205         offset for classes without DW_AT_containing_type.
206
207 2009-11-12  Paul Brook  <paul@codesourcery.com>
208             Daniel Jacobowitz  <dan@codesourcery.com>
209
210         * dwarf2read.c (struct field_info): Add baseclasses.
211         (dwarf2_add_field): Add base classes to a separate list.
212         (dwarf2_attach_fields_to_type): Merge base classes and fields.
213
214 2009-11-12  Daniel Jacobowitz  <dan@codesourcery.com>
215
216         * dwarf2read.c (process_psymtab_comp_unit): Initialize per_cu backlink
217         at the same time as the forward link.
218         (load_partial_comp_unit): Initialize per_cu links before calling
219         init_cu_die_reader.
220
221 2009-11-11  Paul Pluzhnikov  <ppluzhnikov@google.com>
222
223         PR gdb/10838
224         * linux-thread-db.c (thread_db_info): New member.
225         (disable_thread_event_reporting): Call td_ta_clear_event.
226
227 2009-11-11  Keith Seitz  <keiths@redhat.com>
228
229         * linespec.c (lookup_prefix_sym): Lookup the symbol
230         in both STRUCT_DOMAIN and VAR_DOMAIN.
231
232 2009-11-11  Michael Snyder  <msnyder@vmware.com>
233
234         * darwin-nat-info.c: Update copyright.
235         * dbxread.c: Ditto.
236         * gdbarch.sh: Ditto.
237         * gdbarch.c: Ditto.
238         * gdbarch.h: Ditto.
239         * inline-frame.c: Ditto.
240         * inline-frame.h: Ditto.
241         * s390-nat.c: Ditto.
242
243 2009-11-11  Michael Snyder  <msnyder@vmware.com>
244
245         * findvar.c (top level): Fix and add comments.
246
247 2009-11-10  Keith Seitz  <keiths@redhat.com>
248
249         * c-exp.y (operator_stoken): New function.
250         (OPERATOR): New token.
251         (NEW): New token.
252         (DELETE): New token.
253         (operator): New rule.
254         (name): Add operator.
255         (ident_tokens): Add "new", "delete", and "operator".
256         * gdbtypes.c (rank_one_type): Don't complain about
257         void pointer conversion badness if both types are
258         void pointers.
259
260 2009-11-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
261
262         * symfile.c (separate_debug_file_exists): Change parameter parent_name
263         to parent_objfile.  New variables parent_stat and abfd_stat.  Call
264         strcmp and then bfd_stat functions to verify if NAME matches.
265         (find_separate_debug_file): Update the passed parameter at caller.
266
267 2009-11-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
268
269         * objfiles.c (objfile_relocate): Update also the field psymtabs_addrmap.
270
271 2009-11-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
272
273         * configure.ac: Call ACX_LARGEFILE.
274         * aclocal.m4: Call m4_include for ../config/largefile.m4 and
275         ../config/plugins.m4.
276         * configure: Regenerate.
277         * config.in: Regenerate.
278
279 2009-11-10  Keith Seitz  <keiths@redhat.com>
280
281         * c-exp.y: Add new rule for resolving method overloads.
282         * eval.c (make_params): New function.
283         (free_param_types): New function.
284         (evaluate_subexp_standard): Pass expect_type to value_aggregate_elt.
285         Handle case TYPE_INSTANCE.
286         (evaluate_subexp_for_address): Pass expect_type to value_aggregate_elt.
287         * expression.h (enum exp_opcode): Add TYPE_INSTANCE.
288         (compare_parameters): Add declaration.
289         * parse.c (operator_length_standard): Add TYPE_INSTANCE.
290         * valops.c (value_aggregate_elt): Add new expect_type parameter.
291         Pass expect_type to value_struct_elt_for_reference.
292         (value_struct_elt_for_reference): Add expect_type parameter and use
293         compare_parameters.
294         Check for overload matches with and without artificial parameters.
295         Skip artificial methods.
296         (compare_parameters): New function.
297         * value.h (value_aggregate_elt): Add new expect_type parameter.
298
299 2009-11-10  Joseph Myers  <joseph@codesourcery.com>
300
301         * solib-svr4.c (enable_break): Call
302         gdbarch_convert_from_func_ptr_addr on results of looking up
303         fallback symbol names.
304
305 2009-11-10  Daniel Gutson  <dgutson@codesourcery.com>
306
307         * procfs.c (procfs_do_thread_registers): Added a call to fetch
308         register values before saving them in the core file
309         through the gcore command.
310         (procfs_corefile_thread_callback): Removed the backup of
311         inferior_ptid before calling procfs_do_thread_registers since
312         the function already saves and restores it before returning.
313
314 2009-11-10  Michael Snyder  <msnyder@vmware.com>
315
316         * dcache.c (dcache_invalidate_line): Remove block from used list
317         when adding it to freed list.
318
319 2009-11-10  Michael Snyder  <msnyder@vmware.com>
320
321         * dcache.c: Fix typo, shorten long lines in comment.
322
323 2009-11-10  Tristan Gingold  <gingold@adacore.com>
324
325         * avr-tdep.c: Add AVR_PSEUDO_PC_REGNUM and AVR_NUM_PSEUDO_REGS.
326         (struct gdbarch_tdep): Add void_type, func_void_type and pc_type
327         fields.
328         (avr_register_name): Add "pc" name, renames "PC" to "PC2".
329         (avr_register_type): Handle AVR_PSEUDO_PC_REGNUM.
330         (avr_write_pc): Fix indentation.
331         (avr_pseudo_register_read): New function.
332         (avr_pseudo_register_write): New function.
333         (avr_frame_prev_register): Handle AVR_PSEUDO_PC_REGNUM.
334         (avr_gdbarch_init): Create types for pc.  Register pseudo regs.
335
336 2009-11-10  Tristan Gingold  <gingold@adacore.com>
337
338         * avr-tdep.c (avr_integer_to_address): New function.
339         (avr_gdbarch_init): Set integer_to_address.
340
341 2009-11-10  Tristan Gingold  <gingold@adacore.com>
342
343         * avr-tdep.c (avr_skip_prologue): First try to skip prologue
344         using skip_prologue_using_sal.
345
346 2009-11-10  Tristan Gingold  <gingold@adacore.com>
347
348         * avr-tdep.c (avr_extract_return_value): Remove.
349         (avr_return_value): Mostly rewritten.  Fix handling for structures.
350         (avr_push_dummy_call): Handle struct_return.
351
352 2009-11-10  Tristan Gingold  <gingold@adacore.com>
353
354         * avr-tdep.c (avr_scan_prologue): Decode instructions used for
355         small stack allocation.
356         Adjust code for prologue that don't write SP.
357
358 2009-11-10  Tristan Gingold  <gingold@adacore.com>
359
360         * avr-tdep.c (avr_make_saddr): Return 0 for NULL.
361
362 2009-11-10  Tristan Gingold  <gingold@adacore.com>
363
364         * avr-tdep.c (avr_dwarf_reg_to_regnum): New function.
365         (avr_gdbarch_init): Call set_gdbarch_dwarf2_reg_to_regnum.
366
367 2009-11-09  Sebastien Granjoux  <seb.sfo@free.fr>
368
369         PR mi/9583:
370         * symtab.c (find_line_symtab, append_exact_match_to_sals)
371         (expand_line_sal): Use full filename when setting breakpoints if
372         available
373
374 2009-11-09  Cary Coutant  <ccoutant@google.com>
375
376         * dwarf2read.c (read_import_statement): Don't clobber original cu.
377
378 2009-11-09  Tom Tromey  <tromey@redhat.com>
379
380         * python/python.c (execute_gdb_command): Copy the argument text.
381
382 2009-11-06  Vladimir Prus  <vladimir@codesourcery.com>
383
384         * m68k-tdep.c (m68k_convert_register_p): Correct
385         messup.
386
387 2009-11-06  Vladimir Prus  <vladimir@codesourcery.com>
388
389         * m68k-tdep.c (m68k_convert_register_p): Compare with
390         the actual type of fp registers, not one of the possible
391         values.
392
393 2009-11-06  Vladimir Prus  <vladimir@codesourcery.com>
394
395         Prevent program output from mix with "^running".
396
397         gdb/
398         * mi/mi-interp.c (mi_on_resume): Output token
399         and "^running" together, so that nothing else gets
400         in between.
401
402 2009-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
403
404         * dwarf2read.c (struct dwarf2_cu): Remove ranges_offset and
405         has_ranges_offset.
406         (struct partial_die_info): Remove language, has_stmt_list, dirname,
407         and line_offset.
408         (dwarf2_build_include_psymtabs): Take a die_info.  Handle a missing
409         line table.
410         (dwarf2_get_pc_bounds): Take PST argument.  Pass it
411         to dwarf2_ranges_read.  Update all callers.
412         (init_cu_die_reader): Move earlier.
413         (dwarf2_find_base_address): New function.
414         (process_psymtab_comp_unit): Rewrite to use a full DIE for the
415         compilation unit.  Use dwarf2_get_pc_bounds and
416         dwarf2_find_base_address.
417         (load_comp_unit): Rewrite to use a full DIE for the compilation unit.
418         (process_full_comp_unit): Use dwarf2_find_base_address.
419         (read_partial_die): Remove support for attributes only used
420         in the compilation unit DIE.
421         * symfile.c (allocate_psymtab): Make FILENAME const.
422         (start_psymtab_common): Likewise.
423         * symfile.h (allocate_psymtab, start_psymtab_common): Update
424         prototypes.
425
426 2009-11-05  Tom Tromey  <tromey@redhat.com>
427
428         * symmisc.c (print_symbol_bcache_statistics): Print filename cache
429         statistics.
430         (print_objfile_statistics): Likewise.
431         * symfile.c (reread_symbols): Initialize filename_cache.
432         (allocate_symtab): Cache the file name.
433         (allocate_psymtab): Likewise.
434         * solib-sunos.c (allocate_rt_common_objfile): Initialize
435         filename_cache.
436         * objfiles.h (struct objfile) <filename_cache>: New field.
437         * objfiles.c (allocate_objfile): Initialize filename_cache.
438         (free_objfile): Free filename_cache.
439
440 2009-11-05  Tom Tromey  <tromey@redhat.com>
441
442         * symfile.c (add_psymbol_to_bcache): Make 'psymbol' static again.
443         Zero the 'value' field.
444
445 2009-11-05  Doug Evans  <dje@google.com>
446
447         * amd64-tdep.c (amd64_init_frame_cache): Enhance comment describing
448         saved_regs.
449
450 2009-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
451
452         * top.c (execute_command): Select a frame before checking the current
453         language.  Only output a message if verbose.
454
455 2009-11-05  Tom Tromey  <tromey@redhat.com>
456
457         * symtab.h (SYMBOL_SET_LINKAGE_NAME): Update comment.
458         * symfile.c (allocate_symtab): Don't use obsavestring on a
459         constant string.
460         * stabsread.c (define_symbol): Don't use obsavestring on a
461         constant string.
462         * mdebugread.c (parse_type): Don't use obsavestring on a constant
463         string.
464         (new_symtab): Likewise.
465         * elfread.c (elf_symtab_read): Don't use obsavestring on a
466         constant string.
467
468 2009-11-04  Tom Tromey  <tromey@redhat.com>
469
470         * symfile.c (add_psymbol_to_bcache): Don't copy name.  Make
471         'psymbol' non-static.
472
473 2009-11-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
474
475         * linux-thread-db.c (disable_thread_event_reporting): Adjust.
476         
477 2009-11-03  Joel Brobecker  <brobecker@adacore.com>
478
479         * MAINTAINERS (Responsible Maintainers): Add Tristan Gingold as
480         maintainer of the avr target.
481
482 2009-11-02  Daniel Jacobowitz  <dan@codesourcery.com>
483
484         * elfread.c (elf_symfile_segments): Do not warn about
485         uninitialized sections outside of load segments.
486
487 2009-11-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
488
489         * symfile.c (build_id_to_debug_filename): New variable debugdir.  Move
490         variables size, s and data into a new inner block.  Change xmalloc for
491         alloca, use direct BUILDID->SIZE there now.  Loop for the
492         DEBUG_FILE_DIRECTORY components.
493         (find_separate_debug_file): New variable debugdir and debugdir_end.
494         Loop for the DEBUG_FILE_DIRECTORY components.
495         (_initialize_symfile): For "debug-file-directory" use plural and note
496         one can use multiple components now.
497
498 2009-11-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
499
500         * symfile.c (find_separate_debug_file): Initialize dir, debugfile and
501         canon_name to NULL.  Change alloca to xmalloc, newly call xfree for it.
502         New label cleanup_return_debugfile, jump to it from the failure paths.
503
504 2009-11-02  Andrew Cagney  <cagney@gnu.org>
505
506         * symfile.c (separate_debug_file_exists): When the CRCs mismatch
507         print a warning.
508         (find_separate_debug_file): Pass in the objfile's name.
509
510 2009-11-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
511
512         Remove INVALID_ENTRY_POINT.
513         * frame.c (inside_entry_func): New variable entry_point.  Return 0 if
514         the entry point is not known.
515         * solib-irix.c (enable_break): Likewise.
516         * objfiles.c (init_entry_point_info): Stop using INVALID_ENTRY_POINT.
517         Initialize EI.ENTRY_POINT_P.
518         (entry_point_address): Rename to ...
519         (entry_point_address_query): ... a new function.  Use EI.ENTRY_POINT_P.
520         (entry_point_address): New function.
521         (objfile_relocate): Use EI.ENTRY_POINT_P.
522         * objfiles.h (struct entry_info): Simplify entry_point comment.  New
523         field entry_point_p.
524         (INVALID_ENTRY_POINT): Remove.
525         (entry_point_address_query): New prototype.
526         * solib-frv.c (enable_break): Check for NULL SYMFILE_OBJFILE and its
527         EI.ENTRY_POINT_P.  Return 0 if ".interp" is not found.
528
529 2009-11-01  Michael Snyder  <msnyder@vmware.com>
530
531         * NEWS (New Commands): Mention record save/restore.
532
533 2009-10-31  Michael Snyder  <msnyder@vmware.com>
534
535         * breakpoint.c (bpstat_stop_status): Fix broken comment.
536
537 2009-10-31  Pedro Alves  <pedro@codesourcery.com>
538
539         * record.c (record_restore, cmd_record_save): Debug output goes to
540         gdb_stdlog.
541
542 2009-10-31  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
543
544         * breakpoint.c (catch_syscall_split_args): Remove unecessary warning
545         displayed when the user provided a syscall name and there is no
546         XML support.
547         * xml-syscall.c: Renamed `_sysinfo' to `sysinfo'.
548         (set_xml_syscall_file_name): Remove syscall_warn_user.
549         (xml_init_syscalls_info): Remove warning.
550         (init_sysinfo): Update warnings.
551
552 2009-10-30  Vladimir Prus  <vladimir@codesourcery.com>
553
554         Fix breakpoint commands in MI.
555
556         * mi/mi-main.c (mi_execute_command): Run bpstat_do_actions.
557         * mi/mi-cmd-break.c (mi_cmd_break_commands): Pass 1 to
558         read_command_line_1 to actually parse composite commands.
559
560 2009-10-29  Sandra Loosemore  <sandra@codesourcery.com>
561
562         PR gdb/10783
563
564         * target.c (simple_search_memory): Correct read_addr initialization
565         in loop for searching subsequent chunks.
566
567 2009-10-28  Daniel Jacobowitz  <dan@codesourcery.com>
568
569         Reported by Antti Hatala <ahatala@nvidia.com>.
570
571         * arm-tdep.c (thumb_get_next_pc): Limit check to IT instructions
572         correctly.
573
574 2009-10-28  Pedro Alves  <pedro@codesourcery.com>
575
576         * dwarf2-frame.c (dwarf2_build_frame_info): Discard --gc-section
577         leftover FDEs.
578
579 2009-10-28  Pedro Alves  <pedro@codesourcery.com>
580
581         * infrun.c (keep_going): Wrap with resume_cleanups.
582
583 2009-10-27  Paul Pluzhnikov  <ppluzhnikov@google.com>
584         
585         * MAINTAINERS: Add self to "modify-after-approval" maintainers.
586
587 2009-10-27  Paul Pluzhnikov  <ppluzhnikov@google.com>
588
589         PR gdb/10757
590         * linux-thread-db.c (attach_thread): Return success/failure
591         indicator.
592         (thread_db_find_new_threads_silently): Retry until no new threads.
593         (struct callback_data): New.
594         (find_new_threads_callback): Count new threads, stop iteration
595         on error.
596         (find_new_threads_once): New function.
597         (thread_db_find_new_threads_2): Rename from
598         thread_db_find_new_threads_1 and adjust.
599         (thread_db_find_new_threads_1): New function.
600         
601 2009-10-26  Michael Eager  <eager@eagercon.com>
602
603         * MAINTAINERS: Add self to "modify-after-approval" maintainers.
604
605 2009-10-26  Michael Snyder  <msnyder@vmware.com>
606             Hui Zhu  <teawater@gmail.com>
607
608         * Makefile.in (SFILES): Add gcore.c.
609         (COMMON_OBS): Add gcore.o.
610         * config/alpha/alpha-linux.mh (NATDEPFILES): Delete gcore.o.
611         * config/alpha/fbsd.mh (NATDEPFILES): Ditto.
612         * config/arm/linux.mh (NATDEPFILES): Ditto.
613         * config/i386/fbsd.mh (NATDEPFILES): Ditto.
614         * config/i386/fbsd64.mh (NATDEPFILES): Ditto.
615         * config/i386/i386sol2.mh (NATDEPFILES): Ditto.
616         * config/i386/linux.mh (NATDEPFILES): Ditto.
617         * config/i386/linux64.mh (NATDEPFILES): Ditto.
618         * config/i386/sol2-64.mh (NATDEPFILES): Ditto.
619         * config/ia64/linux.mh (NATDEPFILES): Ditto.
620         * config/m32r/linux.mh (NATDEPFILES): Ditto.
621         * config/m68k/linux.mh (NATDEPFILES): Ditto.
622         * config/mips/linux.mh (NATDEPFILES): Ditto.
623         * config/pa/linux.mh (NATDEPFILES): Ditto.
624         * config/powerpc/linux.mh (NATDEPFILES): Ditto.
625         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Ditto.
626         * config/s390/s390.mh (NATDEPFILES): Ditto.
627         * config/sparc/fbsd.mh (NATDEPFILES): Ditto.
628         * config/sparc/linux.mh (NATDEPFILES): Ditto.
629         * config/sparc/linux64.mh (NATDEPFILES): Ditto.
630         * config/sparc/sol2.mh (NATDEPFILES): Ditto.
631         * config/xtensa/linux.mh (NATDEPFILES): Ditto.
632         * target.c (dummy_find_memory_regions): Change output.
633         (dummy_make_corefile_notes): Ditto.
634
635 2009-10-26  Tristan Gingold  <gingold@adacore.com>
636         
637         * charset.c (_initialize_charset): Set a default value to
638         auto_host_charset_name if empty.
639
640 2009-10-26  Tristan Gingold  <gingold@adacore.com>
641
642         * avr-tdep.c (avr_push_dummy_call): Handle avr6 architecture.
643         Fix the returned value.  Fix style.
644
645 2009-10-26  Joel Brobecker  <brobecker@adacore.com>
646
647         * MAINTAINERS (Responsible Maintainers): Add info about the microblaze
648         targets.  Add Michael Eager as the maintainer for this target.
649
650 2009-10-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
651
652         Performance optimize large bp_location count.
653         * breakpoint.c (ALL_BP_LOCATIONS_SAFE): Remove.
654         (ALL_BP_LOCATIONS): New parameter BP_TMP.  Use now bp_location and
655         bp_location_count.
656         (bp_location_chain): Remove variable.
657         (bp_location, bp_location_count)
658         (bp_location_placed_address_before_address_max)
659         (bp_location_shadow_len_after_address_max): New variables.
660         (moribund_locations, update_watchpoint): Update the bp_location
661         variable name.
662         (breakpoint_restore_shadows): Extend the comment.  Move the variable
663         b to local blocks.  Move the variables bp_addr, bp_size and bptoffset
664         to a local block.  New variables bc_l, bc_r and bc.  New binary search
665         for the left range boundary.  New break on reaching the right range
666         boundary.  Move shadow existence conditionals to ...
667         (bp_location_has_shadow): ... a new function.
668         (insert_breakpoint_locations): Replace the temp variable by bp_tmp.
669         Use now ALL_BP_LOCATIONS instead of ALL_BP_LOCATIONS_SAFE.
670         (remove_breakpoints, remove_hw_watchpoints, reattach_breakpoints)
671         (detach_breakpoints): New variable bp_tmp.  Update the ALL_BP_LOCATIONS
672         calling convention.
673         (update_breakpoints_after_exec): New variable bplocp_tmp.  Update the
674         ALL_BP_LOCATIONS calling convention.
675         (breakpoint_here_p, software_breakpoint_inserted_here_p)
676         (breakpoint_thread_match): New variable bptp_tmp.  Drop the const
677         attribute of bpt.  Update the ALL_BP_LOCATIONS calling convention.
678         (regular_breakpoint_inserted_here_p): Likewise.  Update the bp_location
679         variable name.
680         (mark_breakpoints_out, breakpoint_init_inferior): New variable
681         bptp_tmp.  Update the ALL_BP_LOCATIONS calling convention.
682         (bpstat_stop_status): New variables blp_tmp and update_locations.  Drop
683         the const attribute of bl.  Update the ALL_BP_LOCATIONS calling
684         convention.  Protect HIT_COUNT increment by an ENABLE_STATE check.
685         Delay the update_global_location_list call using update_locations.
686         (set_default_breakpoint): Drop the check_duplicates name from comment.
687         (disable_breakpoints_in_shlibs, disable_breakpoints_in_unloaded_shlib):
688         New variable locp_tmp.  Update the ALL_BP_LOCATIONS calling convention.
689         (bp_location_compare, bp_location_compare_for_qsort)
690         (bp_location_target_extensions_update): New functions.
691         (check_duplicates, check_duplicates_for): Remove, moving their code ...
692         (update_global_location_list): ... into this existing function.  Remove
693         variables next, loc2, old_locations, ret and ix.  New variables locp,
694         loc_first, old_location, old_locp and old_location_count.  Stop using
695         global_next, create now the array bp_location, sort it by
696         bp_location_compare_for_qsort and call
697         bp_location_target_extensions_update.  Change quadratic iteration by
698         loc2 into an in-sync scanning by locp and loc2p.  Rename former loc
699         usage as old_loc.
700         (do_vec_free): Remove.
701         (breakpoint_program_space_exit): Update the ALL_BP_LOCATIONS calling
702         convention.
703         (remove_breakpoints_pid): New variable b_tmp.  Update the
704         ALL_BP_LOCATIONS calling convention.
705         * breakpoint.h (struct bp_location <global_next>): Remove.
706
707 2009-10-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
708
709         * mep-tdep.c: Update include for the new location cgen/bitset.h.
710
711 2009-10-23  Tom Tromey  <tromey@redhat.com>
712
713         * blockframe.c (_initialize_blockframe): Remove declaration.
714
715 2009-10-23  Doug Evans  <dje@google.com>
716
717         * record.c (record_core_xfer_partial): Pass correct offset to
718         record_beneath_to_xfer_partial.
719
720 2009-10-23  Michael Snyder  <msnyder@vmware.com>
721
722         * record.c (top level): Don't include byteswap.h.
723         (netorder64): Use store_unsigned_integer instead of bswap_64.
724         (netorder32): Use store_unsigned_integer instead of bswap_32.
725         (netorder16): Use store_unsigned_integer instead of bswap_16.
726
727 2009-10-23  Michael Snyder  <msnyder@vmware.com>
728
729         * record.c (netorder64): Use BFD_ENDIAN_LITTLE not LITTLE_ENDIAN.
730         (netorder32): Ditto.
731         (netorder16): Ditto.
732
733 2009-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
734
735         * objfiles.c (allocate_objfile): Use xzalloc.
736
737 2009-10-23  Hui Zhu  <teawater@gmail.com>
738
739         * record.c (record_restore): Use phex_nz.
740
741 2009-10-23  Tristan Gingold  <gingold@adacore.com>
742
743         * frame.c (frame_unwind_pc): Fix typo: remove duplicate 0x.
744
745 2009-10-23  Tristan Gingold  <gingold@adacore.com>
746         
747         * objfiles.c (allocate_objfile): Remove useless test.  Move
748         declaration of last_one to the block that uses it.
749
750 2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
751
752         * record.c (record_restore, cmd_record_save): Fix warnings.
753         
754 2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
755
756         * disasm.h (DISASSEMBLY_OMIT_FNAME) New define.
757         (gdb_disassembly): Correct parameter name.
758         * disasm.c (dump_insns): Adjust.
759         (gdb_disassembly): Fix indentation.
760         * cli/cli-cmds.c (disassemble_command): Adjust.
761         
762 2009-10-22  Michael Snyder  <msnyder@vmware.com>
763
764         * infrun.c (keep_going): If insert_breakpoints fails, 
765         print the reason.
766
767 2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
768
769         PR gdb/10819
770         * dwarf2-frame.c (find_cie): Don't call bsearch on empty cie_table.
771         * objfiles.c (find_pc_section): Likewise.
772         (update_section_map): Don't allocate empty table.
773         
774 2009-10-22  Hui Zhu  <teawater@gmail.com>
775             Michael Snyder  <msnyder@vmware.com>
776
777         * record.c (RECORD_FILE_MAGIC): New constant.
778         (record_arch_list_cleanups): Renamed from record_message_cleanups.
779         (bfdcore_read): New function.
780         (netorder64): New function.
781         (netorder32): New function.
782         (netorder16): New function.
783         (record_restore): New function.  Restore a saved record log.
784         (bfdcore_write): New function.
785         (cmd_record_restore): New function.
786         (cmd_record_save): New function.  Save a record log to a file.
787         (_initialize_record): Set up commands for save and restore.
788
789 2009-10-22  Michael Snyder  <msnyder@vmware.com>
790
791         * gcore.h: New file.
792         * gcore.c (create_gcore_bfd): New function.
793         (write_gcore_file): New function.
794         (call_target_sbrk): New function.  Abstracted from gcore_command.
795         (gcore_command): Call call_target_sbrk.
796
797 2009-10-22  Hui Zhu  <teawater@gmail.com>
798             Michael Snyder  <msnyder@vmware.com>
799
800         * record.c (record_core_ops): New ops target vector.
801         (record_core_open_1): New function.  Open core target.
802         (record_open_1): New function.  Open normal process record.
803         (record_open): Call one of the above.
804         (record_close): Allow for both core and normal targets.
805         (record_core_resume): New function.
806         (record_core_kill): New function.
807         (record_core_fetch_registers): New function.
808         (record_core_prepare_to_store): New function.
809         (record_core_store_registers): New function.
810         (record_core_xfer_partial): New function.
811         (record_core_insert_breakpoint): New function.
812         (record_core_remove_breakpoint): New function.
813         (record_core_has_execution): New function.
814         (init_record_core_ops): New function.
815         (_initialize_record): Call init_record_core_ops, add_target.
816
817 2009-10-22  Tristan Gingold  <gingold@adacore.com>
818
819         * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Use
820         amd64_supply_fxsave for amd64.  Fix the offset.
821         (i386_darwin_store_inferior_registers): Use amd64_collect_fxsave
822         for amd64.
823
824 2009-10-21  Maxim Grigoriev  <maxim2405@gmail.com>
825
826         * xtensa-tdep.c (XTENSA_ISA_BADPC): New.
827         (xtensa_scan_prologue): Replace read_memory with target_read_memory.
828         (call0_analyze_prologue): Use XTENSA_ISA_BADPC instead of "0".
829         (call0_frame_cache): Check error conditions on call0_analyze_prologue.
830
831 2009-10-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
832
833         * defs.h (pc_prefix): New prototype.
834         * disasm.c (dump_insns): Mark current instruction.
835         * printcmd.c (do_examine): Likewise.
836         (pc_prefix): New function.
837         * stack.c (print_frame_info): Disassemble entire current line.
838
839 2009-10-21  Michael Snyder  <msnyder@vmware.com>
840
841         Elaborate "info record".
842         * record.c (struct record_end_entry): New field 'insn_num'.
843         (record_insn_count): New variable.
844         (record_open): Initialize record_insn_count.
845         (info_record_command): Display contents of record log as
846         lowest, current, and highest instruction counts.
847         (show_record_insn_number): Delete.
848         (_initialize_record): Remove add_cmd show_record_insn_number.
849
850 2009-10-21  Andrew Stubbs  <ams@codesourcery.com>
851             Joel Brobecker  <brobecker@adacore.com>
852
853         * Makefile.in (HFILES_NO_SRCDIR): Remove shnbsd-tdep.h
854         * configure.tgt (sh*-*-linux*): Add corelow.o to gdb_target_obs.
855         * sh-linux-tdep.c: Include sh-tdep.h.
856         (REGSx16): New macro.
857         (gregs_table, fpregs_table): New variables.
858         (sh_linux_init_abi): Set core_gregmap and fpregmap.
859         * sh-tdep.c: Include regset.h.
860         (sh_corefile_supply_regset): New function.
861         (sh_corefile_collect_regset): New function.
862         (sh_corefile_gregset, sh_corefile_fpregset): New variables.
863         (sh_regset_from_core_section): New function.
864         (sh_gdbarch_init): Set up tdep value.
865         Call set_gdbarch_regset_from_core_section.
866         * sh-tdep.h (PC_REGNUM): New enum value.
867         (struct sh_corefile_regs): New type.
868         (sh_corefile_gregset): Export variable.
869         (sh_corefile_supply_regset): New prototype.
870         (sh_corefile_collect_regset): New prototype.
871         * shnbsd-tdep.c: Remove include of regcache.h, gdb_assert.h and
872         shnbsd-tdep.h.
873         (regmap): Use new definition using struct sh_corefile_regs.
874         (shnbsd_supply_gregset, shnbsd_collect_gregset): Delete.
875         (shnbsd_gregset): Delete.
876         (shnbsd_regset_from_core_section): Delete.
877         (shnbsd_supply_reg, shnbsd_fill_reg): Use new regset interface.
878         (shnbsd_init_abi): Set core_gregmap.
879         (shnbsd_supply_reg): Delete.
880         (shnbsd_fill_reg): Delete.
881         (SHNBSD_SIZEOF_GREGS): Move ...
882         * shnbsd-nat.c (SHNBSD_SIZEOF_GREGS): ... to here.
883         Remove include of shnbsd-tdep.h.
884         (shnbsd_fetch_inferior_registers): Replace shnbsd_supply_reg call
885         with sh_corefile_supply_regset.
886         (shnbsd_store_inferior_registers): Replace shnbsd_fill_reg call with
887         sh_corefile_collect_regset.
888         * shnbsd-tdep.h: Delete file.
889
890 2009-10-21  Pierre Muller  <muller@ics.u-strasbg.fr>
891
892         * rs6000-nat.c (exec_one_dummy_insn): Add missing new ASPACE parameter
893         to depreacted_insert_raw_breakpoint function call.
894         * procfs.c (insert_dbx_link_bpt_in_file): Likewise.
895
896 2009-10-20  Michael Snyder  <msnyder@vmware.com>
897
898         * record.c: Add some top-level comments for general explanation.
899
900 2009-10-20  Hui Zhu  <teawater@gmail.com>
901             Michael Snyder  <msnyder@vmware.com>
902
903         * record.c (record_exec_insn): New function.  Emulate one
904         instruction, forward or backward.  Abstracted from record_wait.
905         (record_wait) Call record_exec_insn.
906
907 2009-10-20  Michael Snyder  <msnyder@msnyder-server.eng.vmware.com>
908
909         * infrun.c (handle_inferior_event): Add pspace field to sal
910         for reverse execution cases.
911
912 2009-10-20  Ken Werner  <ken@linux.vnet.ibm.com>
913
914         * go32-nat.c (go32_create_inferior): Use inferior_appeared, not
915         inferior_appeared_silent.
916         * remote-sim.c (gdbsim_create_inferior): Ditto.
917
918 2009-10-20  Pedro Alves  <pedro@codesourcery.com>
919
920         * darwin-nat.c (cancel_breakpoint): Pass the regcache's address
921         space to breakpoint_inserted_here_p.
922
923 2009-10-20  Pedro Alves  <pedro@codesourcery.com>
924
925         * linux-nat.c (linux_nat_thread_address_space): New.
926         (linux_nat_add_target): Install it.
927         * progspace.c (address_space_num): New.
928         * progspace.h (address_space_num): Declare.
929         * target.c (target_thread_address_space): Really query the target.
930         * target.h (struct target_ops) <to_thread_address_space>: New
931         field.
932
933 2009-10-19  Joel Brobecker  <brobecker@adacore.com>
934
935         * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Add comment.
936
937 2009-10-19  Pedro Alves  <pedro@codesourcery.com>
938             Stan Shebs  <stan@codesourcery.com>
939
940         Add base multi-executable/process support to GDB.
941
942         * Makefile.in (SFILES): Add progspace.c.
943         (COMMON_OBS): Add progspace.o.
944         * progspace.h: New.
945         * progspace.c: New.
946
947         * breakpoint.h (struct bp_target_info) <placed_address_space>: New
948         field.
949         (struct bp_location) <pspace>: New field.
950         (struct breakpoint) <pspace>: New field.
951         (bpstat_stop_status, breakpoint_here_p)
952         (moribund_breakpoint_here_p, breakpoint_inserted_here_p)
953         (regular_breakpoint_inserted_here_p)
954         (software_breakpoint_inserted_here_p, breakpoint_thread_match)
955         (set_default_breakpoint): Adjust prototypes.
956         (remove_breakpoints_pid, breakpoint_program_space_exit): Declare.
957         (insert_single_step_breakpoint, deprecated_insert_raw_breakpoint):
958         Adjust prototypes.
959         * breakpoint.c (executing_startup): Delete.
960         (default_breakpoint_sspace): New.
961         (breakpoint_restore_shadows): Skip if the address space doesn't
962         match.
963         (update_watchpoint): Record the frame's program space in the
964         breakpoint location.
965         (insert_bp_location): Record the address space in target_info.
966         Adjust to pass the symbol space to solib_name_from_address.
967         (breakpoint_program_space_exit): New.
968         (insert_breakpoint_locations): Switch the symbol space and thread
969         when inserting breakpoints.  Don't insert breakpoints in a vfork
970         parent waiting for vfork done if we're not attached to the vfork
971         child.
972         (remove_breakpoints_pid): New.
973         (reattach_breakpoints): Switch to a thread of PID.  Ignore
974         breakpoints of other symbol spaces.
975         (create_internal_breakpoint): Store the symbol space in the sal.
976         (create_longjmp_master_breakpoint): Iterate over all symbol
977         spaces.
978         (update_breakpoints_after_exec): Ignore breakpoints for other
979         symbol spaces.
980         (remove_breakpoint): Rename to ...
981         (remove_breakpoint_1): ... this.  Pass the breakpoints symbol
982         space to solib_name_from_address.
983         (remove_breakpoint): New.
984         (mark_breakpoints_out): Ignore breakpoints from other symbol
985         spaces.
986         (breakpoint_init_inferior): Ditto.
987         (breakpoint_here_p): Add an address space argument and adjust to
988         use breakpoint_address_match.
989         (moribund_breakpoint_here_p): Ditto.
990         (regular_breakpoint_inserted_here_p): Ditto.
991         (breakpoint_inserted_here_p): Ditto.
992         (software_breakpoint_inserted_here_p): Ditto.
993         (breakpoint_thread_match): Ditto.
994         (bpstat_check_location): Ditto.
995         (bpstat_stop_status): Ditto.
996         (print_breakpoint_location): If there's a location to print,
997         switch the current symbol space.
998         (print_one_breakpoint_location): Add `allflag' argument.
999         (print_one_breakpoint): Ditto.  Adjust.
1000         (do_captured_breakpoint_query): Adjust.
1001         (breakpoint_1): Adjust.
1002         (breakpoint_has_pc): Also match the symbol space.
1003         (describe_other_breakpoints): Add a symbol space argument and
1004         adjust.
1005         (set_default_breakpoint): Add a symbol space argument.  Set
1006         default_breakpoint_sspace.
1007         (breakpoint_address_match): New.
1008         (check_duplicates_for): Add an address space argument, and adjust.
1009         (set_raw_breakpoint): Record the symbol space in the location and
1010         in the breakpoint.
1011         (set_longjmp_breakpoint): Skip longjmp master breakpoints from
1012         other symbol spaces.
1013         (remove_thread_event_breakpoints, remove_solib_event_breakpoints)
1014         (disable_breakpoints_in_shlibs): Skip breakpoints from other
1015         symbol spaces.
1016         (disable_breakpoints_in_unloaded_shlib): Match symbol spaces.
1017         (create_catchpoint): Set the symbol space in the sal.
1018         (disable_breakpoints_before_startup): Skip breakpoints from other
1019         symbol spaces.  Set executing_startup in the current symbol space.
1020         (enable_breakpoints_after_startup): Clear executing_startup in the
1021         current symbol space.  Skip breakpoints from other symbol spaces.
1022         (clone_momentary_breakpoint): Also copy the symbol space.
1023         (add_location_to_breakpoint): Set the location's symbol space.
1024         (bp_loc_is_permanent): Switch thread and symbol space.
1025         (create_breakpoint): Adjust.
1026         (expand_line_sal_maybe): Expand comment to mention symbol spaces.
1027         Switch thread and symbol space when reading memory.
1028         (parse_breakpoint_sals): Set the symbol space in the sal.
1029         (break_command_really): Ditto.
1030         (skip_prologue_sal): Switch and space.
1031         (resolve_sal_pc): Ditto.
1032         (watch_command_1): Record the symbol space in the sal.
1033         (create_ada_exception_breakpoint): Adjust.
1034         (clear_command): Adjust.  Match symbol spaces.
1035         (update_global_location_list): Use breakpoint_address_match.
1036         (breakpoint_re_set_one): Switch thread and space.
1037         (breakpoint_re_set): Save symbol space.
1038         (breakpoint_re_set_thread): Also reset the symbol space.
1039         (deprecated_insert_raw_breakpoint): Add an address space argument.
1040         Adjust.
1041         (insert_single_step_breakpoint): Ditto.
1042         (single_step_breakpoint_inserted_here_p): Ditto.
1043         (clear_syscall_counts): New.
1044         (_initialize_breakpoint): Install it as inferior_exit observer.
1045
1046         * exec.h: Include "progspace.h".
1047         (exec_bfd, exec_bfd_mtime): New defines.
1048         (exec_close): Declare.
1049         * exec.c: Include "gdbthread.h" and "progspace.h".
1050         (exec_bfd, exec_bfd_mtime, current_target_sections_1): Delete.
1051         (using_exec_ops): New.
1052         (exec_close_1): Rename to exec_close, and make public.
1053         (exec_close): Rename to exec_close_1, and adjust all callers.  Add
1054         description.  Remove target sections and close executables from
1055         all program spaces.
1056         (exec_file_attach): Add comment.
1057         (add_target_sections): Check on `using_exec_ops' to check if the
1058         target should be pushed.
1059         (remove_target_sections): Only unpush the target if there are no
1060         more target sections in any symbol space.
1061         * gdbcore.h: Include "exec.h".
1062         (exec_bfd, exec_bfd_mtime): Remove declarations.
1063
1064         * frame.h (get_frame_program_space, get_frame_address_space)
1065         (frame_unwind_program_space): Declare.
1066         * frame.c (struct frame_info) <pspace, aspace>: New fields.
1067         (create_sentinel_frame): Add program space argument.  Set the
1068         pspace and aspace fields of the frame object.
1069         (get_current_frame, create_new_frame): Adjust.
1070         (get_frame_program_space): New.
1071         (frame_unwind_program_space): New.
1072         (get_frame_address_space): New.
1073         * stack.c (print_frame_info): Adjust.
1074         (print_frame): Use the frame's program space.
1075
1076         * gdbthread.h (any_live_thread_of_process): Declare.
1077         * thread.c (any_live_thread_of_process): New.
1078         (switch_to_thread): Switch the program space as well.
1079         (restore_selected_frame): Don't warn if trying to restore frame
1080         level 0.
1081
1082         * inferior.h: Include "progspace.h".
1083         (detach_fork): Declare.
1084         (struct inferior) <removable, aspace, pspace>
1085         <vfork_parent, vfork_child, pending_detach>
1086         <waiting_for_vfork_done>: New fields.
1087         <terminal_info>: Remove field.
1088         <data, num_data>: New fields.
1089         (register_inferior_data, register_inferior_data_with_cleanup)
1090         (clear_inferior_data, set_inferior_data, inferior_data): Declare.
1091         (exit_inferior, exit_inferior_silent, exit_inferior_num_silent)
1092         (inferior_appeared): Declare.
1093         (find_inferior_pid): Typo.
1094         (find_inferior_id, find_inferior_for_program_space): Declare.
1095         (set_current_inferior, save_current_inferior, prune_inferiors)
1096         (number_of_inferiors): Declare.
1097         (inferior_list): Declare.
1098         * inferior.c: Include "gdbcore.h" and "symfile.h".
1099         (inferior_list): Make public.
1100         (delete_inferior_1): Always delete thread silently.
1101         (find_inferior_id): Make public.
1102         (current_inferior_): New.
1103         (current_inferior): Use it.
1104         (set_current_inferior): New.
1105         (restore_inferior): New.
1106         (save_current_inferior): New.
1107         (free_inferior): Free the per-inferior data.
1108         (add_inferior_silent): Allocate per-inferior data.
1109         Call inferior_appeared.
1110         (delete_threads_of_inferior): New.
1111         (delete_inferior_1): Adjust interface to take an inferior pointer.
1112         (delete_inferior): Adjust.
1113         (delete_inferior_silent): Adjust.
1114         (exit_inferior_1): New.
1115         (exit_inferior): New.
1116         (exit_inferior_silent): New.
1117         (exit_inferior_num_silent): New.
1118         (detach_inferior): Adjust.
1119         (inferior_appeared): New.
1120         (discard_all_inferiors): Adjust.
1121         (find_inferior_id): Make public.  Assert pid is not zero.
1122         (find_inferior_for_program_space): New.
1123         (have_inferiors): Check if we have any inferior with pid not zero.
1124         (have_live_inferiors): Go over all pushed targets looking for
1125         process_stratum.
1126         (prune_inferiors): New.
1127         (number_of_inferiors): New.
1128         (print_inferior): Add executable column.  Print vfork parent/child
1129         relationships.
1130         (inferior_command): Adjust to cope with not running inferiors.
1131         (remove_inferior_command): New.
1132         (add_inferior_command): New.
1133         (clone_inferior_command): New.
1134         (struct inferior_data): New.
1135         (struct inferior_data_registration): New.
1136         (struct inferior_data_registry): New.
1137         (inferior_data_registry): New.
1138         (register_inferior_data_with_cleanup): New.
1139         (register_inferior_data): New.
1140         (inferior_alloc_data): New.
1141         (inferior_free_data): New.
1142         (clear_inferior_data): New.
1143         (set_inferior_data): New.
1144         (inferior_data): New.
1145         (initialize_inferiors): New.
1146         (_initialize_inferiors): Register "add-inferior",
1147         "remove-inferior" and "clone-inferior" commands.
1148
1149         * objfiles.h: Include "progspace.h".
1150         (struct objfile) <pspace>: New field.
1151         (symfile_objfile, object_files): Don't declare.
1152         (ALL_PSPACE_OBJFILES): New.
1153         (ALL_PSPACE_OBJFILES_SAFE): New.
1154         (ALL_OBJFILES, ALL_OBJFILES_SAFE): Adjust.
1155         (ALL_PSPACE_SYMTABS): New.
1156         (ALL_PRIMARY_SYMTABS): Adjust.
1157         (ALL_PSPACE_PRIMARY_SYMTABS): New.
1158         (ALL_PSYMTABS): Adjust.
1159         (ALL_PSPACE_PSYMTABS): New.
1160         * objfiles.c (object_files, symfile_objfile): Delete.
1161         (struct objfile_sspace_info): New.
1162         (objfiles_pspace_data): New.
1163         (objfiles_pspace_data_cleanup): New.
1164         (get_objfile_pspace_data): New.
1165         (objfiles_changed_p): Delete.
1166         (allocate_objfile): Set the objfile's program space.  Adjust to
1167         reference objfiles_changed_p in pspace data.
1168         (free_objfile): Adjust to reference objfiles_changed_p in pspace
1169         data.
1170         (objfile_relocate): Ditto.
1171         (update_section_map): Add pspace argument.  Adjust to iterate over
1172         objfiles in the passed in pspace.
1173         (find_pc_section): Delete sections and num_sections statics.
1174         Adjust to refer to program space's objfiles_changed_p.  Adjust to
1175         refer to sections and num_sections store in the objfile's pspace
1176         data.
1177         (objfiles_changed): Adjust to reference objfiles_changed_p in
1178         pspace data.
1179         (_initialize_objfiles): New.
1180         * linespec.c (decode_all_digits, decode_dollar): Set the sal's
1181         program space.
1182         * source.c (current_source_pspace): New.
1183         (get_current_source_symtab_and_line): Set the sal's program space.
1184         (set_current_source_symtab_and_line): Set current_source_pspace.
1185         (select_source_symtab): Ditto.  Use ALL_OBJFILES.
1186         (forget_cached_source_info): Iterate over all program spaces.
1187         * symfile.c (clear_symtab_users): Adjust.
1188         * symmisc.c (print_symbol_bcache_statistics): Iterate over all
1189         program spaces.
1190         (print_objfile_statistics): Ditto.
1191         (maintenance_print_msymbols): Ditto.
1192         (maintenance_print_objfiles): Ditto.
1193         (maintenance_info_symtabs): Ditto.
1194         (maintenance_info_psymtabs): Ditto.
1195         * symtab.h (SYMTAB_PSPACE): New.
1196         (struct symtab_and_line) <pspace>: New field.
1197         * symtab.c (init_sal): Clear the sal's program space.
1198         (find_pc_sect_symtab): Set the sal's program space.  Switch thread
1199         and space.
1200         (append_expanded_sal): Add program space argument.  Iterate over
1201         all program spaces.
1202         (expand_line_sal): Iterate over all program spaces.  Switch
1203         program space.
1204
1205         * target.h (enum target_waitkind) <TARGET_WAITKIND_VFORK_DONE>: New.
1206         (struct target_ops) <to_thread_address_space>: New field.
1207         (target_thread_address_space): Define.
1208         * target.c (target_detach): Only remove breakpoints from the
1209         inferior we're detaching.
1210         (target_thread_address_space): New.
1211
1212         * defs.h (initialize_progspace): Declare.
1213         * top.c (gdb_init): Call it.
1214
1215         * solist.h (struct so_list) <sspace>: New field.
1216         * solib.h (struct program_space): Forward declare.
1217         (solib_name_from_address): Adjust prototype.
1218         * solib.c (so_list_head): Replace with a macro referencing the
1219         program space.
1220         (update_solib_list): Set the so's program space.
1221         (solib_name_from_address): Add a program space argument and adjust.
1222
1223         * solib-svr4.c (struct svr4_info) <pid>: Delete field.
1224         <interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low>
1225         <interp_plt_sect_high>: New fields.
1226         (svr4_info_p, svr4_info): Delete.
1227         (solib_svr4_sspace_data): New.
1228         (get_svr4_info): Rewrite.
1229         (svr4_sspace_data_cleanup): New.
1230         (open_symbol_file_object): Adjust.
1231         (svr4_default_sos): Adjust.
1232         (svr4_fetch_objfile_link_map): Adjust.
1233         (interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low)
1234         (interp_plt_sect_high): Delete.
1235         (svr4_in_dynsym_resolve_code): Adjust.
1236         (enable_break): Adjust.
1237         (svr4_clear_solib): Revert bit that removed the svr4_info here,
1238         and reinstate clearing debug_base, debug_loader_offset_p,
1239         debug_loader_offset and debug_loader_name.
1240         (_initialize_svr4_solib): Register solib_svr4_pspace_data.  Don't
1241         install an inferior_exit observer anymore.
1242
1243         * printcmd.c (struct display) <pspace>: New field.
1244         (display_command): Set the display's sspace.
1245         (do_one_display): Match the display's sspace.
1246         (display_uses_solib_p): Ditto.
1247
1248         * linux-fork.c (detach_fork): Moved to infrun.c.
1249         (_initialize_linux_fork): Moved "detach-on-fork" command to
1250         infrun.c.
1251         * infrun.c (detach_fork): Moved from linux-fork.c.
1252         (proceed_after_vfork_done): New.
1253         (handle_vfork_child_exec_or_exit): New.
1254         (follow_exec_mode_replace, follow_exec_mode_keep)
1255         (follow_exec_mode_names, follow_exec_mode_string)
1256         (show_follow_exec_mode_string): New.
1257         (follow_exec): New.  Reinstate the mark_breakpoints_out call.
1258         Remove shared libraries before attaching new executable.  If user
1259         wants to keep the inferior, keep it.
1260         (displaced_step_fixup): Adjust to pass an address space to the
1261         breakpoints module.
1262         (resume): Ditto.
1263         (clear_proceed_status): In all-stop mode, always clear the proceed
1264         status of all threads.
1265         (prepare_to_proceed): Adjust to pass an address space to the
1266         breakpoints module.
1267         (proceed): Ditto.
1268         (adjust_pc_after_break): Ditto.
1269         (handle_inferior_event): When handling a process exit, switch the
1270         program space to the inferior's that had exited.  Call
1271         handle_vfork_child_exec_or_exit.  Adjust to pass an address space
1272         to the breakpoints module.  In non-stop mode, when following a
1273         fork and detach-fork is off, also resume the other branch.  Handle
1274         TARGET_WAITKIND_VFORK_DONE.  Set the program space in sals.
1275         (normal_stop): Prune inferiors.
1276         (_initialize_infrun): Install the new "follow-exec-mode" command.
1277         "detach-on-fork" moved here.
1278
1279         * regcache.h (get_regcache_aspace): Declare.
1280         * regcache.c (struct regcache) <aspace>: New field.
1281         (regcache_xmalloc): Clear the aspace.
1282         (get_regcache_aspace): New.
1283         (regcache_cpy): Copy the aspace field.
1284         (regcache_cpy_no_passthrough): Ditto.
1285         (get_thread_regcache): Fetch the thread's address space from the
1286         target, and store it in the regcache.
1287
1288         * infcall.c (call_function_by_hand): Set the sal's pspace.
1289
1290         * arch-utils.c (default_has_shared_address_space): New.
1291         * arch-utils.h (default_has_shared_address_space): Declare.
1292
1293         * gdbarch.sh (has_shared_address_space): New.
1294         * gdbarch.h, gdbarch.c: Regenerate.
1295
1296         * linux-tdep.c: Include auxv.h, target.h, elf/common.h.
1297         (linux_has_shared_address_space): New.
1298         (_initialize_linux_tdep): Declare.
1299
1300         * arm-tdep.c (arm_software_single_step): Pass the frame's address
1301         space to insert_single_step_breakpoint.
1302         * arm-linux-tdep.c (arm_linux_software_single_step): Pass the
1303         frame's pspace to breakpoint functions.
1304         * cris-tdep.c (crisv32_single_step_through_delay): Ditto.
1305         (cris_software_single_step): Ditto.
1306         * mips-tdep.c (deal_with_atomic_sequence): Add frame argument.
1307         Pass the frame's pspace to breakpoint functions.
1308         (mips_software_single_step): Adjust.
1309         (mips_single_step_through_delay): Adjust.
1310         * rs6000-aix-tdep.c (rs6000_software_single_step): Adjust.
1311         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Adjust.
1312         * solib-irix.c (enable_break): Adjust to pass the current frame's
1313         address space to breakpoint functions.
1314         * sparc-tdep.c (sparc_software_single_step): Ditto.
1315         * spu-tdep.c (spu_software_single_step): Ditto.
1316         * alpha-tdep.c (alpha_software_single_step): Ditto.
1317         * record.c (record_wait): Adjust to pass an address space to the
1318         breakpoints module.
1319
1320         * fork-child.c (fork_inferior): Set the new inferior's program and
1321         address spaces.
1322         * inf-ptrace.c (inf_ptrace_follow_fork): Copy the parent's program
1323         and address spaces.
1324         (inf_ptrace_attach): Set the inferior's program and address spaces.
1325         * linux-nat.c: Include "solib.h".
1326         (linux_child_follow_fork): Manage parent and child's program and
1327         address spaces.  Clone the parent's program space if necessary.
1328         Don't wait for the vfork to be done here.  Refuse to resume if
1329         following the vfork parent while leaving the child stopped.
1330         (resume_callback): Don't resume a vfork parent.
1331         (linux_nat_resume): Also check for pending events in the
1332         lp->waitstatus field.
1333         (linux_handle_extended_wait): Report TARGET_WAITKIND_VFORK_DONE
1334         events to the core.
1335         (stop_wait_callback): Don't wait for SIGSTOP on vfork parents.
1336         (cancel_breakpoint): Adjust.
1337         * linux-thread-db.c (thread_db_wait): Don't remove thread event
1338         breakpoints here.
1339         (thread_db_mourn_inferior): Don't mark breakpoints out here.
1340         Remove thread event breakpoints after mourning.
1341         * corelow.c: Include progspace.h.
1342         (core_open): Set the inferior's program and address spaces.
1343         * remote.c (remote_add_inferior): Set the new inferior's program
1344         and address spaces.
1345         (remote_start_remote): Update address spaces.
1346         (extended_remote_create_inferior_1): Don't init the thread list if
1347         we already debugging other inferiors.
1348         * darwin-nat.c (darwin_attach): Set the new inferior's program and
1349         address spaces.
1350         * gnu-nat.c (gnu_attach): Ditto.
1351         * go32-nat.c (go32_create_inferior): Ditto.
1352         * inf-ttrace.c (inf_ttrace_follow_fork, inf_ttrace_attach): Ditto.
1353         * monitor.c (monitor_open): Ditto.
1354         * nto-procfs.c (procfs_attach, procfs_create_inferior): Ditto.
1355         * procfs.c (do_attach): Ditto.
1356         * windows-nat.c (do_initial_windows_stuff): Ditto.
1357
1358         * inflow.c (inferior_process_group)
1359         (terminal_init_inferior_with_pgrp, terminal_inferior,
1360         (terminal_ours_1, inflow_inferior_exit, copy_terminal_info)
1361         (child_terminal_info, new_tty_postfork, set_sigint_trap): Adjust
1362         to use per-inferior data instead of inferior->terminal_info.
1363         (inflow_inferior_data): New.
1364         (inflow_new_inferior): Delete.
1365         (inflow_inferior_data_cleanup): New.
1366         (get_inflow_inferior_data): New.
1367
1368         * mi/mi-interp.c (mi_new_inferior): Rename to...
1369         (mi_inferior_appeared): ... this.
1370         (mi_interpreter_init): Adjust.
1371
1372         * tui/tui-disasm.c: Include "progspace.h".
1373         (tui_set_disassem_content): Pass an address space to
1374         breakpoint_here_p.
1375
1376         * NEWS: Mention multi-program debugging support.  Mention new
1377         commands "add-inferior", "clone-inferior", "remove-inferior",
1378         "maint info program-spaces", and new option "set
1379         follow-exec-mode".
1380
1381 2009-10-19  Don Lee  <don.lee@sunplusct.com>
1382
1383         * score-tdep.c: Delete dead codes.
1384
1385 2009-10-15  Michael Snyder  <msnyder@vmware.com>
1386
1387         * record.c (struct record_reg_entry): Replace ptr with union 
1388         of ptr and buf.
1389         (struct record_mem_entry): Ditto.
1390         (record_reg_alloc): Don't alloc ptr if reg will fit into buf.
1391         (record_mem_alloc): Ditto.
1392         (record_reg_release): Don't free ptr if reg was stored in buf.
1393         (record_mem_release): Ditto.
1394         (record_get_loc): New function.  Return a pointer to where the
1395         value (mem or reg) is to be stored.
1396         (record_arch_list_add_reg): Call record_get_loc instead of using ptr.
1397         (record_arch_list_add_mem): Ditto.
1398         (record_wait): Ditto.
1399
1400 2009-10-16  Michael Eager  <eager@eagercon.com>
1401
1402         * microblaze-linux-tdep.c:
1403         microblaze_linux_memory_remove_breakpoint(): Add gdbarch to param,
1404         replace frame_pc_unwind with get_frame_address_in_block.
1405         * microblaze-tdep.c: Remove MICROBLAZE_REGISTER_SIZE.
1406         * microblaze-tdep.h: Add MICROBLAZE_REGISTER_SIZE.
1407
1408 2008-10-15  Steven G. Kargl  <kargl@gcc.gnu.org>  (tiny patch)
1409
1410         * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Conditionally compile in
1411         support for pcb->pcb_{fs,ds,es,gs} on FreeBSD older than 8.0.
1412
1413 2009-10-15  Michael Eager  <eager@eagercon.com>
1414
1415         * config/djgpp/fnchange.lst: Add translations for cpu-microblaze.c,
1416         elf32-microblaze.c, microblaze-rom.c, microblaze-linux-tdep.c,
1417         microblaze-tdep.h, microblaze-tdep.c, microblaze-opc.h,
1418         microblaze-opcm.h, microblaze-dis.c, microblaze-dis.h, sim/microblaze,
1419         microblaze.h, and microblaze.isa.
1420         * configure.tgt: Add targets microblaze*-linux-*, microblaze*-xilinx-*.
1421         * Makefile.in: Build microblaze-tdep.o, microblaze-linux-tdep.o.
1422         HFILES_NO_SRCDIR: Add microblaze-tdep.h.
1423         * microblaze-linux-tdep.c: New.
1424         * microblaze-tdep.c: New.
1425         * microblaze-tdep.h: New.
1426         * NEWS: Announce Xilinx MicroBlaze support.
1427
1428 2009-10-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
1429
1430         PR gdb/10757
1431         * linux-nat.c (linux_nat_post_attach_wait): Adjust assert.
1432         (lin_lwp_attach_lwp, linux_nat_attach): Handle disappearing LWP.
1433         
1434 2009-10-15  Michael Snyder  <msnyder@vmware.com>
1435
1436         * record.c (record_insn_max_num): Make unsigned.
1437         (_initialize_record): Use uinteger instead of zinteger for
1438         set command, so that it will report "unlimited" for zero.
1439
1440 2009-10-15  Michael Snyder  <msnyder@vmware.com>
1441
1442         * record.c (record_reg_alloc): New function.
1443         (record_reg_release): New function.
1444         (record_mem_alloc): New function.
1445         (record_mem_release): New function.
1446         (record_end_alloc): New function.
1447         (record_end_release): New function.
1448         (record_entry_release): New function.
1449         (record_list_release): Simplify, call record_entry_release.
1450         (record_list_release_next): Rename to record_list_release_following.
1451         Simplify and call record_entry_release.
1452         (record_list_release_first): Simplify, comment, and use
1453         record_entry_release.
1454         (record_arch_list_add_reg): Simplify, call record_reg_alloc.
1455         (record_arch_list_add_mem): Simplify, call record_mem_alloc.
1456         (record_arch_list_add_end): Simplify, call record_end_alloc.
1457
1458 2009-10-14  Michael Snyder  <msnyder@vmware.com>
1459
1460         * record.c (record_list_release_first): Do not decrement
1461         record_insn_num.
1462         (set_insn_num_max): Remove printf.
1463         Decrement record_insn_num in the loop.
1464
1465 2009-10-14  Cary Coutant  <ccoutant@google.com>
1466
1467         * dwarf2read.c (read_import_statement): Call follow_die_ref_or_sig.
1468
1469 2009-10-14  Keith Seitz  <keiths@redhat.com>
1470
1471         * dwarf2read.c (dwarf2_const_value): Fix order of arguments to
1472         store_unsigned_integer.
1473
1474 2009-10-14  Pedro Alves  <pedro@codesourcery.com>
1475
1476         * configure.ac (build_warnings): Add -Wunused-value.
1477         * configure: Regenerate.
1478
1479 2009-10-14  Tristan Gingold  <gingold@adacore.com>
1480
1481         * solib-darwin.c: Remove trailing whitespaces.
1482         (darwin_dyld_version_ok): Fix typo.
1483
1484 2009-10-14  Andrew Stubbs  <ams@codesourcery.com>
1485
1486         * sh-tdep.c (sh_gdbarch_init): Add show_regs settings for
1487         bfd_mach_sh3_nommu, bfd_mach_sh2a_nofpu_or_sh3_nommu,
1488         bfd_mach_sh2a_or_sh3e, bfd_mach_sh2a_or_sh4, bfd_mach_sh4_nommu_nofpu,
1489         and bfd_mach_sh2a_nofpu_or_sh4_nommu_nofpu.
1490         Move bfd_mach_sh2a_or_sh4 to use the same configuration as
1491         bfd_mach_sh4.
1492
1493 2009-10-13  Daniel Jacobowitz  <dan@codesourcery.com>
1494
1495         * arm-tdep.c (arm_push_dummy_call): Set the low bit of LR for
1496         a Thumb entry point.
1497         (thumb_get_next_pc): Handle Thumb-2 and ARM v6 instructions.  Refuse
1498         to single step into IT blocks.
1499
1500 2009-10-13  Pedro Alves  <pedro@codesourcery.com>
1501
1502         * infcall.c (call_function_by_hand): Formatting.
1503
1504 2009-10-13  Tristan Gingold  <gingold@adacore.com>
1505
1506         * solib-darwin.c: Add an empty line after comment for functions.
1507         (struct gdb_dyld_all_image_infos): Improve comment.
1508         (DYLD_VERSION): Removed and replaced by ...
1509         (DYLD_VERSION_MAX, DYLD_VERSION_MIN): ... New macros.
1510         (darwin_dyld_version_ok): New function.
1511         (darwin_load_image_infos): Call darwin_dyld_version_ok.
1512         (darwin_current_sos): Ditto.
1513         (darwin_solib_create_inferior_hook): Ditto.
1514
1515 2009-10-13  Tristan Gingold  <gingold@adacore.com>
1516
1517         * machoread.c: Add an empty line after comment for functions.
1518         (oso_el_compare_name): New function.
1519         (macho_add_oso_symfile): New function.
1520         (macho_oso_symfile): Use macho_add_oso_symfile.  Sort the oso
1521         and optimize accesses to libraries.
1522
1523 2009-10-13  Tristan Gingold  <gingold@adacore.com>
1524
1525         * objfiles.c (objfile_has_symbols): New function.
1526         * objfiles.h (objfile_has_symbols): Add prototype.
1527         * symfile.c (symbol_file_add_with_addrs_or_offsets): Call
1528         objfile_has_symbols.
1529         (reread_symbols): Ditto.
1530
1531 2009-10-12  Jiang Jilin  <freephp@gmail.com>
1532
1533         * i386-tdep.c (i386_process_record): Add xgetbv/xsetbv
1534         instructions support.
1535
1536 2009-10-11  Pedro Alves  <pedro@codesourcery.com>
1537
1538         * procfs.c (procfs_make_note_section): Go back to only outputing
1539         an NT_PSTATUS note when UNIXWARE is defined.
1540
1541 2009-10-11  Daniel Jacobowitz  <dan@codesourcery.com>
1542
1543         * features/xinclude.dtd: Correct EMPTY typo.
1544
1545 2009-10-10  Michael Snyder  <msnyder@vmware.com>
1546
1547         * i386-tdep.c (i386_process_record): Or-equals, not not-equals.
1548
1549 2009-10-10  Pedro Alves  <pedro@codesourcery.com>
1550
1551         * mi/mi-cmd-stack.c (list_args_or_locals): Use internal_error.
1552         Put "break" statements on their own line.
1553
1554 2009-10-09  Pedro Alves  <pedro@codesourcery.com>
1555
1556         * linux-nat.c (linux_nat_wait_1): Bail out, if TARGET_WNOHANG and
1557         we found no event while waiting for a specific LWP.
1558         * infrun.c (handle_inferior_event): Handle TARGET_WAITKIND_IGNORE
1559         before anything else.
1560
1561 2009-10-09  Pedro Alves  <pedro@codesourcery.com>
1562
1563         * procfs.c (procfs_make_note_section): Always output a NT_PSTATUS
1564         note when NEW_PROC_API is defined.
1565
1566 2009-10-09  Pedro Alves  <pedro@codesourcery.com>
1567
1568         * corelow.c (core_has_fake_pid): New.
1569         (core_close): Clear it.
1570         (add_to_thread_list): Fake a pid if one is not found on a Solaris
1571         core.  Add the inferior here.  Always add the thread, don't use
1572         thread_change_ptid.
1573         (core_open): Don't add the main thread or the inferior here unless
1574         we find that the core had no .reg/NN sections.
1575         (get_core_register_section): Handle Solaris cores with fake pids.
1576
1577         * corelow.c (add_to_thread_list): Fix typo.
1578
1579 2009-10-08  Paul Pluzhnikov  <ppluzhnikov@google.com>
1580
1581         PR gdb/10457
1582         * elfread.c (elf_symtab_read): Don't use alloca in a loop.
1583         
1584 2009-10-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
1585
1586         * i386-nat.c (i386_stopped_by_hwbp): Remove.
1587
1588 2009-10-07  Joel Brobecker  <brobecker@adacore.com>
1589
1590         * NEWS: Update following the GDB 7.0 release.
1591
1592 2009-10-07  Pierre Muller  <muller@ics.u-strasbg.fr>
1593
1594         ARI fix: OP eol rule.
1595         * doublest.c (floatformat_from_length): Avoid operator at end of line.
1596         * dwarf2-frame.c (dwarf2_build_frame_info): Idem.
1597         * dwarf2read.c (read_array_order, dwarf_decode_macros): Idem.
1598         * eval.c (evaluate_subexp_standard): Idem.
1599         * event-loop.c (create_timer, handle_timer_event): Idem.
1600         * expprint.c (print_subexp_standard): Idem.
1601         * f-exp.y (variable): Idem.
1602         * f-typeprint.c (f_print_type): Idem.
1603
1604 2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1605
1606         ARI fix: OP eol rule.
1607         * blockframe.c (find_pc_partial_function): Avoid operator at end of
1608         line.
1609         * buildsym.c (find_symbol_in_list): Idem.
1610         (start_subfile, patch_subfile_names): Idem.
1611         * c-exp.y (variable, yylex): Idem.
1612         * c-typeprint.c (c_print_type, c_type_print_base): Idem.
1613         * c-valprint.c (c_val_print): Idem.
1614         * coffread.c (patch_opaque_types, process_coff_symbol): Idem.
1615         * corelow.c (core_open): Idem.
1616         * cris-tdep.c (move_reg_to_mem_movem_op): Idem.
1617         * cli/cli-decode.c (help_cmd_list, find_command_name_length): Idem.
1618
1619 2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1620
1621         ARI fix: OP eol rule.
1622         * ada-exp.y (block_lookup): Avoid operator at end of line.
1623         * aix-thread.c (pd_enable): Idem.
1624         * alpha-tdep.c (alpha_next_pc): Idem.
1625         * arm-tdep.c (arm_skip_prologue, arm_scan_prologue): Idem.
1626         (condition_true, coff_sym_is_thumb): Idem.
1627
1628 2009-10-06  Joel Brobecker  <brobecker@adacore.com>
1629
1630         GDB 7.0 released.
1631
1632 2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1633
1634         ARI fix: "%p" rule.
1635         * target.c (debug_to_thread_architecture): Replace %p by %s using
1636         host_address_to_string function.
1637
1638 2009-10-06  Tristan Gingold  <gingold@adacore.com>
1639
1640         * darwin-nat.c: Add __TEXT __info_plist content.
1641         (darwin_attach_pid): Update error message.
1642
1643 2009-10-06  Joel Brobecker  <brobecker@adacore.com>
1644
1645         * MAINTAINERS: Add Tristan Gingold as Maintainer of the Darwin port.
1646
1647 2009-10-06  Joel Brobecker  <brobecker@adacore.com>
1648
1649         * MAINTAINERS: Add Jan Kratochvil as Maintainer of the ia64 target.
1650
1651 2009-10-05  Pedro Alves  <pedro@codesourcery.com>
1652
1653         Revert:
1654         2009-10-04  Pedro Alves  <pedro@codesourcery.com>
1655         * gdbinit.in: Set data-directory to @srcdir@.
1656
1657 2009-10-04  Pedro Alves  <pedro@codesourcery.com>
1658
1659         * NEWS: Mention non-stop mode.
1660
1661 2009-10-04  Pedro Alves  <pedro@codesourcery.com>
1662
1663         * gdbinit.in: Set data-directory to @srcdir@.
1664
1665 2009-10-02  Pedro Alves  <pedro@codesourcery.com>
1666
1667         * linux-nat.c (TRAP_IS_SYSCALL, TRAP_REMOVE_SYSCALL_FLAG): Delete.
1668         (SYSCALL_SIGTRAP): New.
1669         (status_to_str): Adjust.
1670         (get_pending_status): Pending events in lp->waitstatus don't map
1671         to any signal.  Simplify.
1672         (linux_handle_syscall_trap): New.
1673         (linux_handle_extended_wait): When handling PTRACE_EVENT_CLONE
1674         events, use linux_ops->to_resume instead of direct ptrace with
1675         PTRACE_CONT.  Remove all TRAP_IS_SYSCALL handling.
1676         (wait_lwp): Handle syscall traps with linux_handle_syscall_trap,
1677         and clear the sysgood bit.
1678         (status_callback): Make it clearer and add comments.
1679         (cancel_breakpoints_callback): Ignore if LP has waitstatus set.
1680         (linux_nat_filter_event): Handle syscall traps with
1681         linux_handle_syscall_trap, and clear the sysgood bit.  Move the
1682         check for storing siginfo to after handling extended statuses and
1683         syscall traps.  Store status in the lwp object.
1684         (linux_wait_1): Don't swap the pending status out of the lwp
1685         object until after deciding we found an lwp with an interesting
1686         event.  Requeue a new pending signal if we find one while getting
1687         rid or a pending SIGSTOP we sent ourselves.  Don't clear the
1688         sysgood bit here.
1689
1690         * infrun.c (deal_with_syscall_event): Rename to ...
1691         (handle_syscall_event): ... this.  Always context switch and set
1692         stop_pc, even if not catching the syscall.  If not catching the
1693         syscall, always resume with keep_going.
1694         (handle_inferior_event): Adjust.
1695
1696 2009-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1697
1698         Fix compatibility of --with-system-readline and readline-6.0+.
1699         * configure.ac <--with-system-readline> (for readline_echoing_p): New
1700         test.
1701         * config.in: Regenerate.
1702         * configure: Regenerate.
1703
1704 2009-10-01  Joel Brobecker  <brobecker@adacore.com>
1705
1706         * MAINTAINERS: Move Don Lee to the correct section (Write After
1707         Approval).
1708
1709 2009-10-01  Phil Muldoon  <pmuldoon@redhat.com>
1710
1711         * infcall.c (call_function_by_hand): Add a new cleanup branch for
1712         std::terminate breakpoints.
1713
1714 2009-09-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
1715
1716         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): New variable buf.
1717         Check first the descriptor memory is readable.
1718
1719 2009-09-29  Tom Tromey  <tromey@redhat.com>
1720
1721         * python/py-value.c (valpy_string): NULL-terminate 'keywords'.
1722
1723 2009-09-29  Ulrich Weigand  <uweigand@de.ibm.com>
1724
1725         * s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST
1726         instead of CORE_ADDR for "amode".
1727
1728 2009-09-29  Joel Brobecker  <brobecker@adacore.com>
1729
1730         * ia64-tdep.c: Update the comments on how we insert/remove
1731         breakpoints for L-X instructions.
1732         (ia64_memory_insert_breakpoint, ia64_memory_remove_breakpoint):
1733         Update the comments inside these functions.
1734
1735 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
1736
1737         * gdbarch.sh (displaced_step_hw_singlestep): New callback.
1738         * gdbarch.c, gdbarch.h: Regenerate.
1739         * arch-utils.c (default_displaced_step_hw_singlestep): New function.
1740         * arch-utils.h (default_displaced_step_hw_singlestep): Add prototype.
1741
1742         * ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function.
1743         (rs6000_gdbarch_init): Install it.
1744
1745         * infrun.c (displaced_step_fixup): Use new callback to determine
1746         whether to "step" or "continue" displaced copy.
1747         (resume): Likewise.  Do not call maybe_software_singlestep
1748         for displaced stepping.
1749         (maybe_software_singlestep): Do not handle displaced stepping.
1750
1751 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
1752
1753         * eval.c (evaluate_subexp_standard) [OP_OBJC_MSGCALL]: Support
1754         platforms that use function descriptors.  Prefer to use function
1755         pointer types instead of function types.
1756         * linespec.c (decode_objc): Support function descriptors.  Fully
1757         initialize SAL result.
1758         * objc-lang.c (find_methods): Support function descriptors.
1759         Do not require function symbol to point to text section.
1760
1761         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): When calling
1762         via a function pointer, use the descriptor it points to.
1763
1764 2009-09-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
1765
1766         Fix ia64 breakpoints in the L-X slot.
1767         * ia64-tdep.c (ia64_memory_insert_breakpoint): Extend the comment.
1768         New variable shadow_slotnum, use it appropriately instead of slotnum.
1769         Move shadow_len initialization before SLOTNUM adjustment, cover now the
1770         whole remaining bundle.  Error now on breakpoints requested for the
1771         slot 2 of L-X bundles.  Better sanity check the requested slot 1 of L-X
1772         bundles.
1773         (ia64_memory_remove_breakpoint): New variable shadow_slotnum, use it
1774         appropriately instead of slotnum.  Warn now on breakpoints requested
1775         for the slot 2 of L-X bundles.  Better sanity check the requested slot
1776         1 of L-X bundles.  Update the assertio check of PLACED_SIZE.
1777         (ia64_breakpoint_from_pc): New variable shadow_slotnum, use it
1778         appropriately instead of slotnum.  Move *lenptr initialization before
1779         SLOTNUM adjustment, cover now the whole remaining bundle.  Error now
1780         on breakpoints requested for the slot 2 of L-X bundles.  Better sanity
1781         check the requested slot 1 of L-X bundles.  Simplify the returned
1782         expression.
1783
1784 2009-09-28  Joel Brobecker  <brobecker@adacore.com>
1785
1786         * ia64-tdep.c (ia64_memory_insert_breakpoint): Check the slotnum
1787         and the type of instruction before deciding which slot to save
1788         in the breakpoint shadown contents.
1789
1790 2009-09-28  Doug Evans  <dje@google.com>
1791
1792         * linux-nat.c (status_to_str): Handle TRAP_IS_SYSCALL.
1793         (TRAP_REMOVE_SYSCALL_FLAG): New macro.
1794         (linux_nat_wait_1): Mask off is-syscall bit in wait status for
1795         TRAP_IS_SYSCALL before passing value to caller.
1796
1797 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
1798
1799         * valops.c (value_assign): Respect parent offset when
1800         assigning to a bitfield.
1801
1802 2009-09-28  Hui Zhu  <teawater@gmail.com>
1803
1804         * i386-tdep.c (i386_process_record): Remove "0x" that
1805         don't need.
1806
1807 2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
1808
1809         * s390-tdep.c (op_bctr, op_bctgr, op_bct, op1_bctg, op2_bctg,
1810         op_bxh, op1_bxhg, op2_bxhg, op_bxle, op1_bxleg, op2_bxleg,
1811         op1_brct, op2_brct, op1_brctg, op2_brctg, op_brxh, op1_brxhg,
1812         op2_brxhg, op_brxle, op1_brxlg, op2_brxlg): New enum values.
1813         (is_rsi, is_rie): New insn format decoder routines.
1814         (s390_displaced_step_fixup): New function.
1815         (s390_gdbarch_init): Install displaced stepping routines.
1816
1817 2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
1818
1819         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*):
1820         Add linux-tdep.o to gdb_target_obs.
1821         (s390*-*-*): Likewise.
1822
1823 2009-09-27  Don Lee  <don.lee@sunplusct.com>
1824
1825         * score-tdep.c: Comment out some simulator dependent codes.
1826         * score-tdep.h: Delete some simulator dependent macro definitions.
1827
1828 2009-09-27  Hui Zhu  <teawater@gmail.com>
1829
1830         * record.c (record_open): Change "query" to "error".
1831         (cmd_record_stop): Change "query" to "printf_unfiltered".
1832
1833 2009-09-26  Pierre Muller  <muller@ics.u-strasbg.fr>
1834
1835         * i386-nat.c (i386_stopped_data_address): Also check that
1836         hitted watch register is not vacant.
1837
1838 2009-09-25  Tom Tromey  <tromey@redhat.com>
1839
1840         PR python/10664:
1841         * language.h (struct language_defn) <la_get_string>: Add
1842         'char_type' argument.
1843         (LA_GET_STRING): Likewise.
1844         (default_get_string, c_get_string): Update.
1845         * language.c (default_get_string): Add 'char_type' argument.
1846         * c-valprint.c (c_textual_element_type): Rename from
1847         textual_element_type.  No longer static.  Update callers.
1848         * c-lang.h (c_textual_element_type): Declare.
1849         * c-lang.c (c_get_string): Add 'char_type' argument.
1850
1851 2009-09-25  Tom Tromey  <tromey@redhat.com>
1852
1853         * charset.c (iconv_open): Use UTF-16 and UTF-32, not UCS-2 and
1854         UCS-4.
1855         (iconv): Rename 'ucs_flag'.
1856         (GDB_DEFAULT_TARGET_WIDE_CHARSET): Use UTF-32.
1857         * c-lang.c (charset_for_string_type): Use UTF-16 and UTF-32, not
1858         UCS-2 and UCS-4.
1859         (convert_ucn): Use UTF-32.
1860
1861 2009-09-25  Nick Roberts  <nickrob@snap.net.nz>
1862
1863         * mi/gdb-mi.el: Remove file.
1864
1865 2009-09-23  Joel Brobecker  <brobecker@adacore.com>
1866
1867         * record.c (record_open, record_store_registers, record_xfer_partial):
1868         Replace calls to nquery by calls to query.
1869
1870 2009-09-23  John Wright  <john.wright@hp.com>
1871
1872         PR gdb/10684:
1873         * event-top.c (command_line_handler): Terminate linebuffer before
1874         xstrdup.
1875
1876 2009-09-22  Joel Brobecker  <brobecker@adacore.com>
1877
1878         * solib.c (solib_bfd_open): Relax a bit the compatibility check.
1879
1880 2009-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
1881
1882         * source.c (forget_cached_source_info): Clear last_source_visited.
1883         (init_last_source_visited): Delete.
1884         (directory_command): Do not clear last_source_visited.  Call
1885         forget_cached_source_info only if required.
1886         (unset_substitute_path_command, set_substitute_path_command): Call
1887         forget_cached_source_info.
1888         * mi/mi-cmd-env.c (mi_cmd_env_dir): Do not call
1889         init_last_source_visited.
1890         * defs.h (init_last_source_visited): Delete declaration.
1891
1892 2009-09-22  Tom Tromey  <tromey@redhat.com>
1893
1894         PR gdb/10583:
1895         * python/py-value.c (valpy_int): Use PyLong_FromLongLong.
1896         (valpy_long): Likewise.
1897
1898 2009-09-22  Tom Tromey  <tromey@redhat.com>
1899
1900         PR python/10680:
1901         * eval.c (evaluate_subexp_standard) <do_call_it>: Handle internal
1902         functions in EVAL_AVOID_SIDE_EFFECTS case.
1903
1904 2009-09-22  Jie Zhang  <jie.zhang@analog.com>
1905
1906         * MAINTAINERS: Add myself under Write After Approval.
1907
1908 2009-09-22  Pierre Muller  <muller@ics.u-strasbg.fr>
1909
1910         * windows-nat.c (ctrl_c_handler): Also handle CTRL_BREAK_EVENT.
1911
1912 2009-09-18  Keith Seitz  <keiths@redhat.com>
1913
1914         * cp-support.h (cp_validate_operator): Declare new function.
1915         * cp-support.c (cp_validate_operator): New function.
1916         * linespec.c (decode_compound): For C++ check for a valid operator.
1917
1918 2009-09-21  Keith Seitz  <keiths@redhat.com>
1919
1920         * c-exp.y (qualified_name): Call CHECK_TYPEDEF before deciding
1921         that a type is not an aggregate type.
1922
1923 2009-09-21  Jason Orendorff  <jason.orendorff@gmail.com>
1924
1925         PR python/10666:
1926         * python/py-function.c (fnpy_init): Use xstrdup.
1927
1928 2009-09-21  Jie Zhang  <jie.zhang@analog.com>
1929
1930         * doc/gdb.texinfo: Escape "{" and "}".
1931
1932 2009-09-21  Phil Muldoon <pmuldoon@redhat.com>
1933
1934         PR python/10633
1935
1936         * c-lang.c (c_printstr): Do not loop past  options->print_max when
1937         iterating with wchar_iterate.
1938
1939 2009-09-21  Phil Muldoon <pmuldoon@redhat.com>
1940
1941         * python/py-value.c (valpy_getitem): Test value before allowing
1942         subscript operation.
1943
1944 2009-09-21  Hui Zhu  <teawater@gmail.com>
1945             Michael Snyder  <msnyder@vmware.com>
1946
1947         * amd64-linux-tdep.c (amd64_all_but_ip_registers_record): New
1948         function.
1949         (amd64_linux_syscall_record): Call
1950         amd64_all_but_ip_registers_record if syscall is
1951         sys_rt_sigreturn.
1952         (AMD64_LINUX_redzone, AMD64_LINUX_xstate,
1953         AMD64_LINUX_frame_size): New macros.
1954         (amd64_linux_record_signal): New function.
1955         (amd64_linux_init_abi): Call set_gdbarch_process_record_signal.
1956
1957 2009-09-21  Hui Zhu  <teawater@gmail.com>
1958             Michael Snyder  <msnyder@vmware.com>
1959
1960         * i386-linux-tdep.c (i386_all_but_ip_registers_record): New
1961         function.
1962         (i386_linux_intx80_sysenter_record): Call
1963         i386_all_but_ip_registers_record if syscall is sys_sigreturn
1964         or sys_rt_sigreturn.
1965         (I386_LINUX_xstate, I386_LINUX_frame_size): New macros.
1966         (i386_linux_record_signal): New function.
1967         (i386_linux_init_abi): Call set_gdbarch_process_record_signal.
1968
1969 2009-09-21  Hui Zhu  <teawater@gmail.com>
1970             Michael Snyder  <msnyder@vmware.com>
1971
1972         * record.c (record_end_entry): New struct.
1973         (record_type): Add end.
1974         (record_arch_list_add_end): Set rec->u.end.sigval to
1975         TARGET_SIGNAL_0.
1976         (record_message_args): New struct.
1977         (record_message): Call gdbarch_process_record_signal.
1978         (do_record_message): Add argument "signal".
1979         (record_resume): Ditto.
1980         (record_wait): Ditto.  Check record_list->u.end.sigval
1981         in replay mode.
1982
1983 2009-09-21  Hui Zhu  <teawater@gmail.com>
1984             Michael Snyder  <msnyder@vmware.com>
1985
1986         * gdbarch.sh (process_record_signal): New interface.
1987
1988 2009-09-19  Matt Rice <ratmice@gmail.com>  (tiny change)
1989
1990         Checked in by Joel Brobecker  <brobecker@gnat.com>
1991         * varobj.c (varobj_update): Initialize children_changed.
1992
1993 2009-09-19  Vladimir Prus  <vladimir@codesourcery.com>
1994
1995         * mi/mi-cmd-stack.c (list_args_or_locals): Workaround
1996         gcc warning.
1997
1998 2009-09-19  Vladimir Prus  <vladimir@codesourcery.com>
1999
2000         * mi/mi-cmds.h (mi_cmd_stack_list_variables): Declare.
2001         * mi/mi-cmds.c (mi_cmds): Register -stack-list-variables.
2002         * mi/mi-cmd-stack.c (enum what_to_list): New.
2003         (list_args_or_locals): Accept what_to_list parameter.
2004         Use 'variables' as output name of all are requested.
2005         (mi_cmd_stack_list_variables): New.
2006         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Adjust.
2007
2008 2009-09-19  Eli Zaretskii  <eliz@gnu.org>
2009
2010         * config/djgpp/fnchange.lst: Add missing edits.
2011
2012 2009-09-18  Maxim Grigoriev  <maxim2405@gmail.com>
2013
2014         * xtensa-tdep.c (call0_analyze_prologue): Replace INT_MAX by UNIT_MAX.
2015
2016 2009-09-18  Jan Kratochvil  <jan.kratochvil@redhat.com>
2017
2018         * objfiles.c (free_objfile): Clear SYMFILE_OBJFILE if it is OBJFILE.
2019         * rs6000-nat.c (vmap_ldinfo): Only assertion check SYMFILE_OBJFILE now.
2020         * symfile.c (syms_from_objfile, symbol_file_clear): Likewise.
2021
2022 2009-09-18  Ulrich Weigand  <uweigand@de.ibm.com>
2023
2024         * rs6000-tdep.c (rs6000_builtin_type_vec128): Add v2_double
2025         union member.
2026
2027 2009-09-17  Joel Brobecker  <brobecker@adacore.com>
2028
2029         Fix a build failure on pa-hpux:
2030         * gdb_ptrace.h (PT_SYSCALL): Define here if not already defined.
2031         * inf-ttrace.c (inf_ttrace_wait): Fix compilation failure
2032         introduced after field syscall_id inside struct target_waitstatus
2033         has been renamed into syscall_number.
2034
2035 2009-09-16  H.J. Lu  <hongjiu.lu@intel.com>
2036
2037         PR gdb/10649
2038         * Makefile.in (GDB_DATADIR_PATH): Renamed to ...
2039         (GDB_DATADIR): This.
2040         (xml-syscall-install): Updated.
2041
2042 2009-09-16  Joel Brobecker  <brobecker@adacore.com>
2043
2044         GDB 7.0 branch created (branch timestamp: 2009-09-16 19:00 UTC)
2045         * version.in: Bump version to 7.0.50.20090916-cvs.
2046
2047 2009-09-15  Tom Tromey  <tromey@redhat.com>
2048
2049         * varobj.h (varobj_update_result_t) <new>: New field.
2050         (varobj_get_child_range, varobj_set_child_range): Declare.
2051         (varobj_list_children): Update.
2052         (varobj_enable_pretty_printing, varobj_has_more)
2053         (varobj_pretty_printed_p): Declare.
2054         * varobj.c (pretty_printing): New global.
2055         (varobj_enable_pretty_printing): New function.
2056         (struct varobj_root) <from, to, constructor, child_iter,
2057         saved_item>: New fields.
2058         (varobj_create): Don't call install_default_visualizer.
2059         (instantiate_pretty_printer): Don't use value_copy.
2060         (varobj_has_more): New function.
2061         (restrict_range): New function.
2062         (install_dynamic_child): Likewise.
2063         (dynamic_varobj_has_child_method): Likewise.
2064         (update_dynamic_varobj_children): Remove 'new_and_unchanged'
2065         argument; add 'new', 'unchanged', 'from', and 'to' arguments.
2066         Rewrite.
2067         (varobj_get_num_children): Call update_dynamic_varobj_children.
2068         (varobj_list_children): Add 'from' and 'to' arguments.  Ignore
2069         result of update_dynamic_varobj_children.  Don't call
2070         install_default_visualizer.  Restrict result range.
2071         (varobj_add_child): Don't call install_default_visualizer.
2072         (varobj_pretty_printed_p): New function.
2073         (install_visualizer): Rewrite.  Move earlier in file.
2074         (install_default_visualizer): Likewise.
2075         (construct_visualizer): New function.
2076         (install_new_value_visualizer): Likewise.
2077         (install_new_value): Don't call release_value.  Special case
2078         pretty-printed objects.  Use value_incref.  Rearrange "changed"
2079         logic.
2080         (varobj_get_child_range): New function.
2081         (varobj_set_child_range): Likewise.
2082         (varobj_set_visualizer): Rewrite.
2083         (varobj_update): Rewrite pretty-printing logic.
2084         (new_variable): Initialize new fields.
2085         (free_variable): Destroy new fields.
2086         (value_of_root): Copy 'from' and 'to'.
2087         (my_value_of_variable): Handle pretty-printers.
2088         (value_get_print_value): Rework pretty-printing logic.
2089         (cplus_describe_child): Don't use release_value.
2090         * mi/mi-cmds.h (mi_cmd_enable_pretty_printing)
2091         (mi_cmd_var_set_update_range): Declare.
2092         * mi/mi-cmds.c (mi_cmds): Add enable-pretty-printing and
2093         var-set-update-range.
2094         * mi/mi-cmd-var.c (print_varobj): Update.  Emit "dynamic"
2095         attribute.
2096         (mi_cmd_var_create): Emit "has_more" attribute.
2097         (mi_cmd_var_set_format): Plug memory leak.
2098         (mi_print_value_p): Replace 'type' argument with 'var'.  Handle
2099         pretty-printed varobjs.
2100         (mi_cmd_var_list_children): Accept 'from' and 'to' arguments.
2101         Emit "has_more" attribute.
2102         (mi_cmd_var_evaluate_expression): Plug memory leak.
2103         (mi_cmd_var_assign): Likewise.
2104         (varobj_update_one): Likewise.  Emit "dynamic", "has_more", and
2105         "new_children" attributes.
2106         (mi_cmd_enable_pretty_printing): New function.
2107         (mi_cmd_var_set_update_range): Likewise.
2108
2109 2009-09-15  Doug Evans  <dje@google.com>
2110
2111         * dwarf2expr.h (dwarf_value_location): Add more comments describing
2112         enum values.
2113         (struct dwarf_stack_value): New struct.
2114         (struct dwarf_expr_context): Change type of `stack' from CORE_ADDR*
2115         to struct dwarf_stack_value*.
2116         (struct dwarf_expr_piece): Move `v.value' into its own struct, v.expr,
2117         all uses updated.  Add v.expr.in_stack_memory.
2118         (dwarf_expr_push): Update declaration.
2119         (dwarf_expr_fetch_in_stack_memory): Declare.
2120         * dwarf2expr.c (dwarf_expr_grow_stack): Update calculation of
2121         size of stack value.
2122         (dwarf_expr_push): New arg in_stack_memory, all callers updated.
2123         (dwarf_expr_fetch_in_stack_memory): New function.
2124         (add_piece): Set in_stack_memory for non-literal values.
2125         (execute_stack_op): Allow ops to specify whether the value is on the
2126         program's stack.
2127         (execute_stack_op, case DW_OP_fbreg): Mark value as in stack memory.
2128         (execute_stack_op, case DW_OP_call_frame_cfa): Ditto.
2129         (execute_stack_op, case DW_OP_dup): Copy in_stack_memory flag.
2130         (execute_stack_op, cases DW_OP_pick, DW_OP_over): Ditto.
2131         (execute_stack_op, cases DW_OP_swap, DW_OP_rot): Update type of
2132         dwarf stack value.
2133         * dwarf2loc.c (read_pieced_value): Call read_stack for values known
2134         to be on the program's stack.
2135         (dwarf2_evaluate_loc_desc, case DWARF_VALUE_MEMORY): Call
2136         set_value_stack only for objects known to be in stack memory.
2137         * dwarf2-frame.c (execute_stack_op): New arg initial_in_stack_memory,
2138         all callers updated.
2139
2140         * target.c (memory_xfer_partial): Pass correct length to dcache_update.
2141
2142 2009-09-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
2143
2144         Fix gcc-4.5 HEAD warnings for enum ada_operator.
2145         * Makefile.in (HFILES_NO_SRCDIR): Add ada-operator.inc.
2146         * ada-lang.h (enum ada_operator): Move it to ...
2147         * ada-operator.inc: ... a new file.
2148         * expression.h (enum exp_opcode): Include ada-operator.inc.
2149         New element OP_UNUSED_LAST.  Update comment for OP_EXTENDED0.
2150
2151         Fix gcc-4.5 HEAD warnings for GDB_FORM_cached_string.
2152         * dwarf2read.c (GDB_FORM_cached_string)
2153         (dwarf_form_name <GDB_FORM_cached_string>): Remove.
2154         (struct attribute <dwarf_form>): Reduce the bit width.
2155         (struct attribute <string_is_canonical>, DW_STRING_IS_CANONICAL): New.
2156         (read_attribute_value <DW_FORM_string>)
2157         (read_attribute_value <DW_FORM_strp>): Initialize
2158         DW_STRING_IS_CANONICAL.
2159         (dwarf2_name, dump_die_shallow <DW_FORM_string>)
2160         (dump_die_shallow <DW_FORM_strp>): Update the code using former
2161         GDB_FORM_cached_string.
2162
2163 2009-09-14  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
2164
2165         * amd64-linux-tdep.c: Include xml-syscall.h header, define the XML
2166         syscall name for the architecture.
2167         (amd64_linux_get_syscall_number): New function.
2168         (amd64_linux_init_abi): Register the correct functions for syscall
2169         catchpoint; set the correct syscall file name.
2170         * breakpoint.c: New include: xml-syscall.h.
2171         (set_raw_breakpoint_without_location): Setting the parameters
2172         for the catch syscall feature.
2173         (insert_catch_syscall): New.
2174         (remove_catch_syscall): New.
2175         (breakpoint_hit_catch_syscall): New.
2176         (print_it_catch_syscall): New.
2177         (print_one_catch_syscall): New.
2178         (print_mention_catch_syscall): New.
2179         (catch_syscall_breakpoint_ops): New.
2180         (syscall_catchpoint_p): New.
2181         (create_catchpoint_without_mention): New.
2182         (create_catchpoint): Modified in order to use
2183         create_catchpoint_without_mention.
2184         (create_syscall_event_catchpoint): New.
2185         (clean_up_filters): New.
2186         (catch_syscall_split_args): New.
2187         (catch_syscall_command_1): New.
2188         (delete_breakpoint): Add cleanup for catch syscall.
2189         (is_syscall_catchpoint_enabled): New.
2190         (catch_syscall_enabled): New.
2191         (catching_syscall_number): New.
2192         (catch_syscall_completer): New completer function.
2193         (add_catch_command): Add the completer function for catchpoints.
2194         * breakpoint.h (syscalls_to_be_caught): New vector.
2195         (catch_syscall_enabled): New.
2196         (catching_syscall_number): New.
2197         * gdbarch.c: Regenerated.
2198         * gdbarch.h: Regenerated.
2199         * gdbarch.sh: Add syscall catchpoint functions and structures.
2200         (get_syscall_number): New.
2201         (UNKNOWN_SYSCALL): New definition.
2202         * i386-linux-nat.c (i386_linux_resume): Select the proper request
2203         to be made for ptrace() considering if we are catching syscalls
2204         or not.
2205         * i386-linux-tdep.c: Include xml-syscall.h header, define the XML
2206         syscall name for the architecture.
2207         (i386_linux_get_syscall_number): New.
2208         (i386_linux_init_abi): Register the correct functions for syscall
2209         catchpoint; set the correct syscall file name.
2210         * inf-child.c (inf_child_set_syscall_catchpoint): New.
2211         (inf_child_target): Assign default values to target_ops.
2212         * inf-ptrace.c (inf_ptrace_resume): Select the proper request
2213         to be made for ptrace() considering if we are catching syscalls
2214         or not.
2215         * inferior.h (struct inferior): Included new variables
2216         any_syscall_count, syscalls_counts and total_syscalls_count,
2217         used to keep track of requested syscall catchpoints.
2218         * infrun.c (resume): Add syscall catchpoint.
2219         (deal_with_syscall_event): New.
2220         (handle_inferior_event): Add syscall entry/return events.
2221         (inferior_has_called_syscall): New.
2222         * linux-nat.c: Define some helpful variables to track wether we have
2223         support for the needed ptrace option.
2224         (linux_test_for_tracesysgood): New.
2225         (linux_supports_tracesysgood): New.
2226         (linux_enable_tracesysgood): New.
2227         (linux_enable_event_reporting): Save the current used ptrace
2228         options.
2229         (linux_child_post_attach): Calling linux_enable_tracesysgood.
2230         (linux_child_post_startup_inferior): Likewise.
2231         (linux_child_set_syscall_catchpoint): New function.
2232         (linux_handle_extended_wait): Handle the case which the inferior stops
2233         because it has called or returned from a syscall.
2234         (linux_target_install_ops): Install the necessary functions to handle
2235         syscall catchpoints.
2236         * linux-nat.h (struct lwp_info): Include syscall_state into the
2237         structure, which indicates if we are in a syscall entry or return.
2238         * ppc-linux-tdep.c: Include xml-syscall.h header, define the XML
2239         syscall filename for the arch.
2240         (ppc_linux_get_syscall_number): New.
2241         (ppc_linux_init_abi): Register the correct functions for syscall
2242         catchpoint; setting the correct name for the XML syscall file.
2243         * target.c (update_current_target): Update/copy functions related to
2244         syscall catchpoint.
2245         (target_waitstatus_to_string): Add syscall catchpoint entry/return
2246         events.
2247         * target.h (struct target_waitstatus): Add syscall number.
2248         (struct syscall): New struct to hold information about syscalls
2249         in the system.
2250         (struct target_ops): Add ops for syscall catchpoint.
2251         (inferior_has_called_syscall): New.
2252         (target_set_syscall_catchpoint): New.
2253         * xml-support.c (xml_fetch_content_from_file): New function,
2254         transferred from xml-tdesc.c.
2255         * xml-support.h (xml_fetch_content_from_file): New.
2256         * xml-tdesc.c (fetch_xml_from_file): Function removed;
2257         transferred to xml-support.c.
2258         (file_read_description_xml): Updated to use the new
2259         xml_fetch_content_from_file function.
2260         * syscalls/gdb-syscalls.dtd: New definition file for syscall's XML
2261         support.
2262         * syscalls/amd64-linux.xml: New file containing information about
2263         syscalls for GNU/Linux systems that use amd64 architecture.
2264         * syscalls/i386-linux.xml: New file containing information about
2265         syscalls for GNU/Linux systems that use i386 architecture.
2266         * syscalls/ppc-linux.xml: New file containing information about
2267         syscalls for GNU/Linux systems that use PPC architecture.
2268         * syscalls/ppc64-linux.xml: New file containing information about
2269         syscalls for GNU/Linux systems that use PPC64 architecture.
2270         * xml-syscall.c: New file containing functions for manipulating
2271         syscall's XML files.
2272         * xml-syscall.h: New file, exporting the functions above mentioned.
2273         * Makefile.in: Support for relocatable GDB datadir and XML
2274         syscall.
2275         * NEWS: Added information about the catch syscall feature.
2276
2277 2009-09-14  Doug Evans  <dje@google.com>
2278
2279         * target.c (memory_xfer_partial): Only update dcache after we know
2280         the write succeeded.
2281
2282 2009-09-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
2283
2284         *minsyms.c (lookup_minimal_symbol_by_pc_section_1): Assert non-NULL
2285         section.
2286         (lookup_minimal_symbol_by_pc_section): Check for NULL section.
2287         (lookup_minimal_symbol_by_pc): Adjust.
2288
2289 2009-09-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
2290
2291         * objfiles.c (qsort_cmp): Remove asserts.
2292         (insert_section_p, filter_debuginfo_sections): New function.
2293         (filter_overlapping_sections): Likewise.
2294         (update_section_map): Adjust.   
2295
2296 2009-09-13  Daniel Jacobowitz  <dan@codesourcery.com>
2297
2298         * frame.c (get_frame_id): Default to outer_frame_id if the this_id
2299         method does not supply an ID.  Assert that the result is not
2300         null_frame_id.
2301         (outer_frame_id): New.
2302         (frame_id_p): Accept outer_frame_id.
2303         (frame_id_eq): Allow outer_frame_id to be equal to itself.
2304         (frame_find_by_id): Revert previous local workarounds.
2305         (get_prev_frame_1): Adjust end-of-stack check to test outer_frame_id.
2306         * frame.h (null_frame_id, frame_id_p): Update comments.
2307         (outer_frame_id): Declare.
2308         * infrun.c (handle_inferior_event): Do not treat all steps from the
2309         outermost frame as subroutine calls.
2310
2311         * libunwind-frame.c (libunwind_frame_this_id): Do not clear THIS_ID.
2312         * hppa-tdep.c (hppa_stub_frame_this_id): Likewise.
2313         * ia64-tdep.c (ia64_frame_this_id): Likewise.
2314         (ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id):
2315         Use outer_frame_id instead of null_frame_id.
2316         * amd64obsd-tdep.c (amd64obsd_trapframe_cache): Use outer_frame_id.
2317         * i386obsd-tdep.c (i386obsd_trapframe_cache): Likewise.
2318         * inline-frame.c (inline_frame_this_id): Refuse outer_frame_id.
2319         * thread.c (restore_selected_frame): Update comment and remove
2320         frame_id_p check.
2321
2322 2009-09-11  Doug Evans  <dje@google.com>
2323
2324         * dwarf2expr.c (execute_stack_op, case DW_OP_piece): Delete unused
2325         local addr_or_regnum.
2326
2327         * objfiles.c (struct objfile_data): Delete member cleanup and replace
2328         with save, free.
2329         (register_objfile_data_with_cleanup): Delete arg cleanup and replace
2330         with save, free.  All callers updated.
2331         (clear_objfile_data): Replace cleanup loop with separate save and
2332         free loops.
2333         * objfiles.h (register_objfile_data_with_cleanup): Update.
2334         * arm-tdep.c (arm_objfile_data_free): Renamed from
2335         arm_objfile_data_cleanup, all callers updated.
2336         * dwarf2read.c (dwarf2_per_objfile_free): Renamed from
2337         dwarf2_per_objfile_cleanup, all callers updated.
2338         * python/py-objfile.c (py_free_objfile): Renamed from clean_up_objfile,
2339         all callers updated.
2340         * python/py-type.c (save_objfile_types): Renamed from
2341         clean_up_objfile_types, all callers updated.
2342
2343 2009-09-11  Tom Tromey  <tromey@redhat.com>
2344
2345         * dwarf2loc.c (struct piece_closure) <arch>: New field.
2346         (dwarf2_evaluate_loc_desc): Update.
2347         (dwarf2_loc_desc_needs_frame): Likewise.
2348         (allocate_piece_closure): Initialize new field.
2349         (read_pieced_value): Update.
2350         (write_pieced_value): Update.
2351         (copy_pieced_value_closure): Update.
2352         * dwarf2expr.h (enum dwarf_value_location): New.
2353         (struct dwarf_expr_context) <in_reg>: Remove.
2354         <location, len, data>: New fields.
2355         (struct dwarf_expr_piece) <in_reg, value>: Remove.
2356         <location, v>: New fields.
2357         * dwarf2expr.c (add_piece): Remove in_reg, value arguments.
2358         Update.
2359         (require_composition): New function.
2360         (execute_stack_op): Update.
2361         <DW_OP_implicit_value, DW_OP_stack_value>: New cases.
2362         <DW_OP_reg0>: Set location, not in_reg.
2363         <DW_OP_regx>: Likewise.  Use require_composition.
2364         <DW_OP_fbreg>: Update.
2365         <DW_OP_piece>: Likewise.
2366         * dwarf2-frame.c (execute_stack_op): Update.
2367
2368 2009-09-10  Anthony Green  <green@moxielogic.com>
2369
2370         * moxie-tdep.c (moxie_analyze_prologue): Recognize new prologue
2371         sequences.
2372
2373 2009-09-10  Michael Snyder  <msnyder@vmware.com>
2374
2375         * remote.c (PACKET_bc, PACKET_bs): New enums.
2376         (remote_protocol_features): Add ReverseStep, ReverseContinue.
2377         (remote_resume): Check for reverse capability.
2378         (_initialize_remote): Add packet config for "bs" and "bc" packets.
2379         * NEWS (new options): Mention set/show for "bs" and "bc" packets.
2380
2381 2009-09-10  Joel Brobecker  <brobecker@adacore.com>
2382
2383         * top.c (interactive_mode): New static variable.
2384         (show_interactive_mode): New function.
2385         (input_from_terminal_p): If interactive_mode is not auto, then
2386         use that rather than checking the stdin settings.
2387         (init_main): Add "set/show interactive-mode" command.
2388         * NEWS: Add entry for new "set/show interactive-mode" command.
2389
2390 2009-09-10  Joel Brobecker  <brobecker@adacore.com>
2391
2392         * configure.ac: Fix the names of the python source and object files
2393         following the renaming done in an earlier change.
2394         * configure: Regenerate.
2395
2396 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
2397
2398         Fix a build failure on AIX.
2399         * rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table
2400         instead of relying on the to_sections/to_section_end target_ops
2401         field, since the latter have been removed in a previous patch.
2402
2403 2009-09-08  Thiago Jung Bauermann  <thiago.bauermann@gmail.com>
2404
2405         * Makefile.in (py-cmd.o): Renamed from python-cmd.o.  Updated
2406         references.
2407         (py-frame.o): Renamed from python-frame.o.  Updated references.
2408         (py-function.o): Renamed from python-function.o.  Updated references.
2409         (py-objfile.o): Renamed from python-objfile.o.  Updated references.
2410         (py-prettyprint.o): Renamed from python-prettyprint.o.  Updated
2411         references.
2412         (py-type.o): Renamed from python-type.o.  Updated references.
2413         (py-utils.o): Renamed from python-utils.o.  Updated references.
2414         (py-value.o): Renamed from python-value.o.  Updated references.
2415         * py-cmd.c: Renamed from python-cmd.c.
2416         * py-frame.c: Renamed from python-frame.c.
2417         * py-function.c: Renamed from python-function.c.
2418         * py-objfile.c: Renamed from python-objfile.c.
2419         * py-prettyprint.c: Renamed from python-prettyprint.c.
2420         * py-type.c: Renamed from python-type.c.
2421         * py-utils.c: Renamed from python-utils.c.
2422         * py-value.c: Renamed from python-value.c.
2423
2424 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
2425
2426         Avoid quadratic behavior when computing the value of a register.
2427         * frame.c (frame_stash): New static constant.
2428         (frame_stash_add, frame_stash_find, frame_stash_invalidate):
2429         New functions.
2430         (get_frame_id): Minor reformatting. Add the frame to the frame stash.
2431         (frame_find_by_id): Search the frame stash first before walking all
2432         frames starting from te current_frame.
2433         (reinit_frame_stash): Add call to frame_stash_invalidate ();
2434
2435 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
2436
2437         * block.c (contained_in): Return zero for nested functions.
2438         * blockframe.c (block_innermost_frame): Delete unreferenced local
2439         variable.
2440
2441 2009-09-08  Doug Evans  <dje@google.com>
2442
2443         * target.c (initialize_targets): Fix thinko in stack_cache_enabled_p.
2444
2445 2009-09-08  Michael Snyder  <msnyder@vmware.com>
2446
2447         * amd64-linux-tdep.h (enum amd64_syscall): New enum consts, 
2448         to replace literal consts used in amd64-linux-tdep.c
2449         * linux-record.h (enum gdb_syscall): New enum consts, to replace
2450         literal consts used in amd64-linux-tdep.c and linux-record.c.
2451         * amd64-linux-tdep.c (amd64_canonicalize_syscall): New function,
2452         translate from native amd64 Linux syscall id to internal gdb id.
2453         (amd64_linux_syscall_record): Switch statement abstracted out 
2454         and replaced with a call to amd64_canonicalize_syscall.
2455         * linux-record.c (record_linux_system_call): Replace literal
2456         consts with enum consts.
2457         * i386-linux-tdep.c (i386_canonicalize_syscall): New function,
2458         trivially translate from native i386 Linux syscalls to gdb syscalls.
2459         (i386_linux_intx80_sysenter_record): 
2460
2461 2009-09-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2462
2463         * gdb/Makefile.in (check//%): Parse 'config.status --version'
2464         output to recreate the configuration from the testsuite directory,
2465         rather than running 'config.status --recheck' from a different
2466         build directory.  Let configure do the recursion rather than
2467         doing it manually.
2468
2469 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2470
2471         * ia64-tdep.c (ia64_memory_remove_breakpoint): Call do_cleanups
2472         before a return.
2473
2474 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2475
2476         * ia64-tdep.c (ia64_memory_insert_breakpoint)
2477         (ia64_memory_remove_breakpoint): Return immediately if any of memory
2478         reads fail.  Do not combine the VAL values.
2479
2480 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2481
2482         Fix ia64 shadowing of breakpoints in multiple slots of a single bundle.
2483         * ia64-tdep.c (ia64_memory_insert_breakpoint): New call
2484         of make_show_memory_breakpoints_cleanup with parameter 0.  Move the
2485         reading of SHADOW_CONTENTS to this memory state point of code.  Update
2486         comment for the memory re-read.
2487
2488 2009-09-07  Michael Snyder  <msnyder@vmware.com>
2489
2490         * record.c: Minor comment and white space fix-ups.
2491
2492 2009-09-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
2493
2494         * m68k-tdep.c (m68k_gdbarch_init): Allocate TDEP as cleared.
2495         * sparc-tdep.c (sparc32_gdbarch_init): Allocate TDEP as cleared.
2496         Remove explicit clearing of TDEP fields.
2497
2498 2009-09-06  Hui Zhu  <teawater@gmail.com>
2499
2500         * i386-tdep.c (i386_record_check_override): Deleted.
2501         (i386_record_lea_modrm): Ditto.
2502         (i386_process_record): Ditto.
2503
2504 2009-09-05  Eli Zaretskii  <eliz@gnu.org>
2505
2506         * config/djgpp/djconfig.sh: Fix for Autoconf 2.64.
2507         * config/djgpp/config.sed: Fix for Autoconf 2.64.
2508
2509 2009-09-05  Hui Zhu  <teawater@gmail.com>
2510
2511         * i386-tdep.c (i386_record_s): Add orig_addr.
2512         (i386_record_check_override): New function.
2513         (i386_record_lea_modrm): Call i386_record_check_override.
2514         (i386_process_record): Ditto.
2515
2516 2009-09-03  Nathan Froyd  <froydnj@codesourcery.com>
2517
2518         * dwarf2loc.c (struct piece_closure): New.
2519         (allocate_piece_closure): New function.
2520         (read_pieced_value): New function.
2521         (write_pieced_value): New function.
2522         (copy_pieced_value_closure): New function.
2523         (free_pieced_value_closure): New function.
2524         (pieced_value_funcs): Define.
2525         (dwarf2_evaluate_loc_desc): Return a computed value for a variable
2526         described with pieces.
2527
2528 2009-09-03  Pierre Muller <muller@ics.u-strasbg.fr>
2529             Richard Earnshaw <rearnsha@arm.com>
2530
2531         * arm-tdep.c (displaced_write_reg): Replace call to abort by call
2532         to internal_error.
2533
2534 2009-09-02  Tom Tromey  <tromey@redhat.com>
2535
2536         * frame.h (frame_unwinder_is): Declare.
2537         * frame.c (frame_unwinder_is): New function.
2538         * dwarf2loc.c: Include dwarf2-frame.h.
2539         (dwarf_expr_frame_cfa): New function.
2540         (dwarf2_evaluate_loc_desc): Use it.
2541         (needs_frame_frame_cfa): New function.
2542         (dwarf2_loc_desc_needs_frame): Use it.
2543         * dwarf2expr.h (struct dwarf_expr_context) <get_frame_cfa>: New
2544         field.
2545         * dwarf2expr.c (execute_stack_op) <DW_OP_call_frame_cfa>: New
2546         case.
2547         * dwarf2-frame.h (dwarf2_frame_cfa): Declare.
2548         * dwarf2-frame.c (no_get_frame_cfa): New function.
2549         (execute_stack_op): Use it.
2550         (dwarf2_frame_cfa): New function.
2551
2552 2009-09-02  Hui Zhu  <teawater@gmail.com>
2553
2554         * record.c (record_resume): Change "signal" to "siggnal".
2555
2556 2009-09-01  Hui Zhu  <teawater@gmail.com>
2557
2558         * record.c (record_resume): Change "siggnal" to "signal".
2559
2560 2009-09-01  Hui Zhu  <teawater@gmail.com>
2561
2562         * record.c (record_resume_siggnal): Deleted.
2563         (record_resume): Ditto.
2564         (record_wait): Change record_resume_siggnal to
2565         TARGET_SIGNAL_0.
2566
2567 2009-08-31  Jacob Potter  <jdpotter@google.com>
2568             Doug Evans  <dje@google.com>
2569
2570         Implement TARGET_OBJECT_STACK_MEMORY.
2571         * NEWS: Add note on new "set stack-cache" option.
2572         * corefile.c (read_stack): New function.
2573         * dcache.c (dcache_struct): New member ptid.
2574         (dcache_enable_p): Mark as obsolete.
2575         (show_dcache_enabled_p): Flag option as deprecated.
2576         (dcache_invalidate): Update ptid.
2577         (dcache_invalidate_line): New function.
2578         (dcache_read_line): No longer check cacheable attribute, stack
2579         accesses get cached despite attribute.
2580         (dcache_init): Set ptid.
2581         (dcache_xfer_memory): Flush cache if from different ptid than before.
2582         Update cache after write.
2583         (dcache_update): New function.
2584         (dcache_info): Report ptid.
2585         (_initialize_dcache): Update text for `remotecache' to indicate it
2586         is obsolete.
2587         * dcache.h (dcache_update): Declare.
2588         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Mark values on stack with
2589         set_value_stack.
2590         * frame-unwind.c (frame_unwind_got_memory): Ditto.
2591         * gdbcore.h (read_stack): Declare.
2592         * memattr.c (mem_enable_command): Call target_dcache_invalidate
2593         instead of dcache_invalidate.
2594         (mem_disable_command, mem_delete_command): Ditto.
2595         * target.c (stack_cache_enabled_p_1): New static global.
2596         (stack_cache_enabled_p): New static global.
2597         (set_stack_cache_enabled_p): New function.
2598         (show_stack_cache_enabled_p): New function.
2599         (target_dcache): Make static.
2600         (target_dcache_invalidate): New function.
2601         (target_load, target_resume): Call target_dcache_invalidate
2602         instead of dcache_invalidate.
2603         (memory_xfer_partial): New arg object, all callers updated.
2604         Check for existing inferior before calling dcache routines.
2605         When writing non-TARGET_OBJECT_STACK_MEMORY, notify dcache.
2606         (target_xfer_partial): Call memory_xfer_partial for
2607         TARGET_OBJECT_STACK_MEMORY.
2608         (target_read_stack): New function.
2609         (initialize_targets): Install new option `stack-cache'.
2610         * target.h: Remove #include of dcache.h.
2611         (enum target_object): New value TARGET_OBJECT_STACK_MEMORY.
2612         (target_dcache): Delete.
2613         (target_dcache_invalidate): Declare.
2614         (target_read_stack): Declare.
2615         * top.c (prepare_execute_command): New function.
2616         (execute_command): Call prepare_execute_command
2617         instead of free_all_values.
2618         * top.h (prepare_execute_command): Declare.
2619         * valops.c (get_value_at): New function.
2620         (value_at): Guts moved to get_value_at.
2621         (value_at_lazy): Similarly.
2622         (value_fetch_lazy): Call read_stack for stack values.
2623         * value.c (struct value): New member `stack'.
2624         (value_stack, set_value_stack): New functions.
2625         * value.h (value_stack, set_value_stack): Declare.
2626         * mi/mi-main.c (mi_cmd_execute): Call prepare_execute_command
2627         instead of free_all_values.
2628
2629 2009-08-29  Hui Zhu  <teawater@gmail.com>
2630
2631         * i386-tdep.c (i386_process_record): Fix the error of string
2632         ops instructions's handler.
2633
2634 2009-08-28  Doug Evans  <dje@google.com>
2635
2636         * top.c (execute_command): Remove redundant comment.
2637
2638 2009-08-28  Daniel Jacobowitz  <dan@codesourcery.com>
2639
2640         PR gdb/10565
2641
2642         * value.c (value_primitive_field): Do not save value_offset for
2643         bitfields.
2644         (unpack_bits_as_long): Do not read an entire ULONGEST.
2645
2646 2009-08-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
2647
2648         Support constant DW_AT_data_member_location by GCC PR debug/40659.
2649         * dwarf2read.c
2650         (dwarf2_add_field <DW_TAG_member> <DW_AT_data_member_location>):
2651         Initialize BYTE_OFFSET to 0 by default.  Explicitly check if
2652         attr_form_is_block.
2653         (dwarf2_add_field <DW_TAG_inheritance> <DW_AT_data_member_location>)
2654         (read_common_block <DW_AT_data_member_location>): New variable
2655         byte_offset.  Fix crash on non-DW_BLOCK ATTR values.
2656
2657 2009-08-28  Hui Zhu  <teawater@gmail.com>
2658
2659         * record.c (record_list_release_next): Change the first
2660         record_reg to record_end.
2661
2662 2009-08-27  Doug Evans  <dje@google.com>
2663
2664         * value.c (free_all_values): Tweak comment.
2665
2666         * NEWS: Add note on "info sharedlibrary".
2667         Remove note on "set print symbol-loading".
2668         * main.c (captured_main): Pass !batch for from_tty when calling
2669         symbol_file_add_main.
2670         * objfiles.h (objfile_has_partial_symbols): Declare.
2671         (objfile_has_full_symbols): Declare.
2672         * objfiles.c (objfile_has_partial_symbols): New function.
2673         (have_partial_symbols): Use it.
2674         (objfile_has_full_symbols): New function.
2675         (have_full_symbols): Use it.
2676         * solib.c: Include interps.h.
2677         (solib_read_symbols): Back out patch of 2008-07-10.
2678         Add test for info_verbose for symbol loading messages for
2679         consistency with symfile.c.
2680         (info_sharedlibrary_command): Handle optional parameter of regex of
2681         libraries to list.  Inform user of libraries without debugging info.
2682         Rewrite to use ui_out routines to format output.
2683         * symfile.c (print_symbol_loading): Delete.
2684         (symbol_file_add_with_addrs_or_offsets): Back out patch of 2008-07-10.
2685         Print "no debugging symbols found" only if from_tty || info_verbose;
2686         and only check file being loaded, not all files.
2687         (reread_symbols): Test file being loaded for whether it has symbols,
2688         not all files.
2689         (__initialize_symfile): Delete `set print symbol-loading'.
2690         * symfile.h (print_symbol_loading): Delete.
2691
2692 2009-08-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
2693
2694         * varobj.c (varobj_create): Error if the specified frame was not found
2695         and it is needed.
2696
2697 2009-08-26  Michael Snyder  <msnyder@vmware.com>
2698
2699         * i386-tdep.c (i386_process_record): Break out of prefix loop
2700         if not amd64.  Otherwise inc/dec instructions are lost.
2701
2702 2009-08-25  Keith Seitz  <keiths@redhat.com>
2703
2704         * c-exp.y (yylex): Add cxx_only check for tokentab2 and tokentab3
2705         searches. 
2706         (tokentab3): Add cxx_only for DOT_STAR.
2707
2708 2009-08-25  Pedro Alves  <pedro@codesourcery.com>
2709
2710         * inferior.c (print_inferior): Align columns left.  Remove header
2711         for the the "current" column.  Rename column "Id" to "Num".
2712         Rename column "PID" to "Description".  Print if there's no selected
2713         inferior.
2714
2715 2009-08-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
2716
2717         Fix ia64 start crash when GDB built with -lmcheck.
2718         * ia64-tdep.c (ia64_gdbarch_init): Allocate TDEP as cleared.  Remove
2719         specific clearing of TDEP SIGCONTEXT_REGISTER_ADDRESS and
2720         PC_IN_SIGTRAMP.
2721
2722 2009-08-24  Keith Seitz  <keiths@redhat.com>
2723
2724         * c-exp.y (tokentab3): Add new token, ARROW_STAR. Changed all users.
2725         (tokentab2): Add new token, DOT_STAR. Changed all users.
2726
2727 2009-08-24  Keith Seitz  <keiths@redhat.com>
2728
2729         * symtab.c (default_make_symbol_completion_list): Keep
2730         ':', too, so that we can limit searches in namespaces
2731         and classes. 
2732
2733 2009-08-24  Tom Tromey  <tromey@redhat.com>
2734
2735         * python/python-value.c (valpy_richcompare): Don't return from
2736         inside a TRY_CATCH.
2737
2738 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2739
2740         * CONTRIBUTE: Bump documented Autoconf version.
2741         * configure.ac: Do not substitute datarootdir, htmldir,
2742         pdfdir, docdir.  Do not process --with-datarootdir,
2743         --with-htmldir, --with-pdfdir, --with-docdir.
2744         * configure: Regenerate.
2745
2746         * aclocal.m4: Regenerate.
2747         * config.in: Likewise.
2748         * configure: Likewise.
2749         * gnulib/Makefile.in: Likewise.
2750
2751         * configure.ac: Use AC_USE_SYSTEM_EXTENSIONS instead of
2752         AC_GNU_SOURCE, AC_AIX, AC_ISC_POSIX.
2753
2754 2009-08-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
2755
2756         * objfiles.h (gdb_bfd_ref): New prototype.
2757         * objfiles.c (gdb_bfd_ref): New function.
2758         (allocate_objfile): Call it.
2759         (gdb_bfd_unref): Adjust assertion.
2760         * solib.c (solib_map_sections): Add reference.
2761         (symbol_add_stub): Don't add reference here.
2762         * symfile.c (reread_symbols): Add reference.
2763
2764 2009-08-21  Ken Werner <ken@linux.vnet.ibm.com>
2765             Doug Evans  <dje@google.com>
2766
2767         * jit.c (jit_event_handler): Use paddress to print target addresses.
2768         Wrap printf string in _().
2769
2770 2009-08-21  Doug Evans  <dje@google.com>
2771
2772         * jit.c (jit_read_descriptor): New arg gdbarch, all callers updated.
2773         (jit_read_code_entry, jit_register_code): Ditto.
2774         (jit_event_handler): Ditto.
2775         (jit_inferior_init): Renamed from previous jit_inferior_created_hook.
2776         (jit_inferior_created_hook, jit_breakpoint_re_set): New functions.
2777         (jit_inferior_created_observer): Renamed from
2778         jit_inferior_created_hook1, all callers updated.
2779         * jit.h (jit_breakpoint_re_set): Declare.
2780         (jit_event_handler): Update prototype.
2781         * breakpoint.c (breakpoint_re_set): Call jit_breakpoint_re_set instead
2782         of jit_inferior_created_hook.
2783
2784 2009-08-21  Hui Zhu  <teawater@gmail.com>
2785
2786         * record.c (record_wait): Change the argument of
2787         record_beneath_to_wait to options.
2788
2789 2009-08-20  Jacob Potter  <jdpotter@google.com>
2790
2791         Replace dcache with splay tree.
2792         Remove partially implemented writeback support.
2793         * dcache.c: Include splay-tree.h.
2794         (LINE_SIZE_POWER): Change from 5 to 6.
2795         (DCACHE_SIZE): Change from 64 to 4096.
2796         (ENTRY_INVALID, ENTRY_VALID, ENTRY_DIRTY): Delete.
2797         (state_chars): Delete.
2798         (struct dcache_block): Clean up; remove state and anydirty fields.
2799         (struct dcache_struct): Redefine as a splay tree and linked list.
2800         (last_cache): Make static.
2801         (dcache_invalidate, dcache_hit): Rewrite for new cache structure.
2802         (dcache_read_line, dcache_alloc): Rewrite for new cache structure.
2803         (dcache_write_line): Delete.
2804         (dcache_writeback): Delete.
2805         (dcache_peek_byte): Clean up; remove "invalid" state check.
2806         (dcache_poke_byte): Rewrite for new cache structure; clarify comment.
2807         (dcache_splay_tree_compare): New function.
2808         (dcache_init, dcache_free): Rewrite for new cache structure.
2809         (dcache_xfer_memory): Rewrite for new write-through cache structure.
2810         (dcache_print_line): New function.
2811         (dcache_info): Rewrite for new cache structure.
2812         (_initialize_dcache): Update "info dcache" help text.
2813         * dcache.h (dcache_xfer_memory): Update declaration.
2814         * target.c (memory_xfer_partial): Update calls to dcache_xfer_memory.
2815
2816 2009-08-19  Reid Kleckner  <reid@kleckner.net>
2817
2818         Add interface for JIT code generation.
2819         * NEWS: Announce JIT interface.
2820         * Makefile.in (SFILES): Add jit.c.
2821         (HFILES_NO_SRCDIR): Add jit.h.
2822         (COMMON_OBS): Add jit.o.
2823         * jit.c: New file.
2824         * jit.h: New file.
2825         * breakpoint.h (enum bptype): Add bp_jit_event to enum.
2826         * breakpoint.c:
2827         (update_breakpoints_after_exec): Delete jit breakpoints after exec.
2828         (bpstat_what): Update event table for bp_jit_event.
2829         (print_it_typical): Added case for bp_jit_event.
2830         (print_one_breakpoint_location): Added case for bp_jit_event.
2831         (allocate_bp_location): Added case for bp_jit_event.
2832         (mention): Added case for bp_jit_event.
2833         (delete_command): Added case for bp_jit_event.
2834         (breakpoint_re_set_one): Added case for bp_jit_event.
2835         (breakpoint_re_set): Added call to jit_inferior_created_hook.
2836         (create_jit_event_breakpoint): New.
2837         * infrun.c (handle_inferior_event): Add handler for jit event.
2838         (follow_exec): Add call to jit_inferior_created_hook.
2839
2840 2009-08-19  Ulrich Weigand  <uweigand@de.ibm.com>
2841
2842         * value.c (enum internalvar_kind): Replace INTERNALVAR_SCALAR by
2843         INTERNALVAR_INTEGER and INTERNALVAR_POINTER.
2844         (union internalvar_data): Replace "scalar" member by "integer"
2845         and "pointer".
2846         (value_of_internalvar): Handle INTERNALVAR_INTEGER and
2847         INTERNALVAR_POINTER instead of INTERNALVAR_SCALAR.
2848         (get_internalvar_integer): Likewise.
2849         (set_internalvar): Likewise.
2850         (set_internalvar_integer): Likewise.
2851         (preserve_one_internalvar): Likewise.
2852         (value_from_pointer): Handle typedef'd pointer types.
2853
2854 2009-08-18  Tom Tromey  <tromey@redhat.com>
2855
2856         * utils.c (add_internal_problem_command): Free set_doc and
2857         show_doc.
2858         * remote.c (add_packet_config_cmd): Free set_doc and show_doc.
2859         * language.c (add_language): Free language_set_doc.
2860
2861 2009-08-18  Tom Tromey  <tromey@redhat.com>
2862
2863         * Makefile.in (ALL_TARGET_OBS): Remove prologue-value.o, solib.o.
2864
2865 2009-08-17  Ulrich Weigand  <uweigand@de.ibm.com>
2866
2867         * symfile.c (reread_symbols): Call objfiles_changed *before*
2868         calling clear_symtab_users.
2869
2870 2009-08-17  Michael Snyder  <msnyder@vmware.com>
2871
2872         * amd64-tdep.c: Add a frame unwinder for function epilogues.
2873         (amd64_in_function_epilogue_p): New function.
2874         (amd64_epilogue_frame_sniffer): New function.
2875         (amd64_epilogue_frame_cache): New function.
2876         (amd64_epilogue_frame_this_id): New function.
2877         (amd64_epilogue_frame_unwind): New struct frame_unwind.
2878         (amd64_init_abi): Hook the new unwinder.
2879
2880         * amd64-linux-tdep.c (amd64_linux_init_abi): Set gdbarch to use
2881         SVR4 method for skip_trampoline_code.
2882
2883 2009-08-17  Pedro Alves  <pedro@codesourcery.com>>
2884
2885         * objfiles.c (objfile_relocate): Relocate the entry point before
2886         relocating the section offsets.  Flush the section map before
2887         resetting breakpoints.
2888
2889 2009-08-14  Doug Evans  <dje@google.com>
2890
2891         * symfile.c (find_separate_debug_file): Remove double free of
2892         canon_name.
2893
2894 2009-08-14  Pedro Alves  <pedro@codesourcery.com>
2895
2896         * top.c (any_thread_of): Delete.
2897         (kill_or_detach): Use any_thread_of_process.
2898         * top.c (print_inferior_quit_action): New.
2899         (quit_confirm): Rewrite to print info about all inferiors.
2900         * target.c (dispose_inferior): New.
2901         (target_preopen): Use it.
2902
2903 2009-08-14  Pedro Alves  <pedro@codesourcery.com>
2904
2905         * ui-file.h (ui_file_xstrdup): Mention that the length argument
2906         may be NULL.
2907         * ui-file.c (ui_file_xstrdup): Don't dereference LENGTH if it is
2908         NULL.
2909         * aix-thread.c (aix_thread_extra_thread_info): Pass NULL as length
2910         parameter to ui_file_xstrdup.
2911         * arm-tdep.c (_initialize_arm_tdep): Ditto.
2912         * infrun.c (print_target_wait_results): Ditto.
2913         * language.c (add_language): Ditto.
2914         * linespec.c (cplusplus_error): Ditto.
2915         * remote.c (escape_buffer): Ditto.
2916         * typeprint.c (type_to_string): Ditto.
2917         * utils.c (error_stream): Ditto.
2918         * varobj.c (value_get_print_value): Ditto.
2919         * xtensa-tdep.c (xtensa_verify_config): Replace `dummy' local with
2920         `length' local.  Pass it to ui_file_xstrdup, and avoid an strlen
2921         call.
2922         * gdbarch.sh (verify_gdbarch): Ditto.
2923         * gdbarch.c: Regenerate.
2924         * cli/cli-setshow.c (do_setshow_command): Pass NULL as length
2925         parameter to ui_file_xstrdup.
2926         * python/python-frame.c (frapy_str): Ditto.
2927         * python/python-type.c (typy_str): Use the length local instead of
2928         calling strlen.
2929         * python/python-value.c (valpy_str): Pass NULL as length parameter
2930         to ui_file_xstrdup.
2931
2932 2009-08-13  Doug Evans  <dje@google.com>
2933
2934         * utils.c (gnu_debuglink_crc32): Store crc32_table as unsigned int
2935         instead of unsigned long.
2936
2937 2009-08-13  Tom Tromey  <tromey@redhat.com>
2938
2939         * varobj.c (update_dynamic_varobj_children): Don't use
2940         value_copy.
2941         * value.h: (preserve_one_value): Declare.
2942         (value_prepend_to_list, value_remove_from_list): Remove.
2943         * value.c (preserve_one_value): No longer static.
2944         (preserve_values): Call preserve_python_values.
2945         (value_prepend_to_list): Remove.
2946         (value_remove_from_list): Remove.
2947         * python/python.h (values_in_python): Don't declare.
2948         (preserve_python_values): Declare.
2949         * python/python-value.c (values_in_python): Change type.  Move
2950         lower.  Now static.
2951         (struct value_object): Add struct tag.
2952         <next, prev>: New fields.
2953         (valpy_dealloc): Update.
2954         (note_value): New function.
2955         (valpy_new): Use value_incref, note_value.
2956         (preserve_python_values): New function.
2957         (valpy_positive): Don't use value_copy.
2958         (value_to_value_object): Use value_incref, note_value.
2959         (convert_value_from_python): Update comment.
2960
2961 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
2962
2963         * remote.c (remote_pid_to_str): If printing a process id and we
2964         don't know what the remote pid could be, output "Remote target";
2965         otherwise, use normal_pid_to_str.
2966
2967 2009-08-13  Tom Tromey  <tromey@redhat.com>
2968
2969         * language.h (longest_raw_hex_string): Remove unused declaration.
2970
2971 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
2972
2973         PR gdb/8869:
2974
2975         * language.c (language, type, range, case_sensitive): Make const.
2976         (show_language_command): Don't call deprecated_show_value_hack.
2977         Special case "auto".
2978         (set_language_command): An unrecognized language is now an
2979         internal error instead of a user error.  Don't call set_lang_str.
2980         (show_type_command): Don't call deprecated_show_value_hack.
2981         Special case "auto".  Use warning.
2982         (set_type_command): An unrecognized type is now an internal error
2983         instead of a user error.  Output type check mismatch with language
2984         here.  Don't call set_type_str.
2985         (show_range_command): Don't call deprecated_show_value_hack.
2986         Special case "auto".  Use warning.
2987         (set_range_command): An unrecognized range check is now an
2988         internal error instead of a warning.  Output range check mismatch
2989         with language here.  Don't call set_range_str.
2990         (show_case_command): Don't call deprecated_show_value_hack.
2991         Special case "auto".  Use warning.
2992         (set_case_command): Don't call set_case_str.  An unrecognized case
2993         check is now an internal error instead of a warning.  Output range
2994         check mismatch with language here.  Don't call set_case_str.
2995         (set_type_range_case): Don't call set_type_str, set_range_str or
2996         set_case_str here.
2997         (set_lang_str, set_type_str, set_range_str, set_case_str): Delete.
2998         (add_language): Install or reinstall the "set language" command
2999         here, and make it an enum command.  Build the enumeration and the
3000         help string from the current list of known languages.
3001         (_initialize_language): Don't install "set language" here.  Make
3002         "set check type", "set check range" and "set case-sensitive" enum
3003         commands.  Register the "auto" "local" and "unknown" languages in
3004         that order.
3005
3006 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
3007
3008         Revert 2009-08-07 changes for PR gdb/8869:
3009
3010         * language.c (set_language_command): Strip whitespace.
3011         (set_type_command): Likewise.
3012         (set_range_command): Likewise.
3013
3014         * language.c (language_completer): New function.
3015         (range_or_type_completer): New function.
3016         (case_completer): New function.
3017         (_initialize_language): Set completers.
3018         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
3019         command.
3020         (add_setshow_string_noescape_cmd): Likewise.
3021         (add_setshow_integer_cmd): Likewise.
3022         (add_setshow_uinteger_cmd): Likewise.
3023         (add_setshow_zinteger_cmd): Likewise.
3024         (add_setshow_zuinteger_cmd): Likewise.
3025         * command.h (add_setshow_string_cmd,
3026         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
3027         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
3028
3029 2009-08-12  Michael Snyder  <msnyder@vmware.com>
3030
3031         * remote.c (remote_add_inferior): Remove unused local.
3032         (remote_add_thread): Ditto.
3033         (read_ptid): Ditto.
3034         (remote_current_thread): Ditto.
3035         (remote_stop_ns): Ditto.
3036         (remote_parse_stop_reply): Ditto.
3037         (remote_get_pending_stop_replies): Ditto.
3038         (remote_wait_ns): Ditto.
3039         (remote_wait_as): Ditto.
3040         (send_g_packet): Ditto.
3041         (remote_fetch_registers): Ditto.
3042         (store_register_using_P): Ditto.
3043         (remote_store_registers): Ditto.
3044         (remote_remove_breakpoint): Ditto.
3045         (remote_write_qxfer): Ditto.
3046         (remote_read_qxfer): Ditto.
3047
3048 2009-08-11  Tom Tromey  <tromey@redhat.com>
3049
3050         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Make a cleanup.
3051         (dwarf2_loc_desc_needs_frame): Likewise.
3052         * dwarf2expr.h (make_cleanup_free_dwarf_expr_context): Declare.
3053         * dwarf2expr.c (free_dwarf_expr_context_cleanup): New function.
3054         (make_cleanup_free_dwarf_expr_context): Likewise.
3055         * dwarf2-frame.c (execute_stack_op): Make a cleanup.
3056
3057 2009-08-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
3058
3059         * objfiles.c (gdb_bfd_unref): Use the bfd_usrdata accessor.
3060         * solib.c (symbol_add_stub): Likewise.
3061         * symfile.c (symfile_bfd_open): Assert BFD_USRDATA is NULL.
3062
3063 2009-08-10  Paul Pluzhnikov  <ppluzhnikov@google.com>
3064
3065         * objfiles.c (qsort_cmp): Remove assert.
3066         (preferred_obj_section): New function.
3067         (update_section_map): Filter duplicates.
3068         
3069 2009-08-10  Tristan Gingold  <gingold@adacore.com>
3070
3071         * solib-darwin.c (find_program_interpreter): Simplify the code by
3072         looking up for the load_dylinker command instead of reading the
3073         corresponding (but deprecated) section.
3074         (darwin_solib_create_inferior_hook): Adjust: do not free the
3075         interpreter path.
3076
3077 2009-08-10  Tristan Gingold  <gingold@adacore.com>
3078
3079         * i386-darwin-tdep.c (i386_m128_p): New function.
3080         (i386_darwin_arg_type_alignment): Ditto.
3081         (i386_darwin_push_dummy_call): Ditto.
3082         (i386_darwin_init_abi): Define Darwin specific push_dummy_call.
3083         Adjust long_double size.  Adjust pc offset in setjump buffer.
3084
3085 2009-08-10  Hui Zhu  <teawater@gmail.com>
3086
3087         Add Linux AMD64 process record support.
3088
3089         * amd64-linux-tdep.c (amd64_linux_record_tdep): New variable.
3090         This struct has the argument for the function
3091         "record_linux_system_call".
3092         (amd64_linux_syscall_record): New function. Parse the
3093         system call instruction and call function
3094         "record_linux_system_call" to record execute log.
3095         (i386_linux_init_abi): Initialize "amd64_linux_record_tdep".
3096         Set "amd64_linux_syscall_record" to "i386_syscall_record".
3097
3098 2009-08-10  Hui Zhu  <teawater@gmail.com>
3099
3100         Add process record Linux system call 64 bits support.
3101
3102         * linux-record.h (linux_record_tdep): Add size_pointer,
3103         size_size_t, size_iovec and arg6.  Change the values of
3104         size_int, size_long and size_ulong to
3105         gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
3106         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT,
3107         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT.
3108         * i386-linux-tdep.c (i386_linux_init_abi): Ditto.
3109         (i386_linux_intx80_sysenter_record): Add a check for system
3110         call number.
3111         * linux-record.c (record_linux_system_call): Make this
3112         function support 64 bits.
3113
3114 2009-08-10  Hui Zhu  <teawater@gmail.com>
3115
3116         Add AMD64 process record instruction set support.
3117
3118         * i386-tdep.h (gdbarch_tdep): Add record_regmap for registers
3119         because the AMD64's registers order in GDB is not same with
3120         I386 instructions.
3121         Add i386_syscall_record to be the syscall function handle
3122         interface.
3123         (record_i386_regnum): Number for record_regmap.
3124         * i386-tdep.c (OT_QUAD): For 64 bits.
3125         (i386_record_s): Add rex_x, rex_b, rip_offset and
3126         popl_esp_hack for AMD64 instruction set. And regmap for
3127         record_regmap.
3128         (i386_record_lea_modrm_addr): Support AMD64 instruction set
3129         64 bits lea.
3130         (i386_record_lea_modrm): Ditto.
3131         (i386_record_push): New function.  Record the execution log
3132         of push.
3133         (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the
3134         register.
3135         (i386_process_record): Support AMD64 instruction set.
3136         * amd64-tdep.c (amd64_record_regmap): For record_regmap.
3137         (amd64_init_abi): Set amd64_record_regmap to record_regmap.
3138
3139 2009-08-08  Pedro Alves  <pedro@codesourcery.com>
3140
3141         * bfd-target.c (struct target_bfd_data): New.
3142         (target_bfd_xfer_partial): Adjust to get at the section table from
3143         the new structure.
3144         (target_bfd_get_section_table): Ditto.
3145         (target_bfd_xclose): Ditto.  Get the bfd pointer from the
3146         target_bfd_data structure, from the section table.
3147         (target_bfd_reopen): Store a struct target_bfd_data in the
3148         target_ops to_data field, instead of a target_section_table.
3149
3150 2009-08-08  Aleksandar Ristovski  <aristovski@qnx.com>
3151             Hui Zhu  <teawater@gmail.com>
3152
3153         * record.c (record_store_registers): Remove unused variable.
3154
3155 2009-08-07  Tom Tromey  <tromey@redhat.com>
3156
3157         * language.c (set_language_command): Strip whitespace.
3158         (set_type_command): Likewise.
3159         (set_range_command): Likewise.
3160
3161 2009-08-07  Tom Tromey  <tromey@redhat.com>
3162
3163         PR gdb/8869:
3164         * language.c (language_completer): New function.
3165         (range_or_type_completer): New function.
3166         (case_completer): New function.
3167         (_initialize_language): Set completers.
3168         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
3169         command.
3170         (add_setshow_string_noescape_cmd): Likewise.
3171         (add_setshow_integer_cmd): Likewise.
3172         (add_setshow_uinteger_cmd): Likewise.
3173         (add_setshow_zinteger_cmd): Likewise.
3174         (add_setshow_zuinteger_cmd): Likewise.
3175         * command.h (add_setshow_string_cmd,
3176         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
3177         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
3178
3179 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
3180         
3181         gold/10400
3182         * dwarf2-frame.c (qsort_fde_cmp): Use stable sort.      
3183         
3184 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
3185
3186         * dwarf2-frame.c (struct dwarf2_cie): Remove 'next'.
3187         (struct dwarf2_cie_table): New.
3188         (struct dwarf2_fde): Remove 'next'.
3189         (struct dwarf2_fde_table): New.
3190         (struct comp_unit): Remove 'cie'.
3191         (bsearch_cie_cmp, bsearch_fde_cmp): New function.
3192         (find_cie, dwarf2_frame_find_fde): Use bsearch.
3193         (add_cie, add_fde): Use array instead of linked list.
3194         (decode_frame_entry, decode_frame_entry_1): New parameters.
3195         (qsort_fde_cmp): New function.
3196         (dwarf2_build_frame_info): Adjust.
3197         
3198 2009-08-06  Don Lee <don.lee@sunplusct.com>
3199
3200         * score-tdep.c: Support a new Sunplus CT S+core variant, S+core 3.
3201         * score-tdep.h: Ditto.
3202         * NEWS: Ditto.
3203         * configure.tgt: Test do we have a simulator.
3204         * MAINTAINERS: Add myself under target score
3205
3206 2009-08-06  Nick Roberts  <nickrob@snap.net.nz>
3207
3208         * utils.c (defaulted_query): Don't ask for confirmation if server
3209         prefix is used.
3210
3211 2009-08-05  Tom Tromey  <tromey@redhat.com>
3212
3213         * spu-tdep.h (SPUADDR_SPU): Cast result to int.
3214
3215 2009-08-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
3216
3217         * objfiles.h (OBJF_KEEPBFD): Delete.
3218         (gdb_bfd_unref): New prototype.
3219         * objfiles.c (gdb_bfd_unref): New function.
3220         (free_objfile): Call gdb_bfd_unref.
3221         * solib.c (free_so): Likewise.
3222         (symbol_add_stub): Set refcount.
3223
3224 2009-08-04  Hui Zhu  <teawater@gmail.com>
3225             Michael Snyder  <msnyder@vmware.com>
3226
3227         * record.c (record_mem_entry): New field 'mem_entry_not_accessible'.
3228         (record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'.
3229         (record_wait): Set 'mem_entry_not_accessible' flag if target
3230         memory not readable.  Don't try to change target memory if
3231         'mem_entry_not_accessible' is set.
3232
3233 2009-08-03  Richard Guenther  <rguenther@suse.de>
3234             Jan Kratochvil  <jan.kratochvil@redhat.com>
3235
3236         Fix memory corruption on reread of file through a symbolic link.
3237         * symfile.c (find_separate_debug_file): Initialize CANON_NAME earlier.
3238         Allocate DEBUGFILE with length based on CANON_NAME.  Free CANON_NAME on
3239         all the return paths.
3240
3241 2009-08-03  Jim Ingham  <jingham@apple.com>
3242             Vladimir Prus  <vladimir@codesourcery.com>
3243
3244         Implement -break-commands
3245
3246         * breakpoint.c (get_breakpoint, breakpoint_set_commands): New.
3247         (commands_command): Use breakpoint_set_commands.
3248         * breakpoint.h (get_breakpoint, breakpoint_set_commands): Declare.
3249
3250         * mi/mi-cmds.h (mi_cmd_break_commands): New.
3251         * mi/mi-cmds.c: Register -break-commands.
3252         * mi/mi-cmd-break.c (mi_cmd_break_commands, mi_read_next_line)
3253         (mi_command_line_array, mi_command_line_array_cnt)
3254         (mi_command_line_array_ptr): New.
3255
3256 2009-08-03  Jim Ingham  <jingham@apple.com>
3257             Vladimir Prus  <vladimir@codesourcery.com>
3258
3259         Refactor reading of commands
3260
3261         * defs.h (read_command_lines_1): Declare.
3262         * cli/cli-script.c (read_next_line): Only return string,
3263         do not process.
3264         (process_next_line): New, extracted from read_next_line.
3265         (recurse_read_control_structure): Take a function pointer to the
3266         read function.
3267         (get_command_line) Pass the read_next_line as reader function
3268         into recurse_read_control_structure.
3269         (read_command_lines_1): New, extracted from...
3270         (read_command_lines): ...here.
3271
3272 2009-07-31  Kazu Hirata  <kazu@codesourcery.com>
3273
3274         * procfs.c (proc_set_current_signal): Populate mysinfo before
3275         copying it to arg.
3276         (proc_clear_current_signal): Likewise.
3277         (proc_set_watchpoint): Populate pwatch before copying it to arg.
3278
3279 2009-07-31  Michael Snyder  <msnyder@vmware.com>
3280
3281         * remote.c (store_register_using_P): Call putpkt and getpkt
3282         directly instead of calling remote_send.
3283         (store_registers_using_G): Ditto.
3284         (fetch_register_using_p): Ditto.
3285
3286         * remote.c (store_register_using_P): Make error msg more verbose.
3287         (store_registers_using_G): Ditto.
3288         (fetch_register_using_p): Ditto.
3289
3290 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3291
3292         * spu-tdep.c: Include "infcall.h".
3293         (spu_address_class_type_flags): New function.
3294         (spu_address_class_type_flags_to_name): Likewise.
3295         (spu_address_class_name_to_type_flags): Likewise.
3296         (spu_pointer_to_address): Handle __ea pointers.
3297         (spu_auto_flush_cache_p): New static variable.
3298         (spu_objfile_from_frame): New function.
3299         (flush_ea_cache, spu_attach_normal_stop): Likewise.
3300         (show_spu_auto_flush_cache): Likewise.
3301         (spu_gdbarch_init): Install address class handlers.
3302         (_initialize_spu_tdep): Attach to normal_stop observer.
3303         Install "set spu auto-flush-cache" / "show spu auto-flush-cache"
3304         commands.
3305
3306         * NEWS: Mention "set/show spu auto-flush-cache" commands.
3307
3308 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3309
3310         * spu-tdep.c: Include "block.h".
3311         (setspucmdlist, showspucmdlist): New static variables.
3312         (spu_stop_on_load_p): Likewise.
3313         (spu_catch_start): New function.
3314         (show_spu_command, set_spu_command): New functions.
3315         (show_spu_stop_on_load): Likewise.
3316         (_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer.
3317         Install "set spu" / "show spu" prefix command handler.
3318         Install "set spu stop-on-load" / "show spu stop-on-load" command.
3319
3320         * NEWS: Mention "set/show spu stop-on-load" commands.
3321
3322 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3323
3324         * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h",
3325         "arch-utils.h", and "spu-tdep.h".
3326         (spu_context_objfile, spe_context_lm_addr, spe_context_offset):
3327         New static variables.
3328         (spe_context_cache_ptid, spe_context_cache_address): Likewise.
3329         (ppc_linux_spe_context_lookup): New function.
3330         (ppc_linux_spe_context_inferior_created): Likewise.
3331         (ppc_linux_spe_context_solib_loaded): Likewise.
3332         (ppc_linux_spe_context_solib_unloaded): Likewise.
3333         (ppc_linux_spe_context): Likewise.
3334         (struct ppu2spu_cache, struct ppu2spu_data): New data types.
3335         (ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register,
3336         ppu2spu_unwind_register, ppu2spu_sniffer,
3337         ppu2spu_dealloc_cache): New functions.
3338         (ppu2spu_unwind): New static variable.
3339         (ppc_linux_init_abi): Install cross-architecture unwinder.
3340         (_initialize_ppc_linux_tdep): Attach to observers.
3341
3342         * spu-tdep.c (struct spu2ppu_cache): New data type.
3343         (spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register,
3344         spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions.
3345         (spu2ppu_unwind): New static variable.
3346         (spu_gdbarch_init): Install cross-architecture unwinder.
3347
3348 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3349
3350         * target.h (enum strata): New value arch_stratum.
3351         * target.c (target_require_runnable): Skip arch_stratum targets.
3352
3353         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
3354         solib-spu.o and spu-multiarch.o to gdb_target_obs.
3355         * Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o.
3356         (ALLDEPFILES): Add solib-spu.c and spu-multiarch.c.
3357
3358         * solib-spu.c: New file.
3359         * solib-spu.h: New file.
3360         * spu-multiarch.c: New file.
3361
3362         * spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros.
3363
3364         * spu-tdep.c (struct gdbarch_tdep): New member id.
3365         (spu_gdbarch_id): New function.
3366         (spu_lslr): New function.
3367
3368         (spu_address_to_pointer): New function.
3369         (spu_pointer_to_address): Support SPU ID address encoding.  Use
3370         spu_gdbarch_id and spu_lslr.
3371         (spu_integer_to_address): Likewise.
3372         (spu_frame_unwind_cache): Update for encoded addresses.
3373         (spu_unwind_pc, spu_unwind_sp): Likewise.
3374         (spu_read_pc, spu_write_pc): Likewise.
3375         (spu_push_dummy_call): Likewise.
3376         (spu_software_single_step): Likewise.
3377         (spu_get_longjmp_target): Likewise.
3378         (spu_overlay_update_osect): Likewise.
3379
3380         (spu_dis_asm_print_address): New function.
3381         (gdb_print_insn_spu): Likewise.
3382
3383         (spu_gdbarch_init): Store SPU ID in tdep structure.
3384         Install spu_address_to_pointer and gdb_print_insn_spu.
3385
3386         * ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h"
3387         and "solib-spu.h".
3388         (ppc_linux_entry_point_addr): New static variable.
3389         (ppc_linux_inferior_created): New function.
3390         (ppc_linux_displaced_step_location): Likewise.
3391         (ppc_linux_init_abi): Enable Cell/B.E. support if supported
3392         by the target.
3393         (_initialize_ppc_linux_tdep): Attach to inferior_created observer.
3394
3395         * NEWS: Mention multi-architecture and Cell/B.E. debugging
3396         capabilities.
3397
3398 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3399
3400         * linux-nat.c: Include <sys/vfs.h>.
3401         (SPUFS_MAGIC): Define.
3402         (spu_enumerate_spu_ids): New function.
3403         (linux_proc_xfer_spu): New function.
3404         (linux_xfer_partial): Handle TARGET_OBJECT_SPU.
3405
3406         (iterate_over_spus): New function.
3407         (struct linux_spu_corefile_data): New data type.
3408         (linux_spu_corefile_callback): New function.
3409         (linux_spu_make_corefile_notes): New function.
3410         (linux_nat_make_corefile_notes): Call it.
3411
3412         * corelow.c (struct spuid_list): New data type.
3413         (add_to_spuid_list): New function.
3414         (core_xfer_partial): Handle TARGET_OBJECT_SPU.
3415
3416 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3417
3418         * features/Makefile: Allow sub-platform specific expedite settings.
3419         (WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l.
3420         (rs6000/powerpc-cell32l-expedite): Define.
3421         (rs6000/powerpc-cell64l-expedite): Likewise.
3422         * features/rs6000/powerpc-cell32l.xml: New file.
3423         * features/rs6000/powerpc-cell64l.xml: New file.
3424         * features/rs6000/powerpc-cell32l.c: New generated file.
3425         * features/rs6000/powerpc-cell64l.c: New generated file.
3426
3427         * regformats/rs6000/powerpc-cell32l.dat: New generated file.
3428         * regformats/rs6000/powerpc-cell64l.dat: New generated file.
3429
3430         * config/djgpp/fnchange.lst: Add mappings for new files.
3431
3432         * ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype.
3433         (tdesc_powerpc_cell64l): Likewise.
3434         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c"
3435         and "features/rs6000/powerpc-cell64l.c".
3436         (_initialize_ppc_linux_tdep): Initialize target descriptions.
3437         (ppc_linux_spu_section): New function.
3438         (ppc_linux_core_read_description): Detect Cell/B.E. core files.
3439         * ppc-linux-nat.c (PPC_FEATURE_CELL): Define.
3440         (ppc_linux_read_description): Detect Cell/B.E. architecture.
3441
3442         * rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize
3443         if exec file is not PowerPC architecture.
3444
3445 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3446
3447         * features/gdb-target.dtd (target): Accept optional
3448         <compatible> elements.
3449         (compatible): Define element.
3450
3451         * target-descriptions.h (tdesc_compatible_p): New.
3452         (tdesc_add_compatible): New.
3453         * target-descriptions.c (arch_p): New VEC_P type.
3454         (struct target_desc): New member compatible.
3455         (free_target_description): Handle it.
3456         (maint_print_c_tdesc_cmd): Likewise.
3457         (tdesc_compatible_p): New function.
3458         (tdesc_add_compatible): New function.
3459
3460         * xml-tdesc.c (tdesc_end_compatible): New function.
3461         (target_children): Handle <compatible> element.
3462
3463         * arch-utils.c (choose_architecture_for_target): Accept target
3464         description instead of BFD architecture as input.  Query target
3465         description for compatible architectures.
3466         (gdbarch_info_fill): Update call.
3467
3468         * NEWS: Mention <compatible> element of target descriptions.
3469
3470 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3471
3472         * breakpoint.c (remove_breakpoints): If removing one breakpoint
3473         location fails, still continue to remove other locations.
3474         (remove_hw_watchpoints): Likewise.
3475         (detach_breakpoints): Likewise.
3476
3477 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3478
3479         * breakpoint.h (enum enable_state): Add bp_startup_disabled.
3480         (disable_breakpoints_before_startup): Add prototype.
3481         (enable_breakpoints_after_startup): Likewise.
3482
3483         * breakpoint.c (executing_startup): New static variable.
3484         (describe_other_breakpoints): Handle bp_startup_disabled.
3485         (check_duplicates_for): Likewise.
3486         (disable_breakpoints_before_startup): New function.
3487         (enable_breakpoints_after_startup): New function.
3488         (create_breakpoint): Mark new breakpoints as bp_startup_disabled
3489         if executing_startup flag is true.
3490         (break_command_really): Likewise.
3491         (breakpoint_re_set_one): Skip bp_startup_disabled breakpoints.
3492
3493 2009-07-31  Julian Brown  <julian@codesourcery.com>
3494
3495         * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h):
3496         Include files.
3497         (arm_linux_cleanup_svc, arm_linux_copy_svc): New.
3498         (cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New.
3499         (arm_linux_displaced_step_copy_insn): New.
3500         (arm_linux_init_abi): Initialise displaced stepping callbacks.
3501         * arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro.
3502         (ARM_NOP): New.
3503         (displaced_read_reg, displaced_in_arm_mode, branch_write_pc)
3504         (bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg)
3505         (insn_references_pc, copy_unmodified, cleanup_preload, copy_preload)
3506         (copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store)
3507         (cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm)
3508         (copy_alu_imm, cleanup_alu_reg, copy_alu_reg)
3509         (cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load)
3510         (cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb)
3511         (cleanup_block_load_all, cleanup_block_store_pc)
3512         (cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc)
3513         (copy_undef, copy_unpred): New.
3514         (decode_misc_memhint_neon, decode_unconditional)
3515         (decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte)
3516         (decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st)
3517         (decode_svc_copro, arm_process_displaced_insn)
3518         (arm_displaced_init_closure, arm_displaced_step_copy_insn)
3519         (arm_displaced_step_fixup): New.
3520         (arm_gdbarch_init): Initialise max insn length field.
3521         * arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New
3522         macros.
3523         (displaced_step_closure, pc_write_style): New.
3524         (arm_displaced_init_closure, displaced_read_reg)
3525         (arm_process_displaced_insn, arm_displaced_init_closure)
3526         (displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn)
3527         (arm_displaced_step_fixup): Add prototypes.
3528
3529 2009-07-31  Pedro Alves  <pedro@codesourcery.com>
3530             Julian Brown  <julian@codesourcery.com>
3531
3532         * infrun.c (displaced_step_fixup): If this is a software
3533         single-stepping arch, don't tell the target to single-step.
3534         (maybe_software_singlestep): Return 0 if we're using displaced
3535         stepping.
3536         (resume): If this is a software single-stepping arch, and
3537         displaced-stepping is enabled, use it for all single-step
3538         requests.
3539
3540 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3541
3542         * Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
3543         (AUTOCONF, configure_deps, AUTOHEADER): New variables.
3544         ($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
3545         (am--refresh): New rules.
3546         (stamp-h, config.status): List config.in and configure including
3547         $(srcdir)/ prefix.
3548         * aclocal.m4: Regenerate.
3549         * configure: Regenerate.
3550
3551 2009-07-30  Thomas Schwinge  <tschwinge@gnu.org>
3552
3553         * gnu-nat.c (add_task_commands) <stopped>: Register the correct
3554         callback function.
3555
3556 2009-07-30  H.J. Lu  <hongjiu.lu@intel.com>
3557
3558         * ia64-tdep.c (ia64_access_reg): Correct paddress.
3559
3560 2009-07-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
3561
3562         Replace public function varobj_list by all_root_varobjs iterator.
3563         * mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter):
3564         New.
3565         (mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs.
3566         Remove the variables rootlist, cr.  New variable data.
3567         * varobj.c (rootcount, varobj_list): Remove.
3568         (install_variable, uninstall_variable): Remove the rootcount updates.
3569         (all_root_varobjs): New function.
3570         (varobj_invalidate): Use the all_root_varobjs call.  Move the code to...
3571         (varobj_invalidate_iter): ... a new function.
3572         * varobj.h (varobj_list): Remove the prototype.
3573         (all_root_varobjs): New prototype.
3574
3575 2009-07-29  Paul Pluzhnikov  <ppluzhnikov@google.com>
3576
3577         PR gdb/6817
3578         * dbxread.c (read_dbx_symtab): Reduce stack use.
3579         
3580 2009-07-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
3581
3582         Fix gcc-4.5 HEAD warnings.
3583         * cp-name-parser.y (%union <typed_val_int>, %token GLOBAL)
3584         (GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>):
3585         Remove.
3586         (yylex <"global constructors keyed to ">)
3587         (yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL.
3588         (cp_comp_to_string): Remove variables str, prefix and buf.  Remove the
3589         GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling.
3590         (cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS
3591         handling.
3592
3593 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
3594
3595         * NEWS: Mention ARM VFP support.
3596         * target-descriptions.c (tdesc_register_type): Make public.
3597         (tdesc_unnumbered_register): New function.
3598         (tdesc_register_reggroup_p): Allow missing
3599         pseudo_register_reggroup_p.
3600         * target-descriptions.h (tdesc_register_type): Declare.
3601         (tdesc_unnumbered_register): Declare.
3602         * arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions.
3603         (arm_push_dummy_call): Use arm_neon_quad_write.
3604         (arm_neon_double_type, arm_neon_quad_type): New functions.
3605         (arm_register_type): Handle VFP and NEON registers.  Override the
3606         types of double-precision registers for NEON.  Disable FPA registers
3607         if they are not present.
3608         (arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers.
3609         (arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read.
3610         (arm_register_name): Handle VFP single and NEON quad registers.
3611         (arm_pseudo_read, arm_pseudo_write): New functions.
3612         (arm_gdbarch_init): Check for VFP and NEON in the target description.
3613         Assign numbers to double-precision registers.  Register VFP and NEON
3614         pseudo registers.  Remove a shadowed "i" variable.
3615         * arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and
3616         ARM_D31_REGNUM.
3617         (struct gdbarch_tdep): Add have_neon_pseudos, have_neon,
3618         have_vfp_registers, have_vfp_pseudos, neon_double_type,
3619         and neon_quad_type.
3620
3621         * features/Makefile: Make expedite settings only architecture
3622         specific.
3623         (WHICH): Add new ARM descriptions.
3624         * features/arm-with-neon.xml, features/arm-with-vfpv2.c,
3625         features/arm-with-vfpv3.c, features/arm-vfpv2.xml,
3626         features/arm-vfpv3.xml, features/arm-with-vfpv2.xml,
3627         features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files.
3628         * regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat,
3629         regformats/arm-with-vfpv3.dat: Generate.
3630
3631 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
3632
3633         * infrun.c (handle_inferior_event): Clear trap_expected after
3634         stepping past a single-step breakpoint.
3635
3636 2009-07-28  Joseph Myers  <joseph@codesourcery.com>
3637
3638         * arm-tdep.c (enum arm_vfp_cprc_base_type,
3639         arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char,
3640         arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate,
3641         arm_vfp_abi_for_function): New.
3642         (arm_push_dummy_call): Handle VFP ABI.
3643         (arm_extract_return_value, arm_store_return_value): Handle
3644         ARM_FLOAT_VFP case.
3645         (arm_return_value): Handle VFP ABI.
3646         (arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for
3647         EABI binaries.
3648
3649 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
3650
3651         * arch-utils.c (displaced_step_at_entry_point): Do not call
3652         gdbarch_convert_from_func_ptr_addr.
3653         * cris-tdep.c: Remove outdated comment.
3654         * infcall.c (call_function_by_hand): Do not call
3655         gdbarch_convert_from_func_ptr_addr after entry_point_address.
3656         * objfiles.c (entry_point_address): Call both
3657         gdbarch_convert_from_func_ptr_addr and
3658         gdbarch_addr_bits_remove.
3659
3660 2009-07-28  Aleksandar Ristovski  <aristovski@qnx.com>
3661
3662         * nto-tdep.c (nto_thread_state_str): New array.
3663         (nto_extra_thread_info): New function definition.
3664         * nto-tdep.h (gdbthread.h): New include.
3665         (private_thread_info): New struct.
3666         (nto_extra_thread_info): New declaration.
3667         * nto-procfs.c (procfs_thread_alive): Properly check if
3668         thread is still alive.
3669         (update_thread_private_data_name, update_thread_private_data): New
3670         function definition.
3671         (procfs_find_new_threads): Fetch thread private data.
3672         (init_procfs_ops): Register to_extra_thread_info.
3673
3674 2009-07-25  Pedro Alves  <pedro@codesourcery.com>
3675
3676         * stack.c (backtrace_command_1): Remove dead check of NULL current
3677         frame.
3678
3679 2009-07-23  Keith Seitz  <keiths@redhat.com>
3680
3681         * source.c (forward_search_command): Don't fclose the stream,
3682         just run the cleanups.
3683         (reverse_search_command): Likewise.
3684
3685 2009-07-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
3686
3687         * symtab.c (search_symbols): Add QUIT.
3688         
3689 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
3690
3691         * symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
3692         
3693 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
3694
3695         * objfiles.h (objfiles_changed): New prototype.
3696         * objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
3697         (allocate_objfile, free_objfile): Must rebuild section map.
3698         (objfile_relocate): Likewise.
3699         (update_section_map, find_pc_section): Adjust.
3700         (set_objfiles_updated_on_exe_change): Remove.
3701         (set_objfiles_updated_on_solib_activity): Remove.
3702         (_initialize_objfiles): Remove.
3703         (objfiles_changed): New function.
3704         * symfile.c (reread_symbols): Call objfiles_changed.    
3705         
3706 2009-07-22  Hui Zhu  <teawater@gmail.com>
3707
3708         * record.c (record_xfer_partial): Call error When nquery
3709         return "n".
3710
3711 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
3712         
3713         * objfiles.c (objfiles_updated_p): New variable.
3714         (qsort_cmp, bsearch_cmp, update_section_map): New function.
3715         (find_pc_section): Use bsearch.
3716         (set_objfiles_updated_on_exe_change): New function.
3717         (set_objfiles_updated_on_solib_activity): New function.
3718         (_initialize_objfiles): New function.
3719         
3720 2009-07-21 Michael Eager <eager@eagercon.com>
3721
3722         * features/rs6000/powerpc-405.xml: New.
3723         * rs6000-tdep.c: Add include & initialize for
3724         powerpc-405.c, add 405 to variants.
3725         * features/rs6000/powerpc-405.c: Generate.
3726
3727 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
3728
3729         * utils.c (internal_vproblem): Always print failure message.
3730
3731 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
3732             Vladimir Prus <vladimir@codesourcery.com>
3733
3734         * valops.c (value_fetch_lazy): Handle bitfields explicitly.
3735         (value_assign): Remove unnecessary FIXME.  Honor the container
3736         type of bitfields if possible.
3737         * value.c (struct value): Add parent field.
3738         (value_parent): New function.
3739         (value_free): Free the parent also.
3740         (value_copy): Copy the parent also.
3741         (value_primitive_field): Do not read the contents of a lazy
3742         value to create a child bitfield value.  Set bitpos and offset
3743         according to the container type if possible.
3744         (unpack_bits_as_long): Rename from unpack_field_as_long.  Take
3745         field_type, bitpos, and bitsize instead of type and fieldno.
3746         (unpack_field_as_long): Use unpack_bits_as_long.
3747         * value.h (value_parent, unpack_bits_as_long): New prototypes.
3748
3749 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
3750
3751         * value.c (struct value): Add reference_count field.
3752         (allocate_value_lazy): Initialize reference_count.
3753         (value_incref): New function.
3754         (value_free): Check the reference count.
3755         * value.h (value_incref): New prototype.
3756
3757 2009-07-20  Marc Khouzam  <marc.khouzam@ericsson.com>
3758
3759         * utils.c (defaulted_query): Update comment and remove dead code.
3760
3761 2009-07-20  Doug Evans  <dje@google.com>
3762
3763         Add support for "comdat types" from DWARF4.
3764         * dwarf2read.c (dwarf2_per_objfile): New member types,
3765         signatured_types.
3766         (TYPES_SECTION): New macro.
3767         (dwarf2_per_cu_data): Change size of length field from 30 bits
3768         to 29 bits.  New member from_debug_types.
3769         (signatured_type): New struct.
3770         (struct attribute): New union member signatured_type.
3771         (DW_SIGNATURED_TYPE): New macro.
3772         (dwarf2_attr_no_follow): New function.
3773         (read_type_unit_scope): New function.
3774         (follow_die_ref_or_sig, follow_die_sig): New functions.
3775         (dwarf2_locate_sectoins): Handle .debug_types.
3776         (dwarf2_build_psymtabs): Read .debug_types.
3777         (read_type_comp_unit_head): New function.
3778         (hash_type_signature, eq_type_signature): New functions.
3779         (create_debug_types_hash_table): New function.
3780         (lookup_signatured_type): New function.
3781         (process_psymtab_comp_unit): Handle type units too.
3782         (process_type_comp_unit, build_type_psymtabs): New functions.
3783         (dwarf2_build_psymtabs_hard): Call build_type_psymtabs.
3784         (load_partial_comp_unit): Assert not called for a type unit.
3785         (skip_one_die): Handle DW_FORM_sig8.
3786         (queue_comp_unit): Don't call load_full_comp_unit here, or
3787         update read_in_chain.
3788         (psymtab_to_symtab_1): Call read_signatured_type_at_offset for
3789         type units, or load_full_comp_unit for comp units after
3790         queue_comp_unit returns.
3791         (load_full_comp_unit): Assert not called for type units.
3792         (load_full_comp_unit): Update read_in_chain here.
3793         (process_die): Handle DW_TAG_type_unit.
3794         (read_structure_type): Look for signatured types.
3795         (read_enumeration_type): Ditto.
3796         (init_cu_die_reader): Handle .debug_types.
3797         (read_comp_unit): Assert hash not computed yet.
3798         (read_die_and_children): Expand debugging printf to handle .debug_types.
3799         (read_partial_die): Handle DW_TAG_type_unit:
3800         (find_patial_die): Handle .debug_types.
3801         (read_attribute_value): Handle DW_FORM_sig8.
3802         (die_type): Call follow_die_ref_or_sig instead of follow_die_ref.
3803         (die_containing_type): Ditto.
3804         (dwarf_tag_name): Handle DW_TAG_type_unit.
3805         (dwarf_attr_name): Handle DW_AT_signature.
3806         (dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc,
3807         DW_FORM_flag_present, DW_FORM_sig8.
3808         (dump_die_shallow): Handlel DW_FORM_sig8.
3809         (maybe_queue_comp_unit): Change return type to int from void.
3810         All callers updated.
3811         (follow_die_ref): Handle .debug_types.
3812         (lookup_signatured_type_at_offset): New function.
3813         (read_signatured_type_at_offset): New function.
3814         (read_signatured_type): New function.
3815
3816 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
3817
3818         * arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT
3819         if the macro is defined.
3820
3821 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
3822
3823         * features/gdb-target.dtd (target): Accept an optional 'osabi'
3824         element.
3825         (osabi): Define element.
3826         * features/mips-linux.xml (target): Add an osabi subelement set to
3827         GNU/Linux.
3828         * regformats/regdat.sh (xmlarch, xmlosabi): New variables.  Don't
3829         write the architecture into $xmltarget.  Store it in $xmlarch.
3830         Handle the 'osabi' type.  Handle outputting the osabi element of
3831         the target description.
3832         * regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux.
3833         * regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux.
3834
3835         * target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare.
3836         * target-descriptions.c (struct target_desc) <osabi>: New field.
3837         (tdesc_osabi): New function.
3838         (set_tdesc_osabi): New function.
3839         * xml-tdesc.c: Include osabi.h.
3840         (tdesc_end_osabi): New.
3841         (target_children): Parse "osabi" elements.
3842         * arch-utils.c (gdbarch_info_fill): Try to get the osabi from the
3843         target description if the user didn't override it or it is not
3844         extractable from the bfd.  If that still fails, fallback to the
3845         configured in default.
3846         * osabi.h (osabi_from_tdesc_string): Declare.
3847         * osabi.c (osabi_from_tdesc_string): New.
3848         (gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of
3849         GDB_OSABI_DEFAULT.
3850
3851         * NEWS: Mention that target descriptions can now describe the
3852         target OS ABI.
3853
3854 2009-07-20  Mike Frysinger  <vapier@gentoo.org>
3855
3856         * configure.ac (AC_CHECK_FUNCS): Check for pipe.
3857         * config.in, configure: Regenerate.
3858         * tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE.
3859
3860 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
3861
3862         * gnu-nat.c: Include "inf-child.h".
3863         (gnu_mourn_inferior): Use the passed in target_ops
3864         instead of the gnu_ops global.
3865         (gnu_create_inferior): Inline `attach_to_child', use the passed in
3866         target_ops instead of the gnu_ops global.
3867         (gnu_can_run): Delete.
3868         (gnu_attach): Use the passed in target_ops instead of the gnu_ops
3869         global.
3870         (gnu_detach): Ditto.
3871         (gnu_prepare_to_store, gnu_open): Delete.
3872         (gnu_store_registers, gnu_fetch_registers): Delete declarations.
3873         (gnu_ops): Delete.
3874         (init_gnu_ops): Delete.
3875         (gnu_target): New.
3876         (_initialize_gnu_nat): Don't call init_gnu_ops or add_target here.
3877         * gnu-nat.h (gnu_target): Declare.
3878         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make
3879         static.
3880         (_initialize_i386gnu_nat): New.
3881
3882 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
3883
3884         * dwarf2loc.c (find_location_expression): Retrieve beginning and
3885         ending address offsets in location list entries as integers,
3886         not as addresses.
3887
3888 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
3889
3890         * infrun.c (wait_for_inferior): Invalidate registers and overlay
3891         cache every time before calling target_wait.
3892         (handle_inferior_event): Make static. Always reset waiton_ptid.
3893         Never call registers_changed.
3894         (prepare_to_wait): Do not invaliate registers or overlay cache
3895         (moved to wait_for_inferior).  Do not reset waiton_ptid (moved
3896         to handle_inferior_event).
3897         (fetch_inferior_event): Remove check for always-true condition.  
3898
3899 2009-07-20  Thomas Schwinge  <tschwinge@gnu.org>
3900
3901         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to
3902         2009-02-23 target_ops changes.
3903
3904 2009-07-18  Michael Snyder  <msnyder@vmware.com>
3905
3906         * infrun.c (handle_inferior_event): Remove an execution_direction
3907         check in the "check for subroutine calls" test, and add some 
3908         additional handling for reverse-stepping through shared libraries.
3909
3910 2009-07-18  Anthony Green  <green@moxielogic.com>
3911
3912         * moxie-tdep.c (moxie_analyze_prologue): Take gdbarch as last
3913         parameter instead of frame_info.
3914         (moxie_frame_cache): Call moxie_analyze_prologue with different
3915         args.
3916
3917 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
3918
3919         * solib.c (solib_bfd_open): Do not call ops->bfd_open.
3920         (solib_map_sections): Call ops->bfd_open instead of solib_bfd_open.
3921         * solib-frv.c (_initialize_frv_solib): Initialize bfd_open member.
3922         * solib-irix.c (_initialize_irix_solib): Likewise.
3923         * solib-null.c (_initialize_null_solib): Likewise.
3924         * solib-osf.c (_initialize_osf_solib): Likewise.
3925         * solib-pa64.c (_initialize_pa64_solib): Likewise.
3926         * solib-som.c (_initialize_som_solib): Likewise.
3927         * solib-sunos.c (_initialize_sunos_solib): Likewise.
3928         * solib-svr4.c (_initialize_svr4_solib): Likewise.
3929         * solib-target.c (_initialize_solib_target): Likewise.
3930
3931 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
3932
3933         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag.
3934
3935 2009-07-16  Doug Evans  <dje@google.com>
3936
3937         * linux-thread.db.c (try_thread_db_load_1): Tweak comment.
3938
3939 2007-07-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
3940
3941         * linux-thread-db.c (thread_db_find_new_threads_silently):
3942         New function.
3943         (try_thread_db_load_1): Call it.
3944
3945 2009-07-15  Doug Evans  <dje@google.com>
3946
3947         Code reorg in preparation for adding comdat types support.
3948         * dwarf2read.c (struct die_reader_specs): New struct.
3949         (locate_pdi_sibling): New arg buffer.  All callers updated.
3950         (load_partial_dies, read_partial_die): Ditto.
3951         (read_8_bytes): Change return type to ULONGEST.
3952         (read_comp_unit): Delete arg abfd.  All callers updated.
3953         (read_die_and_children_1): Delete args abfd, cu.  New arg reader.
3954         All callers updated.
3955         (read_die_and_children, read_die_and_siblings): Ditto.
3956         (read_full_die): Ditto.  Move closer to callers.
3957         (skip_one_die): New arg buffer.  All callers updated.
3958         (load_full_comp_unit): Change return type to void.  All callers
3959         updated.
3960         (partial_read_comp_unit_head): New args buffer, buffer_size.
3961         All callers updated.
3962         (process_psymtab_comp_unit): New function, split out from
3963         dwarf2_build_psymtabs_hard.
3964         (dwarf2_build_psymtabs_hard): Call it.
3965         (load_partial_comp_unit): Renamed from load_comp_unit.
3966         All callers updated.
3967         (skip_children): New arg buffer.  All callers updated.
3968         (init_cu_die_reader): New function.
3969         (is_ref_attr): New function.
3970         (dwarf2_get_ref_die_offset): Call it.
3971         (alloc_one_comp_unit): New function.
3972
3973 2009-07-14  Stan Shebs  <stan@codesourcery.com>
3974
3975         * MAINTAINERS (Global Maintainers): Add Doug Evans.
3976
3977 2009-07-14  Stan Shebs  <stan@codesourcery.com>
3978
3979         Conditional tracepoints.
3980         * ax-gdb.h (gen_eval_for_expr): Declare.
3981         * ax-gdb.c (gen_expr): Generate bytecodes for BINOP_EQUAL
3982         and other comparisons.
3983         (gen_eval_for_expr): New function.
3984         (agent_eval_command): New maintenance command.
3985         (_initialize_ax_gdb): Define the command.
3986         * remote.c (struct remote_state): New field cond_tracepoints.
3987         (PACKET_ConditionalTracepoints): New packet config type.
3988         (remote_cond_tracepoint_feature): New function.
3989         (remote_protocol_features): Add ConditionalTracepoints.
3990         (remote_supports_cond_tracepoints): New function.
3991         (_initialize_remote): Add ConditionalTracepoints.
3992         * tracepoint.c (download_tracepoint): Add conditional.
3993         * NEWS: Mention conditional tracepoints.
3994
3995 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
3996
3997         * objfiles.c (objfile_relocate): Do not relocate the same
3998         BLOCKVECTOR_MAP address map multiple times.
3999
4000 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
4001
4002         * remote.c (process_stop_reply): Access expedited target registers
4003         in target_gdbarch.
4004
4005 2009-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
4006
4007         Fix memory access from signed 32bit inferior registers on 64bit GDB.
4008         * linux-nat.c (linux_xfer_partial <TARGET_OBJECT_MEMORY>): New variable
4009         addr_bit.  Mask OFFSET by the ADDR_BIT width.
4010
4011 2009-07-13  Anthony Green  <green@moxielogic.com>
4012
4013         * moxie-tdep.c (moxie_gdbarch_init): Call
4014         set_gdbarch_process_record.
4015         (moxie_process_record): New.
4016         (moxie_process_readu): New.
4017
4018 2009-07-12  Michael Snyder  <msnyder@vmware.com>
4019
4020         * i386-tdep.c: Add a frame unwinder for function epilogues.
4021         (i386_in_function_epilogue_p): New function.
4022         (i386_epilogue_frame_sniffer): New function.
4023         (i386_epilogue_frame_cache): New function.
4024         (i386_epilogue_frame_this_id): New function.
4025         (i386_epilogue_frame_unwind): New struct frame_unwind.
4026         (i386_gdbarch_init): Hook the new unwinder.
4027
4028 2009-07-11  Hui Zhu  <teawater@gmail.com>
4029
4030         * cli/cli-cmds.c (disassemble_command): Add a new modifier /r
4031         to "disassemble" command to print the raw instructions in hex as
4032         well as in symbolic form.
4033         (init_cli_cmds): Ditto.
4034         (print_disassembly): Change "mixed" to "flags" to translate
4035         the behavior of disassemble.
4036         (disassemble_current_function): Ditto.
4037         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
4038         * stack.c (gdb_disassembly_stub): Ditto.
4039         * disasm.c (do_mixed_source_and_assembly): Ditto.
4040         (do_mixed_source_and_assembly): Ditto.
4041         (do_assembly_only): Ditto.
4042         (gdb_disassembly): Ditto.
4043         (dump_insns): print the raw instructions in hex as well as in
4044         symbolic form if DISASSEMBLY_RAW_INSN and flags is true.
4045         * disasm.h (DISASSEMBLY_SOURCE): Include source code with the
4046         assembly if it and flags is true.
4047         (DISASSEMBLY_RAW_INSN): Include the raw instructions in hex with
4048         the assembly if it and flags is true.
4049         (gdb_disassembly): Update extern.
4050         * NEWS: Document disassemble/r support.
4051
4052 2009-07-10  Tom Tromey  <tromey@redhat.com>
4053
4054         * dwarf2-frame.c: Include dwarf2.h, not elf/dwarf2.h.
4055         * dwarf2expr.c: Likewise.
4056         * dwarf2loc.c: Likewise.
4057         * dwarf2read.c: Likewise.
4058         * sh-tdep.c: Likewise.
4059         * xtensa-tdep.c: Likewise.
4060
4061 2009-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
4062
4063         Tidy up the code.
4064         * mi/mi-cmd-var.c (mi_cmd_var_update): Remove variable nv.  Move
4065         variables var, rootlist and cr to their local sub-block.  Move the
4066         make_cleanup_ui_out_tuple_begin_end, make_cleanup_ui_out_list_begin_end
4067         and do_cleanups calls to the common base block.  Remove the zero NV
4068         check.
4069
4070 2009-07-10 Phil Muldoon  <pmuldoon@redhat.com>
4071
4072         * python/python-internal.h (apply_varobj_pretty_printer): Update
4073         definition.
4074         (python_string_to_target_python_string): Add definition.
4075         * python/python-utils.c (unicode_to_encoded_python_string)
4076         (unicode_to_target_python_string)
4077         (python_string_to_target_python_string): New Functions.
4078         * python/python-prettyprint.c (pretty_print_one_value): Likewise.
4079         (print_string_repr): Refactor to logic to account for PyObject
4080         returned strings.
4081         (apply_varobj_pretty_printer): Likewise.
4082         * python/python-value.c (valpy_string): Parse length keyword. Use
4083         length keyword in LA_GET_STRING.
4084         * varobj.c (value_get_print_value): Refactor logic to account for
4085         PyObject returned strings.
4086         * c-lang.c (c_get_string): If the length parameter is specified,
4087         use that. Return value in characters. Update comments.
4088         * language.h: Update c_get_string prototype comments.
4089
4090 2009-07-09  Doug Evans  <dje@google.com>
4091
4092         * i386-tdep.c (i386_displaced_step_fixup): Fix order of arguments
4093         to read_memory_unsigned_integer.
4094
4095 2009-07-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
4096
4097         Report error on inaccessible memory.
4098         * cli/cli-dump.c: Include gdbcore.h.
4099         (dump_memory_to_file): Call read_memory instead of target_read_memory.
4100
4101 2009-07-09  Hui Zhu  <teawater@gmail.com>
4102
4103         * solib.c (solib_bfd_open): Output a warning if solib's
4104         architecture is not compatible with inferior's architecture.
4105
4106 2009-07-09  Ulrich Weigand  <uweigand@de.ibm.com>
4107             Jan Kratochvil  <jan.kratochvil@redhat.com>
4108
4109         * target.h (struct target_ops <to_thread_architecture>): Describe it.
4110         (target_thread_architecture): Refer to to_thread_architecture.
4111
4112 2009-07-08  Pierre Muller  <muller@ics.u-strasbg.fr>
4113
4114         * cli/cli-cmds.c (init_cli_cmds): Add "inf" alias for "info" command.
4115
4116 2009-07-07  Ulrich Weigand  <uweigand@de.ibm.com>
4117
4118         * tui/tui-stack.c (tui_make_status_line): Display PC as ?? if unknown.
4119
4120 2009-07-07  Pierre Muller  <muller@ics.u-strasbg.fr>
4121
4122         * breakpoint.c (set_raw_breakpoint): Remove static modifier.
4123
4124 2009-07-07  Tom Tromey  <tromey@redhat.com>
4125
4126         * c-lang.c (convert_octal): Only allow 3 octal digits.
4127         (print_wchar): Prefer 3-digit octal form.  Fall back to hex if
4128         needed.
4129         * c-exp.y (c_parse_escape): Only allow 3 octal digits.
4130
4131 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
4132
4133         * python/python-value.c (valpy_getitem): Remove incorrect assert.
4134         
4135 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
4136
4137         * python/python-value.c (valpy_getitem): Don't return from TRY_CATCH.
4138
4139 2009-07-07  Sami Wagiaalla  <swagiaal@redhat.com>
4140
4141         * cp-support.h (struct using_direct): Rename members inner and
4142         outer to import_src, and import_dest respectively.
4143         * cp-namespace.c (cp_add_using_directive): Update.
4144         (cp_add_using): Update.
4145         (cp_copy_usings): Update.
4146         (cp_lookup_symbol_namespace): Update.
4147         (cp_scan_for_anonymous_namespaces): Update.
4148         * cp-support.c (make_symbol_overload_list_using): Update.
4149         * cp-support.h (cp_add_using_directive, cp_add_using): Rename
4150         arguments from inner and outer to src and dest respectively.
4151         * cp-namespace.c (cp_add_using_directive): Ditto.
4152         (cp_add_using): Ditto.
4153
4154 2009-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4155
4156         * mi/mi-cmd-var.c (mi_cmd_var_update): Replace a while loop by for loop.
4157         * varobj.c (varobj_invalidate): Replace a while loop by for loop.
4158
4159 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
4160
4161         Fix hang in floating varobjs.
4162
4163         * varobj.c (varobj_invalidate): Advance to next
4164         element when processing floating varobj.
4165
4166 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
4167
4168         * varobj.c: Remove unnecessary include.
4169
4170 2009-07-07  Tristan Gingold  <gingold@adacore.com>
4171
4172         * config/i386/darwin.mh (NATDEPFILES): Remove excServer.o.
4173         Remove excServer.c target.  Remove _all target.
4174         * darwin.defs: Removed.
4175
4176 2009-07-06  Aleksandar Ristovski  <aristovski@qnx.com>
4177
4178         * configure.tgt (i[34567]86-*-nto*): Add build_gdbserver=yes.
4179
4180 2009-07-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
4181
4182         * source.c (find_and_open_source): Remove the `objfile' parameter.
4183         Update the function comment.
4184         (open_source_file, symtab_to_fullname, psymtab_to_fullname): Update the
4185         find_and_open_source callers.
4186
4187 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
4188
4189         * coff-pe-read.c (read_pe_exported_syms): Recognize
4190         "pe-arm-wince-little" and "pei-arm-wince-little" bfd targets as PE
4191         targets.
4192
4193 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
4194
4195         * arm-wince-tdep.c (arm_wince_skip_main_prologue): New.
4196         (arm_wince_init_abi): Register it as gdbarch_skip_main_prologue
4197         callback.
4198
4199 2009-06-29  Tristan Gingold  <gingold@adacore.com>
4200
4201         * i386-darwin-tdep.c (amd64_darwin_thread_state_reg_offset)
4202         (amd64_darwin_thread_state_num_regs)
4203         (amd64_darwin_sigcontext_addr, x86_darwin_init_abi_64): Moved to
4204         amd64-darwin-tdep.c
4205         (_initialize_i386_darwin_tdep): Remove 64 bits parts.
4206         (darwin_dwarf_signal_frame_p): Make public.
4207         * amd64-darwin-tdep.c: New file with most chunks from
4208         i386-darwin-tdep.c      
4209         * i386-darwin-tdep.h: Add a prototype for darwin_dwarf_signal_frame_p.
4210         (amd64_darwin_thread_state_reg_offset)
4211         (amd64_darwin_thread_state_num_regs): Moved to amd64-darwin-tdep.h
4212         * amd64-darwin-tdep.h: New file.
4213         * i386-darwin-nat.c: Only includes amd64-nat.h and amd64-darwin-tdep.h
4214         if BFD64 is defined.
4215         (i386_darwin_fetch_inferior_registers): Add #ifdef BFD64/#endif around
4216         64 bits parts.
4217         (i386_darwin_store_inferior_registers): Ditto.
4218         (darwin_set_sstep): Ditto.
4219         (darwin_complete_target): Ditto.
4220         (amd64_darwin_sstep_at_sigreturn): Ditto.
4221         * configure.tgt: Create a separate entry for x86_64-*-darwin.
4222         Add 64 bits support for i386-*-darwin if --enable-64-bit-bfd.
4223         * Makefile.in (ALLDEPFILES): Add amd64-darwin-tdep.c, darwin-nat.c,
4224         i386-darwin-tdep.c i386-darwin-nat.c
4225         (ALL_64_TARGET_OBS): Add amd64-darwin-tdep.o
4226         
4227 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
4228
4229         * linux-fork.c (forks_exist_p): Drop unnecessary extern.
4230         (add_fork, linux_fork_killall, linux_fork_mourn_inferior)
4231         (linux_fork_detach): Ditto.
4232         (delete_fork_command): Rename to ...
4233         (delete_checkpoint_command): ... this.
4234         (detach_fork_command): Rename to ...
4235         (detach_checkpoint_command): ... this.
4236         (info_forks_command): Rename to ...
4237         (info_checkpoints_command): ... this.
4238         (_initialize_linux_fork): Remove stale comments.  Adjust.
4239
4240 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
4241
4242         * linux-nat.c (linux_child_follow_fork): If we're staying attached
4243         to the child process, enable event reporting on it.  Don't handle
4244         checkpoints here.  Instead, add the child fork to the lwp thread
4245         and inferior lists without clobbering the previous inferior.  Let
4246         the thread_db layer learn about a new child process, even if
4247         following the parent.
4248         (linux_nat_switch_fork): Delete lwps of the current inferior only,
4249         instead of clearing the whole list.  Use thread_change_ptid to
4250         give the core the illusion the new checkpoint is still the same
4251         inferior.  Clear the register cache.
4252         (linux_handle_extended_wait): Handle checkpoints here.
4253         (linux_multi_process): Turn on.
4254         * linux-fork.c (struct fork_info) <pc>: Remove field.
4255         (init_fork_list): Do not delete the checkpoint from the inferior
4256         list (it is not there).
4257         (fork_load_infrun_state): Don't switch inferior_ptid here.  Pass
4258         the new checkpoint's ptid to linux_nat_switch_fork.
4259         (fork_save_infrun_state): Make static.  Don't stop the pc field of
4260         fork_info, it's gone.
4261         (linux_fork_mourn_inferior): Don't delete the checkpoint from the
4262         inferior list, it's not there.
4263         (linux_fork_detach): Ditto.
4264         (delete_fork_command): Replace mention of fork/checkpoint by
4265         checkpoint only.
4266         (detach_fork_command): Likewise.  Don't delete the checkpoint from
4267         the inferior list.
4268         (info_forks_command): Adjust.
4269         (restore_detach_fork): Delete.
4270         (checkpointing_pid): New.
4271         (linux_fork_checkpointing_p): New.
4272         (save_detach_fork): Delete.
4273         (checkpoint_command): Delete temp_detach_fork.  Don't remove
4274         breakpoints, that's a nop.  Store the pid of the process we're
4275         checkpointing, and use make_cleanup_restore_integer to restore it.
4276         Don't reinsert breakpoints here.
4277         (process_command, fork_command): Delete.
4278         (restart_command): Update comments to only mention checkpoints,
4279         not forks.
4280         (_initialize_linux_fork): Delete "fork", "process", "info forks"
4281         commands.
4282         * linux-fork.h (fork_save_infrun_state, fork_list): Delete
4283         declarations.
4284         (linux_fork_checkpointing_p): Declare.
4285         * cli/cli-cmds.c (killlist): New.
4286         * cli/cli-cmds.h (killlist): Declare.
4287         * gdbcmd.h (killlist): Declare.
4288         * inferior.c: Include "gdbthread.h".
4289         (detach_inferior_command, kill_inferior_command)
4290         (inferior_command): New.
4291         (info_inferiors_command): Allow specifying a specific inferior id.
4292         (_initialize_inferiors): Register "inferior", "kill inferior" and
4293         "detach inferior" commands.
4294         * infcmd.c (_initialize_infcmd): Make "kill" a prefix command.
4295         * gdbthread.h (any_thread_of_process): Declare.
4296         * thread.c (any_thread_of_process): New.
4297
4298         * NEWS: Mention multi-inferior debugging.  Mention 'info
4299         inferiors', 'inferior', 'detach inferior' and 'kill inferior' as
4300         new commands.
4301         (Removed commands): New section, mentioning that 'info forks',
4302         'fork', 'process', 'delete fork' and 'detach fork' are now gone.
4303
4304 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4305
4306         * gdbarch.sh (current_gdbarch): Remove global variable.
4307         (find_arch_by_info): Remove, inline into ...
4308         (gdbarch_find_by_info): ... this.  Remove current_gdbarch swapping.
4309         (deprecated_current_gdbarch_select_hack): Rename to ...
4310         (deprecated_target_gdbarch_select_hack): ... this.  Do not set
4311         or access current_gdbarch.
4312         * gdbarch.c, gdbarch.h: Regenerate.
4313
4314         * arch-utils.c (gdbarch_update_p): Update call.
4315         (set_gdbarch_from_file): Likewise.
4316
4317 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4318
4319         * defs.h (extract_signed_integer, extract_unsigned_integer,
4320         extract_long_unsigned_integer, store_signed_integer,
4321         store_unsigned_integer): Add BYTE_ORDER parameter.
4322         * findvar.c (extract_signed_integer, extract_unsigned_integer,
4323         extract_long_unsigned_integer, store_signed_integer,
4324         store_unsigned_integer): Add BYTE_ORDER parameter.  Use it
4325         instead of current_gdbarch.
4326
4327         * gdbcore.h (read_memory_integer, safe_read_memory_integer,
4328         read_memory_unsigned_integer, write_memory_signed_integer,
4329         write_memory_unsigned_integer): Add BYTE_ORDER parameter.
4330         * corefile.c (struct captured_read_memory_integer_arguments): Add
4331         BYTE_ORDER member.
4332         (safe_read_memory_integer): Add BYTE_ORDER parameter.  Store it into
4333         struct captured_read_memory_integer_arguments.
4334         (do_captured_read_memory_integer): Pass it to read_memory_integer.
4335         (read_memory_integer): Add BYTE_ORDER parameter.  Pass it to
4336         extract_signed_integer.
4337         (read_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it to
4338         extract_unsigned_integer.
4339         (write_memory_signed_integer): Add BYTE_ORDER parameter.  Pass it
4340         to store_signed_integer.
4341         (write_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it
4342         to store_unsigned_integer.
4343
4344         * target.h (get_target_memory_unsigned): Add BYTE_ORDER parameter.
4345         * target.c (get_target_memory_unsigned): Add BYTE_ORDER parameter.
4346         Pass it to extract_unsigned_integer.
4347
4348
4349         Update calls to extract_signed_integer, extract_unsigned_integer,
4350         extract_long_unsigned_integer, store_signed_integer,
4351         store_unsigned_integer, read_memory_integer,
4352         read_memory_unsigned_integer, safe_read_memory_integer,
4353         write_memory_signed_integer, write_memory_unsigned_integer, and
4354         get_target_memory_unsigned to pass byte order:
4355         * ada-lang.c (ada_value_binop): Update.
4356         * ada-valprint.c (char_at): Update.
4357         * alpha-osf1-tdep.c (alpha_osf1_sigcontext_addr): Update.
4358         * alpha-tdep.c (alpha_lds, alpha_sts, alpha_push_dummy_call,
4359         alpha_extract_return_value, alpha_read_insn,
4360         alpha_get_longjmp_target): Update.
4361         * amd64-linux-tdep.c (amd64_linux_sigcontext_addr): Update.
4362         * amd64obsd-tdep.c (amd64obsd_supply_uthread,
4363         amd64obsd_collect_uthread, amd64obsd_trapframe_cache): Update.
4364         * amd64-tdep.c (amd64_push_dummy_call, amd64_analyze_prologue,
4365         amd64_frame_cache, amd64_sigtramp_frame_cache, fixup_riprel,
4366         amd64_displaced_step_fixup): Update.
4367         * arm-linux-tdep.c (arm_linux_sigreturn_init,
4368         arm_linux_rt_sigreturn_init, arm_linux_supply_gregset): Update.
4369         * arm-tdep.c (thumb_analyze_prologue, arm_skip_prologue,
4370         arm_scan_prologue, arm_push_dummy_call, thumb_get_next_pc,
4371         arm_get_next_pc, arm_extract_return_value, arm_store_return_value,
4372         arm_return_value): Update.
4373         * arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update.
4374         * auxv.c (default_auxv_parse): Update.
4375         * avr-tdep.c (avr_address_to_pointer, avr_pointer_to_address,
4376         avr_scan_prologue, avr_extract_return_value,
4377         avr_frame_prev_register, avr_push_dummy_call): Update.
4378         * bsd-uthread.c (bsd_uthread_check_magic, bsd_uthread_lookup_offset,
4379         bsd_uthread_wait, bsd_uthread_thread_alive,
4380         bsd_uthread_extra_thread_info): Update.
4381         * c-lang.c (c_printstr, print_wchar): Update.
4382         * cp-valprint.c (cp_print_class_member): Update.
4383         * cris-tdep.c (cris_sigcontext_addr, cris_sigtramp_frame_unwind_cache,
4384         cris_push_dummy_call, cris_scan_prologue, cris_store_return_value,
4385         cris_extract_return_value, find_step_target, dip_prefix,
4386         sixteen_bit_offset_branch_op, none_reg_mode_jump_op,
4387         move_mem_to_reg_movem_op, get_data_from_address): Update.
4388         * dwarf2expr.c (dwarf2_read_address, execute_stack_op): Update.
4389         * dwarf2-frame.c (execute_cfa_program): Update.
4390         * dwarf2loc.c (find_location_expression): Update.
4391         * dwarf2read.c (dwarf2_const_value): Update.
4392         * expprint.c (print_subexp_standard): Update.
4393         * findvar.c (unsigned_pointer_to_address, signed_pointer_to_address,
4394         unsigned_address_to_pointer, address_to_signed_pointer,
4395         read_var_value): Update.
4396         * frame.c (frame_unwind_register_signed,
4397         frame_unwind_register_unsigned, get_frame_memory_signed,
4398         get_frame_memory_unsigned): Update.
4399         * frame-unwind.c (frame_unwind_got_constant): Update.
4400         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp,
4401         frv_linux_sigcontext_reg_addr, frv_linux_sigtramp_frame_cache):
4402         Update.
4403         * frv-tdep.c (frv_analyze_prologue, frv_skip_main_prologue,
4404         frv_extract_return_value, find_func_descr,
4405         frv_convert_from_func_ptr_addr, frv_push_dummy_call): Update.
4406         * f-valprint.c (f_val_print): Update.
4407         * gnu-v3-abi.c (gnuv3_decode_method_ptr, gnuv3_make_method_ptr):
4408         Update.
4409         * h8300-tdep.c (h8300_is_argument_spill, h8300_analyze_prologue,
4410         h8300_push_dummy_call, h8300_extract_return_value,
4411         h8300h_extract_return_value, h8300_store_return_value,
4412         h8300h_store_return_value): Update.
4413         * hppabsd-tdep.c (hppabsd_find_global_pointer): Update.
4414         * hppa-hpux-nat.c (hppa_hpux_fetch_register, hppa_hpux_store_register):
4415         Update.
4416         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline,
4417         hppa64_hpux_in_solib_call_trampoline,
4418         hppa_hpux_in_solib_return_trampoline, hppa_hpux_skip_trampoline_code,
4419         hppa_hpux_sigtramp_frame_unwind_cache,
4420         hppa_hpux_sigtramp_unwind_sniffer, hppa32_hpux_find_global_pointer,
4421         hppa64_hpux_find_global_pointer, hppa_hpux_search_pattern,
4422         hppa32_hpux_search_dummy_call_sequence,
4423         hppa64_hpux_search_dummy_call_sequence, hppa_hpux_supply_save_state,
4424         hppa_hpux_unwind_adjust_stub): Update.
4425         * hppa-linux-tdep.c (insns_match_pattern,
4426         hppa_linux_find_global_pointer): Update.
4427         * hppa-tdep.c (hppa_in_function_epilogue_p, hppa32_push_dummy_call,
4428         hppa64_convert_code_addr_to_fptr, hppa64_push_dummy_call,
4429         skip_prologue_hard_way, hppa_frame_cache, hppa_fallback_frame_cache,
4430         hppa_pseudo_register_read, hppa_frame_prev_register_helper,
4431         hppa_match_insns): Update.
4432         * hpux-thread.c (hpux_thread_fetch_registers): Update.
4433         * i386-tdep.c (i386bsd_sigcontext_addr): Update.
4434         * i386-cygwin-tdep.c (core_process_module_section): Update.
4435         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn,
4436         amd64_darwin_sstep_at_sigreturn): Update.
4437         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr,
4438         amd64_darwin_sigcontext_addr): Likewise.
4439         * i386-linux-nat.c (i386_linux_sigcontext_addr): Update.
4440         * i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Update.
4441         * i386-nto-tdep.c (i386nto_sigcontext_addr): Update.
4442         * i386obsd-nat.c (i386obsd_supply_pcb): Update.
4443         * i386obsd-tdep.c (i386obsd_supply_uthread, i386obsd_collect_uthread,
4444         i386obsd_trapframe_cache): Update.
4445         * i386-tdep.c (i386_displaced_step_fixup, i386_follow_jump,
4446         i386_analyze_frame_setup, i386_analyze_prologue,
4447         i386_skip_main_prologue, i386_frame_cache, i386_sigtramp_frame_cache,
4448         i386_get_longjmp_target, i386_push_dummy_call,
4449         i386_pe_skip_trampoline_code, i386_svr4_sigcontext_addr,
4450         i386_fetch_pointer_argument): Update.
4451         * i387-tdep.c (i387_supply_fsave): Update.
4452         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Update.
4453         * ia64-tdep.c (ia64_pseudo_register_read, ia64_pseudo_register_write,
4454         examine_prologue, ia64_frame_cache, ia64_frame_prev_register,
4455         ia64_sigtramp_frame_cache, ia64_sigtramp_frame_prev_register,
4456         ia64_access_reg, ia64_access_rse_reg, ia64_libunwind_frame_this_id,
4457         ia64_libunwind_frame_prev_register,
4458         ia64_libunwind_sigtramp_frame_this_id,
4459         ia64_libunwind_sigtramp_frame_prev_register, ia64_find_global_pointer,
4460         find_extant_func_descr, find_func_descr,
4461         ia64_convert_from_func_ptr_addr, ia64_push_dummy_call, ia64_dummy_id,
4462         ia64_unwind_pc): Update.
4463         * iq2000-tdep.c (iq2000_pointer_to_address, iq2000_address_to_pointer,
4464         iq2000_scan_prologue, iq2000_extract_return_value,
4465         iq2000_push_dummy_call): Update.
4466         * irix5nat.c (fill_gregset): Update.
4467         * jv-lang.c (evaluate_subexp_java): Update.
4468         * jv-valprint.c (java_value_print): Update.
4469         * lm32-tdep.c (lm32_analyze_prologue, lm32_push_dummy_call, 
4470         lm32_extract_return_value, lm32_store_return_value): Update.
4471         * m32c-tdep.c (m32c_push_dummy_call, m32c_return_value,
4472         m32c_skip_trampoline_code, m32c_m16c_address_to_pointer,
4473         m32c_m16c_pointer_to_address): Update.
4474         * m32r-tdep.c (m32r_store_return_value, decode_prologue,
4475         m32r_skip_prologue, m32r_push_dummy_call, m32r_extract_return_value):
4476         Update.
4477         * m68hc11-tdep.c (m68hc11_pseudo_register_read,
4478         m68hc11_pseudo_register_write, m68hc11_analyze_instruction,
4479         m68hc11_push_dummy_call): Update.
4480         * m68linux-tdep.c (m68k_linux_pc_in_sigtramp,
4481         m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
4482         Update.
4483         * m68k-tdep.c (m68k_push_dummy_call, m68k_analyze_frame_setup,
4484         m68k_analyze_register_saves, m68k_analyze_prologue, m68k_frame_cache,
4485         m68k_get_longjmp_target): Update.
4486         * m88k-tdep.c (m88k_fetch_instruction): Update.
4487         * mep-tdep.c (mep_pseudo_cr32_read, mep_pseudo_csr_write,
4488         mep_pseudo_cr32_write, mep_get_insn, mep_push_dummy_call): Update.
4489         * mi/mi-main.c (mi_cmd_data_write_memory): Update.
4490         * mips-linux-tdep.c (mips_linux_get_longjmp_target, supply_32bit_reg,
4491         mips64_linux_get_longjmp_target, mips64_fill_gregset,
4492         mips64_fill_fpregset, mips_linux_in_dynsym_stub): Update.
4493         * mipsnbdsd-tdep.c (mipsnbsd_get_longjmp_target): Update.
4494         * mips-tdep.c (mips_fetch_instruction, fetch_mips_16,
4495         mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call,
4496         mips_o32_push_dummy_call, mips_o64_push_dummy_call, 
4497         mips_single_step_through_delay, mips_skip_pic_trampoline_code,
4498         mips_integer_to_address): Update.
4499         * mn10300-tdep.c (mn10300_analyze_prologue, mn10300_push_dummy_call):
4500         Update.
4501         * monitor.c (monitor_supply_register, monitor_write_memory,
4502         monitor_read_memory_single): Update.
4503         * moxie-tdep.c (moxie_store_return_value, moxie_extract_return_value,
4504         moxie_analyze_prologue): Update.
4505         * mt-tdep.c (mt_return_value, mt_skip_prologue, mt_select_coprocessor,
4506         mt_pseudo_register_read, mt_pseudo_register_write, mt_registers_info,
4507         mt_push_dummy_call): Update.
4508         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
4509         read_objc_methlist_method, read_objc_object, read_objc_super,
4510         read_objc_class, find_implementation_from_class): Update.
4511         * ppc64-linux-tdep.c (ppc64_desc_entry_point,
4512         ppc64_linux_convert_from_func_ptr_addr, ppc_linux_sigtramp_cache):
4513         Update.
4514         * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_sniffer,
4515         ppcobsd_sigtramp_frame_cache): Update.
4516         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call,
4517         do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call,
4518         ppc64_sysv_abi_return_value): Update.
4519         * ppc-linux-nat.c (ppc_linux_auxv_parse): Update.
4520         * procfs.c (procfs_auxv_parse): Update.
4521         * p-valprint.c (pascal_val_print): Update.
4522         * regcache.c (regcache_raw_read_signed, regcache_raw_read_unsigned,
4523         regcache_raw_write_signed, regcache_raw_write_unsigned,
4524         regcache_cooked_read_signed, regcache_cooked_read_unsigned,
4525         regcache_cooked_write_signed, regcache_cooked_write_unsigned): Update.
4526         * remote-m32r-sdi.c (m32r_fetch_register): Update.
4527         * remote-mips.c (mips_wait, mips_fetch_registers, mips_xfer_memory):
4528         Update.
4529         * rs6000-aix-tdep.c (rs6000_push_dummy_call, rs6000_return_value,
4530         rs6000_convert_from_func_ptr_addr, branch_dest, 
4531         rs6000_software_single_step): Update.
4532         * rs6000-tdep.c (rs6000_in_function_epilogue_p,
4533         ppc_displaced_step_fixup, ppc_deal_with_atomic_sequence,
4534         bl_to_blrl_insn_p, rs6000_fetch_instruction, skip_prologue,
4535         rs6000_skip_main_prologue, rs6000_skip_trampoline_code,
4536         rs6000_frame_cache): Update.
4537         * s390-tdep.c (s390_pseudo_register_read, s390_pseudo_register_write,
4538         s390x_pseudo_register_read, s390x_pseudo_register_write, s390_load,
4539         s390_backchain_frame_unwind_cache, s390_sigtramp_frame_unwind_cache,
4540         extend_simple_arg, s390_push_dummy_call, s390_return_value): Update.
4541         * scm-exp.c (scm_lreadr): Update.
4542         * scm-lang.c (scm_get_field, scm_unpack): Update.
4543         * scm-valprint.c (scm_val_print): Update.
4544         * score-tdep.c (score_breakpoint_from_pc, score_push_dummy_call,
4545         score_fetch_inst): Update.
4546         * sh64-tdep.c (look_for_args_moves, sh64_skip_prologue_hard_way,
4547         sh64_analyze_prologue, sh64_push_dummy_call, sh64_extract_return_value,
4548         sh64_pseudo_register_read, sh64_pseudo_register_write,
4549         sh64_frame_prev_register): Update:
4550         * sh-tdep.c (sh_analyze_prologue, sh_push_dummy_call_fpu,
4551         sh_push_dummy_call_nofpu, sh_extract_return_value_nofpu,
4552         sh_store_return_value_nofpu, sh_in_function_epilogue_p): Update.
4553         * solib-darwin.c (darwin_load_image_infos): Update.
4554         * solib-frv.c (fetch_loadmap, lm_base, frv_current_sos, enable_break2,
4555         find_canonical_descriptor_in_load_object): Update.
4556         * solib-irix.c (extract_mips_address, fetch_lm_info, irix_current_sos,
4557         irix_open_symbol_file_object): Update.
4558         * solib-som.c (som_solib_create_inferior_hook, link_map_start,
4559         som_current_sos, som_open_symbol_file_object): Update.
4560         * solib-sunos.c (SOLIB_EXTRACT_ADDRESS, LM_ADDR, LM_NEXT, LM_NAME):
4561         Update.
4562         * solib-svr4.c (read_program_header, scan_dyntag_auxv,
4563         solib_svr4_r_ldsomap): Update.
4564         * sparc64-linux-tdep.c (sparc64_linux_step_trap): Update.
4565         * sparc64obsd-tdep.c (sparc64obsd_supply_uthread,
4566         sparc64obsd_collect_uthread): Update.
4567         * sparc64-tdep.c (sparc64_pseudo_register_read,
4568         sparc64_pseudo_register_write, sparc64_supply_gregset,
4569         sparc64_collect_gregset): Update.
4570         * sparc-linux-tdep.c (sparc32_linux_step_trap): Update.
4571         * sparcobsd-tdep.c (sparc32obsd_supply_uthread,
4572         sparc32obsd_collect_uthread): Update.
4573         * sparc-tdep.c (sparc_fetch_wcookie, sparc32_push_dummy_code,
4574         sparc32_store_arguments, sparc32_return_value, sparc_supply_rwindow,
4575         sparc_collect_rwindow): Update.
4576         * spu-linux-nat.c (parse_spufs_run): Update.
4577         * spu-tdep.c (spu_pseudo_register_read_spu,
4578         spu_pseudo_register_write_spu, spu_pointer_to_address,
4579         spu_analyze_prologue, spu_in_function_epilogue_p,
4580         spu_frame_unwind_cache, spu_push_dummy_call, spu_software_single_step,
4581         spu_get_longjmp_target, spu_get_overlay_table, spu_overlay_update_osect,
4582         info_spu_signal_command, info_spu_mailbox_list, info_spu_dma_cmdlist,
4583         info_spu_dma_command, info_spu_proxydma_command): Update.
4584         * stack.c (print_frame_nameless_args, frame_info): Update.
4585         * symfile.c (read_target_long_array, simple_read_overlay_table,
4586         simple_read_overlay_region_table): Update.
4587         * target.c (debug_print_register): Update.
4588         * tramp-frame.c (tramp_frame_start): Update.
4589         * v850-tdep.c (v850_analyze_prologue, v850_push_dummy_call,
4590         v850_extract_return_value, v850_store_return_value, 
4591         * valarith.c (value_binop, value_bit_index): Update.
4592         * valops.c (value_cast): Update.
4593         * valprint.c (val_print_type_code_int, val_print_string,
4594         read_string): Update.
4595         * value.c (unpack_long, unpack_double, unpack_field_as_long,
4596         modify_field, pack_long): Update.
4597         * vax-tdep.c (vax_store_arguments, vax_push_dummy_call,
4598         vax_skip_prologue): Update.
4599         * xstormy16-tdep.c (xstormy16_push_dummy_call,
4600         xstormy16_analyze_prologue, xstormy16_in_function_epilogue_p,
4601         xstormy16_resolve_jmp_table_entry, xstormy16_find_jmp_table_entry,
4602         xstormy16_pointer_to_address, xstormy16_address_to_pointer): Update.
4603         * xtensa-tdep.c (extract_call_winsize, xtensa_pseudo_register_read,
4604         xtensa_pseudo_register_write, xtensa_frame_cache,
4605         xtensa_push_dummy_call, call0_track_op, call0_frame_cache): Update.
4606
4607
4608         * dfp.h (decimal_to_string, decimal_from_string, decimal_from_integral,
4609         decimal_from_floating, decimal_to_doublest, decimal_is_zero): Add
4610         BYTE_ORDER parameter.
4611         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
4612         parameters.
4613         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
4614         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
4615         * dfp.c (match_endianness): Add BYTE_ORDER parameter.  Use it
4616         instead of current_gdbarch.
4617         (decimal_to_string, decimal_from_integral, decimal_from_floating,
4618         decimal_to_doublest, decimal_is_zero): Add BYTE_ORDER parameter.
4619         Pass it to match_endianness.
4620         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
4621         parameters.  Pass them to match_endianness.
4622         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
4623         Pass them to match_endianness.
4624         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
4625         Pass them to match_endianness.
4626         * valarith.c (value_args_as_decimal): Add BYTE_ORDER_X and
4627         BYTE_ORDER_Y output parameters.
4628         (value_binop): Update call to value_args_as_decimal.
4629
4630         Update calls to decimal_to_string, decimal_from_string,
4631         decimal_from_integral, decimal_from_floating, decimal_to_doublest,
4632         decimal_is_zero, decimal_binop, decimal_compare and decimal_convert
4633         to pass/receive byte order:
4634         * c-exp.y (parse_number): Update.
4635         * printcmd.c (printf_command): Update.
4636         * valarith.c (value_args_as_decimal, value_binop, value_logical_not,
4637         value_equal, value_less): Update.
4638         * valops.c (value_cast, value_one): Update.
4639         * valprint.c (print_decimal_floating): Update.
4640         * value.c (unpack_long, unpack_double): Update.
4641         * python/python-value.c (valpy_nonzero): Update.
4642
4643
4644         * ada-valprint.c (char_at): Add BYTE_ORDER parameter.
4645         (printstr): Update calls to char_at.
4646         (ada_val_print_array): Likewise.
4647         * valprint.c (read_string): Add BYTE_ORDER parameter.
4648         (val_print_string): Update call to read_string.
4649         * c-lang.c (c_get_string): Likewise.
4650         * charset.h (target_wide_charset): Add BYTE_ORDER parameter.
4651         * charset.c (target_wide_charset): Add BYTE_ORDER parameter.
4652         Use it instead of current_gdbarch.
4653         * printcmd.c (printf_command): Update calls to target_wide_charset.
4654         * c-lang.c (charset_for_string_type): Add BYTE_ORDER parameter.
4655         Pass to target_wide_charset.  Use it instead of current_gdbarch.
4656         (classify_type): Add BYTE_ORDER parameter.  Pass to
4657         charset_for_string_type.  Allow NULL encoding pointer.
4658         (print_wchar): Add BYTE_ORDER parameter.
4659         (c_emit_char): Update calls to classify_type and print_wchar.
4660         (c_printchar, c_printstr): Likewise.
4661
4662
4663         * gdbarch.sh (in_solib_return_trampoline): Convert to type "m".
4664         * gdbarch.c, gdbarch.h: Regenerate.
4665         * arch-utils.h (generic_in_solib_return_trampoline): Add GDBARCH
4666         parameter.
4667         * arch-utils.c (generic_in_solib_return_trampoline): Likewise.
4668         * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Likewise.
4669         * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Likewise.
4670         (rs6000_skip_trampoline_code): Update call.
4671
4672         * alpha-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
4673         dynamic_sigtramp_offset and pc_in_sigtramp callbacks.
4674         (alpha_read_insn): Add GDBARCH parameter.
4675         * alpha-tdep.c (alpha_lds, alpha_sts): Add GDBARCH parameter.
4676         (alpha_register_to_value): Pass architecture to alpha_sts.
4677         (alpha_extract_return_value): Likewise.
4678         (alpha_value_to_register): Pass architecture to alpha_lds.
4679         (alpha_store_return_value): Likewise.
4680         (alpha_read_insn): Add GDBARCH parameter.
4681         (alpha_skip_prologue): Pass architecture to alpha_read_insn.
4682         (alpha_heuristic_proc_start): Likewise.
4683         (alpha_heuristic_frame_unwind_cache): Likewise.
4684         (alpha_next_pc): Likewise.
4685         (alpha_sigtramp_frame_this_id): Pass architecture to
4686         tdep->dynamic_sigtramp_offset callback.
4687         (alpha_sigtramp_frame_sniffer): Pass architecture to
4688         tdep->pc_in_sigtramp callback.
4689         * alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): Add GDBARCH parameter.
4690         (alphafbsd_sigtramp_offset): Likewise.
4691         * alpha-linux-tdep.c (alpha_linux_sigtramp_offset_1): Add GDBARCH
4692         parameter.  Pass to alpha_read_insn.
4693         (alpha_linux_sigtramp_offset): Add GDBARCH parameter.  Pass to
4694         alpha_linux_sigtramp_offset_1.
4695         (alpha_linux_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
4696         alpha_linux_sigtramp_offset.
4697         (alpha_linux_sigcontext_addr): Pass architecture to alpha_read_insn
4698         and alpha_linux_sigtramp_offset.
4699         * alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Add GDBARCH parameter.
4700         (alphanbsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
4701         alphanbsd_sigtramp_offset.
4702         * alphaobsd-tdep.c (alphaobsd_sigtramp_offset): Add GDBARCH parameter.
4703         (alphaobsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
4704         alpha_read_insn.
4705         (alphaobsd_sigcontext_addr): Pass architecture to
4706         alphaobsd_sigtramp_offset.
4707         * alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): Add GDBARCH
4708         parameter.
4709
4710         * amd64-tdep.c (amd64_analyze_prologue): Add GDBARCH parameter.
4711         (amd64_skip_prologue): Pass architecture to amd64_analyze_prologue.
4712         (amd64_frame_cache): Likewise.
4713
4714         * arm-tdep.c (SWAP_SHORT, SWAP_INT): Remove.
4715         (thumb_analyze_prologue, arm_skip_prologue, arm_scan_prologue,
4716         thumb_get_next_pc, arm_get_next_pc): Do not use SWAP_ macros.
4717         * arm-wince-tdep.c: Include "frame.h".
4718
4719         * avr-tdep.c (EXTRACT_INSN): Remove.
4720         (avr_scan_prologue): Add GDBARCH argument, inline EXTRACT_INSN.
4721         (avr_skip_prologue): Pass architecture to avr_scan_prologue.
4722         (avr_frame_unwind_cache): Likewise.
4723
4724         * cris-tdep.c (struct instruction_environment): Add BYTE_ORDER member.
4725         (find_step_target): Initialize it.
4726         (get_data_from_address): Add BYTE_ORDER parameter.
4727         (bdap_prefix): Pass byte order to get_data_from_address.
4728         (handle_prefix_assign_mode_for_aritm_op): Likewise.
4729         (three_operand_add_sub_cmp_and_or_op): Likewise.
4730         (handle_inc_and_index_mode_for_aritm_op): Likewise.
4731
4732         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Add GDBARCH parameter.
4733         (frv_linux_sigcontext_reg_addr): Pass architecture to
4734         frv_linux_pc_in_sigtramp.
4735         (frv_linux_sigtramp_frame_sniffer): Likewise.
4736
4737         * h8300-tdep.c (h8300_is_argument_spill): Add GDBARCH parameter.
4738         (h8300_analyze_prologue): Add GDBARCH parameter.  Pass to
4739         h8300_is_argument_spill.
4740         (h8300_frame_cache, h8300_skip_prologue): Pass architecture
4741         to h8300_analyze_prologue.
4742
4743         * hppa-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
4744         in_solib_call_trampoline callback.
4745         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.
4746         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Add GDBARCH
4747         parameter.
4748         (hppa64_push_dummy_call): Pass architecture to
4749         hppa64_convert_code_addr_to_fptr.
4750         (hppa_match_insns): Add GDBARCH parameter.
4751         (hppa_match_insns_relaxed): Add GDBARCH parameter.  Pass to
4752         hppa_match_insns.
4753         (hppa_skip_trampoline_code): Pass architecture to hppa_match_insns.
4754         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.  Pass to
4755         hppa_match_insns_relaxed.
4756         (hppa_stub_unwind_sniffer): Pass architecture to
4757         tdep->in_solib_call_trampoline callback.
4758         * hppa-hpux-tdep.c (hppa_hpux_search_pattern): Add GDBARCH parameter.
4759         (hppa32_hpux_search_dummy_call_sequence): Pass architecture to
4760         hppa_hpux_search_pattern.
4761         * hppa-linux-tdep.c (insns_match_pattern): Add GDBARCH parameter.
4762         (hppa_linux_sigtramp_find_sigcontext): Add GDBARCH parameter.
4763         Pass to insns_match_pattern.
4764         (hppa_linux_sigtramp_frame_unwind_cache): Pass architecture to
4765         hppa_linux_sigtramp_find_sigcontext.
4766         (hppa_linux_sigtramp_frame_sniffer): Likewise.
4767         (hppa32_hpux_in_solib_call_trampoline): Add GDBARCH parameter.
4768         (hppa64_hpux_in_solib_call_trampoline): Likewise.
4769
4770         * i386-tdep.c (i386_follow_jump): Add GDBARCH parameter.
4771         (i386_analyze_frame_setup): Add GDBARCH parameter.
4772         (i386_analyze_prologue): Add GDBARCH parameter.  Pass to
4773         i386_follow_jump and i386_analyze_frame_setup.
4774         (i386_skip_prologue): Pass architecture to i386_analyze_prologue
4775         and i386_follow_jump.
4776         (i386_frame_cache): Pass architecture to i386_analyze_prologue.
4777         (i386_pe_skip_trampoline_code): Add FRAME parameter.
4778         * i386-tdep.h (i386_pe_skip_trampoline_code): Add FRAME parameter.
4779         * i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Pass
4780         frame to i386_pe_skip_trampoline_code.
4781
4782         * ia64-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter
4783         to sigcontext_register_address callback.
4784         * ia64-tdep.c (ia64_find_global_pointer): Add GDBARCH parameter.
4785         (ia64_find_unwind_table): Pass architecture to
4786         ia64_find_global_pointer.
4787         (find_extant_func_descr): Add GDBARCH parameter.
4788         (find_func_descr): Pass architecture to find_extant_func_descr
4789         and ia64_find_global_pointer.
4790         (ia64_sigtramp_frame_init_saved_regs): Pass architecture to
4791         tdep->sigcontext_register_address callback.
4792         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Add
4793         GDBARCH parameter.
4794
4795         * iq2000-tdep.c (iq2000_scan_prologue): Add GDBARCH parameter.
4796         (iq2000_frame_cache): Pass architecture to iq2000_scan_prologue.
4797
4798         * lm32-tdep.c (lm32_analyze_prologue): Add GDBARCH parameter.
4799         (lm32_skip_prologue, lm32_frame_cache): Pass architecture to
4800         lm32_analyze_prologue.
4801
4802         * m32r-tdep.c (decode_prologue): Add GDBARCH parameter.
4803         (m32r_skip_prologue): Pass architecture to decode_prologue.
4804
4805         * m68hc11-tdep.c (m68hc11_analyze_instruction): Add GDBARCH parameter.
4806         (m68hc11_scan_prologue): Pass architecture to
4807         m68hc11_analyze_instruction.
4808
4809         * m68k-tdep.c (m68k_analyze_frame_setup): Add GDBARCH parameter.
4810         (m68k_analyze_prologue): Pass architecture to
4811         m68k_analyze_frame_setup.
4812
4813         * m88k-tdep.c (m88k_fetch_instruction): Add BYTE_ORDER parameter.
4814         (m88k_analyze_prologue): Add GDBARCH parameter.  Pass byte order
4815         to m88k_fetch_instruction.
4816         (m88k_skip_prologue): Pass architecture to m88k_analyze_prologue.
4817         (m88k_frame_cache): Likewise.
4818
4819         * mep-tdep.c (mep_get_insn): Add GDBARCH parameter.
4820         (mep_analyze_prologue): Pass architecture to mep_get_insn.
4821
4822         * mips-tdep.c (mips_fetch_instruction): Add GDBARCH parameter.
4823         (mips32_next_pc): Pass architecture to mips_fetch_instruction.
4824         (deal_with_atomic_sequence): Likewise.
4825         (unpack_mips16): Add GDBARCH parameter, pass to mips_fetch_instruction.
4826         (mips16_scan_prologue): Likewise.
4827         (mips32_scan_prologue): Likewise.
4828         (mips16_in_function_epilogue_p): Likewise.
4829         (mips32_in_function_epilogue_p): Likewise.
4830         (mips_about_to_return): Likewise.
4831         (mips_insn16_frame_cache): Pass architecture to mips16_scan_prologue.
4832         (mips_insn32_frame_cache): Pass architecture to mips32_scan_prologue.
4833         (mips_skip_prologue): Pass architecture to mips16_scan_prologue
4834         and mips32_scan_prologue.
4835         (mips_in_function_epilogue_p): Pass architecture to
4836         mips16_in_function_epilogue_p and
4837         mips32_in_function_epilogue_p.
4838         (heuristic_proc_start): Pass architecture to mips_fetch_instruction
4839         and mips_about_to_return.
4840         (mips_skip_mips16_trampoline_code): Pass architecture to
4841         mips_fetch_instruction.
4842         (fetch_mips_16): Add GDBARCH parameter.
4843         (mips16_next_pc): Pass architecture to fetch_mips_16.
4844         (extended_mips16_next_pc): Pass architecture to unpack_mips16 and
4845         fetch_mips_16.
4846
4847         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
4848         read_objc_methlist_method, read_objc_object, read_objc_super,
4849         read_objc_class): Add GDBARCH parameter.
4850         (find_implementation_from_class): Add GDBARCH parameter, pass
4851         to read_objc_class, read_objc_methlist_nmethods, and
4852         read_objc_methlist_method.
4853         (find_implementation): Add GDBARCH parameter, pass to
4854         read_objc_object and find_implementation_from_class.
4855         (resolve_msgsend, resolve_msgsend_stret): Pass architecture
4856         to find_implementation.
4857         (resolve_msgsend_super, resolve_msgsend_super_stret): Pass
4858         architecture to read_objc_super and find_implementation_from_class.
4859
4860         * ppc64-linux-tdep.c (ppc64_desc_entry_point): Add GDBARCH parameter.
4861         (ppc64_standard_linkage1_target, ppc64_standard_linkage2_target,
4862         ppc64_standard_linkage3_target): Pass architecture to
4863         ppc64_desc_entry_point.
4864         * rs6000-tdep.c (bl_to_blrl_insn_p): Add BYTE_ORDER parameter.
4865         (skip_prologue): Pass byte order to bl_to_blrl_insn_p.
4866         (rs6000_fetch_instruction): Add GDBARCH parameter.
4867         (rs6000_skip_stack_check): Add GDBARCH parameter, pass to
4868         rs6000_fetch_instruction.
4869         (skip_prologue): Pass architecture to rs6000_fetch_instruction.
4870         
4871         * remote-mips.c (mips_store_word): Return old_contents as host
4872         integer value instead of target bytes.
4873
4874         * s390-tdep.c (struct s390_prologue_data): Add BYTE_ORDER member.
4875         (s390_analyze_prologue): Initialize it.
4876         (extend_simple_arg): Add GDBARCH parameter.
4877         (s390_push_dummy_call): Pass architecture to extend_simple_arg.
4878
4879         * scm-lang.c (scm_get_field): Add BYTE_ORDER parameter.
4880         * scm-lang.h (scm_get_field): Add BYTE_ORDER parameter.
4881         (SCM_CAR, SCM_CDR): Pass SCM_BYTE_ORDER to scm_get_field.
4882         * scm-valprint.c (scm_scmval_print): Likewise.
4883         (scm_scmlist_print, scm_ipruk, scm_scmval_print): Define
4884         SCM_BYTE_ORDER.
4885
4886         * sh64-tdep.c (look_for_args_moves): Add GDBARCH parameter.
4887         (sh64_skip_prologue_hard_way): Add GDBARCH parameter, pass to
4888         look_for_args_moves.
4889         (sh64_skip_prologue): Pass architecture to
4890         sh64_skip_prologue_hard_way.
4891         * sh-tdep.c (sh_analyze_prologue): Add GDBARCH parameter.
4892         (sh_skip_prologue): Pass architecture to sh_analyze_prologue.
4893         (sh_frame_cache): Likewise.
4894
4895         * solib-irix.c (extract_mips_address): Add GDBARCH parameter.
4896         (fetch_lm_info, irix_current_sos, irix_open_symbol_file_object):
4897         Pass architecture to extract_mips_address.
4898
4899         * sparc-tdep.h (sparc_fetch_wcookie): Add GDBARCH parameter.
4900         * sparc-tdep.c (sparc_fetch_wcookie): Add GDBARCH parameter.
4901         (sparc_supply_rwindow, sparc_collect_rwindow): Pass architecture
4902         to sparc_fetch_wcookie.
4903         (sparc32_frame_prev_register): Likewise.
4904         * sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
4905         * sparc32nbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
4906         * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
4907
4908         * spu-tdep.c (spu_analyze_prologue): Add GDBARCH parameter.
4909         (spu_skip_prologue): Pass architecture to spu_analyze_prologue.
4910         (spu_virtual_frame_pointer): Likewise.
4911         (spu_frame_unwind_cache): Likewise.
4912         (info_spu_mailbox_list): Add BYTE_ORER parameter.
4913         (info_spu_mailbox_command): Pass byte order to info_spu_mailbox_list.
4914         (info_spu_dma_cmdlist): Add BYTE_ORER parameter.
4915         (info_spu_dma_command, info_spu_proxydma_command): Pass byte order
4916         to info_spu_dma_cmdlist.
4917
4918         * symfile.c (read_target_long_array): Add GDBARCH parameter.
4919         (simple_read_overlay_table, simple_read_overlay_region_table,
4920         simple_overlay_update_1): Pass architecture to read_target_long_array.
4921
4922         * v850-tdep.c (v850_analyze_prologue): Add GDBARCH parameter.
4923         (v850_frame_cache): Pass architecture to v850_analyze_prologue.
4924
4925         * xstormy16-tdep.c (xstormy16_analyze_prologue): Add GDBARCH
4926         parameter.
4927         (xstormy16_skip_prologue, xstormy16_frame_cache): Pass architecture
4928         to xstormy16_analyze_prologue.
4929         (xstormy16_resolve_jmp_table_entry): Add GDBARCH parameter.
4930         (xstormy16_find_jmp_table_entry): Likewise.
4931         (xstormy16_skip_trampoline_code): Pass architecture to
4932         xstormy16_resolve_jmp_table_entry.
4933         (xstormy16_pointer_to_address): Likewise.
4934         (xstormy16_address_to_pointer): Pass architecture to
4935         xstormy16_find_jmp_table_entry.
4936
4937         * xtensa-tdep.c (call0_track_op): Add GDBARCH parameter.
4938         (call0_analyze_prologue): Add GDBARCH parameter, pass to
4939         call0_track_op.
4940         (call0_frame_cache): Pass architecture to call0_analyze_prologue.
4941         (xtensa_skip_prologue): Likewise.
4942
4943 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4944
4945         * defs.h (strlen_paddr, paddr, paddr_nz): Remove.
4946         (paddress): Add GDBARCH parameter.
4947         * utils.c (strlen_paddr, paddr, paddr_nz): Remove.
4948         (paddress): Add GDBARCH parameter, use it instead of current_gdbarch.
4949         * ui-out.h (ui_out_field_core_addr): Add GDBARCH parameter.
4950         * ui-out.c (ui_out_field_core_addr): Add GDBARCH parameter,
4951         use it instead of current_gdbarch.
4952
4953         Update calls to ui_out_field_core_addr to pass architecture:
4954         * ada-lang.c (print_one_exception): Update.
4955         * breakpoint.c (print_one_breakpoint_location,
4956         print_one_exception_catchpoint): Update.
4957         * disasm.c (dump_insns): Update.
4958         * darwin-nat-info.c (darwin_debug_regions_recurse): Update.
4959         * mi/mi-main.c (mi_cmd_data_read_memory): Update.
4960         * mi/mi-symbol-cmds.c: Include "objfiles.h".
4961         (mi_cmd_symbol_list_lines): Update.
4962         * stack.c (print_frame_info, print_frame): Update.
4963
4964         Update callers of paddress to pass architecture:
4965         * ada-tasks.c (info_task): Update.
4966         * ada-valprint.c (ada_val_print_1): Update.
4967         * annotate.c (annotate_source, annotate_frame_begin): Update.
4968         * breakpoint.c (insert_bp_location, describe_other_breakpoints,
4969         mention): Update.
4970         * cli/cli-cmds.c (edit_command, list_command, print_disassembly):
4971         Update.
4972         * corefile.c (memory_error): Update.
4973         * c-valprint.c (print_function_pointer_address, c_val_print): Update.
4974         * disasm.c (dis_asm_print_address): Update.
4975         * exec.c (print_section_info): Update.
4976         * f-valprint.c (f_val_print): Update.
4977         * infcmd.c: Include "arch-utils.h".
4978         (jump_command, program_info): Update.
4979         * linux-fork.c: Include "arch-utils.h".
4980         (info_forks_command): Update.
4981         * m2-valprint.c (print_function_pointer_address,
4982         print_unpacked_pointer, print_variable_at_address,
4983         m2_val_print): Update.
4984         * m32r-rom.c (m32r_load_section, m32r_load, m32r_upload_command):
4985         Update.
4986         * printcmd.c (print_address, print_address_demangle, address_info):
4987         Update.
4988         * p-valprint.c (pascal_val_print): Update.
4989         * source.c: Include "arch-utils.h".
4990         (line_info): Update.
4991         * stack.c (frame_info, print_block_frame_labels): Update.
4992         * symfile.c (add_symbol_file_command, list_overlays_command): Update.
4993         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1,
4994         print_symbol, print_partial_symbols, maintenance_info_psymtabs,
4995         maintenance_check_symtabs): Update.
4996         * symtab.c (find_pc_sect_symtab): Update.
4997         * target.c (deprecated_debug_xfer_memory): Update.
4998         * tracepoint.c (scope_info): Update.
4999         * tui/tui-stack.c (tui_make_status_line): Update.
5000         * valprint.c (val_print_string): Update.
5001
5002         Update callers of paddr_nz to use paddress instead (keeping
5003         user-visible output identical):
5004         * alpha-tdep.c (alpha_heuristic_proc_start): Update.
5005         * amd64-tdep.c (fixup_riprel, amd64_displaced_step_copy_insn,
5006         amd64_displaced_step_fixup): Update.
5007         * arch-utils.c (simple_displaced_step_copy_insn): Update.
5008         * auxv.c (fprint_target_auxv): Update.
5009         * breakpoint.c (insert_single_step_breakpoint): Update.
5010         * buildsym.c (finish_block): Update.
5011         * cli/cli-dump.c (restore_section_callback): Update.
5012         * fbsd-nat.c (fbsd_find_memory_regions): Update.
5013         * frame.c (frame_unwind_register_value): Update.
5014         * gcore.c (gcore_create_callback): Update.
5015         * hppa-tdep.c (hppa_frame_cache, hppa_skip_trampoline_code): Update.
5016         * i386-tdep.c (i386_displaced_step_fixup, i386_record_modrm,
5017         i386_record_lea_modrm_addr, i386_record_lea_modrm,
5018         i386_process_record): Update.
5019         * ia64-tdep.c (ia64_frame_this_id, ia64_sigtramp_frame_this_id,
5020         ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id,
5021         ia64_dummy_id, ia64_access_reg, ia64_access_rse_reg): Update.
5022         * infrun.c (displaced_step_prepare, displaced_step_fixup,
5023         handle_inferior_event, insert_step_resume_breakpoint_at_sal,
5024         insert_longjmp_resume_breakpoint): Update.
5025         * linux-nat.c (linux_nat_find_memory_regions): Update.
5026         * linux-record.c (record_linux_system_call): Update.
5027         * mips-tdep.c (heuristic_proc_start, mips_eabi_push_dummy_call,
5028         mips_n32n64_push_dummy_call, mips_o32_push_dummy_call,
5029         mips_o64_push_dummy_call): Update.
5030         * monitor.c (monitor_error, monitor_remove_breakpoint): Update.
5031         * record.c (record_arch_list_add_mem, record_wait,
5032         record_xfer_partial): Update.
5033         * remote-mips.c (mips_fetch_word, mips_check_lsi_error,
5034         mips_common_breakpoint): Update.
5035         * remote-sim.c (gdbsim_xfer_inferior_memory): Update.
5036         * rs6000-tdep.c (ppc_displaced_step_fixup): Update.
5037         * solib-som.c (som_current_sos): Update.
5038         * symfile.c (load_progress, generic_load): Update.
5039         * symfile-mem.c (add_vsyscall_page): Update.
5040         * valops.c (value_fetch_lazy): Update.
5041         * windows-tdep.c (windows_xfer_shared_library): Update.
5042
5043         Update callers of paddr_nz to use paddress instead (changing
5044         user-visible output to make it more correct):
5045         * dwarf2loc.c (locexpr_describe_location): Update.
5046         * ia64-tdep.c (ia64_memory_insert_breakpoint,
5047         ia64_memory_remove_breakpoint): Update.
5048         * jv-valprint.c (java_value_print): Update.
5049         * m32c-tdep.c (m32c_m16c_address_to_pointer): Update.
5050         * monitor.c (monitor_read_memory): Update.
5051
5052         Update callers of paddr to use paddress instead (changing
5053         user-visible output to make it more correct):
5054         * arm-tdep.c (arm_push_dummy_call): Update.
5055         * breakpoint.c (insert_bp_location, create_thread_event_breakpoint,
5056         create_breakpoint): Update.
5057         * darwin-nat-info.c (darwin_debug_regions): Update.
5058         * dcache.c (dcache_info): Update.
5059         * dsrec.c (load_srec, make_srec): Update.
5060         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program,
5061         dwarf2_frame_cache): Update.
5062         * gcore.c (gcore_copy_callback): Update.
5063         * gnu-nat.c (gnu_xfer_memory): Update.
5064         * mips-linux-nat.c (mips_show_dr): Update.
5065         * monitor.c (monitor_write_memory, monitor_insert_breakpoint,
5066         monitor_remove_breakpoint): Update.
5067         * remote.c (compare_sections_command): Update.
5068         * remote-m32r-sdi.c (m32r_xfer_memory, m32r_insert_breakpoint,
5069         m32r_remove_breakpoint, m32r_insert_watchpoint,
5070         m32r_remove_watchpoint): Update.
5071         * sol-thread.c (info_cb): Update.
5072         * symfile.c (load_progress): Update.
5073
5074         Update callers of paddress or paddr_nz to use hex_string instead
5075         (changes output of internal/error/debug messages only):
5076         * dwarf2read.c (dump_die_shallow): Update.
5077         * frame.c (fprint_field, fprint_frame, frame_pc_unwind,
5078         get_frame_func, create_new_frame): Update.
5079         * hppa-tdep.c (find_unwind_entry, unwind_command): Update.
5080         * ia64-tdep.c (get_kernel_table, ia64_find_proc_info_x,
5081         ia64_get_dyn_info_list): Update.
5082         * maint.c (maintenance_translate_address): Update.
5083         * mi/mi-cmd-var.c (mi_cmd_var_create): Update.
5084         * target.c (target_flash_erase): Update.
5085
5086         Update callers of paddr/paddr_nz to use phex/phex_nz instead,
5087         using an appropriate address size.  Remove use of strlen_paddr.
5088         * exec.c (exec_files_info): Update.
5089         * i386-nat.c (i386_show_dr): Update.
5090         * remote.c (remote_flash_erase): Update.
5091         * m32r-rom.c (m32r_load_section): Update.
5092         * monitor.c (monitor_vsprintf, monitor_store_register): Update.
5093         * remote.c (remote_check_symbols, remote_search_memory): Update.
5094         * remote-mips.c (mips_request, mips_common_breakpoint): Update.
5095         * scm-valprint.c (scm_ipruk, scm_scmval_print): Update.
5096         * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs): Update.
5097         * sh-tdep.c (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs,
5098         sh2a_show_regs, sh2a_nofpu_show_regs, sh3e_show_regs,
5099         sh3_dsp_show_regs, sh4_show_regs, sh4_nofpu_show_regs,
5100         sh_dsp_show_regs): Update.
5101         * xcoffsolib.c (sharedlibrary_command): Update.
5102
5103
5104         * maint.c (maint_print_section_info): Add ADDR_SIZE parameter.
5105         Use hex_string_custom instead of paddr.
5106         (print_bfd_section_info): Pass address size.
5107         (print_objfile_section_info): Likewise.
5108
5109         * annotate.h (annotate_source): Add GDBARCH parameter.
5110         (annotate_frame_begin): Likewise.
5111         * annotate.c (annotate_source): Add GDBARCH parameter.
5112         (annotate_frame_begin): Likewise.
5113         * source.c (identify_source_line): Update call to annotate_source.
5114         * stack.c (print_frame_info, print_frame): Update call to
5115         annotate_frame_begin.
5116
5117         * breakpoint.c (describe_other_breakpoints): Add GDBARCH parameter.
5118         (create_breakpoint, create_ada_exception_breakpoint): Update call.
5119
5120         * stack.c (print_block_frame_labels): Add GDBARCH parameter.
5121         (print_frame_label_vars): Update call.
5122
5123         * symmisc.c (print_partial_symbols): Add GDBARCH parameter.
5124         (dump_psymtab): Update call to print_partial_symbols.
5125         (struct print_symbol_args): Add GDBARCH member.
5126         (dump_symtab_1): Set print_symbol_args architecture member.
5127         (print_symbol): Use it.
5128
5129         * windows-tdep.h (windows_xfer_shared_library): Add GDBARCH
5130         parameter.
5131         * windows-tdep.c (windows_xfer_shared_library): Likewise.
5132         * i386-cygwin-tdep.c (struct cpms_data): Add GDBARCH member.
5133         (core_process_module_section): Pass architecture from cpms_data to
5134         windows_xfer_shared_library.
5135         (windows_core_xfer_shared_libraries): Initialize cmps_data 
5136         architecture member.
5137         * windows-nat.c (windows_xfer_shared_libraries): Pass architecture
5138         to windows_xfer_shared_library.
5139
5140         * defs.h (print_address): Add GDBARCH parameter.
5141         * printcmd.c (print_address): Add GDBARCH parameter.
5142         (print_scalar_formatted, do_examine): Update call.
5143         * findcmd.c (find_command): Update call.
5144         * tracepoint.c: Include "arch-utils.h".
5145         (trace_find_line_command): Update call.
5146         * tui/tui-disasm.c (tui_disassemble): Update call.
5147
5148         * value.h (print_address_demangle): Add GDBARCH parameter.
5149         * printcmd.c (print_address_demangle): Add GDBARCH parameter.
5150         * c-valprint.c (print_function_pointer_address, c_val_print):
5151         Update call.
5152         * f-valprint.c (f_val_print): Update call.
5153         * gnu-v3-abi.c (gnuv3_print_method_ptr): Update call.
5154         * jv-valprint.c (java_val_print): Update call.
5155         * m2-valprint.c (print_function_pointer_address, m2_val_print):
5156         Update call.
5157         * p-valprint.c (pascal_val_print): Update call.
5158
5159         * disasm.c (gdb_disassemble_info): Install architecture into
5160         di.application_data field.
5161
5162 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5163
5164         * disasm.h (gdb_disassembly): Add GDBARCH parameter.
5165         (gdb_print_insn): Likewise.
5166         * disasm.c (dump_insns): Add GDBARCH parameter.  Use it instead
5167         of current_gdbarch.
5168         (do_mixed_source_and_assembly): Add GDBARCH parameter.  Pass to
5169         dump_insns.
5170         (do_assembly_only): Likewise.
5171         (gdb_disassembly): Add GDBARCH parameter.  Use it instead of
5172         current_gdbarch.  Pass to subroutines.
5173         (gdb_print_insn): Add GDBARCH parameter.  Use it instead of
5174         current_gdbarch.
5175
5176         * stack.c (struct gdb_disassembly_stub_args): Add GDBARCH member.
5177         (gdb_disassembly_stub): Pass architecture to gdb_disassembly.
5178         (do_gdb_disassembly): Add GDBARCH argument.  Store into args.
5179         (print_frame_info): Pass architecture to do_gdb_disassembly.
5180
5181         * printcmd.c (print_formatted): Pass architecture to gdb_print_insn.
5182
5183         * mi/mi-cmd-disas.c: Include "arch-utils.h"
5184         (mi_cmd_disassemble): Pass architecture to gdb_disassembly.
5185
5186         * cli/cli-cmds.c: Include "arch-utils.h".
5187         (print_disassembly): Add GDBARCH parameter.  Pass to gdb_disassembly
5188         and tui_show_assembly.
5189         (disassemble_current_function): Pass architecture to
5190         tui_get_low_disassembly_address and print_disassembly.
5191         (disassemble_command): Pass architecture to
5192         tui_get_low_disassembly_address and print_disassembly.
5193
5194         * tui/tui.c (tui_show_assembly): Add GDBARCH parameter.  Pass to
5195         tui_update_source_windows_with_addr.
5196
5197         * tui/tui-data.h (struct tui_locator_element): Add GDBARCH member.
5198         (struct tui_source_info): Likewise.
5199         * tui/tui-data.c (tui_clear_win_detail): Clear source_info.gdbarch.
5200
5201         * tui/tui-disasm.c (tui_disassemble): Add GDBARCH parameter.
5202         Pass to gdb_print_insn.
5203         (tui_find_disassembly_address): Add GDBARCH parameter.  Pass to
5204         tui_disassemble.
5205         (tui_set_disassem_content): Add GDBARCH parameter.  Install into
5206         source_info.gdbarch.  Pass to tui_disassemble.
5207         (tui_show_disassem): Add GDBARCH parameter.  Pass to 
5208         tui_update_source_window.
5209         (tui_show_disassem_and_update_source): Add GDBARCH parameter.  Pass to
5210         tui_show_disassem and tui_update_source_window.
5211
5212         (tui_get_begin_asm_address): Return locator architecture in addition
5213         to locator PC value.
5214
5215         (tui_get_low_disassembly_address): Add GDBARCH parameter.   Pass to
5216         tui_get_low_disassembly_address.
5217
5218         (tui_vertical_disassem_scroll): Pass architecture to subroutines.
5219
5220         * tui/tui-disasm.h (tui_set_disassem_content): Add GDBARCH parameter.
5221         (tui_show_disassem): Likewise.
5222         (tui_show_disassem_and_update_source): Likewise.
5223         (tui_get_begin_asm_address): Return architecture and PC value.
5224
5225         * tui/tui.h (tui_get_low_disassembly_address): Add GDBARCH parameter.
5226         (tui_show_assembly): Add GDBARCH parameter.
5227
5228         * tui/tui-layout.c (extract_display_start_addr): Return current window
5229         architecture in addition to current PC value.
5230
5231         (tui_set_layout): Update calls to tui_get_low_disassembly_address and
5232         extract_display_start_addr.  Pass architecture to
5233         tui_update_source_windows_with_addr.
5234
5235         * tui/tui-source.c: Include "objfiles.h".
5236         (tui_set_source_content): Initialize window architecture.
5237         (tui_show_symtab_source): Add GDBARCH parameter.  Pass to
5238         tui_update_source_window_as_is
5239
5240         * tui/tui-source.h (tui_show_symtab_source): Add GDBARCH parameter.
5241
5242         * tui/tui-stack.c (tui_set_locator_info): Add GDBARCH parameter.
5243         Install locator architecture.
5244         (tui_set_locator_filename): Update call.
5245         (tui_show_frame_info): Pass architecture to tui_set_locator_info
5246         and subroutines.
5247
5248         * tui/tui-win.c (make_visible_with_new_height): Pass architecture
5249         to tui_update_source_window.
5250
5251         * tui/tui-winsource.c: Include "objfiles.h".
5252         (tui_display_main): Update call to tui_get_begin_asm_address.
5253         Pass architecture to tui_update_source_windows_with_addr.
5254         (tui_update_source_window): Add GDBARCH parameter.  Pass to
5255         tui_update_source_window_as_is.
5256         (tui_update_source_window_as_is): Add GDBARCH parameter.
5257         Pass to tui_set_disassem_content.
5258         (tui_update_source_windows_with_addr): Add GDBARCH parameter.
5259         Pass to subroutines.
5260         (tui_update_source_windows_with_line): Pass objfile architecture
5261         to subroutines.
5262         (tui_horizontal_source_scroll): Pass architecture to 
5263         tui_update_source_window_as_is.
5264         
5265         * tui/tui-winsource.h (tui_update_source_window): Add GDBARCH
5266         parameter.
5267         (tui_update_source_window_as_is): Likewise.
5268         (tui_update_source_windows_with_addr): Likewise.
5269
5270 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5271
5272         * breakpoint.h (struct breakpoint): New member GDBARCH.
5273         * breakpoint.c: Include "arch-utils.h".
5274         (set_raw_breakpoint_without_location): Add GDBARCH parameter.
5275         Use it to set breakpoint architecture.
5276         (set_raw_breakpoint): Add GDBARCH parameter.
5277         (create_internal_breakpoint): Likewise.
5278         (create_catchpoint): Likewise.
5279         (create_fork_vfork_event_catchpoint): Likewise.
5280         (create_breakpoint): Likewise.
5281         (create_breakpoints): Likewise.
5282         (break_command_really): Likewise.
5283         (create_ada_exception_breakpoint): Likewise.
5284         Update local callers to pass architecture:
5285         (create_internal_breakpoint): Update.
5286         (create_overlay_event_breakpoint): Update.
5287         (create_longjmp_master_breakpoint): Update.
5288         (create_thread_event_breakpoint): Update.
5289         (create_solib_event_breakpoint): Update.
5290         (create_catchpoint): Update.
5291         (create_fork_vfork_event_catchpoint): Update.
5292         (set_momentary_breakpoint): Update.
5293         (clone_momentary_breakpoint): Update.
5294         (create_breakpoint): Update.
5295         (create_breakpoints): Update.
5296         (break_command_really): Update.
5297         (break_command_1): Update.
5298         (set_breakpoint): Update.
5299         (watch_command_1): Update.
5300         (catch_fork_command_1): Update.
5301         (catch_exec_commnd_1): Update.
5302         (handle_gnu_v3_exceptions): Update.
5303         (create_ada_exception_breakpoint): Update.
5304         (catch_ada_exception_command): Update.
5305         (catch_assert_command): Update.
5306         (trace_command): Update.
5307
5308         * breakpoint.h (struct bp_location): New member GDBARCH.
5309         * breakpoint.c (get_sal_arch): New function.
5310         (set_raw_breakpoint): Set location architecture.
5311         (add_location_to_breakpoint): Likewise.
5312         (clone_momentary_breakpoint): Likewise.
5313         (watch_command_1): Likewise.
5314         (update_watchpoint): Likewise.
5315         (bp_loc_is_permanent): Use location architecture instead of
5316         current_gdbarch.
5317         (adjust_breakpoint_address): Add GDBARCH parameter; use it
5318         instead of current_gdbarch.
5319         Update callers of adjust_breakpoint_address to pass
5320         breakpoint location architecture:
5321         (set_raw_breakpoint): Update.
5322         (watch_command_1): Update.
5323
5324         * tracepoint.c: (collect_symbol): Add GDBARCH parameter, use instead
5325         of current_gdbarch.
5326         (add_local_symbols): Add GDBARCH parameter.  Pass to collect_symbol.
5327         (encode_actions): Pass tracepoint architecture to add_local_symbols
5328         (encode_actions): Use tracepoint architecture instead of
5329         current_gdbarch.  Pass it to add_local_symbols and collect_symbol.
5330
5331         * breakpoint.h (struct breakpoint_ops): Replace last_addr parameter
5332         of print_one callback with last_loc.
5333         * breakpoint.c (print_one_breakpoint_location): Replace last_addr
5334         parameter with last_loc.
5335         (print_one_breakpoint): Likewise.
5336         (do_captured_breakpoint_query): Update call.
5337         (breakpoint_1): Pass last_loc instead of last_addr to
5338         print_one_breakpoint.  Pass last location architecture instead of
5339         current_gdbarch to set_next_address.
5340         Update all implementations of the print_one callback:
5341         * breakpoint.c (print_one_catch_fork): Update.
5342         (print_one_catch_vfork): Update.
5343         (print_one_catch_exec): Update.
5344         (print_one_exception_catchpoint): Update.
5345         * ada-lang.c (print_one_exception): Update.
5346         (print_one_catch_exception): Update.
5347         (print_one_catch_exception_unhandled): Update.
5348         (print_one_catch_assert): Update.
5349
5350         * breakpoint.c (print_one_breakpoint_location): Add PRINT_ADDRESS_BITS
5351         parameter.  Use it instead of gdbarch_addr_bit (current_gdbarch).
5352         (print_one_breakpoint): Add PRINT_ADDRESS_BITS parameter and pass it
5353         to print_one_breakpoint_location.
5354         (breakpoint_address_bits): New function.
5355         (do_captured_breakpoint_query): Compute number of address bits to print
5356         and pass it to print_one_breakpoint.
5357         (breakpoint_1): Likewise.  Use it instead of current_gdbarch.
5358
5359         * breakpoint.h (create_thread_event_breakpoint): Add GDBARCH.
5360         * breakpoint.c (create_thread_event_breakpoint): Likewise.
5361         Update callers to create_thread_event_breakpoint:
5362         * aix-thread.c (pd_enable): Update.
5363         * linux-thread-db.c (enable_thread_event): Update.
5364
5365         * breakpoint.h (create_solib_event_breakpoint): Add GDBARCH.
5366         * breakpoint.c (create_solib_event_breakpoint): Likewise.
5367         Update callers to create_solib_event_breakpoint:
5368         * solib-frv.c (enable_break, enable_break2): Update.
5369         * solib-pa64.c (pa64_solib_create_inferior_hook): Update.
5370         * solib-som.c (som_solib_create_inferior_hook): Update.
5371         * solib-darwin.c (darwin_solib_create_inferior_hook): Update.
5372         * solib-svr4.c (enable_break): Update.
5373
5374         * breakpoint.h (insert_single_step_breakpoint): Add GDBARCH.
5375         * breakpoint.c (insert_single_step_breakpoint): Likewise.
5376         Update callers to insert_single_step_breakpoint:
5377         * alpha-tdep.c (alpha_software_single_step): Update.
5378         * arm-linux-tdep.c (arm_linux_software_single_step): Update.
5379         * arm-tdep.c (arm_software_single_step): Update.
5380         * cris-tdep.c (cris_software_single_step): Update.
5381         * rs6000-aix-tdep.c (rs6000_software_single_step): Update.
5382         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Update.
5383         * sparc-tdep.c (sparc_software_single_step): Update.
5384         * spu-tdep.c (spu_software_single_step): Update.
5385         * mips-tdep.c (deal_with_atomic_sequence): Add GDBARCH parameter.
5386         Pass it to insert_single_step_breakpoint.
5387         (mips_software_single_step): Pass architecture to
5388         deal_with_atomic_sequence and insert_single_step_breakpoint.
5389
5390         * breakpoint.h (deprecated_insert_raw_breakpoint): Add GDBARCH.
5391         (deprecated_remove_raw_breakpoint): Likewise.
5392         * breakpoint.c (deprecated_insert_raw_breakpoint): Add GDBARCH.
5393         (deprecated_remove_raw_breakpoint): Likewise.
5394         Update callers to deprecated_insert_raw_breakpoint and
5395         deprecated_remove_raw_breakpoint:
5396         * breakpoint.c (single_step_gdbarch): New static variable.
5397         (insert_single_step_breakpoint): Pass GDBARCH parameter to
5398         deprecated_insert_raw_breakpoint.  Store it in single_step_gdbarch.
5399         (remove_single_step_breakpoints): Pass architecture stored in
5400         single_step_gdbarch to deprecated_remove_raw_breakpoint.
5401         * rs6000-nat.c (exec_one_dummy_insn): Update.
5402         * solib-irix.c (enable_break, disable_break): Update.
5403         * procfs.c (procfs_mourn_inferior): Update.
5404         (remove_dbx_link_breakpoint): Update.
5405
5406         * breakpoint.h (set_breakpoint): Add GDBARCH parameter.
5407         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
5408         * breakpoint.c (set_breakpoint): Add GDBARCH parameter.
5409         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
5410         Update callers to set_breakpoint, set_momentary_breakpoint and
5411         set_momentary_breakpoint_at_pc:
5412         * breakpoint.c (set_momentary_breakpoint_at_pc): Update.
5413         (until_break_command): Update.
5414         * infcall.c (call_function_by_hand): Update.
5415         * infcmd.c (finish_backward, finish_forward): Update.
5416         * infrun.c (insert_step_resume_breakpoint_at_sal): Add GDBARCH
5417         parameter.  Pass it to set_momentary_breakpoint.
5418         (insert_longjmp_resume_breakpoint): Add GDBARCH parameter.
5419         Pass it to set_momentary_breakpoint_at_pc.
5420         (handle_inferior_event): Update.
5421         (insert_step_resume_breakpoint_at_frame): Update.
5422         (insert_step_resume_breakpoint_at_caller): Update..
5423         * mi/mi-cmd-break.c: Include "arch-utils.h".
5424         (mi_cmd_break_insert): Update.
5425
5426         * target.h (struct target_ops): Add GDBARCH parameter to
5427         to_insert_breakpoint, to_remove_breakpoint, to_insert_hw_breakpoint,
5428         and to_remove_hw_breakpoint members.
5429         (target_insert_breakpoint, target_remove_breakpoint,
5430         target_insert_hw_breakpoint, target_remove_hw_breakpoint): Add GDBARCH
5431         parameter, pass to target routine.
5432         (memory_remove_breakpoint, memory_insert_breakpoint): Add GDBARCH
5433         parameter.
5434         * target.c (debug_to_insert_breakpoint, debug_to_remove_breakpoint,
5435         debug_to_insert_hw_breakpoint, debug_to_remove_hw_breakpoint): Add
5436         GDBARCH parameter, pass to target routine.
5437         (update_current_target): Update function signature.
5438         * breakpoint.c (insert_bp_location, remove_breakpoint,
5439         deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint):
5440         Pass architecture to target_ routines.
5441         Update all implementations of the target breakpoint routines to take
5442         GDBARCH parameter and use it instead of GDBARCH as appropriate:
5443         * corelow.c (ignore): Update.
5444         * exec.c (ignore): Update.
5445         * mem-break.c (memory_insert_breakpoint): Update.
5446         (memory_remove_breakpoint): Update.
5447         * monitor.c (monitor_insert_breakpoint): Update.
5448         (monitor_remove_breakpoint): Update.
5449         * record.c (record_insert_breakpoint): Update.
5450         (record_beneath_to_insert_breakpoint): Update.
5451         (record_remove_breakpoint): Update.
5452         (record_beneath_to_remove_breakpoint): Update.
5453         * remote.c (remote_insert_breakpoint): Update.
5454         (remote_remove_breakpoint): Update.
5455         (remote_insert_hw_breakpoint): Update.
5456         (remote_remove_hw_breakpoint): Update.
5457         * remote-m32r-sdi.c (m32r_insert_breakpoint): Update.
5458         (m32r_remove_breakpoint): Update.
5459         * remote-mips.c (mips_insert_breakpoint): Update.
5460         (mips_remove_breakpoint): Update.
5461         * i386-nat.c (i386_insert_hw_breakpoint): Update.
5462         (i386_remove_hw_breakpoint): Update.
5463         * nto-procfs.c (procfs_insert_breakpoint):  Update.
5464         (procfs_remove_breakpoint): Update.
5465         (procfs_insert_hw_breakpoint): Update.
5466         (procfs_remove_hw_breakpoint): Update.
5467
5468 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5469
5470         * frame.h (frame_unwind_arch): New.
5471         (frame_unwind_caller_arch): Likewise.
5472         * frame-unwind.h (frame_prev_arch_ftype): New type.
5473         (struct frame_unwind): New member prev_arch.
5474         * frame.c (struct frame_info): New member prev_arch.
5475         (frame_unwind_arch): New function.
5476         (frame_unwind_caller_arch): Likewise..
5477         (get_frame_arch): Reimplement in terms of frame_unwind_arch.
5478         * sentinel-frame.c (sentinel_frame_prev_arch): New function.
5479         (sentinel_frame_unwinder): Install it.
5480
5481         * frame.c (frame_pc_unwind): Use frame_unwind_arch instead
5482         of get_frame_arch.
5483         (frame_unwind_register_value): Likewise.
5484         (frame_unwind_register_signed): Likewise.
5485         (frame_unwind_register_unsigned): Likewise.
5486         * frame-unwind.c (frame_unwind_got_optimized): Likewise.
5487         (frame_unwind_got_register): Likewise.
5488         (frame_unwind_got_constant): Likewise.
5489         (frame_unwind_got_bytes): Likewise.
5490         (frame_unwind_got_address): Likewise.
5491
5492         * frame.h (enum frame_type): New value ARCH_FRAME.
5493         * frame.c (fprint_frame_type): Handle ARCH_FRAME.
5494         * stack.c (print_frame_info): Likewise.
5495
5496 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5497
5498         * target.h (struct target_ops): New member to_thread_architecture.
5499         (target_thread_architecture): New macro.
5500         * target.c (update_current_target): Inherit to_thread_architecture.
5501         (default_thread_architecture): New function.
5502         (debug_to_thread_architecture): New function.
5503         (setup_target_debug): Handle to_thread_architecture.
5504
5505         * regcache.h (get_thread_arch_regcache): New.
5506         * regcache.c (struct regcache_list): New data type.
5507         (current_regcache): Hold regcache list instead of single regcache.
5508         (current_thread_ptid, current_thread_arch): New static variables.
5509         (get_thread_arch_regcache): New function.
5510         (get_thread_regcache): Use it.  Call target_thread_architecture.
5511         (regcache_thread_ptid_changed): Update to current_regcache changes.
5512         (registers_changed): Likewise.  Reset current_thread_arch and
5513         current_thread_ptid.
5514
5515         * remote.c (remote_wait): Access target registers in target_gdbarch.
5516         * linux-nat.c (linux_nat_do_thread_registers): Likewise.
5517         * proc-service.c (ps_lgetregs, ps_lsetregs): Likewise.
5518         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
5519         * sol-thread.c (ps_lgetregs, ps_lsetregs): Likewise.
5520         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
5521         * solib-svr4.c (enable_break): Likewise.
5522         (svr4_relocate_main_executable): Likewise.
5523
5524 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5525
5526         * python/python-internal.h (struct language_defn): Declare.
5527         (python_gdbarch, python_language): Likewise.
5528         (ensure_python_env): Add prototype.
5529         (make_cleanup_py_restore_gil): Remove prototype.
5530
5531         * python/python.c: Include "arch-utils.h", "value.h" and "language.h".
5532         (python_gdbarch, python_language): New global variables.
5533         (struct python_env): New data type.
5534         (ensure_python_env, restore_python_env): New functions.
5535         (eval_python_from_control_command): Call ensure_python_env to
5536         install current architecture and language.
5537         (python_command, gdbpy_new_objfile): Likewise.
5538         * python/python-cmd.c: Include "arch-utils.h" and "language.h".
5539         (cmdpy_destroyer, cmdpy_function, cmdpy_completer): Call
5540         ensure_python_env.
5541         * python/python-type.c (clean_up_objfile_types): Likewise.
5542         * python/python-objfile.c: Include "language.h".
5543         (clean_up_objfile): Call ensure_python_env.
5544         * python/python-prettyprint.c (apply_val_pretty_printer): Likewise.
5545         (apply_varobj_pretty_printer): Do not call PyGILState_Ensure.
5546         * varobj.c (varobj_ensure_python_env): New helper function.
5547         (varobj_get_display_hint, update_dynamic_varobj_children,
5548         install_default_visualizer, varobj_set_visualizer, free_variable,
5549         value_get_print_value): Call it.
5550         (value_get_print_value): Add varobj argument instead of pretty
5551         printer argument.  Update all callers.
5552
5553         * python/python-utils.c (py_gil_restore, make_cleanup_py_restore_gil):
5554         Remove.
5555
5556         * value.h (internal_function_fn): Add GDBARCH and LANGUAGE argument.
5557         (call_internal_function): Likewise.
5558         * value.c (call_internal_function): Likewise.  Pass to handler.
5559         * eval.c (evaluate_subexp_standard): Update call.
5560         * python/python-function.c: Include "language.h".
5561         (fnpy_call): Add GDBARCH and LANGAUAGE arguments and call
5562         make_cleanup_python_env.
5563
5564         * python/python-value.c (builtin_type_pyint, builtin_type_pyfloat,
5565         builtin_type_pylong, builtin_type_pybool, builtin_type_pychar,
5566         valpy_str): Use python_gdbarch and python_language instead of
5567         current_gdbarch and current_language.
5568         * python/python-type.c (typy_lookup_typename): Likewise.
5569
5570 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5571
5572         * arch-utils.c (selected_byte_order): Return target_byte_order_user.
5573         (show_endian): Use target_byte_order_user if specified; otherwise
5574         use get_current_arch () instead of current_gdbarch.
5575         (show_architecture): Use set_architecture_string if specified;
5576         otherwise use get_current_arch () instead of current_gdbarch.
5577         (get_current_arch): New function.
5578         * arch-utils.h (get_current_arch): Add prototype.
5579
5580         * osabi.c (show_osabi): Use get_current_arch () instead of
5581         current_gdbarch.
5582
5583         * findcmd.c: Include "arch-utils.h".
5584         (parse_find_args): Add BIG_P argument.  Use it instead of byte order
5585         of current_gdbarch.
5586         (find_command): Use get_current_arch () instead of current_gdbarch.
5587         Pass byte order to parse_find_args.
5588
5589         * maint.c: Include "arch-utils.h".
5590         (maintenance_print_architecture): Use get_current_arch () instead
5591         of current_gdbarch.
5592
5593         * reggroups.c: Include "arch-utils.h".
5594         (maintenance_print_reggroups): Use get_current_arch () instead
5595         of current_gdbarch.
5596
5597         * symfile.c: Include "arch-utils.h".
5598         (overlay_load_command): Use get_current_arch () instead of
5599         current_gdbarch.
5600
5601         * value.c: Include "arch-utils.h".
5602         (show_convenience): Use get_current_arch () instead of
5603         current_gdbarch.
5604
5605         * tui/tui-regs.c: Include "arch-utils.h".
5606         (tui_reg_next_command): Use get_current_arch () instead of
5607         current_gdbarch.
5608
5609         * mi/mi-main.c: Include "arch-utils.h".
5610         (mi_cmd_data_read_memory): Use get_current_arch () instead of
5611         current_gdbarch.
5612
5613         * parse.c: Include "arch-utils.h".
5614         (parse_exp_in_context): Use get_current_arch () instead of
5615         current_gdbarch.
5616
5617 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5618
5619         * gdbtypes.c (make_pointer_type, make_reference_type,
5620         smash_to_memberptr_type, lookup_array_range_type, check_stub_method):
5621         Use type architecture instead of current_gdbarch.
5622
5623         * gdbtypes.h (address_space_name_to_int, address_space_int_to_name):
5624         Add GDBARCH paramter.
5625         * gdbtypes.c (address_space_name_to_int, address_space_int_to_name):
5626         Add GDBARCH parameter.   Use it instead of current_gdbarch.
5627         * c-typeprint.c (c_type_print_modifier): Update call.
5628         * parse.c (push_type_address_space): Likewise.
5629
5630         * findvar.c (extract_typed_address, store_typed_address): Use type
5631         architecture instead of current_gdbarch.
5632
5633         * value.c (value_as_address, unpack_field_as_long): Use type architecture
5634         instead of current_gdbarch.
5635
5636         * doublest.c (floatformat_from_length): Add GDBARCH argument.  Use it
5637         instead of current_gdbarch.
5638         (floatformat_from_type): Pass type architecture.
5639
5640         * infcall.c (find_function_addr): Use type architecture instead
5641         of current_gdbarch.
5642
5643         * valarith.c (value_bitstring_subscript, value_x_binop, value_neg,
5644         value_bit_index): Use type architecture instead of current_gdbarch.
5645         * valops.c (value_cast, value_slice): Likewise.
5646
5647         * value.h (modify_field): Add TYPE argument.
5648         * value.c (modify_field): Add TYPE argument.  Use type architecture
5649         instead of current_gdbarch.
5650         (set_internalvar_component): Likewise.
5651         * eval.c (evaluate_struct_tuple): Update call.
5652         * valops.c (value_assign): Likewise.
5653         * ada-lang.c (modify_general_field): Likewise.  Add TYPE argument.
5654         (make_array_descriptor): Update calls.
5655         (move_bits): Add BITS_BIG_ENDIAN_P argument.  Use it instead of
5656         current_gdbarch.
5657         (ada_value_assign, value_assign_to_component): Update calls.
5658         (decode_packed_array, ada_value_primitive_packed_val, ada_value_assign,
5659         value_assign_to_component): Use type arch instead of current_gdbarch.
5660
5661         * printcmd.c (float_type_from_length): Remove GDBARCH argument,
5662         use type architecture instead.
5663         (print_scalar_formatted, printf_command): Update calls.  Use type
5664         architecture instead of current_gdbarch.
5665         * valprint.c (val_print_type_code_int): Use type architecture
5666         instead of current_gdbarch.
5667         * varobj.c (value_get_print_value): Likewise.
5668         * python/python-prettyprint.c (print_string_repr): Add GDBARCH
5669         argument.  Use it instead of current_gdbarch.
5670         (apply_val_pretty_printer): Update call.
5671
5672         * ada-valprint.c (ada_val_print_1): Use type architecture instead
5673         of current_gdbarch.
5674         * c-valprint.c (print_function_pointer_address): Add GDBARCH argument.
5675         Use it instead of current_gdbarch.
5676         (c_val_print): Update calls passing type architecture.
5677         * f-valprint.c (f_val_print): Use type architecture instead of
5678         current_gdbarch.
5679         * jv-valprint (java_value_print): Likewise.
5680         * m2-valprint.c (print_function_pointer_address): Add GDBARCH argument.
5681         Use it instead of current_gdbarch.
5682         (print_unpacked_pointer): Update calls passing type architecture.
5683         * scm-valprint.c (scm_scmval_print): Use type architecture instead of
5684         current_gdbarch.
5685
5686         * gnu-v3-abi.c (get_class_arch): Remove.
5687         (gnuv3_rtti_type): Use get_type_arch instead of get_class_arch.  Remove
5688         special-case check for Java classes.
5689         (gnuv3_virtual_fn_field, gnuv3_baseclass_offset, gnuv3_print_method_ptr,
5690         gnuv3_method_ptr_size, gnuv3_make_method_ptr, gnuv3_method_ptr_to_value):
5691         Use get_type_arch instead of get_class_arch.
5692
5693 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5694
5695         * gdbtypes.h (TYPE_OBJFILE_OWNED, TYPE_OWNER): New macros.
5696         (TYPE_OBJFILE, TYPE_ALLOC, TYPE_ZALLOC): Reimplement.
5697         (alloc_type_arch): Add prototype.
5698         (alloc_type_copy): Likewise.
5699         (get_type_arch): Likewise.
5700         (arch_type): Likewise.
5701         (arch_integer_type): Likewise.
5702         (arch_character_type): Likewise.
5703         (arch_boolean_type): Likewise.
5704         (init_float_type): Remove, replace by ...
5705         (arch_float_type): ... this.
5706         (init_complex_type): Remove, replace by ...
5707         (arch_complex_type): ... this.
5708         (init_flags_type): Remove, replace by ...
5709         (arch_flags_type): ... this.
5710         (init_composite_type): Remove, replace by ...
5711         (arch_composite_type): ... this.
5712
5713         * gdbtypes.c (alloc_type): No longer support NULL objfile.
5714         (init_type): Likewise.
5715         (alloc_type_arch): New function.
5716         (alloc_type_copy): New function.
5717         (get_type_arch): New function.
5718
5719         (smash_type): Preserve type ownership information.
5720         (make_pointer_type, make_reference_type, make_function_type,
5721         smash_to_memberptr_type, smash_to_method_type): No longer
5722         preserve OBJFILE across smash_type calls.
5723         (make_pointer_type, make_reference_type, make_function_type,
5724         lookup_memberptr_type, lookup_methodptr_type, allocate_stub_method,
5725         create_range_type, create_array_type, create_set_type, copy_type):
5726         Use alloc_type_copy when allocating types.
5727         (check_typedef): Use alloc_type_arch.
5728         (copy_type_recursive): Likewise.  Preserve type ownership data
5729         after copying type.
5730         (recursive_dump_type): Dump type ownership data.
5731         (alloc_type_instance): Update type ownership check.
5732         (copy_type, copy_type_recursive): Likewise.
5733
5734         (arch_type): New function.
5735         (arch_integer_type): Likewise.
5736         (arch_character_type): Likewise.
5737         (arch_boolean_type): Likewise.
5738         (init_float_type): Remove, replace by ...
5739         (arch_float_type): ... this.
5740         (init_complex_type): Remove, replace by ...
5741         (arch_complex_type): ... this.
5742         (init_flags_type): Remove, replace by ...
5743         (arch_flags_type): ... this.
5744         (append_flags_type_flag): Move down.
5745         (init_composite_type): Remove, replace by ...
5746         (arch_composite_type): ... this.
5747         (append_composite_type_field_aligned,
5748         append_composite_type_field): Move down.
5749
5750         * gdbarch.c (gdbtypes_post_init): Allocate all types
5751         using per-architecture routines.
5752         * ada-lang.c (ada_language_arch_info): Likewise.
5753         * f-lang.c (build_fortran_types): Likewise.
5754         * jv-lang.c (build_java_types): Likewise.
5755         * m2-lang.c (build_m2_types): Likewise.
5756         * scm-lang.c (build_scm_types): Likewise.
5757
5758         * ada-lang.c (ada_type_of_array): Use alloc_type_copy.
5759         (packed_array_type): Likewise.
5760         (ada_template_to_fixed_record_type_1): Likewise.
5761         (template_to_static_fixed_type): Likewise.
5762         (to_record_with_fixed_variant_part): Likewise.
5763         (to_fixed_variant_branch_type): Likewise.
5764         (to_fixed_array_type): Likewise.
5765         (to_fixed_range_type): Likewise.
5766         (empty_record): Use type instead of objfile argument.
5767         Use alloc_type_copy.
5768         (to_fixed_variant_branch_type): Update call to empty_record.
5769         * jv-lang.c (type_from_class): Use alloc_type_arch.
5770
5771         * arm-tdep.c (arm_ext_type): Allocate per-architecture type.
5772         * i386-tdep.c (i386_eflags_type, i386_mxcsr_type, i387_ext_type,
5773         i386_mmx_type, i386_sse_type): Likewise.
5774         * ia64-tdep.c (ia64_ext_type): Likewise.
5775         * m32c-tdep.c (make_types): Likewise.
5776         * m68k-tdep.c (m68k_ps_type, m68881_ext_type): Likewise.
5777         * rs6000-tdep.c (rs6000_builtin_type_vec64,
5778         rs6000_builtin_type_vec128): Likewise.
5779         * sparc-tdep.c (sparc_psr_type, sparc_fsr_type): Likewise.
5780         * sparc64-tdep.c (sparc64_pstate_type, sparc64_fsr_type,
5781         sparc64_fprs_type): Likewise.
5782         * spu-tdep.c (spu_builtin_type_vec128): Likewise.
5783         * xtensa-tdep.c (xtensa_register_type): Likewise.
5784         * linux-tdep.c (linux_get_siginfo_type): Likewise.
5785         * target-descriptions.c (tdesc_gdb_type): Likewise.
5786         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
5787
5788 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5789
5790         * i386-tdep.h (struct gdbarch_tdep): Add i386_eflags_type and
5791         i386_mxcsr_type members.
5792         (i386_eflags_type): Make into function.
5793         (i386_mxcsr_type): Likewise.
5794         * i386-tdep.c (i386_eflags_type): Make into function.
5795         (i386_mxcsr_type): Likewise.
5796         (i386_register_type): Update uses.
5797         (i386_init_types): Remove.
5798         (_initialize_i386_tdep): Do not call it.
5799         * amd64-tdep.c (amd64_register_type): Update uses.
5800
5801         * m68k-tdep.h (struct gdbarch_tdep): Add m68k_ps_type member.
5802         * m68k-tdep.c (m68k_ps_type): Make into function.
5803         (m68k_register_type): Update use.
5804         (m68k_init_types): Remove.
5805         (_initialize_m68k_tdep): Do not call it.
5806
5807         * sparc-tdep.h (struct gdbarch_tdep): Add sparc_psr_type,
5808         sparc_fsr_type, sparc64_pstate_type, sparc64_fsr_type, and
5809         sparc64_fprs_type members.
5810         * sparc-tdep.c (sparc_psr_type): Make into function.
5811         (sparc_fsr_type): Likewise.
5812         (sparc32_register_type): Update uses.
5813         (sparc_init_types): Remove.
5814         (_initialize_sparc_tdep): Do not call it.
5815         * sparc64-tdep.c (sparc64_pstate_type): Make into function.
5816         (sparc64_fsr_type): Likewise.
5817         (sparc64_fprs_type): Likewise.
5818         (sparc64_register_type): Update uses.
5819         (sparc64_init_types): Remove.
5820         (_initialize_sparc64_tdep): Likewise.
5821
5822 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5823
5824         * gdbtypes.h (builtin_type_ieee_single, builtin_type_ieee_double,
5825         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
5826         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
5827         (init_float_type, init_complex_type): Add prototypes.
5828         * gdbtypes.c (builtin_type_ieee_single, builtin_type_ieee_double,
5829         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
5830         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
5831         (_initialize_gdbtypes): Do not initialize them.
5832         (build_flt): Rename to ...
5833         (init_float_type): ... this.  Make global.
5834         (build_complex): Rename to ...
5835         (init_complex_type): ... this.  Make global.  Remove BIT argument.
5836         (gdbtypes_post_init): Update calls.
5837
5838         * ada-lang.c (ada_language_arch_info): Use init_float_type.
5839         * jv-lang.c (build_java_types): Likewise.
5840         * m2-lang.c (build_m2_types): Likewise.
5841         * f-lang.c (build_fortran_types): Use init_float_type and
5842         init_complex_type.
5843
5844         * target-descriptions.c (tdesc_gdb_type): Call init_float_type instead
5845         of using builtin_type_ieee_single, builtin_type_ieee_double, or
5846         builtin_type_arm_ext.
5847
5848         * ia64-tdep.h (struct gdbarch_tdep): Add ia64_ext_type member.
5849         * ia64-tdep.c (builtin_type_ia64_ext): Remove.
5850         (_initialize_ia64_tdep): Do not initialize it.
5851         (floatformat_valid, floatformat_ia64_ext, floatformats_ia64_ext):
5852         Move up.
5853         (ia64_ext_type): New function.
5854         (ia64_register_reggroup_p, ia64_convert_register_p,
5855         ia64_register_to_value, ia64_value_to_register,
5856         ia64_extract_return_value, ia64_store_return_value): Use ia64_ext_type
5857         instead of builtin_type_ia64_ext.
5858
5859         * i386-tdep.h (struct gdbarch_tdep): Add i387_ext_type member.
5860         (i387_ext_type): Add prototype.
5861         * i386-tdep.c (i387_ext_type): New function.
5862         (i386_extract_return_value, i386_store_return_value,
5863         i386_register_type): Use it instead of builtin_type_i387_ext.
5864         * amd64-tdep.c (amd64_register_type): Likewise.
5865         * i387-tdep.c (print_i387_value, i387_register_to_value,
5866         i387_value_to_register): Likewise.
5867         (print_i387_value, print_i387_ext): Add GDBARCH argument.
5868         (print_i387_ext, i387_print_float_info): Pass to subroutines.
5869
5870         * m68k-tdep.h (struct gdbarch_tdep): Add m68881_ext_type member.
5871         * m68k-tdep.c (m68881_ext_type): New function.
5872         (m68k_register_type, m68k_convert_register_p): Use it instead
5873         of builtin_type_m68881_ext.
5874
5875         * arm-tdep.h (struct gdbarch_tdep): Add arm_ext_type member.
5876         * arm-tdep.c (arm_ext_type): New function.
5877         (arm_register_type): Use it instead of builtin_type_arm_ext.
5878
5879         * alpha-tdep.c (alpha_register_type): Use builtin types
5880         instead of builtin_type_ieee_double.
5881
5882         * mips-tdep.c (mips_float_register_type, mips_double_register_type):
5883         Remove.
5884         (mips_register_type): Use builtin types instead of
5885         builtin_type_ieee_single and builtin_type_ieee_double.
5886         (mips_print_fp_register): Use builtin types instead of
5887         mips_float_register_type and mips_double_register_type.
5888
5889         * hppa-tdep.c (hppa32_register_type, hppa64_register_type):
5890         Use builtin types instead of builtin_type_ieee_single and
5891         builtin_type_ieee_double.
5892
5893 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5894
5895         * gdbtypes.h (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
5896         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
5897         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
5898         builtin_type_int128, builtin_type_uint128): Remove.
5899         (struct builtin_type): New members builtin_int0, builtin_int8,
5900         builtin_uint8, builtin_int16, builtin_uint16, builtin_int32,
5901         builtin_uint32, builtin_int64, builtin_uint64, builtin_int128,
5902         and builtin_uint128.
5903         * gdbtypes.c (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
5904         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
5905         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
5906         builtin_type_int128, builtin_type_uint128): Remove.
5907         (_initialize_gdbtypes): Do not initialize them.
5908         (gdbtypes_post_init): Initialize fixed-size integer types.
5909
5910         * dwarf2expr.c (unsigned_address_type, signed_address_type): Add
5911         GDBARCH argument.  Return platform-specific type.
5912         (dwarf2_read_address, execute_stack_op): Update calls.
5913
5914         * target-descriptions.c (tdesc_gdb_type): Use platform-specific types
5915         instead of global builtin_int_... variables.
5916         * mi/mi-main.c (mi_cmd_data_read_memory): Likewise.
5917         * printcmd.c (do_examine): Likewise.
5918         * jv-exp.y (parse_number): Likewise.
5919
5920         * alpha-tdep.c (alpha_register_type, alpha_push_dummy_call,
5921         alpha_store_return_value): Likewise.
5922         * amd64-linux-tdep.c (amd64_linux_register_type): Likewise.
5923         * amd64-tdep.c (amd64_register_type): Likewise.
5924         * arm-tdep.c (arm_register_type): Likewise.
5925         * avr-tdep.c (avr_register_type): Likewise.
5926         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
5927         * frv-tdep.c (frv_register_type): Likewise.
5928         * h8300-tdep.c h8300_register_type): Likewise.
5929         * hppa-tdep.c (hppa64_push_dummy_call, hppa32_register_type,
5930         hppa64_register_type): Likewise.
5931         * i386-tdep.c (i386_mmx_type, i386_sse_type): Likewise.
5932         * iq2000-tdep.c (iq2000_register_type): Likewise.
5933         * lm32-tdep.c (lm32_register_type, lm32_push_dummy_call): Likewise.
5934         * m32r-tdep.c (m32r_register_type): Likewise.
5935         * m68hc11-tdep.c (m68hc11_register_type, m68hc11_pseudo_register_read,
5936         m68hc11_pseudo_register_write): Likewise.
5937         * m68k-tdep.c (m68k_register_type): Likewise.
5938         * m88k-tdep.c (m88k_register_type, m88k_store_arguments): Likewise.
5939         * mep-tdep.c (mep_register_type): Likewise.
5940         * mips-tdep.c (mips_register_type, mips_pseudo_register_type,
5941         mips_print_fp_register): Likewise.
5942         * moxie-tdep.c (moxie_register_type): Likewise.
5943         * mt-tdep.c (mt_copro_register_type, mt_register_type): Likewise.
5944         * rs6000-tdep.c (rs6000_builtin_type_vec64,
5945         rs6000_builtin_type_vec128): Likewise.
5946         * score-tdep.c (score_register_type): Likewise.
5947         * sparc-tdep.c (sparc32_register_type, sparc32_store_arguments):
5948         Likewise.
5949         * sparc64-tdep.c (sparc64_register_type, sparc64_store_arguments):
5950         Likewise.
5951         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
5952         * v850-tdep.c (v850_register_type): Likewise.
5953         * xstormy16-tdep.c (xstormy16_register_type): Likewise.
5954         * xtensa-tdep.c (xtensa_register_type): Likewise.
5955
5956         * mt-tdep.c (struct gdbarch_tdep): New data structure.
5957         (mt_gdbarch_init): Alloc TDEP structures.
5958         (mt_register_type): Cache coprocessor type in TDEP instead of
5959         static global variable.
5960
5961         * xtensa-tdep.h (struct gdbarch_tdep): Add type_entries member.
5962         * xtensa-tdep.c (type_entries): Remove.
5963         (xtensa_register_type): Cache fixed-size types in TDEP instead
5964         of in global variable.
5965
5966 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5967
5968         * gdbtypes.h (builtin_type_true_char): Remove.
5969         (builtin_type_true_unsigned_char): Likewise.
5970         (struct builtin_type): Add builtin_true_char and
5971         builtin_true_unsigned_char members.
5972         * gdbtypes.c (builtin_type_true_char): Remove.
5973         (builtin_type_true_unsigned_char): Likewise.
5974         (_initialize_gdbtypes): Do not initialize them.
5975         (gdbtypes_post_init): Initialize builtin_true_char and
5976         builtin_true_unsigned_char members of builtin_type.
5977
5978         * printcmd.c (print_scalar_formatted): Use builtin_type
5979         members instead of builtin_type_true_char and
5980         builtin_type_true_unsigned_char.
5981         * ada-valprint.c (ada_val_print_1): Likewise.
5982
5983 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5984
5985         * gdbtypes.h (builtin_type_void): Remove.
5986         * gdbtypes.c (builtin_type_void): Remove.
5987         (_initialize_gdbtypes): Do not initialize it.
5988
5989         (safe_parse_type): Add GDBARCH argument.  Use it to construct
5990         void return type.
5991         (check_stub_method): Update call.
5992
5993         * infcall.c (call_function_by_hand): Use platform-specific type
5994         instead of builtin_type_void.
5995         * valops.c (value_cast): Use input void type instead of
5996         builtin_type_void.
5997
5998 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5999
6000         * ada-lang.c (assign_component): Use platform-specific integer type
6001         instead of builtin_type_int32 type.
6002         (ada_evaluate_subexp) [OP_ATR_SIZE]: Likewise.
6003
6004         * ax-gdb.c (gen_expr) [UNOP_NEG]: Use platform-specific integer type
6005         instead of builtin_type_int8 type.
6006         * valarith.c (value_x_unop): Likewise.
6007         * python/python-value.c (valpy_absolute): Avoid reference to
6008         builtin_type_int8 type.
6009
6010         * eval.c (evaluate_subexp_standard): Use platform-specific integer
6011         type instead of builtin_type_int8 as EVAL_SKIP return value type.
6012         * ada-lang.c (ada_evaluate_subexp): Likewise.
6013         * jv-lang.c (evaluate_subexp_java): Likewise.
6014         * m2-lang.c (evaluate_subexp_modula2): Likewise.
6015         * scm-lang.c (evaluate_exp): Likewise.
6016
6017         * value.h (value_bitstring): Add INDEX_TYPE argument.
6018         * valops.c (value_bitstring): Add INDEX_TYPE argument, use it instead
6019         of builtin_type_int32 as base range type.
6020         * eval.c (evaluate_subexp_standard): Update value_bitstring call.
6021
6022 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
6023
6024         * gdbtypes.c (lookup_array_range_type): Add prototype.
6025         (lookup_string_range_type): Likewise.
6026         * gdbtypes.c (lookup_array_range_type): New function.
6027         (lookup_string_range_type): Likewise.
6028
6029         * ax-gdb.c (gen_repeat): Use lookup_array_range_type.
6030         * parse.c (follow_types): Likewise.
6031         * jv-lang.c (java_array_type): Likewise.
6032         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
6033         * mt-tdep.c (mt_register_type): Likewise.
6034         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
6035         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
6036         * value.c (allocate_repeat_value): Likewise.
6037         * valops.c (value_array, value_cstring): Likewise.
6038         * valops.c (value_string): Use lookup_string_range_type.
6039
6040 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
6041
6042         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Remove
6043         redundant check for NULL TYPE_TARGET_TYPE.
6044         * m2-valprint.c (m2_print_long_set): Likewise.
6045         * p-valprint.c (pascal_type_print_base): Likewise.
6046
6047 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
6048
6049         * printcmd.c (next_gdbarch): New static variable.
6050         (set_next_address, do_examine, x_command): Set it.
6051         (decode_format): Use 'a' size to indicate width of an address.
6052         (do_examine): Add GDBARCH argument.  Handle 'a' size.
6053         (x_command): Pass architecture to do_examine.
6054         Error if called without argument the first time.  
6055         (do_one_display): Pass architecture to do_examine.
6056
6057         (examine_i_type, examine_b_type, examine_h_type, examine_w_type,
6058         examine_g_type): Remove.
6059         (_initialize_printcmd): Do not initialize them.
6060         (do_examine): Use builin_type_int... instead of examine_..._type.
6061
6062 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
6063
6064         * gdbtypes.h (struct builtin_type): Add internal_fn member.
6065         * gdbtypes.c (gdbtypes_post_init): Initialize it.
6066         * value.c (internal_fn_type): Remove.
6067         (_initialize_values): Do not initialize it.
6068
6069         * value.c (struct internalvar): Add enum internalvar_kind type and
6070         kind member.  Restructure union internalvar_data type.  Remove type,
6071         canonical, and make_value members.
6072         (init_if_undefined_command): Update for data structure changes.
6073         (create_internalvar): Likewise.
6074         (create_internalvar_type_lazy): Likewise.
6075         (get_internalvar_integer): Likewise.
6076         (get_internalvar_function): Likewise.
6077         (set_internalvar_component): Likewise.
6078         (set_internalvar): Likewise.
6079         (set_internalvar_integer): Likewise.
6080         (set_internalvar_function): Likewise.
6081         (clear_internalvar): Likewise.
6082         (add_internal_function): Likewise.
6083         (preserve_one_internalvar): New function.
6084         (preserve_values): Call it.
6085
6086         * value.h (value_of_internalvar): Add GDBARCH parameter.
6087         (internalvar_make_value): Likewise.
6088         * value.c (value_of_internalvar): Add GDBARCH parameter.  Pass it to
6089         make_value callback.  Use it to generate per-architecture result value
6090         types for internal variables with no pre-defined type.  Update for data
6091         structure changes.
6092         (show_convenience): Pass architecture to value_of_internalvar.
6093         * eval.c (evaluate_subexp_standard): Likewise.
6094         * infrun.c (siginfo_make_value): Add GDBARCH parameter.  Use it
6095         instead of current frame architecture.  Return per-architecture type.
6096
6097         * value.h (set_internalvar_string): Add prototype.
6098         * value.c (set_internalvar_string): New function.
6099         * tracepoint.c (set_traceframe_context): Use it.
6100
6101 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
6102
6103         * jv-lang.h (java_int_type, java_byte_type, java_short_type,
6104         java_long_type, java_boolean_type, java_char_type, java_float_type,
6105         java_double_type, java_void_type): Remove.
6106         (struct builtin_java_type): New data type.
6107         (builtin_java_type): Add prototype.
6108         (java_primitive_type): Add GDBARCH argument.
6109         (java_primitive_type_from_name): Likewise.
6110         (type_from_class): Likewise.
6111
6112         * jv-lang.c (java_int_type, java_byte_type, java_short_type,
6113         java_long_type, java_boolean_type, java_char_type, java_float_type,
6114         java_double_type, java_void_type): Remove.
6115
6116         (build_java_types, builtin_java_type): New functions.
6117         (java_type_data): New static variable.
6118         (_initialize_java_language): Initialize it.  No longer initialize
6119         global types.
6120         (java_language_arch_info): Use per-architecture types.
6121
6122         (java_primitive_type): Add GDBARCH argument.  Return per-architecture
6123         type instead of refering to global variable.
6124         (java_primitive_type_from_name): Add GDBARCH argument.
6125         (java_primitive_type_name): New function.
6126         (java_demangled_signature_length): Use it instead of
6127         java_primitive_type_from_name.
6128         (java_demangled_signature_copy): Likewise.
6129
6130         (type_from_class): Add GDBARCH argument.  Pass to java_link_class_type,
6131         java_primitive_type, and recursive type_from_class call.
6132         (java_link_class_type): Add GDBARCH argument.  Pass to type_from_class
6133         calls.  Use per-architecture types instead of global types.
6134
6135         * jv-exp.y (parse_java_type): New define.
6136         Use per-architecture types instead of global types througout.
6137
6138         * jv-valprint.c (java_value_print): Pass architecture to
6139         type_from_class and java_primitive_type_from_name.  Use per-
6140         architecture types instead of global types.
6141
6142 2009-07-01  Doug Evans  <dje@google.com>
6143
6144         * NEWS: Mention biarch amd64-linux gdbserver and hardware watchpoint
6145         support for i386-linux, amd64-linux, and i386-win32 builds of
6146         gdbserver.
6147
6148 2009-07-01  Nick Roberts  <nickrob@snap.net.nz>
6149
6150         * Makefile.in (HFILES_NO_SRCDIR): Remove entries for deleted files.
6151
6152 2009-06-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
6153
6154         * Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL.
6155         (check//%): Construct FORCE_PARALLEL for the sub-make.  Extend the
6156         comment for it.
6157
6158 2009-06-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
6159
6160         gdb/10275
6161         * dwarf2-frame.c (dwarf2_frame_state): Move cfa_offset, cfa_reg,
6162         cfa_how and cfa_exp into regs and adjust users.
6163         
6164 2009-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
6165
6166         * dwarf2read.c (inherit_abstract_dies): Work around GCC PR 40573.
6167
6168 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
6169
6170         * mi/mi-cmd-stack.c (parse_print_values): New.
6171         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Use the above.
6172
6173 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
6174
6175         * varobj.c (varobj_get_type): Use type_to_string.
6176
6177 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
6178
6179         * infrun.c (handle_inferior_event): Context switch to the new
6180         thread when resuming for a new_thread_event.
6181
6182 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6183
6184         * ada-lang.h (ada_convert_actual): Add GDBARCH argument.
6185         * ada-lang.c (convert_actual): Remove stale prototype.
6186         (ensure_lval, make_array_descriptor, ada_convert_actual):
6187         Add GDBARCH argument and pass through to subroutine calls.
6188         (ensure_lval): Use GDBARCH instead of current_gdbarch.
6189         * infcall.c (value_arg_coerce): Update ada_convert_actual call.
6190
6191 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6192
6193         * ada-lang.c (resolve): Use per-architecture void type instead
6194         of platform-independent one.
6195         (ada_evaluate_subexp) [STRUCTOP_STRUCT]: Likewise.
6196         (ada_resolve_function): Reimplement fallback logic to avoid
6197         explicit reference to builtin_type_void.
6198
6199 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6200
6201         * ada-valprint.c (ada_print_scalar): Accept NULL type argument
6202         to indicate scalar should be printed as default integer.
6203         (print_optional_low_bound): Pass NULL to ada_print_scalar to
6204         indicate default integer output.
6205         * ada-typeprint.c (print_range, print_range_bound): Likewise.
6206         (print_choices): Likewise.  Thus, accept NULL as val_type.
6207         * ada-lang.c (ada_variant_discrim_type): Return NULL when failed
6208         to look up controlling discriminant name.
6209
6210 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6211
6212         * ada-lang.c (to_fixed_range_type): Add ORIG_TYPE argument.
6213         Fall back to orig_type as index type if symbol lookup fails.
6214         Allocate result types from ORIG_TYPE's objfile.
6215         (ada_array_bound_from_type, to_fixed_array_type,
6216         ada_evaluate_subexp): Pass original index type to
6217         to_fixed_range_type.  Do not pass objfile.
6218
6219         * ada-typeprint.c (print_range_type_named): Add ORIG_TYPE argument.
6220         Fall back to orig_type as index type if symbol lookup fails.
6221         (print_array_type, ada_print_type): Pass original index type
6222         to print_range_type_named.
6223
6224 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6225
6226         * ada-lang.c (ada_index_type): Update comment.
6227
6228 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6229
6230         * ada-lang.c (ada_index_type): Make static.  Add NAME argument.
6231         Throw error on invalid input arguments.  Return NULL if unable
6232         to determine index type.
6233
6234         (ada_array_bound_from_type): Remove TYPEP argument.
6235         (ada_array_bound): Make static.  Return LONGEST instead of value.
6236         Update for ada_array_bound_from_type change.
6237         (ada_array_length): Return LONGEST instead of value.
6238         Update for ada_array_bound_from_type change.
6239         (make_array_descriptor): Update for ada_array_bound change.
6240
6241         (ada_evaluate_subexp) [OP_ATR_RANGE, OP_ATR_FIRST, OP_ATR_LAST,
6242         OP_ATR_LENGTH]: Update for ada_array_bound_from_type,
6243         ada_array_bound, ada_array_length, ada_index_type changes.
6244         Always use ada_index_type to compute result type; fall back
6245         to architecture-specific integer type if ada_index_type fails.
6246
6247         * ada-lang.h (ada_index_type): Remove prototype.
6248         (ada_array_bound): Likewise.
6249
6250 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
6251
6252         * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending
6253         a psymtab.
6254
6255 2009-06-29  Tom Tromey  <tromey@redhat.com>
6256
6257         * README: Mention parallel check.
6258
6259 2009-06-29  Sami Wagiaalla  <swagiaal@redhat.com>
6260
6261         * dwarf2read.c (read_import_statement): Properly set import location
6262         and destination.
6263         * cp-support.h (cp_add_using, cp_add_using_directive): Now take char*
6264         inner, char* outer arguments. Updated callers.
6265
6266 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6267
6268         * value.h (value_subscript, value_subscripted_rvalue,
6269         value_bitstring_subscript, value_ptradd): Use LONGEST instead
6270         of value as type of the index argument.
6271         (value_ptrsub): Remove.
6272         * valarith.c (value_subscript, value_subscripted_rvalue,
6273         value_bitstring_subscript, value_ptradd): Use LONGEST instead
6274         of value as type of the index argument.
6275         (value_ptrsub): Remove.
6276
6277         * wrapper.h (gdb_value_subscript): Use LONGEST instead of
6278         value as type of the index argument.
6279         * wrapper.c (gdb_value_subscript): Likewise.
6280
6281         Update calls to gdb_value_subscript, value_subscript,
6282         value_subscripted_rvalue, value_bitstring_subscript and
6283         value_ptradd to use LONGEST instead of value as index
6284         argument type.  Use value_ptradd instead of value_ptrsub.
6285         * ada-lang.c (ada_value_subscript, ada_value_ptr_subscript,
6286         ada_tag_name_2): Update.
6287         * ada-tasks.c (read_atcb): Update.
6288         * eval.c (evaluate_subexp_standard): Update.
6289         * valarith.c (value_subscript): Update.
6290         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Update.
6291         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
6292         gnuv3_method_ptr_to_value): Update.
6293         * jv-lang.c (evaluate_subexp_java): Update.
6294         * m2-lang.c (evaluate_subexp_modula2): Update.
6295         * python/python-value.c (valpy_getitem, valpy_binop): Update.
6296         * wrapper.c (gdb_value_subscript): Update.
6297         * varobj.c (c_describe_child): Update.
6298
6299 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6300
6301         * gdbtypes.h (make_function_type): Remove OBJFILE parameter.
6302         * gdbtypes.c (make_function_type): Remove OBJFILE parameter.
6303         (lookup_function_type): Update call.
6304         * stabsread.c (read_type): Likewise.
6305         * dwarf2read.c (read_subroutine_type): Use lookup_function_type
6306         instead of make_function_type.
6307         * jv-lang.c (type_from_class): Likewise.  Do not allocate types
6308         on the fake "dynamics" obstack.
6309
6310 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6311
6312         * gdbtypes.h (struct builtin_type): Remove builtin_core_addr,
6313         nodebug_text_symbol, nodebug_data_symbol, nodebug_unknown_symbol,
6314         and nodebug_tls_symbol members.
6315         (struct objfile_type): New data structure.
6316         (objfile_type): Add prototype.
6317         * gdbtypes.c (gdbtypes_post_init): Remove initialization code
6318         for types no longer in struct builtin_type.
6319         (objfile_type_data): New static variable.
6320         (_initialize_gdbtypes): Initialize it.
6321         (objfile_type): New function.
6322
6323         * gdbtypes.h (builtin_type_error): Remove.
6324         * gdbtypes.c (build_complex): Do not use builtin_type_error.
6325         * symtab.c (builtin_type_error): Remove.
6326         (_initialize_symtab): Remove initialization.
6327
6328         * stabsread.c (dbx_lookup_type, define_symbol, error_type,
6329         rs6000_builtin_type, read_range_type): Use per-objfile types
6330         instead of global or per-architecture builtin types.
6331         * coffread.c (decode_type): Likewise.
6332         * dwarf2read.c (read_array_type, read_tag_string_type,
6333         new_symbol, die_type): Likewise.
6334         * mdebugread.c (parse_symbol, basic_type, upgrade_type,
6335         parse_procedure, psymtab_to_symtab_1): Likewise.
6336         * xcoffread.c (process_xcoff_symbol): Likewise.
6337         * parse.c (write_exp_msymbol): Likewise.
6338
6339         * stabsread.c (rs6000_builtin_type_data): New static variable.
6340         (_initialize_stabsread): Initialize it.
6341         (rs6000_builtin_type): Add OBJFILE argument.  Allocate builtin
6342         types per-objfile instead of globally.
6343
6344         * stabsread.c (dbx_lookup_type): Add OBJFILE argument.  Use it
6345         instead of current_objfile; pass it to rs6000_builtin_type.
6346         (dbx_alloc_type, read_type, read_range_type): Update calls.
6347         (cleanup_undefined_types_noname): Add OBJFILE argument and
6348         pass it to dbx_lookup_type.
6349         (cleanup_undefined_types): Add OBJFILE argument and pass it
6350         to cleanup_undefined_types_noname.
6351         * stabsread.h (cleanup_undefined_types): Add OBJFILE argument.
6352         * buildsym.c (end_symtab): Update call.
6353
6354 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6355
6356         * darwin-nat-info.c (darwin_debug_regions_recurse): Use
6357         target_gdbarch instead of current_gdbarch.
6358
6359 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6360
6361         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-windows-tdep.o.
6362         (ALL_TARGET_OBS): Add moxie-tdep.o, i386-darwin-tdep.o, and
6363         solib-darwin.o.
6364
6365         * configure.tgt: Add comment.
6366
6367 2009-06-28  Paul Pluzhnikov  <ppluzhnikov@google.com>
6368
6369         * mi/mi-cmds.c (mi_cmds): Remove unimplemented entries.
6370         
6371 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
6372             Jan Kratochvil  <jan.kratochvil@redhat.com>
6373
6374         * NEWS: Document inlined function support.
6375         * Makefile.in (SFILES): Add inline-frame.c.
6376         (COMMON_OBS): Add inline-frame.o.
6377         * block.c (contained_in): Rewrite to use lexical nesting.
6378         (block_linkage_function): Skip inlined function blocks.
6379         (block_inlined_p): New.
6380         * block.h (struct block): Update comment.
6381         (block_inlined_p): New prototype.
6382         * blockframe.c (get_frame_block): Handle inlined functions.
6383         (get_frame_function): Do not use block_linkage_function.
6384         (block_innermost_frame): Use get_frame_block and contained_in.
6385         * breakpoint.c (watchpoint_check): Remove extra reinit_frame_cache.
6386         Skip over inlined functions.  Simplify epilogue check.
6387         (bpstat_check_breakpoint_conditions): Use get_stack_frame_id.
6388         Update comments.
6389         (set_momentary_breakpoint): Only accept non-inlined frames.
6390         (watch_command_1): Use frame_unwind_caller_pc and
6391         frame_unwind_caller_id instead of get_prev_frame.
6392         (until_break_command): Likewise.  Use get_stack_frame_id.
6393         * buildsym.c (end_symtab): Set SYMBOL_SYMTAB for block functions.
6394         * dwarf2loc.c (dwarf_expr_frame_base): Use block_linkage_function.
6395         * dwarf2read.c (process_die): Handle DW_TAG_inlined_subroutine.
6396         (read_func_scope, new_symbol): Likewise.  Handle arguments specially
6397         for inlined functions without call site information.
6398         (inherit_abstract_dies): Allow tag mismatch for inlined subroutines.
6399         (die_specification): Treat DW_AT_abstract_origin as a specification.
6400         (read_type_die): Handle DW_TAG_inlined_subroutine.
6401         * frame-unwind.c (frame_unwind_init): Add inline_frame_unwind.
6402         * frame.c (fprint_frame_id): Print inline depth.
6403         (fprint_frame_type): Handle INLINE_FRAME and SENTINEL_FRAME.
6404         (skip_inlined_frames, get_stack_frame_id): New.
6405         (frame_unwind_caller_id): Use skip_inlined_frames.
6406         (frame_id_inlined_p): New.
6407         (frame_id_eq): Make the logic match the comments.  Add inline_depth
6408         check.
6409         (frame_id_inner): Handle inlined functions.
6410         (frame_unwind_pc): New function, copied from frame_unwind_caller_pc.
6411         (frame_unwind_caller_pc): Use skip_inlined_frames and frame_unwind_pc.
6412         (get_prev_frame_1): Check for inline frames.  Split out frame
6413         allocation to get_prev_frame_raw.
6414         (get_prev_frame_raw): New function.
6415         (get_prev_frame): Handle inline frames.
6416         (get_frame_pc): Use frame_unwind_pc.
6417         (get_frame_address_in_block): Skip inlined frames on both sides.
6418         (pc_notcurrent): Delete.
6419         (find_frame_sal): Rewrite to handle inline call sites.  Use
6420         get_frame_address_in_block.
6421         (deprecated_update_frame_pc_hack): Make static.
6422         * frame.h: Update comments.
6423         (struct frame_id): Add inline_depth.
6424         (enum frame_type): Add INLINE_FRAME.
6425         (frame_id_inlined_p, get_stack_frame_id): New prototypes.
6426         * gdbthread.h (struct thread_info): Add step_stack_frame_id field.
6427         * infcmd.c (set_step_frame): New function.
6428         (step_once): Use set_step_frame.  Handle inlined functions.
6429         (until_next_command): Use set_step_frame.
6430         (finish_backward), finish_forward): Use get_stack_frame_id.
6431         (finish_command): Support inlined functions.
6432         * inferior.h (set_step_info): New prototype.
6433         * infrun.c (RESUME_ALL): Use minus_one_ptid.
6434         (clear_proceed_status): Clear step_stack_frame_id.
6435         (init_wait_for_inferior): Call clear_inline_frame_state.
6436         (init_execution_control_state): Make static.
6437         (set_step_info): New function.
6438         (init_thread_stepping_state): Do not set the symtab or line here.
6439         (stepped_in_from): New function.
6440         (handle_inferior_event): Handle inlined functions.  Use set_step_info.
6441         (insert_step_resume_breakpoint_at_frame): Use get_stack_frame_id.
6442         (struct inferior_status): Add step_stack_frame_id.
6443         (save_inferior_status, restore_inferior_status): Save and restore
6444         step_stack_frame_id.
6445         * inline-frame.c, inline-frame.h: New files.
6446         * minsyms.c (prim_record_minimal_symbol_and_info): Use XCALLOC.
6447         * regcache.c (regcache_write_pc): Call reinit_frame_cache.
6448         * s390-tdep.c (s390_prologue_frame_unwind_cache): Handle INLINE_FRAME.
6449         * stack.c (frame_show_address): New.
6450         (print_frame_info, print_frame): Use it.
6451         (find_frame_funname): Use get_frame_function.  Handle inlined blocks.
6452         (frame_info): Mark inlined functions.
6453         (backtrace_command_1): Use get_current_user_frame.
6454         (print_frame_local_vars, print_frame_label_vars): Update comments.
6455         (return_command): Refuse inlined functions.
6456         * symtab.c (lookup_symbol_aux_local): Stop at inlined function
6457         boundaries.
6458         (find_function_start_sal): Avoid inlined functions.
6459         (completion_list_add_fields): New function.
6460         (default_make_symbol_completion_list): Use it.  Use block_static_block
6461         and block_global_block.  Check for inlined functions.
6462         (skip_prologue_using_sal): Avoid line number comparison across
6463         inlining.
6464         * symtab.h (struct symbol): Add is_inlined.
6465         (SYMBOL_INLINED): New.
6466         * target.c (target_resume): Call clear_inline_frame_state.
6467         * valops.c (value_of_variable): Check block_inlined_p.
6468
6469 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
6470
6471         * frame.c (frame_unwind_id): Renamed to ...
6472         (frame_unwind_caller_id): ... this.  All callers updated.
6473         (frame_pc_unwind): Renamed to ...
6474         (frame_unwind_caller_pc): ... this.  All callers updated.
6475         * frame.h: Document frame_unwind_caller_WHAT functions.
6476         (frame_unwind_id): Renamed to ...
6477         (frame_unwind_caller_id): ... this.
6478         (frame_pc_unwind): Renamed to ...
6479         (frame_unwind_caller_pc): ... this.
6480         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment.
6481         * stack.c (parse_frame_specification_1): Do not rely on
6482         frame_unwind_id.
6483
6484 2009-06-27  Michael Snyder  <msnyder@vmware.com>
6485
6486         * infrun.c (handle_inferior_event): Improve handling of
6487         reverse-stepping into and over shared library functions.
6488
6489 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
6490
6491         * linespec.c (find_method): Add new not_found_ptr parameter to
6492         bring in line with symtab_from_filename, decode_variable.
6493         (decode_compound): Likewise.  Also propagate not_found_ptr to 
6494         find_method.
6495         (decode_line_1): Propagate not_found_ptr to decode_compound.
6496         (cplusplus_error): Now throws NOT_FOUND_ERROR.
6497
6498 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
6499
6500         * MAINTAINERS (Write After Approval): Add self.
6501
6502 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6503
6504         * valops.c (value_one): Reimplement broken decimal-float case.
6505
6506 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6507
6508         * eval.c (evaluate_subexp_standard): Use expression architecture
6509         instead of current_gdbarch.
6510
6511         * infrun.c (handle_inferior_event): Avoid unncessary reference
6512         to current_gdbarch and get_current_frame ().
6513
6514 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6515
6516         * breakpoint.h (set_longjmp_breakpoint): Add THREAD argument.
6517         (enum bptype): Add bp_longjmp_master.
6518
6519         * breakpoint.c (create_longjmp_master_breakpoint): New function.
6520         (update_breakpoints_after_exec): Handle bp_longjmp_master
6521         breakpoints.  Call create_longjmp_master_breakpoint.
6522         (print_it_typical, bpstat_stop_status, bpstat_what,
6523         print_one_breakpoint_location, allocate_bp_location, mention,
6524         delete_command, breakpoint_re_set_one): Handle bp_longjmp_master.
6525         (breakpoint_re_set): Call create_longjmp_master_breakpoint.
6526         (create_longjmp_breakpoint): Delete.
6527         (set_longjmp_breakpoint): Add THREAD argument.  Reimplement
6528         to install momentary clones of bp_longjmp_master breakpoints.
6529
6530         * infcmd.c (step_1): Pass thread to set_longjmp_breakpoint.
6531
6532 2009-06-23  Cary Coutant  <ccoutant@google.com>
6533
6534         * dwarf2read.c (dwarf_decode_lines): Ignore rows where is_stmt is 0.
6535         Set basic_block to 0 after a special opcode.
6536
6537 2009-06-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
6538
6539         Fix a regression by the mmap patch from 2009-06-16.
6540         * symfile.c (reread_symbols): Move sym_finish and clear_objfile_data
6541         calls before deleting the OBJFILE obstack.  Extend the comment.
6542
6543 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6544
6545         * jv-lang.h (JAVA_OBJECT_SIZE): Remove.
6546         (get_java_object_header_size): Add GDBARCH parameter.
6547         * jv-lang.c (get_java_object_header_size): Add GDBARCH parameter.
6548         Use it instead of current_gdbarch.
6549         (evaluate_subexp_java): Replace JAVA_OBJECT_SIZE with call to
6550         get_java_object_header_size.
6551         * jv-valprint.c (java_value_print): Likewise.
6552
6553 2009-06-23  Sami Wagiaalla  <swagiaal@redhat.com>
6554
6555         * dwarf2read.c (process_die): Handle import statements
6556         (DW_TAG_imported_declaration, case DW_TAG_imported_module)
6557         (read_import_statement): New.
6558         (read_func_scope): Update using_directives to point to current context
6559         (read_lexical_block_scope): Ditto.
6560         * cp-support.h: Added prototype for cp_add_using.
6561         * cp-namespace.c: Removed local context_stack.
6562         (cp_initialize_namespace): Deleted.
6563         (cp_finalize_namespace): Deleted.
6564         (cp_add_using_directive): Use using_directives instead of using_list.
6565         (cp_add_using): No longer static.
6566         * buildsym.h: Created global using_direct variable.
6567         Created using_direct variable in context_stack.
6568         * buildsym.c (finish_block): Set using directives for the block under
6569         construction.
6570         (start_symtab): Removed call to cp_initialize_namespace().
6571         (end_symtab): Removed call to cp_finalize_namespace().
6572         (push_context): Save and reset using_directives.
6573         * block.c (block_using): Return using directives for given
6574         block instead of static block.
6575
6576 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6577
6578         * target-descriptions.h (struct type): Do not declare.
6579         (struct tdesc_type): Declare.
6580         (tdesc_named_type): Change return type to struct tdesc_type *.
6581         (tdesc_record_type): Remove.
6582         (tdesc_create_vector): Add prototype.
6583         (tdesc_create_union): Likewise.
6584         (tdesc_add_field): Likewise.
6585
6586         * target-descriptions.c (struct tdesc_reg): Replace gdb_type
6587         member by tdesc_type member.
6588         (struct tdesc_type_field, tdesc_type_field): Add type and vector def.
6589         (struct tdesc_type, tdesc_type_p): Likewise.
6590         (struct tdesc_arch_reg, tdesc_arch_reg): Likewise.
6591         (struct tdesc_feature): Change type of "types" to VEC(tdesc_type_p).
6592         (struct tdesc_arch_data): Replace registers member by arch_regs.
6593
6594         (tdesc_predefined_types): Change to array of pre-defined
6595         struct tdesc_type structures.  Add "code_ptr" and "data_ptr".
6596         (tdesc_named_type): Return struct tdesc_type * instead of GDB type.
6597         (tdesc_gdb_type): New function.
6598
6599         (target_find_description): Update for data structure changes.
6600         (tdesc_data_cleanup): Likewise.
6601         (tdesc_numbered_register): Likewise.
6602         (tdesc_use_registers): Likewise.
6603         (tdesc_create_reg): Likewise.
6604         
6605         (tdesc_find_arch_register): New function.
6606         (tdesc_find_register): Use it.
6607         (tdesc_register_type): Use tdesc_gdb_type to generate GDB type from
6608         tdesc_type on demand; cache generated types in tdesc_arch_reg.
6609
6610         (tdesc_free_type): New function.
6611         (tdesc_free_feature): Call it.
6612
6613         (tdesc_create_vector): New function.
6614         (tdesc_create_union): Likewise.
6615         (tdesc_add_field): Likewise.
6616         (tdesc_record_type): Remove.
6617
6618         (tdesc_type_id): Remove.
6619         (maint_print_c_tdesc_cmd): Update for data structure changes.  Update
6620         generated code to create tdesc_type structures instead of GDB types.
6621
6622         * xml-tdesc.c: Do not include "gdbtypes.h".
6623         (struct tdesc_parsing_data): Change type of current_union to
6624         struct tdesc_type *.
6625         (tdesc_start_reg): Do not special-case "code_ptr" or "data_ptr".
6626         (tdesc_start_union): Call tdesc_create_union.
6627         (tdesc_start_field): Call tdesc_add_field.
6628         (tdesc_start_vector): Call tdesc_create_vector.
6629         (tdesc_end_union): Remove.
6630         (feature_children): Remove reference to tdesc_end_union.
6631
6632         * features/arm-with-iwmmxt.c: Regenerate.
6633         * features/mips-linux.c: Regenerate.
6634         * features/mips64-linux.c: Regenerate.
6635         * features/rs6000/powerpc-32.c: Regenerate.
6636         * features/rs6000/powerpc-32l.c: Regenerate.
6637         * features/rs6000/powerpc-403.c: Regenerate.
6638         * features/rs6000/powerpc-403gc.c: Regenerate.
6639         * features/rs6000/powerpc-505.c: Regenerate.
6640         * features/rs6000/powerpc-601.c: Regenerate.
6641         * features/rs6000/powerpc-602.c: Regenerate.
6642         * features/rs6000/powerpc-603.c: Regenerate.
6643         * features/rs6000/powerpc-604.c: Regenerate.
6644         * features/rs6000/powerpc-64.c: Regenerate.
6645         * features/rs6000/powerpc-64l.c: Regenerate.
6646         * features/rs6000/powerpc-7400.c: Regenerate.
6647         * features/rs6000/powerpc-750.c: Regenerate.
6648         * features/rs6000/powerpc-860.c: Regenerate.
6649         * features/rs6000/powerpc-altivec32.c: Regenerate.
6650         * features/rs6000/powerpc-altivec32l.c: Regenerate.
6651         * features/rs6000/powerpc-altivec64.c: Regenerate.
6652         * features/rs6000/powerpc-altivec64l.c: Regenerate.
6653         * features/rs6000/powerpc-e500.c: Regenerate.
6654         * features/rs6000/powerpc-e500l.c: Regenerate.
6655         * features/rs6000/powerpc-isa205-32l.c: Regenerate.
6656         * features/rs6000/powerpc-isa205-64l.c: Regenerate.
6657         * features/rs6000/powerpc-isa205-altivec32l.c: Regenerate.
6658         * features/rs6000/powerpc-isa205-altivec64l.c: Regenerate.
6659         * features/rs6000/powerpc-isa205-vsx32l.c: Regenerate.
6660         * features/rs6000/powerpc-isa205-vsx64l.c: Regenerate.
6661         * features/rs6000/powerpc-vsx32.c: Regenerate.
6662         * features/rs6000/powerpc-vsx32l.c: Regenerate.
6663         * features/rs6000/powerpc-vsx64.c: Regenerate.
6664         * features/rs6000/powerpc-vsx64l.c: Regenerate.
6665         * features/rs6000/rs6000.c: Regenerate.
6666
6667 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
6668
6669         * ada-lang.c (decode_packed_array): If the value is a pointer to
6670         an array, then use value_ind to dereference it, not ada_value_ind.
6671         (ada_template_to_fixed_record_type_1): Handle the case where a
6672         dynamic field is an aligner type.
6673         (to_fixed_array_type): Add handling for packed array types.
6674         (ada_get_base_type): Do not follow the XVS type if the type is
6675         an aligner type.
6676         (ada_evaluate_subexp): Split a few statements up for clarity
6677         and debuggability.
6678         <OP_FUNCALL>: Add handling of the case of a packed array that
6679         has already been fixed.
6680
6681 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
6682
6683         * ada-lang.c (evaluate_subexp): Delete.  Use the version from eval.c.
6684         (evaluate_subexp_type): Reimplement using evaluate_subexp.
6685         * value.h (evaluate_subexp): Add declaration.
6686         * eval.c (evaluate_subexp): Make non-static.
6687         * objc-lang.c (print_object_command): Use evaluate_subexp.
6688
6689 2009-06-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
6690
6691         Revert 2009-05-14 breakpoint commit (no longer needed).
6692         * breakpoint.h (breakpoint_re_set_objfile): Remove
6693         * breakpoint.c (breakpoint_re_set_objfile): Likewise
6694         (create_overlay_event_breakpoint): Remove objfile parameter,
6695         iterate over all objfiles.
6696         * objfiles.c (objfile_relocate): Update.
6697         * symfile.c (new_symfile_objfile): Likewise.    
6698         
6699 2009-06-23  Tom Tromey  <tromey@redhat.com>
6700
6701         PR gdb/10309:
6702         * c-lang.c (classify_type): Iterate over typedefs.
6703         * c-valprint.c (textual_element_type): Iterate over typedefs.
6704
6705 2009-06-22  Tristan Gingold  <gingold@adacore.com>
6706
6707         * darwin-nat.c (darwin_xfer_partial): Use host_address_to_string
6708         instead of "%p".
6709
6710 2009-06-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
6711
6712         PR gdb/9988:
6713         * buildsym.c (block_compar): New function.
6714         (end_symtab): Replace the bubble sort by a qsort based code.
6715
6716 2009-06-22  Sami Wagiaalla  <swagiaal@redhat.com>
6717
6718         * MAINTAINERS (Write After Approval): Add self.
6719
6720 2009-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
6721
6722         * spu-tdep.c (spu_get_longjmp_target): New function.
6723         (spu_gdbarch_init): Install it.
6724
6725 2009-06-22  H.J. Lu  <hongjiu.lu@intel.com>
6726
6727         PR server/10306
6728         * remote.c (getpkt_or_notif_sane_1): Initialize val to -1.
6729
6730 2009-06-21  Michael Snyder  <msnyder@vmware.com>
6731
6732         * inferior.h: Update ancient comment.
6733
6734 2009-06-20  Aleksandar Ristovski  <aristovski@qnx.com>
6735             Pedro Alves  <pedro@codesourcery.com>
6736
6737         * solib-svr4.c (IGNORE_FIRST_LINK_MAP_ENTRY): Avoid dereferencing
6738         NULL pointer.
6739         (scan_dyntag): Skip if input bfd isn't elf flavoured.
6740         (locate_base): Call elf_locate_base even without an exec_bfd.
6741
6742 2009-06-19  Samuel Bronson  <naesten@gmail.com>
6743
6744         PR cli/9903:
6745         * cli/cli-decode.c (apropos_cmd): Skip traversing abbreviations
6746         for prefix commands to avoid duplicates in the output.
6747
6748 2009-06-19  Samuel Bronson  <naesten@gmail.com>
6749
6750         PR cli/9903:
6751         * cli/cli-decode.c (apropos_cmd): Fix avoidance of double
6752         printing.
6753
6754 2009-06-19  Jerome Guitton  <guitton@adacore.com>
6755
6756         * breakpoint.c (expand_line_sal_maybe): When explicit_line,
6757         skip prologue on each sals.
6758         (skip_prologue_sal): Return explicit_line and explicit_pc
6759         unmodified.
6760
6761 2009-06-19  Tristan Gingold  <gingold@adacore.com>
6762
6763         * darwin-nat.c (_initialize_darwin_inferior): Remove commented-out
6764         line.
6765
6766 2009-06-19  Tristan Gingold  <gingold@adacore.com>
6767         * machoread.c (macho_symtab_read): Adjust for bfd changes.
6768         * darwin-nat.h (struct darwin_exception_msg): New type to describe
6769         a mach exception.
6770         (struct private_thread_info): New type to describe the state of the
6771         thread.
6772         (DEF_VEC_I thread_t): Removed, replaced by ...
6773         (DEF_VEC_O darwin_thread_t): ... this new type.
6774         (struct darwin_inferior): Renamed to ...
6775         (struct private_inferior): ... this type.  Fields added.
6776         (darwin_not_port): Moved into the private inferior structure.
6777         * darwin-nat.c: Add includes, improve comments.
6778         Rewrite to handle multiple threads and processes.
6779         (darwin_resume_to): New function and protype.
6780         (darwin_resume, darwin_wait_to, darwin_wait): Ditto.
6781         (darwin_kill_inferior): Add ops argument.
6782         (darwin_pid_to_str): New function.
6783         (darwin_thread_alive): Ditto.
6784         (darwin_inf, darwin_not_port): Removed.
6785         (darwin_inf_fake_stop): New variable.
6786         (msgin, msgout, msg_state, exc_msg): Removed.
6787         (mach_check_error): Use warning instead of error.
6788         (darwin_ptrace): Adjust debug level.
6789         (cmp_thread_t): Fix names (typo).
6790         (darwin_check_new_threads): Argument is now an inferior,
6791         adjust for new structures, add no change check, ignore dead ports,
6792         handle first thread case.
6793         (find_inferior_task_it): New function.
6794         (find_inferior_notify_it): Ditto.
6795         (darwin_find_inferior_by_task): Ditto.
6796         (darwin_find_inferior_by_notify): Ditto.
6797         (darwin_find_thread): Ditto.
6798         (darwin_suspend_inferior): Ditto.
6799         (darwin_resume_inferior): Ditto.
6800         (catch_exception_raise_state): Removed.
6801         (catch_exception_raise_state_identity): Removed.
6802         (darwin_suspend_inferior_it): New function.
6803         (darwin_resume_inferior_it): Ditto.
6804         (darwin_dump_message): New function, extracted from darwin_wait.
6805         (darwin_decode_exception_message): New function.
6806         (darwin_encode_reply): New function.
6807         (catch_exception_raise): Removed.
6808         (darwin_send_reply): New function, extracted from darwin_resume.
6809         (darwin_resume_thread): New function, extracted from darwin_resume.
6810         (struct resume_inferior_threads_param): New type.
6811         (darwin_resume_inferior_threads_it): New function.
6812         (darwin_resume_inferior_threads): New function.
6813         (darwin_suspend_inferior_threads): New function.
6814         (darwin_resume): Mostly rewritten to handle multiple threads and
6815         some corner cases.
6816         (darwin_decode_message): New function extracted from darwin_wait.
6817         (cancel_breakpoint): New function.
6818         (darwin_wait): Mostly rewritten.  Handle multiple threads.
6819         (darwin_mourn_inferior): Adjust for per process structures.
6820         (darwin_reply_to_all_pending_messages): New function.
6821         (darwin_stop_inferior): Adjust for per inferior structures.
6822         (darwin_attach_pid): Ditto.
6823         (darwin_init_thread_list): Ditto.
6824         (darwin_attach): Ditto.
6825         (darwin_detach): Ditto.
6826         (darwin_files_info): Now empty.
6827         (darwin_pid_to_str): Adjust returns string to match one expected by
6828         the testsuite.
6829         (darwin_read_write_inferior): Rename err variable to match other uses.
6830         Adjust debug message.  Handle submaps.
6831         (darwin_xfer_memory): Adjust for per inferior structures.
6832         (set_enable_mach_exceptions): Ditto.
6833         (darwin_pid_to_exec_file): New function.
6834         (darwin_get_ada_task_ptid): Ditto.
6835         (darwin_supports_multi_process): Ditto.
6836         (_initialize_darwin_inferior): Remove useless assertion, adjust for
6837         per inferior structures.  Add new target operations.
6838
6839 2009-06-18  Hui Zhu  <teawater@gmail.com>
6840             Michael Snyder  <msnyder@vmware.com>
6841
6842         * infrun.c (handle_inferior_event): Improve reverse stepping
6843         through function epilogue.
6844
6845         * infrun.c (handle_inferior_event): Reverse-next through
6846         trampoline.
6847
6848 2009-06-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
6849
6850         * dwarf2-frame.c (struct comp_unit): Use bfd_size_type for
6851         dwarf_frame_size.
6852
6853 2009-06-17  Tom Tromey  <tromey@redhat.com>
6854
6855         * dwarf2read.c (zlib_decompress_section): Use a cleanup.
6856
6857 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6858
6859         * gdbarch.sh (pointer_to_address): Change to type 'm'.
6860         (address_to_pointer): Likewise.
6861         * gdbarch.c, gdbarch.h: Regenerate.
6862
6863         * inferior.h (unsigned_pointer_to_address): Add GDBARCH argument.
6864         (signed_pointer_to_address): Likewise.
6865         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
6866         * findvar.c (unsigned_pointer_to_address): Likewise.
6867         (signed_pointer_to_address): Likewise.
6868         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
6869
6870         * avr-tdep.c (avr_address_to_pointer): Likewise.
6871         (avr_pointer_to_address): Likewise.
6872         * iq2000-tdep.c (iq2000_pointer_to_address): Likewise.
6873         (iq2000_address_to_pointer): Likewise.
6874         * m32c-tdep.c (m32c_m16c_address_to_pointer): Likewise.
6875         (m32c_m16c_pointer_to_address): Likewise.
6876         * spu-tdep.c (spu_pointer_to_address): Likewise.
6877         * xstormy16-tdep.c (xstormy16_pointer_to_address): Likewise.
6878         (xstormy16_address_to_pointer): Likewise.
6879
6880 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6881
6882         * printcmd.c (print_scalar_formatted): Always truncate
6883         unsigned data types.
6884
6885         * cli-dump.c (struct callback_data): Change type of load_offset
6886         to CORE_ADDR.
6887         (restore_binary_file): Update type casts.
6888         (restore_command): Parse load_offset as address, not long.
6889
6890         * utils.c (string_to_core_addr): Do not sign-extend value.
6891         * varobj.c (find_frame_addr_in_frame_chain): Truncate frame_base
6892         before comparing against requested frame address.
6893
6894 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6895
6896         * gdbarch.sh (gcore_bfd_target): New gdbarch callback.
6897         * gdbarch.h, gdbarch.c: Regenerate.
6898
6899         * gcore.c (default_gcore_target): Make return value const.
6900         Call gdbarch_gcore_bfd_target if present.
6901         (default_gcore_arch, default_gcore_mach): Use target_gdbarch.
6902
6903         * corelow.c (core_read_description): Call gdbarch_core_read_description
6904         on core_gdbarch instead of current_gdbarch.
6905
6906         * ppc-linux-tdep.c (ppc_linux_init_abi): Install gcore_bfd_target.
6907
6908 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6909
6910         * gdbtypes.c (create_string_type): Receive character type as argument.
6911         * gdbtypes.h (create_string_type): Add character type argument.
6912         * dwarf2read.c (read_tag_string_type): Pass character type to
6913         create_string_type.
6914
6915         * value.h (value_string): Add character type argument.
6916         * valops.c (value_string): Add character type argument.  Pass it to
6917         create_string_type.  Do not allocate space in inferior.
6918         * valarith.c (value_concat): Pass character type to value_string.
6919
6920         * value.h (value_typed_string): Rename to ...
6921         (value_cstring): ... this.
6922         * valops.c (value_typed_string): Rename to ...
6923         (value_cstring): ... this.
6924         * c-lang.c (evaluate_subexp_c): Update.
6925
6926         * python/python-value.c (builtin_type_pychar): New define.
6927         (convert_value_from_python): Call value_cstring instead
6928         of value_from_string.
6929         * value.c (value_from_string): Remove.
6930         * value.h (value_from_string): Remove.
6931
6932         * eval.c (evaluate_subexp_standard): Pass character type to
6933         value_string.  Pass expression architecture to value_nsstring
6934         and lookup_child_selector.
6935         * objc-lang.h (lookup_objc_class): Add GDBARCH parameter.
6936         (lookup_child_selector): Likewise.
6937         (value_nsstring): Likewise.
6938         * objc-lang.c (lookup_objc_class): Add GDBARCH parameter.
6939         Pass character type to value_string..
6940         (lookup_child_selector): Likewise.
6941         (value_nsstring): Add GDBARCH parameter, use it instead of
6942         objfile architecture.  Pass architecture to lookup_objc_class
6943         and lookup_child_selector. Pass character type to value_string.
6944         (end_msglist): Pass architecture to lookup_objc_class.
6945         * objc-exp.y: Pass architecture to lookup_objc_class.
6946
6947 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6948
6949         * gdbtypes.h (struct language_defn): Add forward declaration.
6950         (lookup_typename): Add LANGUAGE and GDBARCH parameters.
6951         (lookup_unsigned_typename): Likewise.
6952         (lookup_signed_typename): Likewise.
6953         * gdbtypes.c (lookup_typename): Add LANGUAGE and GDBARCH parameters.
6954         Use them instead of current_language and current_gdbarch.
6955         (lookup_unsigned_typename): Add LANGUAGE and GDBARCH parameters.
6956         Pass them to lookup_typename.
6957         (lookup_signed_typename): Likewise.
6958
6959         * c-exp.y: Pass parse_language and parse_gdbarch to
6960         lookup_unsigned_typename and lookup_signed_typename.
6961         * objc-exp.y: Likewise.
6962         * m2-exp.y: Pass parse_language and parse_gdbarch to lookup_typename.
6963
6964         * c-lang.c (evaluate_subexp_c): Pass expression language and
6965         gdbarch to lookup_typename.
6966         * printcmd.c (printf_command): Pass current language and
6967         gdbarch to lookup_typename.
6968         * python/python-type.c (typy_lookup_typename): Likewise.
6969         Include "language.h".
6970
6971 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6972
6973         * sparc64-nat.c (sparc64_gregset_supplies_p): Add GDBARCH parameter.
6974         Use it instead of current_gdbarch.  Pass architecture to
6975         sparc32_gregset_supplies_p.
6976         (sparc64_fpregset_supplies_p): Add GDBARCH parameter.  Use it instead
6977         of current_gdbarch.  Pass architecture to sparc32_fpregset_supplies_p.
6978         * sparc64nbsd-nat.c (sparc64nbsd_gregset_supplies_p,
6979         sparc64nbsd_fpregset_supplies_p): Likewise.
6980         * sparc-nat.c (sparc_gregset_supplies_p, sparc_fpregset_supplies_p):
6981         Add GDBARCH parameter.
6982         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
6983         (sparc_fetch_inferior_registers): Pass regcache architecture to
6984         sparc_gregset_supplies_p and sparc_fpregset_supplies_p.
6985         (sparc_store_inferior_registers): Likewise.
6986         * sparc-nat.h (sparc_gregset_supplies_p, sparc_fpregset_supplies_p:
6987         Add GDBARCH parameter.
6988         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
6989
6990 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6991
6992         * ada-tasks.c (read_known_tasks_array): Use target_gdbarch instead
6993         of current_gdbarch.
6994         * aix-thread.c (pd_enable): Likewise.
6995         * amd64-linux-nat.c (ps_get_thread_area): Likewise.
6996         * bsd-uthread.c (bsd_uthread_activate): Likewise.
6997         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
6998         * linux-thread-db.c (enable_thread_event): Likewise.
6999         * monitor.c (monitor_write_memory, monitor_read_memory): Likewise.
7000         * nto-procfs.c (procfs_open): Likewise.
7001         * procfs.c (invalidate_cache, procfs_insert_watchpoint,
7002         info_proc_mappings, info_mappings_callback): Likewise.
7003         * record.c (record_open): Likewise.
7004         * rs6000-nat.c (ARCH64): Likewise.
7005         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
7006         (darwin_bfd_open): Likewise.
7007         * memattr.c (mem_info_command): Likewise.
7008
7009         * windows-nat.c (win32_resume): Use current regcache architecture
7010         instead of current_gdbarch.
7011
7012         * dbug-rom.c (dbug_regname): Remove check against number of
7013         registers in current_gdbarch.
7014         * solib-pa64.c (read_dynamic_info): Remove unused variable.
7015
7016 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7017
7018         * dummy-frame.c (deprecated_pc_in_call_dummy): Add GDBARCH parameter,
7019         use it instead of current_gdbarch.
7020         * frame.h (deprecated_pc_in_call_dummy): Add GDBARCH parameter.
7021         * arm-tdep.c (arm_skip_prologue): Pass architecture to
7022         deprecated_pc_in_call_dummy.
7023
7024         * symtab.c (skip_prologue_using_sal): Add GDBARCH parameter.
7025         Use it instead of current_gdbarch.
7026         * symtab.h (skip_prologue_using_sal): Add GDBARCH parameter.
7027         * breakpoint.c (expand_line_sal_maybe): Pass architecture to
7028         skip_prologue_using_sal.
7029         * arm-tdep.c (skip_prologue_using_sal): Likewise.
7030         * lm32-tdep.c (lm32_skip_prologue): Likewise.
7031         * m32-tdep.c (m32c_skip_prologue): Likewise.
7032         * mips-tdep.c (mips_skip_prologue): Likewise.
7033         * moxie-tdep.c (moxie_skip_prologue): Likewise.
7034         * mt-tdep.c (mt_frame_unwind_cache): Likewise.
7035         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
7036         * frv-tdep.c (frv_analyze_prologue): Add GDBARCH parameter, pass
7037         it to skip_prologue_using_sal.  Update call sites ...
7038         (frv_skip_prologue, frv_frame_unwind_cache): ... here.
7039
7040         * mn10300-tdep.c (struct mn10300_prologue): Add GDBARCH member.
7041         (check_for_saved): Use it instead of current_gdbarch.
7042         (mn10300_analyze_prologue): Set it.
7043
7044         * value.c (using_struct_return): Add GDBARCH parameter.  Use it
7045         instead of current_gdbarch.
7046         * value.h (using_struct_return): Add GDBARCH parameter.
7047         * eval.c (evaluate_subexp_standard): Pass architecture to
7048         using_struct_return.
7049         * infcall.c (call_function_by_hand): Likewise.
7050         * stack.c (return_command): Likewise.
7051         * sparc-tdep.c (sparc32_push_dummy_code): Likewise.
7052
7053         * symtab.c (in_prologue): Add GDBARCH parameter.  Use it instead of
7054         current_gdbarch.
7055         * symtab.h (in_prologue): Add GDBARCH parameter.
7056         * infrun.c (handle_inferior_event): Pass architecture to in_prologue.
7057
7058         * eval.c (evaluate_subexp_standard): Use expression architecture
7059         instead of current_gdbarch.
7060
7061         * c-lang.c (evaluate_subexp_c): Use expression architecture and
7062         language instead of current_gdbarch and current_language.
7063
7064         * printcmd.c (do_one_display): Use expression architecture instead
7065         of current_gdbarch.
7066
7067         * infcmd.c (print_return_value): Use architecture of stop_regcache
7068         instead of current_gdbarch.
7069         (print_vector_info, print_float_info): Remove GDBARCH argument,
7070         use frame architecture instead.
7071         (vector_info, float_info): Update calls.
7072
7073         * objc-lang.c (objc_skip_trampoline): Use frame architecture
7074         instead of current_gdbarch.
7075
7076         * parse.c (write_dollar_variable): Use parse architecture instead
7077         of current_gdbarch.
7078
7079         * source.c (line_info): Use objfile architecture instead of
7080         current_gdbarch.
7081
7082         * symtab.c (find_function_start_sal): Use gdbarch instead of
7083         current_gdbarch.
7084         (print_msymbol_info): Use objfile architecture instead of
7085         current_gdbarch.
7086
7087         * valops.c (value_assign): Use frame architecture instead of
7088         current_gdbarch.
7089
7090 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7091
7092         * buildsym.c (record_line): Remove call to gdbarch_addr_bits_remove.
7093
7094         * coffread.c (coff_symtab_read): Call gdbarch_addr_bits_remove before
7095         calling record_line.
7096         (enter_linenos): Likewise.
7097         * dbxread.c (process_one_symbol): Likewise.
7098         * dwarf2read.c (dwarf_decode_lines): Likewise.
7099         * mdebugread.c (psymtab_to_symtab_1): Likewise.
7100         * xcoffread.c (enter_line_range): Likewise.
7101
7102 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7103
7104         * ax-gdb.c (gen_bitfield_ref): Add EXP argument, use expression
7105         architecture instead of current_gdbarch.
7106         (gen_struct_ref): Add EXP argument, pass to get_bitfield_ref.
7107         (gen_expr): Pass expression to get_struct_ref.
7108
7109         * symtab.h (struct symbol_ops): Add GDBARCH parameter to
7110         tracepoint_var_ref callback.
7111         * ax-gdb.c (gen_var_ref): Pass architecture to tracepoint_var_ref
7112         symbol operation callback.
7113         * dwarf2loc.c (dwarf2_tracepoint_var_ref): Add GDBARCH parameter.
7114         Use it instead of current_gdbarch.
7115         (locexpr_tracepoint_var_ref): Add GDBARCH parameter.  Pass it to
7116         dwarf2_tracepoint_var_ref.
7117         (loclist_tracepoint_var_ref): Likewise.
7118
7119 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7120
7121         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
7122         Use it instead of address bits of current_gdbarch.
7123         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
7124         * arm-tdep.c (thumb_analyze_prologue): Pass address bits to
7125         make_pv_area.
7126         (arm_scan_prologue): Likewise.
7127         * m32c-tdep.c (m32c_analyze_prologue): Likewise.
7128         * mep-tdep.c (mep_analyze_prologue): Likewise.
7129         * mn10300-tdep.c (mn10300_analyze_prologue): Likewise.
7130         * s390-tdep.c (s390_analyze_prologue): Likewise.
7131
7132 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7133
7134         * mi/mi-main.c (mi_cmd_data_list_register_names): Use selected
7135         frame architecture instead of current_gdbarch.
7136         (mi_cmd_data_list_changed_registers): Likewise.
7137         (mi_cmd_data_list_register_values): Likewise.  Pass selected
7138         frame to get_register.
7139         (get_register): Add FRAME argument, use it as frame to retrieve
7140         registers from (instead of selected frame).  Use frame architecture
7141         instead of current_gdbarch.
7142         (mi_cmd_data_write_register_values): Use current regcache
7143         architecture instead of current_gdbarch.
7144
7145 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7146
7147         * tui/tui-regs.c (tui_show_register_group): Remove GDBARCH parameter;
7148         use frame architecture instead.  Replace current_gdbarch uses.
7149         (tui_show_registers): Update call.
7150         (tui_get_register): Remove GDBARCH parameter; use frame architecture
7151         instead.
7152         (tui_show_register_group): Update call.
7153         (tui_check_register_values): Likewise.
7154         (tui_register_format): Remove GDBARCH parameter; use frame
7155         architecture instead.  Replace current_gdbarch uses.
7156         (tui_get_register): Update call.
7157
7158 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7159
7160         * gdbarch.sh (construct_inferior_arguments): Remove.
7161         * gdbarch.c, gdbarch.h: Regenerate.
7162         * infcmd.c (get_inferior_args): Call construct_inferior_arguments
7163         directly instead of gdbarch_construct_inferior_arguments.
7164         (construct_inferior_arguments): Remove GDBARCH argument.
7165         * inferior.h (construct_inferior_arguments): Likewise.
7166
7167 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7168
7169         * symfile.c (section_is_mapped): Use objfile architecture instead
7170         of current_gdbarch.
7171         (TARGET_LONG_BYTES): Remove.
7172         (read_target_long_array): Add SIZE argument.  Use it instead of
7173         TARGET_LONG_BYTES.
7174         (simple_read_overlay_table): Retrieve long size from objfile
7175         architecture; pass it to read_target_long_array.
7176         (simple_read_overlay_region_table): Likewise.
7177         (simple_overlay_update_1): Likewise.
7178
7179 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7180
7181         * infrun.c (cleanup_displaced_step_closure): Remove.
7182         (displaced_step_clear_cleanup): Move to before displaced_step_prepare.
7183         (displaced_step_prepare): Use displaced_step_clear_cleanup instead
7184         of cleanup_displaced_step_closure.
7185         (handle_inferior_event, keep_going): Use thread architecture instead
7186         of current_gdbarch.
7187
7188 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
7189
7190         * infrun.c (handle_inferior_event): Use current frame architecture
7191         or thread architecture instead of current_gdbarch.  Pass to
7192         handle_step_into_function and handle_step_into_function_backward.
7193         (handle_step_into_function): Add GDBARCH parameter.  Use it instead
7194         of current_gdbarch.
7195         (handle_step_into_function_backward): Likewise.
7196         (insert_step_resume_breakpoint_at_frame): Use frame architecture
7197         instead of current_gdbarch.
7198         (insert_step_resume_breakpoint_at_caller): Likewise.
7199
7200 2009-06-17  Pierre Muller  <muller@ics.u-strasbg.fr>
7201         Pedro Alves  <pedro@codesourcery.com>
7202         
7203         * infcmd.c (post_create_inferior): Call breakpoint_re_set after target
7204         is pushed for watchpoint promotion to hardware watchpoint.
7205
7206 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
7207
7208         * dwarf2read.c (dwarf_info_section, dwarf_abbrev_section)
7209         (dwarf_line_section, dwarf_pubnames_section, dwarf_aranges_section)
7210         (dwarf_loc_section, dwarf_macinfo_section, dwarf_str_section)
7211         (dwarf_ranges_section, dwarf_frame_section)
7212         (dwarf_eh_frame_section): Removed.
7213         (dwarf2_resize_section): Likewise.
7214         (dwarf2_read_section): Now static, use bfd_mmap() if possible.
7215         (dwarf2_get_section_info): New function.
7216         (munmap_section_buffer): Likewise.
7217         (dwarf2_per_objfile_cleanup): Likewise.
7218         (section_is_p): Signature change.
7219         * dwarf2-frame.c (dwarf2_build_frame_info): Use
7220         dwarf2_get_section_info instead of dwarf2_read_section.
7221         
7222 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
7223
7224         * solib.c (symbol_add_stub): New FLAGS parameter.
7225         (solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub
7226         directly.
7227         (solib_add): Defer breakpoint_re_set until after all solibs.
7228         * bsd-uthread.c (bsd_uthread_solib_loaded): Adjust.
7229         * rs6000-nat.c (objfile_symbol_add): Adjust.
7230         * symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS.
7231         (new_symfile_objfile): Likewise.
7232         (symbol_file_add_with_addrs_or_offsets): Likewise.
7233         (symbol_file_add_from_bfd): Likewise.
7234         (symbol_file_add): Likewise.
7235         * symfile.h (enum symfile_add_flags): New. Adjust prototypes.
7236         * symfile-mem.c (symbol_file_add_from_memory): Adjust.
7237         * windows-nat.c (safe_symbol_file_add_stub): Adjust.
7238         * machoread.c (macho_oso_symfile, macho_symfile_read): Adjust.
7239         
7240 2009-06-16  Keith Seitz  <keiths@redhat.com>
7241
7242         * linespec.c (collect_methods): Delete.
7243         (add_matching_methods): Reove destructor special case.
7244         (find_method): Call find_methods directly instead of
7245         collect_methods.
7246         * valops.c (value_struct_elt): Remove destructor
7247         special cases.
7248         (check_field): Likewise.
7249         (value_struct_elt_for_reference): Likewise.
7250         (destructor_name_p): Remove misleading comment about dtors
7251         being "special cases". 
7252         * gdbtypes.h (get_destructor_fn_field): Remove. No longer needed.
7253         * gdbtypes.c (get_destructor_fn_field): Likewise. 
7254
7255 2009-06-16  Pedro Alves  <pedro@codesourcery.com>
7256
7257         * mi/mi-main.c (mi_cmd_data_read_memory): Dispatch
7258         TARGET_OJECT_MEMORY reads to the topmost target, not to the
7259         flattened current_target.
7260
7261 2009-06-16  Tristan Gingold  <gingold@adacore.com>
7262
7263         * avr-tdep.c (struct gdbarch_tdep): Replace the unused field with
7264         call_length field.
7265         (avr_register_name): Add const to register_names.
7266         (avr_scan_arg_moves): Move inside avr_scan_prologue.
7267         (avr_scan_prologue): Add pc_end argument.
7268         Only read prologue bytes that can be read.
7269         Limit the scan to the known prologue length.
7270         Makes pattern variables static and const.
7271         Fix indentation.
7272         (avr_skip_prologue): Pass func_end argument to avr_scan_prologue.
7273         Fix indentation.
7274         (avr_breakpoint_from_pc): Constify avr_break_insn.
7275         (avr_extract_return_value): Fix function comment.
7276         (avr_frame_unwind_cache): Fix GNU style violations.
7277         Pass current_pc argument to avr_scan_prologue to stop prologue
7278         analysis to the current pc.  This fixes the bug with the 'next'
7279         command.
7280         Correctly set the SP register of the previous frame (use call_length).
7281         (avr_frame_prev_register): Fix indentation.
7282         Correctly read PC from the stack on avr6 architectures.
7283         (avr_push_dummy_call): Fix indentation.
7284         (avr_gdbarch_init): Set call_length according to the architecture.
7285
7286 2009-06-15  Phil Muldoon  <pmuldoon@redhat.com>
7287
7288         * infcall.c (show_unwind_on_terminating_exception_p): New
7289         function.
7290         (call_function_by_hand): Create breakpoint and clean-up call for
7291         std::terminate.breakpoint. Add unwind_on_terminating_exception_p
7292         gate. Pop frame on breakpoint hit.
7293         (_initialize_infcall): Add add_setshow_boolean_cmd for
7294         unwind-on-terminating-exception.
7295
7296 2009-06-12  Kevin Buettner  <kevinb@redhat.com>
7297
7298         * dwarf2read.c (dwarf2_psymtab_to_symtab): Propagate
7299         `has_section_at_zero' flag from stripped objfile to separate,
7300         debug info only, objfile.
7301
7302 2009-06-12  Pedro Alves  <pedro@codesourcery.com>
7303
7304         * exec.h (section_table_xfer_memory_partial): Improve description,
7305         mention SECTION_NAME.
7306         * exec.c (section_table_xfer_memory_partial): Remove stale
7307         description.
7308
7309 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7310
7311         * nto-tdep.h (nto_generic_supply_gpregset)
7312         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
7313         * nto-tdep.c (nto_generic_supply_gpregset)
7314         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
7315
7316 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7317
7318         * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define.
7319         (i386nto_sigcontext_addr): Change the way context address is calculated.
7320         (i386nto_init_abi): Remove usage of deprecated sc_reg_offset and
7321         sc_sp_offset and set sc_reg_offset and sc_num_regs.
7322
7323 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7324
7325         * i386-nto-tdep.c (i386_nto_target): Remove definition.
7326         (init_i386nto_ops): Use macros to set fields to global
7327         current_nto_target directly.
7328         (i386nto_init_abi): Remove unused nto_set_target call.
7329         * nto-tdep.h (nto_set_target): Remove unused declaration.
7330         * nto-tdep.c (nto_set_target): Remove unused function.
7331
7332 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7333
7334         * breakpoint.c (break_command_really): Rename local variable
7335         breakpoint_chain to bkpt_chain.
7336
7337 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7338
7339         Add support for XMM registers.
7340         * i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set.
7341         (i386nto_register_area): Correctly calculate offsets and sizes for
7342         all supported registers.
7343
7344 2009-06-11  Tom Tromey  <tromey@redhat.com>
7345
7346         * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove
7347         'static' from local variable definitions.
7348
7349 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7350
7351         * symtab.c (append_expanded_sal): Remove unused local variables.
7352
7353 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7354
7355         * infrun.c (sched_multi): New global.
7356         (resume): If sched_multi is set, resume only threads of the
7357         current inferior.
7358         (prepare_to_proceed): Don't switch over to wait_ptid if we're
7359         resuming a different inferior, and sched_multi is off.
7360         (show_schedule_multiple): New.
7361         (_initialize_infrun): Register new "set schedule-multiple" command.
7362         * inferior.h (sched_multi): Declare.
7363         * NEWS: Mention new "schedule-multiple" setting.
7364
7365 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7366
7367         * varobj.c (varobj_create): Properly restore the selected frame.
7368
7369 2009-06-05  Tom Tromey  <tromey@redhat.com>
7370
7371         * inferior.c (print_inferior): Make a table, not a list.  Emit
7372         table headers.
7373
7374 2009-06-10  Jonas Maebe  <jonas.maebe@elis.ugent.be>
7375
7376         * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to
7377         darwin_wait (blocking wait).
7378         (darwin_kill_inferior): Likewise.
7379
7380 2009-06-10  Pedro Alves  <pedro@codesourcery.com>
7381
7382         * infrun.c (handle_inferior_event): Update comment around trying
7383         to revert back to a stepping thread that has exited.
7384
7385 2009-06-10  Cary Coutant  <ccoutant@google.com>
7386
7387         * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
7388         DW_LNE_set_discriminator.
7389
7390 2009-06-10  Pierre Muller  <muller@ics.u-strasbg.fr>
7391
7392         * breakpoint.c: ARI fixes.
7393         (create_overlay_event_breakpoint): Avoid assignment inside if statement.
7394         (print_one_breakpoint_location): Likewise.
7395         (create_longjmp_breakpoint): Likewise.
7396         (tracepoint_save_command): Likewise
7397         (bpstat_find_step_resume_breakpoint): No operator at end of line.
7398         (bpstat_stop_status): Likewise.
7399         (describe_other_breakpoints): Likewise.
7400         (hw_watchpoint_used_count): Likewise.
7401         (expand_line_sal_maybe): Likewise.
7402         (break_command_really): Likewise.
7403         (delete_command): Likewise.
7404         (do_enable_breakpoint): Likewise.
7405         (delete_trace_command): Likewise.
7406         (catch_exception_command_1): Likewise and remove extra parentheses.
7407
7408 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
7409
7410         * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
7411         "ubreak" command that does not exist.
7412
7413 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
7414
7415         * cli/cli-decode.c (add_alias_cmd): Correct assertion.
7416
7417 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7418
7419         * hppa-tdep.c (_initialize_hppa_tdep): Add declaration.
7420
7421 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7422
7423         * procfs.h: New.
7424         * proc-utils.h (procfs_first_available): Don't declare here.
7425         * sol-thread.c: Include procfs.h instead of sys/procfs.h and
7426         proc-utils.h.
7427         * procfs.c: Include procfs.h.
7428         (procfs_target): Make it public.  Don't register
7429         procfs_can_use_hw_breakpoint here.
7430         (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
7431         defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
7432         (procfs_can_use_hw_breakpoint): Remove check of
7433         TARGET_HAS_HARDWARE_WATCHPOINTS.
7434         (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
7435         here.
7436         (_initialize_procfs): Don't add the procfs target here.
7437
7438         * i386-sol2-nat.c: Include target.h and procfs.h.
7439         (_initialize_amd64_sol2_nat): Install the procfs target here,
7440         customized with watchpoints support.
7441         * irix5-nat.c: Include target.h.
7442         (_initialize_core_irix5): Rename to ...
7443         (_initialize_irix5_nat): ... this.  Install the procfs target
7444         here, customized with watchpoints support.
7445         * alpha-nat.c: Include procfs.h.
7446         (_initialize_core_alpha): Rename to...
7447         (_initialize_alpha_nat): ... this.  Install the procfs target
7448         here, customized with watchpoints support.
7449         * sparc-sol2-nat.c: Include target.h and procfs.h.
7450         (_initialize_sparc_sol2_nat): New.
7451
7452         * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
7453         * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
7454         * config/mips/irix5.mh (NAT_FILE): Delete.
7455         * config/mips/irix6.mh (NAT_FILE): Delete.
7456         * config/mips/nm-irix5.h: Delete.
7457
7458 20009-06-07  Pedro  Alves  <pedro@codesourcery.com>
7459
7460         * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
7461         to enum target_object.  Cleanup comments.
7462         * auxv.h: Include "target.h".  Cleanup comments to not mention
7463         NATIVE_XFER_AUXV anymore.
7464
7465 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7466
7467         * inferior.h (procfs_first_available): Move declaration to...
7468         * proc-utils.h: ... here.
7469         * sol-thread.c: Include procfs.h and proc-utils.h.
7470
7471 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7472
7473         * inferior.h (proc_iterate_over_mappings): Delete declaration.
7474         * nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
7475         * procfs.c (proc_iterate_over_mappings): Delete.
7476
7477 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7478
7479         * target.h (struct target_ops): Make to_has_all_memory,
7480         to_has_memory, to_has_stack, to_has_registers and to_has_execution
7481         methods instead of variables.
7482         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
7483         (target_has_registers_1, target_has_execution_1): Declare
7484         functions.
7485         (target_has_all_memory): Rewrite to call target_has_all_memory_1.
7486         (target_has_memory): Rewrite to call target_has_memory_1.
7487         (target_has_stack): Rewrite to call target_has_all_stack_1.
7488         (target_has_registers): Rewrite to call target_has_registers_1.
7489         (target_has_execution): Rewrite to call target_has_execution_1.
7490         (default_child_has_all_memory, default_child_has_memory)
7491         (default_child_has_stack, default_child_has_registers)
7492         (default_child_has_execution): Declare.
7493         (target_mark_running, target_mark_exited): Delete declarations.
7494         * target.c (default_child_has_all_memory,
7495         default_child_has_memory, default_child_has_stack,
7496         default_child_has_registers, default_child_has_execution): New.
7497         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
7498         target_has_registers_1, target_has_execution_1): New.
7499         (add_target): Default the to_has_all_memory, to_has_all_memory,
7500         to_has_memory, to_has_stack, to_has_registers and to_has_execution
7501         callbacks to return 0.
7502         (update_current_target): Do not inherit to_has_all_memory,
7503         to_has_memory, to_has_stack, to_has_registers or to_has_execution.
7504         (target_mark_running, target_mark_exited): Delete.
7505         (memory_xfer_partial): Adjust.
7506         (target_read_memory, target_write_memory, target_search_memory):
7507         Dispatch to the the top-most target, not the flattened
7508         current_target.
7509         (target_info): Adjust.
7510         (init_dummy_target): Install return_zero as callback for
7511         to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
7512         to_has_execution.
7513         (set_maintenance_target_async_permitted): Use have_live_inferiors
7514         instead of target_has_execution.
7515         * target-memory.c (target_write_memory_blocks): Dispatch memory
7516         writes to the the top-most target, not the flattened
7517         current_target.
7518
7519         * breakpoint.c (insert_breakpoints): Don't check for
7520         target_has_execution here.
7521         (update_global_location_list): Check if there are live inferiors
7522         to debug instead of target_has_execution.
7523         * infcmd.c (kill_command, detach_command): Check if there are
7524         inferiors instead of target_has_execution.
7525         * inferior.h (have_live_inferiors): Declare.
7526         * inferior.c (have_live_inferiors): New.
7527         * infrun.c (normal_stop): Don't check for target_has_execution to
7528         finish the thread states.
7529         * thread.c (is_thread_state, is_stopped, is_exited, is_running)
7530         (any_running, is_executing): Remove checks for
7531         target_has_execution.
7532         * top.c (kill_or_detach): Don't try to kill core inferiors.
7533         (quit_target): Don't check for target_has_execution.
7534
7535         * corelow.c (core_has_memory, core_has_stack, core_has_registers):
7536         New.
7537         (init_core_ops): Install core_has_memory, core_has_stack and
7538         core_has_registers.
7539         * exec.c (exec_has_memory): New.
7540         (init_exec_ops): Install exec_has_memory.
7541         * remote.c (remote_add_inferior): Don't call target_mark_running.
7542         (remote_start_remote): Don't call target_mark_exited or call
7543         target_mark_running.
7544         (remote_open_1): Use have_inferiors instead of
7545         target_has_execution.  Don't use target_mark_exited.
7546         (init_remote_ops): Install deafult_child_has_all_memory,
7547         default_child_has_memory, default_child_has_stack,
7548         default_child_has_registers, default_child_has_execution.
7549         * bsd-kvm.c (bsd_kvm_return_one): New.
7550         (bsd_kvm_add_target): Register bsd_kvm_return_one as
7551         to_has_memory, to_has_stack and to_has_registers callbacks.
7552         * remote-m32r-sdi.c (m32r_return_one): New.
7553         (init_m32r_ops): Register it.
7554         * inf-child.c (inf_child_target): Adjust to register
7555         default_child_has_all_memory, default_child_has_memory,
7556         default_child_has_stack, default_child_has_registers,
7557         default_child_has_execution callbacks.
7558         * gnu-nat.c (init_gnu_ops): Likewise.
7559         * go32-nat.c (init_go32_ops): Likewise.
7560         * hpux-thread.c (init_hpux_thread_ops): Likewise.
7561         * monitor.c (init_base_monitor_ops): Likewise.
7562         * nto-procfs.c (init_procfs_ops): Likewise.
7563         * remote-mips.c (_initialize_remote_mips): Likewise.
7564         * windows-nat.c (init_windows_ops): Likewise.
7565         * remote-sim.c (gdbsim_create_inferior): Don't use
7566         target_mark_running or target_mark_exited.
7567         (gdbsim_mourn_inferior): Don't call target_mark_exited.
7568         (init_gdbsim_ops): Adjust to register
7569         default_child_has_all_memory, default_child_has_memory,
7570         default_child_has_stack, default_child_has_registers,
7571         default_child_has_execution callbacks.
7572
7573         * linux-nat.c (linux_nat_xfer_partial): If reading memory, and
7574         there's no inferior selected, defer to a lower stratum.
7575
7576 2009-06-05  Tom Tromey  <tromey@redhat.com>
7577
7578         * varobj.c (update_dynamic_varobj_children): Wrap error text in
7579         _().
7580         (install_visualizer): Likewise.
7581         (varobj_set_visualizer): Likewise.
7582
7583 2009-06-05  Marc Khouzam  <marc.khouzam@ericsson.com>
7584
7585         * mi/mi-main.c (mi_cmd_exec_continue)
7586         (mi_cmd_exec_interrupt): Adjust parsing of thread group
7587         ids to current reality, where they don't have any 'p' prefix.
7588
7589 2009-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
7590
7591         * corelow.c (core_open): Check for core_gdbarch before calling
7592         gdbarch_target_signal_from_host.
7593
7594 2009-06-05  Tom Tromey  <tromey@redhat.com>
7595
7596         * c-exp.y (parse_number): Don't use K&R definition.
7597         (yylex): Likewise.
7598         (yyerror): Likewise.
7599
7600 2009-06-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7601
7602         * varobj.c (varobj_update): Fix out of scope varobjs to not to change.
7603
7604 2009-06-04  Ulrich Weigand  <uweigand@de.ibm.com>
7605
7606         * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
7607         * ax-gdb.c (gen_var_ref): Likewise.
7608         * findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
7609         * printcmd.c (address_info): Likewise.
7610         * dwarf2loc.c (dwarf_expr_frame_base): Likewise.
7611         * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
7612         * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
7613         * dwarf2loc.h: Likewise.
7614         * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.
7615
7616         * symtab.h: (struct symbol_register_ops): New struct definition.
7617         (struct symbol): Make "ops" member a union of symbol_computed_ops and
7618         symbol_register_ops callback pointers.
7619         (SYMBOL_REGISTER_OPS): New macro.
7620         * tracepoint.c: Include "objfiles.h".
7621         (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
7622         callback to retrieve register numbers.
7623         * ax-gdb.c (gen_var_ref): Likewise.
7624         * findvar.c (read_var_value): Likewise.
7625         * printcmd.c (address_info): Likewise.
7626
7627         * coffread.c (coff_reg_to_regnum): New function.
7628         (coff_register_funcs): New static variable.
7629         (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
7630         Install SYMBOL_REGISTER_OPS callbacks.
7631         * mdebugread.c (mdebug_reg_to_regnum): New function.
7632         (mdebug_register_funcs): New static variable.
7633         (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
7634         Install SYMBOL_REGISTER_OPS callbacks.
7635         * stabsread.c (stab_reg_to_regnum): New function.
7636         (stab_register_funcs): New static variable.
7637         (define_symbol): Do not call gdbarch_stab_reg_to_regnum.
7638         Install SYMBOL_REGISTER_OPS callbacks.
7639
7640 2009-06-03  Doug Evans  <dje@google.com>
7641
7642         * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
7643         after discarding its contents.
7644
7645 2009-06-03  Pedro Alves  <pedro@codesourcery.com>
7646
7647         * target.c: Include "exec.h".
7648         (update_current_target): Don't inherit to_sections or
7649         to_sections_end.
7650         (target_get_section_table): New.
7651         (target_section_by_addr): Fetch the section table from the passed
7652         in target.
7653         (memory_xfer_partial): Handle unmapped overlay sections before
7654         anything else.  Get the overlay mapped address here.  Adjust to
7655         use section_table_xfer_memory_partial.
7656         (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
7657         instead of TARGET_OBJECT_MEMORY.
7658         (target_resize_to_sections): Delete.
7659         (remove_target_sections): Adjust to remove target sections from
7660         `current_target_sections', and use resize_section_table.
7661         * target.h (struct target_ops) <to_sections, to_sections_end>:
7662         Remove fields.
7663         <to_get_section_table>: New method.
7664         (xfer_memory, print_section_info): Delete declarations.
7665         (struct target_section_table): New type.
7666         (target_get_section_table): Declare.
7667         (target_resize_to_sections): Delete declaration.
7668         (remove_target_sections): Delete declaration.
7669         * bfd-target.c (target_bfd_xfer_partial): Get the section table
7670         from to_data.
7671         (target_bfd_get_section_table): New.
7672         (target_bfd_xclose): Adjust.
7673         (target_bfd_reopen): Store the section table in the to_data field.
7674         * corelow.c (core_data): New.
7675         (core_close): Adjust to release core_data and its sections.
7676         (core_open): Allocate core_data, and build its target sections
7677         table.
7678         (deprecated_core_resize_section_table): New.
7679         (core_files_info): Pass core_data to print_section_info.
7680         (core_xfer_partial): Adjust to use
7681         section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
7682         (init_core_ops): Do not install a deprecated_xfer_memory callback
7683         anymore.
7684         * solib.c (update_solib_list): Add the shared library sections
7685         to the current target sections table.
7686         * exec.c (current_target_sections_1): New global.
7687         (current_target_sections): New global.
7688         (exec_close_1): New function, refactored from exec_close.  Remove
7689         the exec_bfd's sections from the current target sections table.
7690         Adjust to not use to_sections.
7691         (exec_close): Remove all target sections.  Call exec_close_1.
7692         (exec_file_clear): Use exec_close_1 instead of unpushing the
7693         target.
7694         (exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
7695         exec_bfd's sections to the current target sections table.  Don't
7696         push the exec_ops target here.
7697         (resize_section_table): New.
7698         (add_target_sections): New.
7699         (remove_target_sections): Moved here.
7700         (section_table_xfer_memory): Adjust to implement the xfer_partial
7701         interface, and rename to...
7702         (section_table_xfer_memory_partial): ... this, replacing the
7703         current function of that same name.
7704         (exec_get_section_table): New.
7705         (exec_xfer_partial): New.
7706         (xfer_memory): Delete.
7707         (print_section_info): Replace the target_ops parameter by a
7708         target_section_table parameter.
7709         (exec_files_info, set_section_command, exec_set_section_address):
7710         Adjust to use the current sections table.
7711         (init_exec_ops): Do not register a deprecated_xfer_memory
7712         callback.  Register to_xfer_partial and to_get_section_table
7713         callbacks.
7714         * infrun.c (handle_inferior_event): Update comments around
7715         solib_add.
7716         * rs6000-nat.c (xcoff_relocate_core): Adjust to use
7717         deprecated_core_resize_section_table.
7718         * exec.h (resize_section_table): Declare.
7719         (section_table_xfer_memory_partial): Add const char * argument.
7720         (remove_target_sections): Declare here.
7721         (add_target_sections): Declare.
7722         (print_section_info): Declare here.
7723         * gdbcore.h (deprecated_core_resize_section_table): Declare.
7724
7725 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7726
7727         * value.h (struct internalvar): Remove.
7728         (get_internalvar_integer): Add prototype.
7729         (set_internalvar_integer): Add prototype.
7730         (clear_internalvar): Add prototype.
7731
7732         * value.c (struct internalvar): Move here.  Add type member.  Remove
7733         endian member.  Add union_internalvar member instead of value member.
7734         (init_if_undefined_command): Use intvar->type.
7735         (create_internalvar): Do not initialize value/endian, but type.
7736         (create_internalvar_type_lazy): Call create_internalvar.
7737         (value_of_internalvar): Handle host-side internalvar contents.
7738         (set_internalvar_component): Likewise.
7739         (set_internalvar): Likewise.
7740         (get_internalvar_integer): New function.
7741         (clear_internalvar): Likewise.
7742         (set_internalvar_integer): Likewise.
7743         (preserve_values): Handle host-side internalvar contents.
7744
7745         * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
7746         set_internalvar_integer instead of set_internalvar.
7747         * findcmd.c (find_command): Likewise.
7748         * infrun.c (handle_inferior_event): Likewise.
7749         * source.c (forward_search_command, reverse_search_command): Likewise.
7750         * tracepoint.c (set_traceframe_num, set_tracepoint_num,
7751         set_traceframe_context): Likewise.
7752
7753         * printcmd.c (x_command): Call clear_internalvar instead of
7754         set_internalvar.
7755         * tracepoint.c (set_traceframe_context): Likewise.
7756         
7757         * breakpoint.c (get_number_trailer): Call get_internalvar_integer
7758         instead of value_of_internalvar.
7759         * linespec.c (decode_dollar): Likewise.
7760
7761         * expprint.c (dump_subexp_body_standard): Use internalvar_name
7762         instead of accessing internalvar private elements.
7763         * valops.c (value_assign): Copy from original source instead of
7764         accessing internalvar private elements.
7765
7766 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7767
7768         * scm-lang.c (builtin_type_scm): Remove.
7769         (scm_lookup_name): Add GDBARCH parameter.  Use it instead of
7770         objfile architecture.  Use per-architecture builtin_scm_type instead
7771         of builtin_type_scm.
7772         (evaluate_exp): Pass expression architecture to scm_lookup_name.
7773
7774         (scm_get_field): Add SIZE parameter.  Use it instead of 
7775         TYPE_LENGTH (builtin_type_scm).
7776
7777         (build_scm_types): New function.
7778         (scm_type_data): New variable.
7779         (builtin_scm_type): New function.
7780         (_initialize_scheme_language): Do not initialize builtin_type_scm.
7781         Register build_scm_types as post-init function for scm_type_data.
7782
7783         * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
7784         instead of builtin_type_scm.
7785
7786         * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
7787         (scm_get_field): Add SIZE paramter.
7788         (scm_scmval_print): Remove prototype.
7789         (builtin_type_scm): Remove.
7790         (struct builtin_scm_type): Add structure definition.
7791         (builtin_scm_type): Add prototype.
7792
7793         * scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
7794         instead of builtin_core_addr type; do not use objfile architecture.
7795         (scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
7796         Pass type to scm_scmval_print.
7797         (scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
7798         (scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
7799         define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
7800         (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
7801
7802 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7803
7804         * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
7805         mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
7806         mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
7807         mdebug_type_unsigned_char, mdebug_type_unsigned_short,
7808         mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
7809         mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
7810         mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
7811         mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
7812         mdebug_type_complex, mdebug_type_double_complex,
7813         mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
7814         Remove.
7815
7816         (basic_type_data): New global variable.
7817         (basic_type): New function.
7818         (parse_type): Remove static basic type map map_bt.  Call basic_type
7819         to get basic types instead of using mdebug_type_ variables.
7820
7821         (parse_symbol): Use builtin types instead of mdebug_type_ variables.
7822         (upgrade_type): Likewise.
7823         (parse_procedure): Likewise.
7824         (psymtab_to_symtab_1): Likewise.
7825
7826         (_initialize_mdebugread): Do not initialize mdebug_type_ variables.
7827         Initialize basic_type_data.
7828
7829 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7830
7831         * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
7832         * dfp.c (promote_decimal): Remove.
7833         (decimal_binop): Convert LEN_RESULT to input parameter.
7834         Remove call to decimal_binop.
7835         (decimal_compare): Remove call to decimal_binop.
7836
7837         * valarith.c (value_binop): Pass desired result type length
7838         to decimal_binop.
7839
7840 2009-06-01  Tristan Gingold  <gingold@adacore.com>
7841
7842         * configure.tgt (avr): Set gdb_sim to use the simulator.
7843
7844 2009-05-29  Doug Evans  <dje@google.com>
7845
7846         * infrun.c (prepare_to_proceed): Document.  Assert !non_stop.
7847         If scheduler-locking is enabled, we're not going to be singlestepping
7848         any other previously stopped thread.
7849
7850 2009-05-29  Pedro Alves  <pedro@codesourcery.com>
7851
7852         * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0.
7853
7854 2009-05-29  Eli Zaretskii  <eliz@gnu.org>
7855
7856         * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
7857         for stabs and COFF debug info.
7858
7859 2009-05-28  Pedro Alves  <pedro@codesourcery.com>
7860
7861         * infrun.c (handle_inferior_event): When thread hoping, switch
7862         inferior_ptid to the event thread before removing breakpoints from
7863         the target.  If not stopping, also try to revert back to a thread
7864         that was doing a "next".  Check if that thread still exists before
7865         resuming.
7866         (currently_stepping_thread): Delete and merge with ...
7867         (currently_stepping): ... this.
7868         (currently_stepping_callback): Rename to ...
7869         (currently_stepping_or_nexting_callback): ... this, and also
7870         return true if the thread was stepping over a call (has a
7871         step-resume breakpoint).
7872
7873 2009-05-28  Tom Tromey  <tromey@redhat.com>
7874
7875         * python/python.c (gdbpy_parameter): Rename.  Fix error message.
7876         (GdbMethods): Change "get_parameter" to "parameter".
7877
7878 2009-05-28  Pierre Muller  <muller@ics.u-strasbg.fr>
7879             Paul Pluzhnikov  <ppluzhnikov@google.com>
7880
7881         * configure.ac (!have_libpython): Add python-prettyprint source
7882         and object files.
7883         * configure: Regenerate.
7884         * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
7885         python headers.
7886         
7887 2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
7888             Tom Tromey  <tromey@redhat.com>
7889             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7890
7891         * mi/mi-main.c (mi_cmd_list_features): List "python" feature.
7892         * varobj.h (varobj_set_visualizer): Declare.
7893         (varobj_get_display_hint): Likewise.
7894         (varobj_update_result_t) <children_changed, value_installed>: New
7895         fields.
7896         * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
7897         * mi/mi-cmds.h (mi_cmd_var_set_visualizer,
7898         mi_cmd_var_set_child_range): Declare.
7899         * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
7900         (mi_cmd_var_list_children): Emit display hint.
7901         (varobj_update_one): Emit display hint.  Handle dynamic children.
7902         * python/python.c (GdbMethods): Add "default_visualizer".
7903         * python/python-internal.h (apply_varobj_pretty_printer,
7904         gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
7905         Declare.
7906         (gdbpy_default_visualizer): Likewise.
7907         * varobj.c: Include python.h, python-internal.h.
7908         (PyObject): New typedef.
7909         (struct varobj) <children_requested, pretty_printer>: New fields.
7910         (varobj_create): Call install_default_visualizer.
7911         (instantiate_pretty_printer): New function.
7912         (varobj_set_display_format): Update.
7913         (varobj_get_display_hint): New function.
7914         (update_dynamic_varobj_children): New function.
7915         (varobj_get_num_children): Handle dynamic children.
7916         (varobj_list_children): Likewise.
7917         (install_new_value): Likewise.
7918         (varobj_add_child): New function.
7919         (install_visualizer): Likewise.
7920         (install_default_visualizer): Likewise.
7921         (varobj_set_visualizer): Likewise.
7922         (varobj_update): Handle dynamic children.
7923         (create_child): Use create_child_with_value.
7924         (create_child_with_value): New function.
7925         (value_get_print_value): Call pretty printer.  Add value_formatter
7926         argument.
7927         (c_value_of_variable): Update.
7928         (varobj_invalidate): Always free all_rootvarobj.
7929         * python/python-prettyprint.c (apply_varobj_pretty_printer): New
7930         function.
7931         (gdbpy_get_varobj_pretty_printer): Likewise.
7932         (gdbpy_default_visualizer): Likewise.
7933
7934 2009-05-27  Tom Tromey  <tromey@redhat.com>
7935             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7936             Phil Muldoon  <pmuldoon@redhat.com>
7937             Paul Pluzhnikov  <ppluzhnikov@google.com>
7938             Vladimir Prus  <vladimir@codesourcery.com>
7939
7940         * python/python-value.c (value_object_to_value): New function.
7941         * python/python-internal.h: Include frameobject.h.
7942         (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
7943         Declare.
7944         (value_object_to_value): Declare.
7945         * printcmd.c (struct format_data) <raw>: New field.
7946         (last_format): Default to 0.
7947         (decode_format): Initialize val.raw.  Handle /r flag.
7948         (print_command_1): Initialize fmt.raw and opts.raw.
7949         (output_command): Likewise.
7950         (x_command): Fix initialization of fmt.format.  Initialize
7951         fmt.raw.
7952         (display_command): Initialize fmt.raw.
7953         (do_one_display): Set opts.raw.
7954         * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
7955         gdbpy_display_hint_cst): New globals.
7956         (_initialize_python): Initialize them.  Set gdb.pretty_printers.
7957         * cp-valprint.c: Include python.h.
7958         (cp_print_value): Call apply_val_pretty_printer.
7959         * python/python.h (apply_val_pretty_printer): Declare.
7960         * stack.c (print_this_frame_argument_p): Remove.
7961         (print_frame_args): Compute summary flag.  Don't use
7962         print_this_frame_argument_p.
7963         * valprint.c: Include python.h.
7964         (user_print_options): Initialize new fields.
7965         (scalar_type_p): New function.
7966         (val_print): Handle 'raw' and 'summary' modes.  Call
7967         apply_val_pretty_printer.
7968         (value_print): Handle 'raw' mode.
7969         * valprint.h (struct value_print_options) <raw, summary>: New
7970         fields.
7971         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
7972         (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
7973         (python-prettyprint.o): New target.
7974         * python/python-prettyprint.c: New file.
7975
7976 2009-05-27  Tom Tromey  <tromey@redhat.com>
7977             Paul Pluzhnikov  <ppluzhnikov@google.com>
7978
7979         * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
7980         value_address.
7981         * cli/cli-dump.c (dump_value_to_file): Use value_address.
7982         * valprint.c (common_val_print): Likewise.
7983         * v850-tdep.c (v850_push_dummy_call): Use value_address.
7984         * tracepoint.c (encode_actions): Use value_address.
7985         * printcmd.c (print_formatted): Use value_address.
7986         (x_command): Likewise.
7987         * p-valprint.c (pascal_object_print_static_field): Use
7988         value_address.
7989         * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
7990         * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
7991         * m32r-tdep.c (m32r_push_dummy_call): Use value_address.
7992         * jv-valprint.c (java_value_print): Use value_address.
7993         * infcall.c (find_function_addr): Use value_address.
7994         * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
7995         * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
7996         * frv-tdep.c (frv_push_dummy_call): Use value_address.
7997         * frame.c (frame_register_unwind): Use value_address.
7998         (frame_unwind_register_value): Likewise.
7999         * darwin-nat-info.c (info_mach_region_command): Use
8000         value_address.
8001         * cp-valprint.c (cp_print_static_field): Use value_address.
8002         * c-valprint.c (c_value_print): Use value_address.
8003         * breakpoint.c (update_watchpoint): Use value_address.
8004         (can_use_hardware_watchpoint): Likewise.
8005         * ada-valprint.c (ada_val_print_1): Use value_address.
8006         (ada_value_print): Likewise.
8007         * ada-tasks.c (read_fat_string_value): Use value_address.
8008         * jv-lang.c (java_link_class_type): Use set_value_address.
8009         (java_link_class_type): Likewise.
8010         (get_java_utf8_name): Use value_address.
8011         (type_from_class): Likewise.
8012         (java_link_class_type): Likewise.
8013         * findvar.c (value_of_register): Use set_value_address.
8014         (read_var_value): Likewise.
8015         (read_var_value): Likewise.
8016         * eval.c (evaluate_subexp_standard): Use set_value_address.
8017         (evaluate_subexp_standard): Use value_address.
8018         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
8019         * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
8020         (ada_value_primitive_packed_val): Likewise.
8021         (ensure_lval): Likewise.
8022         (thin_data_pntr): Use value_address.
8023         (desc_bounds): Likewise.
8024         (ada_value_primitive_packed_val): Likewise.
8025         (value_assign_to_component): Likewise.
8026         (ensure_lval): Likewise.
8027         (make_array_descriptor): Likewise.
8028         (ada_to_fixed_value): Likewise.
8029         (unwrap_value): Likewise.
8030         * value.c (deprecated_value_address_hack): Remove.
8031         (value_address): New function.
8032         (value_raw_address): Likewise.
8033         (set_value_address): Likewise.
8034         (value_fn_field): Use set_value_address.
8035         (value_from_contents_and_address): Likewise.
8036         (value_fn_field): Likewise.
8037         (allocate_value_lazy): Don't use VALUE_ADDRESS.
8038         (value_as_address): Use value_address.
8039         (value_static_field): Likewise.
8040         * valops.c (search_struct_field): Use set_value_address.
8041         (value_at): Likewise.
8042         (value_at_lazy): Likewise.
8043         (value_repeat): Likewise.
8044         (value_cast_structs): Use value_address.
8045         (value_cast): Likewise.
8046         (value_fetch_lazy): Likewise.
8047         (value_assign): Likewise.
8048         (value_repeat): Likewise.
8049         (address_of_variable): Likewise.
8050         (value_coerce_array): Likewise.
8051         (value_coerce_function): Likewise.
8052         (value_addr): Likewise.
8053         (search_struct_field): Likewise.
8054         (search_struct_method): Likewise.
8055         (find_method_list): Likewise.
8056         (value_struct_elt_for_reference): Likewise.
8057         (value_full_object): Likewise.
8058         * jv-valprint.c (java_value_print): Use set_value_address.
8059         * value.h (deprecated_value_address_hack): Remove.
8060         (VALUE_ADDRESS): Remove.
8061         (value_address): Declare.
8062         (value_raw_address): Declare.
8063         (set_value_address): Declare.
8064
8065 2009-05-27  Tom Tromey  <tromey@redhat.com>
8066             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8067             Phil Muldoon  <pmuldoon@redhat.com>
8068             Paul Pluzhnikov  <ppluzhnikov@google.com>
8069
8070         * python/python.c (_initialize_python): Call
8071         gdbpy_initialize_types.
8072         (GdbMethods): Add "lookup_type".
8073         * python/python-value.c (value_object) <type>: New field.
8074         (valpy_dealloc): Decref type.
8075         (valpy_new): Initialize type.
8076         (valpy_get_type): New function.
8077         (value_to_value_object): Initialize type.
8078         (valpy_cast): New function.
8079         (value_object_getset): Add "type".
8080         (value_object_methods): Add "cast".
8081         * python/python-internal.h (type_to_type_object): Declare.
8082         (type_object_to_type): Likewise.
8083         (gdbpy_initialize_types): Likewise.
8084         (gdbpy_lookup_type): Declare.
8085         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
8086         (SUBDIR_PYTHON_SRCS): Add python-type.c.
8087         (python-type.o): New target.
8088         * python/python-type.c: New file.
8089
8090 2009-05-27  Tom Tromey  <tromey@redhat.com>
8091             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8092             Phil Muldoon  <pmuldoon@redhat.com>
8093
8094         * python/python.c: Include objfiles.h, observer.h.
8095         (gdbpy_auto_load): New global.
8096         (gdbpy_current_objfile): Likewise.
8097         (GDBPY_AUTO_FILENAME): New define.
8098         (gdbpy_new_objfile): New function.
8099         (gdbpy_get_current_objfile): Likewise.
8100         (gdbpy_objfiles): Likewise.
8101         (_initialize_python): Add "maint set auto-load".  Call
8102         gdbpy_initialize_objfile.  Attach objfile observer.
8103         (GdbMethods): New methods current_objfile, objfiles.
8104         * python/python-objfile.c: New file.
8105         * python/python-internal.h (objfile_to_objfile_object): Declare.
8106         (objfpy_get_printers): Likewise.
8107         (gdbpy_initialize_objfile): Likewise.
8108         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
8109         (SUBDIR_PYTHON_SRCS): Add python-objfile.c.
8110         (python-objfile.o): New target.
8111
8112 2009-05-27  Pedro Alves  <pedro@codesourcery.com>
8113
8114         * infrun.c (follow_exec): Clear the stop_requested flag.
8115         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
8116         Add debug output.
8117
8118 2009-05-27  Aleksandar Ristovski  <aristovski@qnx.com>
8119
8120         * nto-procfs.c (get_regset): Pass correct pointer.
8121
8122 2009-05-26  Doug Evans  <dje@google.com>
8123
8124         * dwarf2read.c (follow_die_ref): Add comment.
8125         (dwarf2_mark_helper): Tweak comment.
8126         (dwarf2_mark): Move description to its proper place.
8127
8128 2009-05-25  Pierre Muller  <muller@ics.u-strasbg.fr>
8129
8130         * procfs.c (procfs_wait): Add options parameter.
8131
8132 2009-05-24  Doug Evans  <dje@google.com>
8133
8134         Global renaming of find_thread_pid to find_thread_ptid.
8135         * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
8136         * thread.c (find_thread_ptid): Renamed from find_thread_pid.
8137         All callers updated.
8138
8139         * infrun.c (follow_fork): Initialize new step_* locals
8140         to avoid "may be used uninitialized" warnings.
8141
8142 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
8143
8144         * inflow.c (copy_terminal_info): Deep copy `run_terminal'.
8145
8146 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
8147
8148         * gdbthread.h (struct thread_info): New `pending_follow' field.
8149         * thread.c (new_thread): New function.
8150         (add_thread_silent): Use it.
8151         * breakpoint.c (internal_breakpoint_number): New global, moved
8152         from inside...
8153         (create_internal_breakpoint): ... this.
8154         (clone_momentary_breakpoint): New.
8155         * breakpoint.h (clone_momentary_breakpoint): Declare.
8156         * infrun.c (nullify_last_target_wait_ptid): Move declaration
8157         higher.
8158         (pending_follow): Delete.
8159         (follow_fork): Handle pending follow fork event here.  Moved the
8160         preserving of thread stepping state here.
8161         (resume): Don't handle pending follow fork events here.  Only
8162         install the inferior's terminal modes if we're about to resume it.
8163         (proceed): Handle possible pending follow fork events here.
8164         (init_wait_for_inferior): No need to clear pending_follow anymore,
8165         it's gone.
8166         (handle_inferior_event): Adjust to per-thread `pending_follow'.
8167         Call `follow_fork' to handle following the fork.  If the
8168         follow-fork is cancelled, stop stepping.
8169         * linux-nat.c (linux_child_follow_fork): Adjust to per-thread
8170         `pending_follow' events.  Remove code that handled preserving the
8171         thread stepping state.
8172         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
8173         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
8174
8175 2009-05-24  Pierre Muller  <muller@ics.u-strasbg.fr>
8176
8177         * symfile.c (add_shared_symbol_files_command): Remove
8178         prototype and function.
8179         (_initialize _symfile): Move "add-shared-symbol-files"
8180         command and "assf" alias.
8181         * windows-nat.c (_initialize_windows_nat): to here.
8182         Change "add-shared-symbol-files" to alias.
8183         
8184         * config/i386/cygwin.mh: Remove NAT_FILE.
8185         * config/i386/mingw.mh: Remove NAT_FILE.
8186         * config/i386/mingw64.mh: Remove NAT_FILE.
8187         * config/i386/nm-cygwin.h: Remove file.
8188         * config/i386/nm-cygwin64.h: Remove file.
8189
8190 2009-05-24  Hui Zhu  <teawater@gmail.com>
8191
8192         * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
8193         I386_LINUX_RECORD_IOCTL_*,
8194         I386_LINUX_RECORD_FCNTL_*) Removed.
8195         (i386_linux_init_abi): Change size of record from macros to
8196         numbers.
8197
8198 2009-05-24  Hui Zhu  <teawater@gmail.com>
8199
8200         * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
8201         * linux-record.c (record_linux_system_call): Ditto.
8202         * linux-record.h (linux_record_tdep): Ditto.
8203
8204 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
8205
8206         Replace the savestring calls by xstrdup calls where possible.
8207         * breakpoint.c (condition_command, set_raw_breakpoint)
8208         (create_catchpoint, update_breakpoint_locations): Replace the
8209         savestring calls by xstrdup calls where possible.
8210         * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
8211         (record_producer): Likewise.
8212         * coffread.c (coff_start_symtab, complete_symtab): Likewise.
8213         * corefile.c (set_gnutarget): Likewise.
8214         * dbxread.c (add_new_header_file): Likewise.
8215         * demangle.c (set_demangling_command, set_demangling_style): Likewise.
8216         * event-top.c (push_prompt, pop_prompt, command_line_handler)
8217         (set_async_prompt): Likewise.
8218         * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
8219         Likewise.
8220         * language.c (set_language_command, _initialize_language): Likewise.
8221         * linespec.c (decode_line_2): Likewise.
8222         * rs6000-nat.c (add_vmap): Likewise.
8223         * top.c (set_prompt, init_history, init_main): Likewise.
8224         * tracepoint.c (stringify_collection_list): Likewise.
8225         * varobj.c (varobj_create): Remove variable expr_len.  Replace the 
8226         savestring calls by xstrdup calls where possible.
8227         (value_of_root, c_name_of_variable, c_describe_child): Replace the
8228         savestring calls by xstrdup calls where possible.
8229         * xcoffread.c (complete_symtab): Likewise.
8230         * cli/cli-script.c (build_command_line, define_command): Likewise.
8231         * cli/cli-setshow.c (do_setshow_command): Likewise.
8232
8233 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
8234
8235         Remove already unreachable code.
8236         * varobj.c (varobj_get_handle): Fix comment when error is called.
8237         All callers updated.
8238
8239 2009-05-23  Eli Zaretskii  <eliz@gnu.org>
8240
8241         * README (`configure' options): Document GDB-specific options to
8242         `configure'.
8243
8244         * symtab.c (skip_prologue_using_lineinfo): New function.
8245         (find_function_start_sal): Use it to get to the first line of
8246         function's body that has an entry in the lineinfo table.
8247
8248         * symmisc.c (dump_symtab): Switch the current language to
8249         the language of the symtab we are dumping only if the symtab's
8250         language is neither language_auto nor language_unknown.
8251
8252         * coffread.c (coff_symtab_read): Set language_minimal as the
8253         language for the "_globals_" pseudo-file.
8254         (process_coff_symbol): Set the symbol's language to the language
8255         of current_subfile.
8256
8257 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8258
8259         * target.h (struct section_table): Rename to ...
8260         (struct target_section): ... this.
8261         * exec.c: Adjust all references.
8262         * exec.h: Adjust all references.
8263         * nto-tdep.c: Adjust all references.
8264         * nto-tdep.h: Adjust all references.
8265         * ppc-linux-tdep.c: Adjust all references.
8266         * rs6000-nat.c: Adjust all references.
8267         * s390-tdep.c: Adjust all references.
8268         * solib-darwin.c: Adjust all references.
8269         * solib-frv.c: Adjust all references.
8270         * solib-irix.c: Adjust all references.
8271         * solib-null.c: Adjust all references.
8272         * solib-osf.c: Adjust all references.
8273         * solib-pa64.c: Adjust all references.
8274         * solib-som.c: Adjust all references.
8275         * solib-sunos.c: Adjust all references.
8276         * solib-svr4.c: Adjust all references.
8277         * solib-target.c: Adjust all references.
8278         * solib.c: Adjust all references.
8279         * solist.h: Adjust all references.
8280         * symfile.c: Adjust all references.
8281         * symfile.h: Adjust all references.
8282         * target.c: Adjust all references.
8283
8284 2009-05-22  Hui Zhu  <teawater@gmail.com>
8285
8286         Add sys_fcntl argument interfaces to linux_record_tdep.
8287
8288         * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
8289         fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
8290         interfaces.
8291         * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
8292         I386_LINUX_RECORD_FCNTL_F_GETLK64,
8293         I386_LINUX_RECORD_FCNTL_F_SETLK64,
8294         I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
8295         of I386 Linux sys_fcntl arguments.
8296         (i386_linux_init_abi): Set macros values to linux_record_tdep.
8297         * linux-record.c (record_linux_system_call): Change to use
8298         the interface in linux_record_tdep in sys_fcntl and
8299         sys_fcntl64.
8300
8301         * linux-record.c (record_linux_system_call): Fix the process
8302         record build error about type in CYGWIN.
8303
8304 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8305
8306         * inflow.c (kill_command): Delete left over static declaration.
8307
8308 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8309
8310         * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
8311         Include exec.h.
8312         (struct section_closure): Delete.
8313         (add_to_section_table): Delete.
8314         (build_target_sections_from_bfd): Delete.
8315         (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
8316         (target_bfd_reopen): Use build_section_table.
8317         * exec.c (xfer_memory): Move most code except for overlay
8318         debugging support from here...
8319         (section_table_xfer_memory): ... to this new function.
8320         (section_table_xfer_memory_partial): New.
8321         * exec.h (section_table_xfer_memory_partial): Declare.
8322         * bfd-target.h (build_target_sections_from_bfd): Delete
8323         declaration.
8324
8325 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8326
8327         * remote.c (compare_sections_command): Don't declare exec_bfd.
8328         * tracepoint.c: Include "gdbcore.h".
8329         (remote_set_transparent_ranges): Don't declare exec_bfd.
8330
8331 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8332
8333         * aix-thread.c (init_aix_thread_ops): Whitespace.
8334
8335 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8336
8337         * dec-thread.c (dec_thread_wait): Add options parameter.  Use it
8338         to call the to_wait method in the target beneath.
8339         * remote-m32r-sdi.c (m32r_wait): Add options parameter.
8340
8341 2009-05-21  Joel Brobecker  <brobecker@adacore.com>
8342
8343         * aix-thread.c (aix_thread_wait): Add options parameter.  Use it
8344         to call the to_wait method in the target_beneath.
8345
8346 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8347
8348         * linux-nat.c (linux_nat_terminal_inferior)
8349         (linux_nat_terminal_ours): Don't check sync_execution.
8350         * remote.c (remote_terminal_inferior, remote_terminal_ours):
8351         Don't check sync_execution.  Update comments.
8352         * target.c (target_terminal_inferior): New.
8353         * target.h (target_terminal_inferior): Delete macro, and declare
8354         as function.
8355         * event-top.c (async_disable_stdin): Make idempotent.  Don't give
8356         the target the terminal here.
8357         * inflow.c (terminal_ours_1): Don't return early without setting
8358         `terminal_is_ours'.
8359
8360 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8361
8362         * target.h (TARGET_WNOHANG): New.
8363         * target.c (target_wait): Add `options' argument.  Adjust.
8364         (struct target_ops) <to_wait>: Add `options' argument.
8365         (target_wait): Add `options' argument.
8366         * infrun.c (wait_for_inferior): Pass 0 as options to
8367         target_wait (blocking wait).
8368         (fetch_inferior_event): Pass TARGET_WNOHANG as options to
8369         target_wait.
8370         * fork-child.c (startup_inferior): Pass 0 as options to
8371         target_wait (blocking wait).
8372         * linux-nat.c (linux_nat_create_inferior): Remove async masking.
8373         (linux_nat_wait_1): Add `target_options' argument.  Use it instead
8374         of checking on target_can_async_p.
8375         (linux_nat_wait): Add `target_options' argument.  Adjust.
8376         * remote.c (remote_wait_ns): Add `options' argument.  Adjust to
8377         check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
8378         (remote_wait_as): Add `options' argument.  Adjust to check on
8379         TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
8380         a blocking wait, keep waiting until an interesting event comes
8381         out.
8382         (remote_wait): Add `options' argument.  Don't loop here if the
8383         target is in async mode, and a blocking wait has been requested.
8384
8385         * top.c (deprecated_target_wait_hook): Add `options' argument.
8386         * linux-thread-db.c (thread_db_wait): Add `options' argument, and
8387         pass it down to the layer beneath.
8388         * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
8389         * record.c (record_beneath_to_wait): Add `options' argument.
8390         (record_wait): Add `options' argument, and pass it down to the
8391         layer beneath.
8392         * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
8393         * darwin-nat.c (darwin_wait): Likewise.
8394         * defs.h (deprecated_target_wait_hook): Likewise.
8395         * gnu-nat.c (gnu_wait): Add `options' argument.
8396         * go32-nat.c (go32_wait): Likewise.
8397         * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
8398         pass it down to the layer beneath.
8399         * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
8400         * monitor.c (monitor_wait): Likewise.
8401         * nto-procfs.c (procfs_wait): Likewise.
8402         * remote-mips.c (mips_wait): Add `options' argument.
8403         * remote-sim.c (gdbsim_wait): Likewise.
8404         * rs6000-nat.c (rs6000_wait): Add `options' argument.
8405         * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
8406         it down to the layer beneath.
8407         * spu-linux-nat.c (spu_child_wait): Add `options' argument.
8408         * windows-nat.c (windows_wait): Likewise.
8409         * tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
8410
8411 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8412
8413         * mi/mi-interp.c (mi_on_resume): Account for whole process
8414         resumes.
8415
8416 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8417
8418         * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
8419
8420 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8421
8422         * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
8423
8424 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8425
8426         Fix parsing DW_AT_const_value using DW_FORM_string.
8427         * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
8428
8429 2009-05-20  Joel Brobecker  <brobecker@adacore.com>
8430
8431         * aix-thread.c (giter_count): Do not count the main thread.
8432         (giter_accum): Do not include the main thread.
8433
8434 2009-05-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
8435
8436         Remove the PROT parameter from openp.
8437         * source.c (openp): Remove the parameter PROT.  Assertion check MODE.
8438         defs.h (openp): Update the prototype.
8439         Update all the openp callers.
8440
8441 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
8442
8443         * inflow.c (kill_command): Moved to infcmd.c.
8444         (_initialize_inflow): Don't add the "kill" command or clear
8445         inferior_ptid here.
8446         * infcmd.c (kill_command): Moved here from inflow.c.
8447         (_initialize_infcmd): Add the "kill" command here.
8448
8449 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
8450
8451         * fork-child.c: Don't include frame.h.  Include terminal.h.
8452         (fork_inferior): Call new_tty_postfork after forking adn adding
8453         the child to the inferior list.
8454         * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
8455         here.
8456         * inflow.c (struct terminal_info): Remove const qualifier from
8457         `run_terminal' field.
8458         (inferior_thisrun_terminal): Tweak comment.
8459         (inflow_inferior_exit): Release the `run_terminal' field.
8460         (copy_terminal_info): New function.
8461         (new_tty_postfork): New function.
8462         * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
8463         (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
8464         * inf-ptrace.c: Include terminal.h.
8465         (inf_ptrace_follow_fork): Copy the parent's terminal info to the
8466         child.
8467         * linux-nat.c: Include terminal.h.
8468         (linux_child_follow_fork): Copy the parent's terminal info to the
8469         child.
8470         * inf-ttrace.c: Include terminal.h.
8471         (inf_ttrace_follow_fork): Copy the parent's terminal info to the
8472         child.
8473
8474 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
8475
8476         * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
8477         (update_global_location_list): Use gdbarch_has_global_breakpoints
8478         instead of gdbarch_has_global_solist and
8479         target_supports_multi_process.
8480         * dicos-tdep.c (dicos_init_abi): Set
8481         gdbarch_has_global_breakpoints.
8482         * gdbarch.sh (has_global_solist): Update comment.
8483         (has_global_breakpoints): New.
8484         * remote.c (remote_start_remote): Use
8485         gdbarch_has_global_breakpoints instead of
8486         gdbarch_has_global_solist.
8487         * target.c (target_detach): Use gdbarch_has_global_breakpoints
8488         instead of gdbarch_has_global_solist.
8489         * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
8490         of target_supports_multi_process.
8491
8492 2009-05-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
8493
8494         * objc-lang.c (find_methods): Plug a small memory leak.
8495
8496 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8497
8498         * solib-svr4.c: Include observer.h.
8499         (debug_base, debug_loader_offset_p, debug_loader_offset)
8500         (debug_loader_name, main_lm_addr): Move these globals...
8501         (struct svr4_info): ... into this new structure.
8502         (svr4_info_p): New typedef.
8503         (svr4_info): New global.
8504         (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
8505         functions.
8506         (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
8507         (solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
8508         per-inferior svr4.
8509         (open_symbol_file_object): Adjust to per-inferior svr4.
8510         (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
8511         Ditto.
8512         (enable_break): Add svr4_info argument.  Adjust to per-inferior
8513         svr4.
8514         (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
8515         Adjust to per-inferior svr4.
8516         (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
8517         observer.
8518
8519 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8520
8521         * linux-nat.h (linux_proc_get_tgid): Declare.
8522         * linux-nat.c (linux_proc_get_tgid): New.
8523         * linux-thread-db.c (struct thread_db_info): New field
8524         `need_stale_parent_threads_check'.
8525         (add_thread_db_info): Set it.
8526         (find_new_threads_callback): Ignore stale fork parent threads.
8527         (thread_db_resume): New.
8528         (init_thread_db_ops): Install thread_db_resume.
8529
8530 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8531
8532         * fork-child.c (fork_inferior): Only reset the thread list if this
8533         is the first inferior.
8534         (startup_inferior): If the target support multi-process, tell it
8535         to resume only the new process.
8536         * linux-nat.c (num_lwps): Delete global.
8537         (purge_lwp_list): New function.
8538         (num_lwps): New function.
8539         (add_lwp, delete_lwp): Adjust.
8540         (ptid_match): New.
8541         (iterate_over_lwps): Add filter argument.  Handle it.
8542         (linux_nat_attach): Remove FIXME note.
8543         (linux_nat_detach): Adjust to iterate over threads of the inferior
8544         we're detaching from.  Adjust to num_lwps being a function.  Don't
8545         assume the head of the lwp list is the main thread of the process
8546         we're detaching from.  Don't destroy the LWP list.
8547         (resume_callback): Add debug output.
8548         (linux_nat_resume): Handle resuming a single inferior.  Allow a
8549         wildcard resume in non-stop mode.
8550         (linux_handle_extended_wait): Don't assume inferior_ptid is the
8551         correct inferior of the parent LWP.
8552         (status_callback): Also check lp->waitstatus.
8553         (select_event_lwp): Add new filter parameter.  Handle it.
8554         (linux_nat_filter_event): Adjust to num_lwps being a function.
8555         (linux_nat_wait_1): When adding the first lwp of the inferior, use
8556         an is_lwp check instead of checking for the number of lwps.
8557         (linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
8558         pending process exit statuses.
8559         (linux_nat_mourn_inferior): Don't destroy all the LWP info.
8560         Instead delete LWPs of the inferior that we're mourning.  Don't
8561         unregister from the event loop here.
8562         (linux_nat_pid_to_str): Use `num_lwps'.
8563         (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
8564         single inferior.
8565         (linux_nat_is_async_p): Check if async was masked out.
8566         (linux_multi_process): New global.
8567         (linux_nat_supports_multi_process): New.
8568         (linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
8569         caller.
8570         (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
8571         LWP filtering.
8572         (linux_nat_close): New.
8573         (linux_nat_add_target): Register linux_nat_close and
8574         linux_nat_supports_multi_process.
8575         * linux-nat.h (iterate_over_lwps): Add filter argument.
8576         * linux-thread-db.c (thread_db_handle): Delete.
8577         (proc_handle, thread_agent, td_init_p, td_ta_new_p)
8578         (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
8579         (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
8580         (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
8581         (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
8582         longer globals, moved to...
8583         (struct thread_db_info): ... this new structure.
8584         (thread_db_list): New.
8585         (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
8586         New.
8587         (have_threads_callback): Filter out threads of all inferiors but
8588         the one specified by the ARGS argument.
8589         (have_threads): Add ptid argument specifying the inferior we're
8590         interested in.  Handle it.
8591         (struct thread_get_info_inout): New.
8592         (thread_get_info_callback, thread_from_lwp): Adjust to use it.
8593         (thread_db_attach_lwp): Check that inferior of the passed in
8594         thread is using thread-db.  Adjust.
8595         (enable_thread_event): Remove thread_agent parameter.  Instead,
8596         get it from the per-inferior thread-db info.
8597         (dladdr_to_soname): Move higher up.
8598         (enable_thread_event_reporting): Adjust to use per-inferior
8599         thread-db info.
8600         (try_thread_db_load_1): Replace `handle' parameter by a
8601         thread_db_info parameter.  Adjust to use per-inferior thread-db
8602         info.
8603         (try_thread_db_load): Adjust to use per-inferior thread-db info.
8604         (thread_db_load, disable_thread_event_reporting): Ditto.
8605         (check_for_thread_db): Remove conditional reporting of which
8606         libthread_db is in use.
8607         (thread_db_new_objfile): Add comment about inferior_ptid.
8608         (attach_thread): Adjust to use per-inferior thread-db info.
8609         (thread_db_detach): Adjust to use per-inferior thread-db info.
8610         Remove thread event breakpoints of the current inferior.  Only
8611         unpush the thread-db target if there are no more processes using
8612         it.
8613         (check_event): Adjust to use per-inferior thread-db info.
8614         (thread_db_wait): Adjust to use per-inferior thread-db info.  Only
8615         unpush the thread-db target if there are no more processes using
8616         it.
8617         (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
8618         info.  Mark breakpoints of the current inferior out before
8619         deleting them.  Only unpush the thread-db target if there are no
8620         more processes using it.
8621         (find_new_threads_callback): Adjust to use per-inferior thread_db
8622         info.
8623         (thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
8624         use per-inferior thread-db info.
8625         (thread_db_find_new_threads): Adjust to use per-inferior thread-db
8626         info.
8627         (thread_db_get_thread_local_address): Adjust.
8628         (thread_db_get_ada_task_ptid): Adjust.
8629         * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
8630         if there no more processes left to debug.
8631         * thread.c (set_running, set_executing): Handle resuming all
8632         threads of a single inferior.
8633         * mi/mi-interp.c (mi_output_running_pid): New.
8634         (mi_inferior_count): New.
8635         (mi_on_resume): For backwards compatibility, if resuming all
8636         threads of an inferior, and there is only one inferior, output
8637         "all".
8638
8639 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8640
8641         * ada-lang.c (ada_find_any_type): Move check for primitive types ...
8642         (to_fixed_range_type): ... to here.
8643
8644 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8645
8646         * ada-lang.c (desc_data_type): Remove, replace by ...
8647         (desc_data_target_type): ... this.
8648         (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
8649         (ada_is_array_descriptor_type): Likewise.
8650         (ada_type_of_array): Likewise.
8651         (ada_coerce_to_simple_array_type): Likewise.
8652         (ada_array_element_type): Likewise.
8653
8654 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8655
8656         * ada-valprint.c (ada_val_print_1): Use val_print_string to print
8657         result of ada_vax_float_print_function inferior call.
8658
8659 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8660
8661         * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
8662         avoid creating a dummy value.
8663
8664 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8665
8666         * p-valprint.c (pascal_val_print): Use extract_typed_address
8667         to extract reference value.
8668
8669 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8670
8671         * doublest.c (NAN): Remove unused define.
8672         (extract_floating_by_length, deprecated_extract_floating): Remove.
8673         (store_floating_by_length, deprecated_store_floating): Remove.
8674         (extract_typed_floating): Do not call extract_floating_by_length.
8675         (store_typed_floating): Do not call store_floating_by_length.
8676         (convert_typed_floating): Remove redundant assertions.
8677         * doublest.h (deprecated_extract_floating): Remove.
8678         (deprecated_store_floating): Remove.
8679         * sh64-tdep.c (sh64_register_convert_to_raw): Call
8680         extract_typed_floating instead of deprecated_extract_floating.
8681
8682 2009-05-18  Jon Beniston <jon@beniston.com>
8683         
8684         * MAINTAINERS: Add lm32 target.        
8685         * Makefile.in: Add lm32 dependencies.        
8686         * NEWS: Indicate lm32 is a new target.
8687         * configure.tgt: Add lm32 targets.
8688         * lm32-tdep.c: New file.
8689
8690 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8691
8692         * corelow.c (core_open): Flush the register cache before doing
8693         anything with registers.
8694
8695 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8696
8697         * inflow.h (our_process_group): Remove declaration.
8698         (inferior_process_group): Delete global variable declaration.
8699         (inferior_process_group): New function declaration.
8700         * inflow.c: Include observer.h.
8701         (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
8702         Delete.
8703         (struct terminal_info): New struct.
8704         (our_terminal_info): New global.
8705         (inferior_process_group): New function.
8706         (inferior_thisrun_terminal): Extend description comment.
8707         (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
8708         instead of globals.
8709         (terminal_init_inferior_with_pgrp): Adjust to per-inferior
8710         terminal settings.
8711         (terminal_inferior): Ditto.
8712         (terminal_ours_1): Ditto.
8713         (inflow_new_inferior, inflow_inferior_exit): New functions.
8714         (child_terminal_info): Adjust to per-inferior terminal settings.
8715         (osig_set): New global.
8716         (set_sigint_trap): Adjust to per-inferior terminal settings.  Set
8717         or clear `osig_set' accordingly.
8718         (clear_sigint_trap): Check `osig_set' to decide wheater to restore
8719         SIGINT handler, instead of checking the current inferior (which
8720         may be none).
8721         (_initialize_inflow): Attach inflow_new_inferior and
8722         inflow_inferior_exit to the "new_inferior" and "inferior_exit"
8723         notifications, respectively.
8724         * inferior.h (struct terminal_info): Forward declare.
8725         (struct inferior): Add `terminal_info' field.
8726         * inferior.c (delete_inferior_1): Notify the inferior_exit
8727         observers before removing the inferior from the lists and deleting
8728         it.
8729         * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
8730         a function instead of a variable.  Adjust.
8731         * procfs.c (procfs_stop): Ditto.
8732
8733 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
8734
8735         * infrun.c (handle_inferior_event): When handling a
8736         TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
8737         immediatelly.
8738         * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
8739         from the child if vforking.
8740         * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
8741         breakpoints from the child here.
8742
8743 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
8744
8745         * infrun.c (pending_follow): Remove execd_pathname member.
8746         (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
8747         (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
8748         event, don't copy `execd_pathname' to pending_follow, use the
8749         event copy instead.  Release `execd_pathname' once done with
8750         handling the event.
8751
8752         * infrun.c (pending_follow): Remove mention of exec events.
8753
8754 2009-05-17  Hui Zhu  <teawater@gmail.com>
8755
8756         * i386-tdep.c (i386_process_record): Make it extern.
8757         (i386_gdbarch_init): Don't call set_gdbarch_process_record
8758         here.
8759         * i386-tdep.h (i386_process_record): Declare.
8760         * i386-linux-tdep.c (i386_linux_init_abi): Call
8761         set_gdbarch_process_record.
8762
8763 2009-05-17  Vladimir Prus  <vladimir@codesourcery.com>
8764
8765         Always report varobj as changed when in_scope attribute changes.
8766
8767         * varobj.c (install_new_value): If non-NULL-ness of value
8768         changed, return 1.
8769
8770 2009-05-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
8771         
8772         * NEWS: Mention set/show libthread-db-search-path.
8773         * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
8774         (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
8775         * linux-thread-db.c (libthread_db_search_path): New setting.
8776         (thread_db_handle): New variable (replaces using_thread_db).
8777         (try_thread_db_load_1): New function.
8778         (try_thread_db_load, thread_db_load_search): Likewise.
8779         (dladdr_to_soname): Likewise.
8780         (thread_db_load): Iterate over possibly multiple libthread_db's.
8781         (check_for_thread_db): Attempt to load new libthread_db.
8782         (thread_db_detach, thread_db_wait): Unload libthread_db.
8783         (thread_db_mourn_inferior): Likewise.
8784         (_initialize_thread_db): Add new libthread-db-search-path option.
8785         Defer loading of libthread_db to check_for_thread_db.
8786         * solib.c (libpthread_name_p): New function.
8787         (libpthread_solib_p): Call it.
8788         * solib.h (libpthread_name_p): New prototype.
8789         
8790 2009-05-15  Pierre Muller  <muller@ics.u-strasbg.fr>
8791
8792         * MAINTAINERS: Update my email address.
8793         
8794 2009-05-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
8795
8796         * breakpoint.h: Add breakpoint_re_set_objfile prototype.
8797         * breakpoint.c (create_overlay_event_breakpoint): Renamed
8798         from create_overlay_event_breakpoint_1, old
8799         create_overlay_event_breakpoint deleted.
8800         (breakpoint_re_set_objfile): Don't rescan all objfiles
8801         unnecessarily.
8802         (breakpoint_re_set): New function.
8803         * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
8804         instead of breakpoint_re_set.
8805         * objfiles.c (objfile_relocate): Likewise.
8806         
8807 2009-05-14  Joel Brobecker  <brobecker@adacore.com>
8808
8809         * gdbarch.sh: Add comment documenting the target_gdbarch global.
8810         gdbarch.h does NOT need to be regenerated as the corresponding
8811         change has already been made in a previous commit.
8812
8813 2009-05-14  Pierre Muller  <muller@ics.u-strasbg.fr>
8814
8815         Remove all i386 debug register low level macros in config nm files.
8816         (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
8817         (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
8818         (I386_USE_GENERIC_WATCHPOIINTS): Remove.
8819
8820         * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
8821         (struct i386_dr_low_type): New type.
8822         (i386_dr_low): New global variable.
8823         * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
8824         (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
8825         i386_dr_low struct variable fields.
8826         (i386_remove_aligned_watchpoint): Likewise.
8827         (i386_stopped_data_address): Likewise.
8828         (i386_stopped_by_hwbp): Likewise.
8829         (show_debug_regs_command_added): New static variable.
8830         (add_show_debug_regs_command): New static function.
8831         (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
8832         (i386_set_debug_register_length): New function.
8833         (_initialize_i386_nat): Delete.
8834         
8835         * amd64-linux-nat.c: Include "i386-nat.h".
8836         (amd64_linux_dr_set_control):  Change to static.
8837         (amd64_linux_dr_get_status): Change to static.
8838         (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
8839         (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
8840         
8841         * go32-nat.c: Include "i386-nat.h".
8842         (go32_set_addr): Change to static.
8843         (go32_set_dr7): Change to static. Change arg type to unisgned long.
8844         (go32_get_dr6): Change to static. Change return type to unisnged long.
8845         (init_go32_ops):  Set i386_dr_low variable fields.
8846         * i386-linux-nat.c: Include "i386-nat.h".
8847         (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
8848         (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
8849         (_initialize_i386_linux_nat):  Set i386_dr_low variable fields.
8850         * i386bsd-nat.h: Declare functions used for
8851         i386_dr_low fields in i386fbsd-nat.c.
8852         * i386fbsd-nat.c: Include "i386-nat.h".
8853         (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
8854         * windows-nat.c: Include "i386-nat.h".
8855         (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
8856         Change to static.
8857         (cygwin_get_dr6): Change return type to unisnged long.
8858         (cygwin_set_dr7): Change arg type to unisgned long.
8859         (init_windows_ops): Set i386_dr_low function fields.
8860
8861         * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call 
8862         i386_set_debug_register_length.
8863         * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
8864
8865         * config/i386/nm-cygwin.h: Remove all I386_* macros.
8866         * config/i386/nm-cygwin64.h: Likewise.
8867         * config/i386/nm-fbsd.h: Likewise.
8868         * config/i386/nm-linux.h: Likewise.
8869         * config/i386/nm-i386.h: Remove completely.
8870         * config/i386/nm-go32.h: Remove completely.
8871         * config/i386/nm-linux64.h: Remove completely.
8872         * config/i386/go32.mh (NAT_FILE): Remove entry.
8873         * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
8874
8875 2009-05-14  Jon Beniston  <jon@beniston.com>
8876
8877         * MAINTAINERS: Add Jon Beniston to write after approval list.
8878
8879 2009-05-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
8880
8881         * objc-lang.c (objc_objfile_data): New variable.
8882         (find_methods): Skip objfiles without Obj-C methods.
8883         (_initialize_objc_lang): New function.
8884
8885 2009-05-13  Joel Brobecker  <brobecker@adacore.com>
8886
8887         * c-lang.c (print_wchar): Remove unnecessary cast.
8888
8889 2009-05-12  Jim Blandy  <jimb@red-bean.com>
8890
8891         * MAINTAINERS: Remove self as m32c target maintainer.
8892
8893 2009-05-12  Pedro Alves  <pedro@codesourcery.com>
8894
8895         * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
8896         * command.h (deprecated_add_set_cmd): Delete declaration.
8897         * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
8898         'set debug gnu-nat' and 'show debug gnu-nat'.
8899         * i386-nat.c (_initialize_i386_nat): Replace 'maint
8900         show-debug-registers' with 'maint set show-debug-registers' and
8901         'maint show show-debug-registers'.
8902         * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
8903         show-debug-registers' with 'maint set show-debug-registers' and
8904         'maint show show-debug-registers'.
8905
8906 2009-05-12  Joel Brobecker <brobecker@adacore.com>
8907
8908         * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
8909         pushing it on the output obstack.
8910
8911 2009-05-11  Joel Brobecker <brobecker@adacore.com>
8912
8913         Fix internal error on breaking at a multi-locations caller source line.
8914         * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
8915         command with no parameters.
8916
8917 2009-05-11  Pedro Alves  <pedro@codesourcery.com>
8918
8919         * linux-nat.c (enum sigchld_state): Delete.
8920         (linux_nat_async_events_state): Delete.
8921         (struct waitpid_result): Delete.
8922         (waitpid_queue): Delete.
8923         (queued_waitpid_1): Delete.
8924         (async_file_flush): New.
8925         (queued_waitpid, push_waitpid): Delete.
8926         (async_file_mark): New.
8927         (drain_queued_events): Delete.
8928         (my_waitpid): Remove locally queued events handling.
8929         (linux_test_for_tracefork): Upjust.
8930         (linux_child_follow_fork): Ditto.
8931         (sync_sigchld_action): Delete.
8932         (blocked_mask): Reinstate.
8933         (async_sigchld_action): Rename to...
8934         (sigchld_action): ... this.
8935         (block_child_signals): New.
8936         (restore_child_signals_mask): New.
8937         (lin_lwp_attach_lwp): Adjust.
8938         (linux_nat_create_inferior): Ditto.
8939         (linux_nat_attach): Also use lp->status in async mode.
8940         (get_pending_status): Don't use queued_waitpid.
8941         (linux_nat_detach): Don't drain locally queued events.
8942         (linux_nat_resume): Allow pending wait statuses stored lp->status
8943         in async mode.  If returning early due to a pending event,
8944         re-register the event source.
8945         (stop_wait_callback): Allow pending wait statuses stored
8946         lp->status in async mode.
8947         (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
8948         (linux_nat_wait): Rename to ...
8949         (linux_nat_wait_1): ... this.  Allow pending wait statuses stored
8950         lp->status in async mode.  Always add WNOHANG to the waitpid
8951         options in async mode.
8952         (linux_nat_wait): New.
8953         (kill_callback): Don't drain locally queued events.
8954         (sigchld_handler): Rewrite.
8955         (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
8956         refer to "set target-async".
8957         (linux_nat_async_mask): If in non-stop, and re-enabling async
8958         mode, re-register the target event source in the event loop.
8959         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
8960         (get_pending_events, async_sigchld_handler)
8961         (linux_nat_async_events): Delete.
8962         (handle_target_event): New.
8963         (linux_nat_async_file_handler): Delete.
8964         (linux_async_pipe): New.
8965         (linux_nat_async): Only re-register in the event loop if not
8966         registered yet.  Always notify the event-loop once if enabling the
8967         event source.
8968         (linux_nat_stop_lwp): Rewrite to handle pending events stored in
8969         lp->status, not in the locally queued event list.
8970         (linux_nat_stop): Don't mask out async event handling.
8971         (linux_nat_setup_async): Delete.
8972         (_initialize_linux_nat): Adjust.
8973         (lin_thread_get_thread_signals): blocked_mask is global again.
8974         Adjust.
8975
8976 2009-05-11  Pierre Muller  <muller@ics.u-strasbg.fr>
8977
8978         Unify target macros.
8979
8980         * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
8981         (target_stoppped_by_watchpoint): New macro.
8982         (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
8983         (target_have_steppable_watchpoint): New macro.
8984         (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
8985         (target_have_continuable_watchpoint): New macro.
8986         (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
8987         (target_can_use_hardware_watchpoint): New macro.
8988         (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
8989         (target_region_ok_for_hw_watchpoint): New macro.
8990
8991         * breakpoint.c (update_watchpoint): Use new macros.
8992         (bpstat_alloc): Likewise.
8993         (create_breakpoint): Likewise.
8994         (watch_command_1): Likewise.
8995         (can_use_hardware_watchpoint): Likewise.
8996         (do_enable_breakpoint): Likewise.
8997         * infrun.c (handle_inferior_event): Adapt to new macros.
8998         * mips-tdep.c (mips_gdbarch_init): Update comments.
8999         * procfs.c (procfs_set_watchpoint): Update comment.
9000         (procfs_insert_watchpoint): Adapt to new macros.
9001         * remote-m32r-sdi.c (m32r_stop):
9002         * remote-mips.c (mips_remove_breakpoint):
9003         * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
9004         (debug_to_stopped_by_watchpoint): Likewise.
9005
9006
9007 2009-05-10  Pierre Muller  <muller@ics.u-strasbg.fr>
9008
9009         * src/gdb/target.h: Remove all tests for already defined
9010         macros. All macros defined here should not be set in config
9011         headers anymore.
9012
9013 2009-05-08  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
9014
9015         * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
9016         (have_ptrace_getsetfpregs): Likewise.
9017         fetch_all_gp_regs): New function.
9018         (fetch_gp_regs): New function.
9019         (fetch_all_fp_regs): Likewise.
9020         (fetch_fp_regs): New function.
9021         (fetch_ppc_registers): Using the new methods to fetch general-
9022         purpose and floating-pointer registers.
9023         (store_all_gp_regs): New function.
9024         (store_gp_regs): Likewise.
9025         (store_all_fp_regs): New function.
9026         (store_fp_regs): Likewise.
9027         (store_ppc_registers): Using the new methods to store general-
9028         purpose and floating-pointer registers.
9029
9030 2009-05-08  Doug Evans  <dje@google.com>
9031
9032         * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
9033
9034 2009-05-07  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
9035
9036         * MAINTAINERS (Write After Approval): Add self.
9037
9038 2009-05-07  Joel Brobecker  <brobecker@adacore.com>
9039
9040         * gdbarch.h (target_gdbarch): Add comment documenting this global.
9041
9042 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
9043
9044         * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
9045         system iconv.
9046         * configure: Regenerate.
9047
9048 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
9049
9050         * utils.c: Add include of gdb_usleep.h.
9051         (defaulted_query): Detect false EOF conditions that happen
9052         on terminals opened with the O_NONBLOCK flag when there is
9053         nothing to read.
9054
9055 2009-05-06  Pedro Alves  <pedro@codesourcery.com>
9056
9057         * inferior.c (add_inferior): Move observer_notify_new_inferior
9058         call to ...
9059         (add_inferior_silent): ... here.
9060
9061 2009-05-06  Pierre Muller  <muller@ics.u-strasbg.fr>
9062             Pedro Alves  <pedro@codesourcery.com>
9063
9064         * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
9065         (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
9066         functions.
9067         (procfs_stopped_by_watchpoint): Made static, ptid argument
9068         removed.
9069         (_initialize_procfs): Register new watchpoint related target
9070         functions.
9071         * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
9072         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
9073         (HAVE_CONTINUABLE_WATCHPOINT): Delete.
9074         (target_insert_watchpoint, target_remove_watchpoint): Delete.
9075         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
9076         declarations.
9077         * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
9078         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
9079         (target_insert_watchpoint, target_remove_watchpoint): Delete.
9080         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
9081         declarations.
9082         * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
9083         (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
9084         (target_insert_watchpoint, target_remove_watchpoint): Delete.
9085         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
9086         declarations.
9087
9088 2009-05-06  Hui Zhu  <teawater@gmail.com>
9089
9090         * i386-tdep.c (i386_process_record): Change bzero to memset.
9091
9092 2009-05-06  Hui Zhu  <teawater@gmail.com>
9093
9094         * NEWS: Add item for process record and replay.
9095
9096 2009-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
9097
9098         * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
9099
9100 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
9101
9102         * inferior.h (read_pc, write_pc): Remove.
9103         * regcache.c (read_pc, write_pc): Remove.
9104
9105         * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
9106         of read_pc.
9107         (handle_inferior_event): Use regcache_read_pc instead of read_pc
9108         when determining value of stop_pc.  Replace subsequent uses of
9109         read_pc by inspecting already-retrieved stop_pc value.
9110         (keep_going): Use regcache_read_pc instead of read_pc.
9111
9112         * breakpoint.c (watchpoint_check): Use current frame architecture
9113         and PC instead of current_gdbarch and read_pc ().
9114         * tracepoint.c (set_traceframe_context): Replace PC argument
9115         with FRAME argument.
9116         (trace_start_command, finish_tfind_command): Update calls.
9117         (finish_tfind_command): Compare frame IDs to identify transitions
9118         between frames.
9119         (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
9120         * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
9121         of gdbarch.  Use regcache_read_pc and regcache_write_pc instead
9122         of read_pc and write_pc.
9123         (store_register): Make regcache argument non-const.  Update call
9124         to exec_one_dummy_insn.
9125
9126         * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
9127         * infcmd.c (post_create_inferior): Likewise.
9128         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
9129         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
9130         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
9131         * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
9132         * linux-fork.c (fork_load_infrun_state): Likewise.
9133         * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
9134         * record.c (record_wait): Likewise.
9135         * procfs.c (procfs_wait): Likewise.
9136         * remote-mips.c (common_open, mips_wait): Likewise.
9137         * remote-m32r-sdi.c (m32r_resume): Likewise.
9138
9139         * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
9140         * monitor.c (monitor_create_inferior, monitor_load): Likewise.
9141         * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
9142         * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
9143         * remote-mips.c (mips_create_inferior, mips_load): Likewise.
9144
9145         * solib-darwin.c: Include "regcache.h".
9146         * solib-pa64.c: Include "regcache.h".
9147         * solib-svr4.c: Include "regcache.h.".
9148
9149         * symfile.c: Do not mention read_pc or write_pc in comments.
9150         * dink32-rom.c: Likewise.
9151         * m32r-rom.c: Likewise.
9152         * mips-tdep.c: Likewise.
9153
9154 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
9155
9156         * fork-child.c (startup_inferior): Move setting stop_pc ...
9157         * infcmd.c (post_create_inferior): ... to here.
9158
9159 2009-05-04  Michael Snyder  <msnyder@vmware.com>
9160
9161         * NEWS: Add item for reverse debugging commands.
9162
9163 2009-05-04  Pedro Alves  <pedro@codesourcery.com>
9164
9165         * go32-nat.c (go32_stop): Delete.
9166         (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
9167         (go32_create_inferior): Don't call go32_stop or
9168         go32_kill_inferior.
9169         (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
9170         here.
9171         (init_go32_ops): Don't register go32_stop.
9172
9173 2009-05-02  Eli Zaretskii  <eliz@gnu.org>
9174
9175         * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
9176         sym_name.
9177
9178         * infcall.c (find_function_addr): Avoid compiler warnings for
9179         funaddr.
9180
9181 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
9182
9183         * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
9184         (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
9185
9186 2009-05-01  Doug Evans  <dje@google.com>
9187
9188         * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
9189         to thread_info.
9190
9191 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
9192
9193         * record.c (_initialize_record): Reformat and clarify doc strings
9194         for stop-at-limit and insn-number-max.
9195
9196         * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
9197
9198 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
9199
9200         Make specifiable the make_function_type type memory ownership.
9201         * gdbtypes.c (make_function_type): New parameter `objfile', use it
9202         explicitely instead of TYPE-initialized removed local variable
9203         `objfile'.  Describe `objfile' it in the function comment.
9204         (lookup_function_type): Update make_function_type callers.
9205         * gdbtypes.h (make_function_type): Update the prototype.
9206         * jv-lang.c (java_link_class_type): Update make_function_type callers.
9207         * dwarf2read.c (read_subroutine_type): Likewise.
9208         * stabsread.c (read_type): Likewise.
9209
9210 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
9211
9212         * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
9213         printing a bogus "Thread <main>".
9214         (go32_thread_alive): Don't return 1 for null_ptid.
9215
9216         * i386-tdep.c (i386_go32_init_abi): Override the number of
9217         registers due to non-support of SSE.
9218
9219 2009-04-30  Anthony Green  <green@moxielogic.com>
9220
9221         * configure.tgt: Link the moxie simulator in with gdb.
9222
9223 2009-04-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
9224
9225         * elfread.c (elf_symtab_read): Don't assume .data and .rodata
9226         are present.
9227
9228 2009-04-30  Hui Zhu  <teawater@gmail.com>
9229             Michael Snyder  <msnyder@vmware.com>
9230
9231         I386 Linux process record and replay support.
9232
9233         * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
9234         This struct has the argument for the function
9235         "record_linux_system_call".
9236         (i386_linux_intx80_sysenter_record): New function. Parse the
9237         system call instruction and call function
9238         "record_linux_system_call" to record execute log.
9239         (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
9240         Set "i386_linux_intx80_sysenter_record" to
9241         "i386_intx80_record" and "i386_sysenter_record".
9242
9243 2009-04-30  Hui Zhu  <teawater@gmail.com>
9244             Michael Snyder  <msnyder@vmware.com>
9245
9246         I386 architecture process record and replay support.
9247
9248         * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
9249         PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
9250         instruction set.
9251         (aflag, dflag, override, modrm, mod, reg, rm, ot,
9252         i386_record_pc): New variables. Ditto.
9253         (i386_record_modrm, i386_record_lea_modrm_addr,
9254         i386_record_lea_modrm): New functions. Ditto.
9255         (i386_process_record): New function. Parse the instruction in
9256         address "addr" and record the values of registers and memory
9257         that will be changed by this instruction.
9258         (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
9259         "process_record" interface.
9260         * i386-tdep.h (gdbarch_tdep): New function pointers
9261         "i386_intx80_record" and "i386_sysenter_record" that point to
9262         the function that can record "intx80" and "sysenter" execute
9263         log.
9264
9265 2009-04-30  Hui Zhu  <teawater@gmail.com>
9266             Michael Snyder  <msnyder@vmware.com>
9267
9268         * infrun.c (use_displaced_stepping): Return false if process
9269         record and replay target is used.
9270         (proceed): Call function "record_not_record_set" if pocess
9271         record and replay target is used.
9272
9273 2009-04-30  Hui Zhu  <teawater@gmail.com>
9274             Michael Snyder  <msnyder@vmware.com>
9275
9276         Linux process record and replay support.
9277
9278         * Makefile.in (ALLDEPFILES): Add linux-record.c.
9279         (ALL_TARGET_OBS): Add linux-record.o.
9280         * configure.tgt (x86_64-*-linux*): Add linux-record.o.
9281         (i[34567]86-*-linux*): Add linux-record.o.
9282         * linux-record.c, linux-record.h: New file.
9283
9284 2009-04-30  Hui Zhu  <teawater@gmail.com>
9285             Michael Snyder  <msnyder@vmware.com>
9286
9287         Process record and replay target.
9288
9289         * Makefile.in (SFILES): Add record.c.
9290         (COMMON_OBS): Add record.o.
9291         * record.c, record.h: New file.
9292
9293 2009-04-30  Hui Zhu  <teawater@gmail.com>
9294             Michael Snyder  <msnyder@vmware.com>
9295
9296         * target.h (strata): New stratum "record_stratum".
9297
9298 2009-04-30  Hui Zhu  <teawater@gmail.com>
9299             Michael Snyder  <msnyder@vmware.com>
9300
9301         GDBARCH interface for process record and replay.
9302
9303         * gdbarch.sh (process_record): This interface point to the
9304         function that records the inferior execute log.
9305
9306 2009-04-29  Doug Evans  <dje@google.com>
9307
9308         * i386-nat.c (child_post_startup_inferior): Delete, unused.
9309
9310 2009-04-29  Pedro Alves  <pedro@codesourcery.com>
9311
9312         * breakpoint.c (print_exception_catchpoint): Access `b' directly
9313         instead of `b->loc->owner'.
9314         (print_mention_exception_catchpoint): Ditto.
9315
9316 2009-04-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
9317
9318         * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
9319
9320 2009-04-27  Tom Tromey  <tromey@redhat.com>
9321
9322         * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
9323
9324 2009-04-27  Jerome Guitton  <guitton@adacore.com>
9325
9326         * symtab.c (append_exact_match_to_sals): New function, extracted
9327         from expand_line_sal.
9328         (expand_line_sal): Use append_exact_match_to_sals to append exact
9329         matches. If none found, append all best items.
9330
9331 2009-04-27  Jerome Guitton  <guitton@adacore.com>
9332
9333         * main.c (captured_main): Move gdbinit lookups after gdb_init.
9334
9335 2009-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
9336
9337         PR gdb/9675:
9338         * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
9339         (read_func_scope): Call inherit_abstract_dies.
9340
9341 2009-04-25  Eli Zaretskii  <eliz@gnu.org>
9342
9343         * Makefile.in (ALLDEPFILES): Remove duplicate entries for
9344         sparc-sol2-nat.c and sparc-sol2-tdep.c.
9345
9346         * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
9347
9348 2009-04-24  Pierre Muller  <muller@ics.u-strasbg.fr>
9349
9350         ARI change: Use "/* ARI: rule */" pattern.
9351         * utils.c: Update ARI patterns.
9352         * gdb_dirent.h: Likewise.
9353
9354 2009-04-23  Anthony Green  <green@moxielogic.com>
9355
9356         * MAINTAINERS: Add moxie target.
9357         * configure.tgt: Add moxie-*-elf target.
9358         * moxie-tdep.c: New file.
9359         * moxie-tdep.h: New file.
9360
9361 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
9362
9363         * ada-lang.c: Remove an extra empty line. No code change.
9364
9365 2009-04-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
9366
9367         Fix double free on error inserting the breakpoint instruction.
9368         * breakpoint.c (create_breakpoints): Move the
9369         update_global_location_list call to ...
9370         (break_command_really): ... here together with the second local call
9371         both unified after all the cleanups.
9372
9373 2009-04-23  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
9374             Tom Tromey  <tromey@redhat.com>
9375
9376         * configure, config.in: Regenerate.
9377         * configure.ac: Support for relocatable GDB datadir.  Use
9378         GDB_AC_WITH_DIR.  Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
9379         * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
9380         * top.c (init_main): Add "set data-directory".
9381         * defs.h (gdb_datadir): Declare.
9382         * main.c (gdb_datadir): New global.
9383         (captured_main): Initialize gdb_datadir.  Use relocate_directory.
9384         (relocate_path): New function.
9385         (relocate_directory): Likewise.
9386         (get_init_files): Use relocate_path.
9387         (README): Mention --with-gdb-datadir.
9388
9389 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
9390
9391         * ada-tasks (task_command_1): Call target_find_new_threads.
9392
9393 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
9394
9395         * stack.c (do_gdb_disassembly): Print the exception message if an
9396         error was thrown while trying to perform the disassembly.
9397
9398 2009-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
9399
9400         * varobj.c (free_variable): Replace free_current_contents by xfree.
9401
9402 2009-04-22  Kazu Hirata  <kazu@codesourcery.com>
9403
9404         * arm-linux-nat.c (fetch_register, store_register): Use
9405         ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
9406         * arm-linux-tdep.c (arm_linux_supply_gregset,
9407         arm_linux_collect_gregset): Likewise.
9408         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
9409         * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
9410
9411 2009-04-22  Hui Zhu  <teawater@gmail.com>
9412
9413         * stack.c (_initialize_stack): Set the default of
9414         disassemble-next-line to off.
9415
9416 2009-04-21  Tom Tromey  <tromey@redhat.com>
9417
9418         * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
9419         * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
9420
9421 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
9422
9423         * configure.ac: Add quotes to not lose brackets in help text.
9424         * configure: Rebuild.
9425
9426 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
9427
9428         * configure.ac: Don't postprocess Makefile in config.status.
9429         Substitute GDB_NM_FILE.  Don't substitute nm_h.
9430         * Makefile.in (GDB_NM_FILE): Substitute.
9431         (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
9432         * configure: Regenerate.
9433         * gnulib/Makefile.in: Regenerate.
9434
9435 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
9436
9437         * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
9438         --with-htmldir): New.
9439         * configure: Regenerate.
9440
9441 2009-04-21  Tom Tromey  <tromey@redhat.com>
9442
9443         * configure: Rebuild.
9444         * configure.ac: Use lower case for start of help strings.  Clean
9445         up --with-sysroot help.
9446
9447 2009-04-21  Tom Tromey  <tromey@redhat.com>
9448
9449         * configure: Rebuild.
9450         * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
9451         * configure.ac: Use AC_HELP_STRING.  Use upper case for variables
9452         in help.
9453
9454 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
9455
9456         ARI fix: remove "%p".
9457         * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
9458         (ia64_sigtramp_frame_this_id): Ditto.
9459         (ia64_libunwind_frame_this_id): Ditto.
9460         (ia64_libunwind_sigtramp_frame_this_id): Ditto.
9461         * symmisc.c (maintenance_info_psymtabs): Ditto.
9462
9463 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
9464
9465         * configure.ac (--with-relocated-sources): New.
9466         * configure, config.in: Regenerate.
9467         * source.c (add_substitute_path_rule): Remove static.
9468         * source.h (add_substitute_path_rule): Declare.
9469         * main.c: Include "source.h".
9470         (captured_main): Add substitution rule if RELOC_SRCDIR.
9471
9472 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
9473
9474         * gnu-nat.h (proc_debug): Add missing continuation line in macro.
9475
9476 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
9477
9478         * NEWS: Mention MIPS/Linux hardware watchpoint support.
9479
9480 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
9481
9482         * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
9483         (maint_show_dr, super_close): New variables.
9484         (super_fetch_registers, super_store_registers): Make static.
9485         (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
9486         (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
9487         (pt_watch_style): Define new enum.
9488         (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
9489         Define new structs.
9490         (watch_readback_valid, watch_readback, current_watches, watch_mirror):
9491         New variables.
9492         (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
9493         (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
9494         (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
9495         (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
9496         (type_to_irw, fill_mask, try_one_watch)
9497         (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
9498         (mips_linux_new_thread, populate_regs_from_watches)
9499         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9500         (mips_linux_close): New functions.
9501         (_initialize_mips_linux_nat): Register watchpoint functions with
9502         the target_ops.  Add show-debug-regs maintenance command.
9503
9504 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
9505
9506         * infrun.c (handle_inferior_event): Move gegisters_changed call down.
9507
9508 2009-04-19  Pedro Alves  <pedro@codesourcery.com>
9509
9510         * NEWS: Mention gdbserver support for x86 Windows CE.
9511
9512 2009-04-19  Eli Zaretskii  <eliz@gnu.org>
9513
9514         * config/djgpp/fnchange.lst: Fix typos.
9515
9516         Set default host and target charsets in the DJGPP port.
9517
9518         * config/djgpp/config.sed (am_cv_langinfo_codeset)
9519         (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
9520         in all configure scripts that define ac_cv_env_CPP_value.
9521
9522         * go32-nat.c (dos_codepage, nl_langinfo): New functions.
9523         Include langinfo.h.
9524
9525         * config/djgpp/nl_types.h: New file.
9526
9527         * config/djgpp/langinfo.h: New file.
9528
9529         * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
9530
9531 2009-04-18  Carlos O'Donell  <carlos@codesourcery.com>
9532
9533         * Makefile.in (MAKEHTML): Set to makeinfo --html.
9534         (MAKEHTMLFLAGS): Set to empty.
9535
9536 2009-04-18  Eli Zaretskii  <eliz@gnu.org>
9537
9538         * NEWS: Mention all new set/show commands added since GDB 6.8 was
9539         released.
9540
9541         * go32-nat.c (go32_sysinfo): Check if the call to
9542         __dpmi_get_capabilities fills the buffer with information, and
9543         don't use the buffer if not.
9544
9545 2009-04-17  Tom Tromey  <tromey@redhat.com>
9546
9547         * charset.c (_initialize_charset): Add special case for "646".
9548
9549 2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>
9550
9551         * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
9552         * configure: Regenerate.
9553         * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
9554         configure substitutions.
9555         (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
9556
9557 2009-04-17  Pierre Muller  <muller@ics.u-strasbg.fr>
9558
9559         ARI fix: Do not use %p, replace by call to host_address_to_string
9560         for host pointers.
9561         * darwin-nat.c (darwin_xfer_partial): Apply change.
9562         * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
9563         * gnu-nat.h (proc_debug): Ditto.
9564         * symmisc.c (maintenance_info_symtabs): Ditto.
9565         (maintenance_info_psymtabs): Ditto.
9566         * windows-nat.c (handle_load_dll): Ditto.
9567         (handle_unload_dll, info_w32_command, handle_exception): Ditto.
9568         * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
9569
9570 2009-04-17  Joseph Myers  <joseph@codesourcery.com>
9571
9572         * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
9573         --enable-64-bit-bfd.
9574         (sparc-*-linux*): Likewise.
9575
9576 2009-04-17  Eli Zaretskii  <eliz@gnu.org>
9577
9578         * go32-nat.c (go32_sysinfo): Update list of Windows versions of
9579         the NT family.
9580
9581 2009-04-16  Pedro Alves  <pedro@codesourcery.com>
9582
9583         * remote.c (remote_query_attached): Fix pasto in packet_ok result
9584         checking.
9585
9586 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9587
9588         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
9589         Revert the previous change.  Might not be correct, actually.
9590
9591 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9592
9593         * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
9594         (ada_get_current_task, ada_print_exception_breakpoint_nontask)
9595         (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
9596         Remove declaration. These are non-existent functions.
9597
9598 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9599
9600         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
9601         Fix a compilation warning on mips-irix due to casting from
9602         a pointer of different size.
9603
9604 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9605
9606         * ada-lang.c (symtab_for_sym): Delete.
9607         (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
9608
9609 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9610
9611         * ada-lang.c (extract_string): Delete.
9612         (ada_main_name): Reimplement using target_read_string instead of
9613         extract_string.
9614
9615 2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
9616
9617         * m68klinux-nat.c: Remove obsolete comment.
9618         (fetch_register, store_register): Don't call
9619         gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
9620         which are always nops here.
9621
9622 2009-04-14  Tom Tromey  <tromey@redhat.com>
9623
9624         * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
9625         (c_printstr): Likewise.
9626         * charset.c: Include gdb_wait.h.
9627         (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
9628         (find_charset_names): Use pexecute.  Handle libiconv's output.
9629         Detect errors.
9630         (_initialize_charset): Use xstrdup.
9631         * gdb_wchar.h: Check HAVE_BTOWC.  Split PHONY_ICONV and wchar
9632         cases.
9633         (INTERMEDIATE_ENCODING): New define.
9634         * configure, config.in: Rebuild.
9635         * configure.ac: Check for btowc.
9636
9637 2009-04-15  Tom Tromey  <tromey@redhat.com>
9638
9639         * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
9640
9641 2009-04-15  Eli Zaretskii  <eliz@gnu.org>
9642
9643         * utils.c (parse_escape): Initialize target_char to pacify GCC.
9644
9645 2009-04-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
9646
9647         * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
9648
9649 2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
9650
9651         ARI fix: sprintf rule.
9652         * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
9653         * ada-lang.c (add_angle_brackets): Use xstrprintf.
9654         (ada_decode): Replace sprintf by xsnprintf.
9655         (find_old_style_renaming_symbol): Ditto.
9656         (ada_to_fixed_type_1, ada_enum_name): Ditto.
9657
9658
9659 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
9660
9661         * target.c (target_mourn_inferior): Call bfd_cache_close_all
9662         after having executed the target mourn_inferior routine.
9663
9664 2009-04-14  Eli Zaretskii  <eliz@gnu.org>
9665
9666         * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
9667         undefined.
9668
9669 2009-04-13  David Daney  <ddaney@caviumnetworks.com>
9670
9671         * infrun.c (maybe_software_singlestep): New function.
9672         (resume): Call maybe_software_singlestep.
9673         (handle_inferior_event): Same.
9674
9675 2009-04-13  Tom Tromey  <tromey@redhat.com>
9676
9677         * python/python-frame.c (frapy_richcompare): Return
9678         Py_NotImplemented, not an error.  Handle Py_NE as well.
9679
9680 2009-04-13  Eli Zaretskii  <eliz@gnu.org>
9681
9682         * charset.c (EILSEQ): Define if not defined by system headers.
9683
9684 2009-04-11  Eli Zaretskii  <eliz@gnu.org>
9685
9686         * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
9687         to be consistent with renaming config.intl.in into config_intl.in.
9688
9689         * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
9690         consistent with the change from 2008-11-09.
9691
9692 2009-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
9693
9694         * gdbtypes.c: Remove excessive parentheses at the return keywords.
9695         * varobj.c (varobj_invalidate): Fix indentation.
9696         * varobj.c (varobj_invalidate): Fix formatting text width.
9697
9698 2009-04-08  Vladimir Prus  <vladimir@codesourcery.com>
9699
9700         Implement -exec-jump.
9701
9702         * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
9703         * mi/mi-main.c (mi_cmd_exec_jump): New.
9704         * mi/mi-cmds.c (mi_cmds): Register exec-jump.
9705
9706 2009-04-07  Doug Evans  <dje@google.com>
9707
9708         * symfile.c (symbol_file_clear): Fix indentation.
9709
9710 2009-04-06  Mark Kettenis  <kettenis@gnu.org>
9711
9712         * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
9713
9714 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
9715
9716         * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
9717         (ppc_linux_auxv_parse): New function.
9718         (ppc_linux_read_description): Use ppc_linux_target_wordsize.
9719         (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
9720
9721 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
9722
9723         * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
9724         BFD to contents of SPU name note.
9725         (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
9726         with "from_tty" argument 1 instead of 0.
9727
9728 2009-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
9729
9730         * dwarf2read.c
9731         (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
9732         Create the symbol in local scope.
9733         * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
9734
9735 2009-04-02  Keith Seitz  <keiths@redhat.com>
9736
9737         * stabsread.c (read_member_functions): GCC may emit an extra space
9738         at the end of the names "__base_ctor" and "__base_dtor"; so ignore
9739         whitespace when looking for these functions.
9740
9741 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9742
9743         Change the default value for "set print frame-arguments" to scalars.
9744
9745         * stack.c (print_frame_arguments): Set initial value to "scalars".
9746
9747 2009-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
9748
9749         * mips-tdep.c (mips_numeric_register_alieses): New definition.
9750         (mips_gdbarch_init): Add user registers from
9751         mips_numeric_register_aliases.
9752
9753 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9754
9755         * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
9756
9757 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9758
9759         * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
9760         this is the last one.
9761
9762 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
9763
9764         * remote.c (append_resumption): New.
9765         (remote_vcont_resume): Use it.
9766
9767 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9768
9769         * windows-nat.c (+windows_get_ada_task_ptid): New function.
9770         (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
9771
9772 2009-03-31  Daniel Jacobowitz  <dan@codesourcery.com>
9773             Keith Seitz  <keiths@redhat.com>
9774             Jan Kratochvil  <jan.kratochvil@redhat.com>
9775
9776         PR gdb/6817
9777         * Makefile.in (dbxread.o): Update.
9778         * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
9779         * dwarf2read.c (GDB_FORM_cached_string): New.
9780         (read_partial_die): Use dwarf2_canonicalize_name.
9781         (dwarf2_linkage_name): Use dwarf2_name.
9782         (dwarf2_canonicalize_name): New.
9783         (dwarf2_name): Use dwarf2_canonicalize_name.
9784         (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
9785         * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
9786         * symtab.c (lookup_symbol_in_language): Canonicalize input before
9787         searching.
9788         * cp-name-parser.y: operator() requires two parameters,
9789         according to libiberty.
9790         * minsyms.c (lookup_minimal_symbol): Canonicalize input
9791         before searching.
9792         * NEWS: Update.
9793
9794 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
9795
9796         Provide support for (Ada) task-specific breakpoints.
9797
9798         * ada-lang.h (ada_get_task_number): Add declaration.
9799         (breakpoint_ada_task_match): Delete declaration.
9800         * ada-tasks.c (ada_get_task_number): Make non-static.
9801         * breakpoint.h (struct breakpoint): Add field "task".
9802         * breakpoint.c (print_one_breakpoint_location): Add handling of
9803         task-specific breakpoints.
9804         (create_breakpoint, create_breakpoints, find_condition_and_thread):
9805         New parameter "task".
9806         (break_command_really): Update calls to find_condition_and_thread
9807         and create_breakpoints.
9808         (breakpoint_re_set_one): Update call to find_condition_and_thread.
9809         Set b->task.
9810
9811 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
9812
9813         * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
9814
9815 2009-03-31  Pedro Alves  <pedro@codesourcery.com>
9816
9817         * remote.c (remote_notice_new_inferior): Use ptid_is_pid.  Check
9818         if the thread's ptid without a thread id field is in the list
9819         before calling thread_change_ptid.
9820         (extended_remote_attach_1): In non-stop mode, do not rely on
9821         querying the current thread, instead, query the thread list, and
9822         select the first thread of the process.
9823         * gdbthread.h (first_thread_of_process): Declare.
9824         * thread.c (first_thread_of_process): Define.
9825
9826 2009-03-30  Stan Shebs  <stan@codesourcery.com>
9827
9828         Make tracepoints into a type of breakpoint.
9829         * breakpoint.h (enum bptype): Add bp_tracepoint.
9830         (struct breakpoint): Add fields step_count, pass_count, actions.
9831         (get_tracepoint, get_tracepoint_by_number): Declare.
9832         (all_tracepoints): Declare.
9833         * breakpoint.c: Include tracepoint.h, readline.h.
9834         (ALL_TRACEPOINTS): Move here from tracepoint.c.
9835         (tracepoint_count): Ditto.
9836         (should_be_inserted): GDB does not insert tracepoints itself.
9837         (print_it_typical): Add tracepoint case.
9838         (bpstat_what): Ditto.
9839         (print_one_breakpoint_location): Ditto, and add printing for
9840         pass count, step count, and action list.
9841         (user_settable_breakpoint): Add tracepoint case.
9842         (allocate_bp_location): Ditto.
9843         (set_breakpoint_location_function): Ditto.
9844         (disable_breakpoints_in_shlibs): Ditto.
9845         (mention): Ditto.
9846         (break_command_really): Add argument traceflag, use to choose
9847         basic breakpoint type.
9848         (break_command_1): Pass extra argument.
9849         (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
9850         (breakpoint_re_set_one): Add tracepoint case.
9851         (disable_command, enable_command): Ditto.
9852         (set_tracepoint_count): Move here from tracepoint.c.
9853         (trace_command): Move here from tracepoint.c and use
9854         break_command_really.
9855         (tracepoints_info): Move here from tracepoint.c and call
9856         breakpoints_info.
9857         (enable_trace_command): Move here from tracepoint.c and call
9858         enable_command.
9859         (disable_trace_command): Move here from tracepoint.c and call
9860         disable_command.
9861         (delete_trace_command): Move here from tracepoint.c and call
9862         delete_breakpoint.
9863         (trace_pass_command): Move here from tracepoint.c.
9864         (get_tracepoint_by_number): Ditto.
9865         (tracepoint_save_command): Ditto.
9866         (get_tracepoint): New function.
9867         (all_tracepoints): New function.
9868         (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
9869         deprecate "enable trace" and "disable trace" commands.
9870         * tracepoint.h (struct tracepoint): Remove.
9871         (tracepoint_chain): Remove decl.
9872         (deprecated_create_tracepoint_hook): Remove decl.
9873         (deprecated_delete_tracepoint_hook): Remove decl.
9874         (deprecated_modify_tracepoint_hook): Remove decl.
9875         (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
9876         (free_actions): Update signature.
9877         (validate_actionline): Update signature.
9878         (end_actions_pseudocommand): Declare.
9879         (while_stepping_pseudocommand): Declare.
9880         * tracepoint.c: Include breakpoint.h.
9881         (tracepoint_chain, tracepoint_count): Remove.
9882         (free_actions, make_cleanup_free_actions): Update signature.
9883         (trace_command, set_raw_tracepoint): Remove.
9884         (trace_mention): Remove.
9885         (tracepoints_info): Remove.
9886         (tracepoint_operation, map_args_over_tracepoints): Remove.
9887         (get_tracepoint_by_number): Remove.
9888         (enable_trace_command, disable_trace_command): Remove.
9889         (delete_trace_command, trace_pass_command): Remove.
9890         (trace_actions_command, read_actions): Update signature.
9891         (validate_actionline): Update signature, use bp loc.
9892         (encode_actions): Ditto.
9893         (download_tracepoint): New function, body of trace_start_command.
9894         (trace_start_command): Call it, use all_tracepoints.
9895         (tracepoint_save_command): Remove.
9896         (tracepoint_dump_command): Use get_tracepoint.
9897         (end_actions_pseudocommand): Make globally visible.
9898         (while_stepping_pseudocommand): Ditto.
9899         (_initialize_tracepoint): Move command definitions to breakpoint.c.
9900
9901 2009-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9902
9903         Expose frames to Python.
9904         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
9905         (SUBDIR_PYTHON_SRCS): Add python-frame.c.
9906         (python-frame.o): New target.
9907         * python/python-frame.c: New file.
9908         * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
9909         gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
9910         gdbpy_initialize_frames): New prototypes.
9911         * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
9912         (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
9913         entries.
9914         * stack.c (find_frame_funname): New function, factored out of
9915         print_frame.
9916         (print_frame): Call find_frame_funname.
9917         * stack.h (find_frame_funname): Add prototype.
9918
9919 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9920
9921         Remove unused value_object attribute `owned_by_gdb'.
9922         * python/python-value.c (value_object): Remove owned_by_gdb
9923         attribute.
9924         (valpy_dealloc): Remove reference to self->owned_by_gdb.
9925         (valpy_new): Likewise.
9926         (value_to_value_object): Likewise.
9927
9928 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9929
9930         Change gdb.Value.address from a method to an attribute.
9931         * python/python-value.c (value_object): Add `address' element.
9932         (valpy_dealloc): Decrement reference to self->address if set.
9933         (valpy_new): Initialize val_obj->address.
9934         (valpy_address): Rename to ...
9935         (valpy_get_address): ... this.  Change signature from method to
9936         attribute.  Update self->address if not set.
9937         (value_to_value_object): Initialize val_obj->address.
9938         (value_object_getset): Add `address' element.
9939         (value_object_methods): Remove `address' element.
9940
9941 2009-03-29  Andreas Schwab  <schwab@linux-m68k.org>
9942
9943         * observer.sh: Set LANG/LC_ALL to C, not c.
9944
9945 2009-03-28  Kevin Buettner  <kevinb@redhat.com>
9946
9947         * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
9948         `char' is unsigned.
9949
9950 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
9951
9952         * remote.c (remote_stop_ns): If multi-process extensions are off,
9953         and GDB is requesting the whole process to stop, sent "vCont;t",
9954         not "vCont;t:-1"
9955
9956 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
9957
9958         * inf-loop.c (inferior_event_handler): Avoid calling is_running on
9959         null inferior_ptid.
9960
9961 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
9962
9963         * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
9964
9965 2009-03-26  Doug Evans  <dje@google.com>
9966
9967         * thread.c (do_restore_current_thread_cleanup): Redo test for
9968         whether to restore old->inferior_ptid.
9969
9970 2009-03-26  Tom Tromey  <tromey@redhat.com>
9971
9972         * breakpoint.c (resolve_sal_pc): Preserve original line number
9973         when skipping prologue.
9974
9975 2009-03-26  Doug Evans  <dje@google.com>
9976
9977         * thread.c (inferior_thread) Remove "extern" in definition.
9978
9979 2009-03-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9980
9981         Add gdb.Value.is_optimized_out attribute.
9982         * python/python-value.c (valpy_get_is_optimized_out): New
9983         function.
9984         (value_object_getset): New variable.
9985         (value_object_type): Initialize tp_getset element.
9986
9987 2009-03-26  Joel Brobecker  <brobecker@adacore.com>
9988
9989         Recognize missing DW_AT_location as <value optimized out>.
9990         * dwarf2read.c
9991         (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
9992         Call add_symbol_to_list.
9993
9994 2009-03-25  Tom Tromey  <tromey@redhat.com>
9995
9996         * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
9997         * stack.c (print_this_frame_argument_p): Use check_typedef.
9998
9999 2009-03-25  Tom Tromey  <tromey@redhat.com>
10000
10001         * configure: Rebuild.
10002         * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
10003         Rearrange flags setting.  Add comments.
10004
10005 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10006
10007         * config/i386/nm-i386.h: Remove code within
10008         I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
10009         * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
10010         macro.
10011         * config/i386/nm-cygwin64.h: Ditto.
10012         * config/i386/nm-fbsd.h: Ditto.
10013         * config/i386/nm-go32.h: Ditto.
10014         * config/i386/nm-linux.h: Ditto.
10015         * config/i386/nm-linux64.h: Ditto.
10016
10017 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10018
10019         ARI fix: "xasprintf" rule.
10020         * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
10021
10022 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
10023
10024         * remote.c (remote_start_remote): In non-stop mode, call
10025         init_wait_for_inferior before adding threads and inferiors.
10026
10027 2009-03-25  Joel Brobecker  <brobecker@adacore.com>
10028
10029         * breakpoint.c (breakpoint_thread_match): Split a large condition
10030         into several smaller conditions.  No behavior change.
10031
10032 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
10033
10034         * infrun.c (infrun_thread_thread_exit): New.
10035         (_initialize_infrun): Attach it to the thread_exit observer.
10036         * thread.c (delete_thread_1): Always call the observer, passing it
10037         the silent flag.
10038         * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
10039         SILENT, return immediately.
10040
10041 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
10042
10043         * infrun.c (normal_stop): Use has_stack_frames instead of
10044         target_has_stack.
10045         * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
10046         when there is no thread selected.
10047         (mi_cmd_execute): Don't special case commands that can run without
10048         a valid selected thread.
10049         * top.c (execute_command): Don't special case commands that can
10050         run without a valid selected thread.  Use has_stack_frames.
10051         * infcmd.c (ensure_valid_thread): New.
10052         (continue_1, step_1, jump_command, signal_command): Use it.
10053         (detach_command): Error out if there's no selected thread/inferior.
10054         * thread.c (print_thread_info): Allow having no thread selected.
10055         (switch_to_thread): Don't read the PC if there is no current thread.
10056         (do_restore_current_thread_cleanup): Don't record the current
10057         frame if there is no current thread.
10058         (make_cleanup_restore_current_thread): Don't read frame info if
10059         there is no selected thread.
10060         (_initialize_thread): Don't mark commands as
10061         "no_selected_thread_ok".
10062         * frame.c (get_current_frame): Error out if there is no valid
10063         selected thread.
10064         (has_stack_frames): Return false if there is no valid
10065         selected thread.
10066         * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
10067         "no_selected_thread_ok".
10068         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
10069         (get_cmd_no_selected_thread_ok): Delete.
10070         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
10071         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
10072         Delete declaration.
10073         * stack.c (get_selected_block): Use has_stack_frames.
10074
10075 2009-03-25  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10076
10077         Fix size of FPSCR in Power 7 processors.
10078         * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
10079         (PPC_FEATURE_HAS_DFP): New #define.
10080         (ppc_linux_read_description): Check for DFP feature instead of
10081         ISA 2.05 to decide on size of the FPSCR.
10082
10083 2009-03-25  Kevin Buettner  <kevinb@redhat.com>
10084
10085         * mn10300-tdep.c (trad-frame.h): Don't include.
10086         (prologue-value.h): Include.
10087         (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
10088         (struct mn10300_prologue): Define.
10089         (push_reg, translate_rreg, check_for_saved): New functions.
10090         (mn10300_analyze_prologue): Rewrite, using prologue-value
10091         machinery.  Handle more instructions than before.  Permit
10092         instructions to occur in any order.
10093         (mn10300_skip_prologue): Find the extents of the function
10094         in question; mn10300_analyze_prologue no longer does this.
10095         (mn10300_analyze_frame_prologue): New function.
10096         (mn10300_frame_base): New function.
10097         (mn10300_frame_this_id): Rewrite, no longer using trad-frame
10098         implementation.
10099         (mn10300_frame_prev_register): Likewise.
10100         (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
10101         (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
10102         `this_frame'.
10103         (mn10300_frame_unwind_init): Don't call frame_base_set_default().
10104
10105 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10106
10107         Fix completer problem for filename completion on the first try.
10108
10109         * gdb/completer.h (gdb_completion_word_break_characters): New function.
10110         * gdb/completer.c: Include gdb_assert.h.
10111         (complete_line_internal_reason): New enum.
10112         (complete_line_internal): Change last argument type to
10113         complete_line_internal_reason.
10114         Modify function to handle the different complete_line_internal_reason
10115         argument values.
10116         (complete_line): Adapt to change in complete_line_internal.
10117         (command_completer): Ditto.
10118         (gdb_completion_word_break_characters): Implement new function.
10119         * top.c (init_main): Set  rl_completion_word_break_hook to
10120         gdb_completion_word_break_characters.
10121
10122
10123 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
10124
10125         ARI fix: "strlen d_name" rule.
10126         * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
10127
10128
10129 2009-03-24  Tom Tromey  <tromey@redhat.com>
10130             Pedro Alves  <pedro@codesourcery.com>
10131
10132         * configure, config.in: Rebuild.
10133         * configure.ac: Check for libiconvlist.
10134         * charset.c: Check HAVE_LIBICONVLIST.
10135         * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
10136         LIBICONV_LIBDIR.  Update CPPFLAGS and LIBS.
10137         * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
10138         Remove.
10139         (INTERNAL_CFLAGS_BASE): Update.
10140         (INTERNAL_LDFLAGS): Update.
10141         (CLIBS): Update.
10142
10143 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10144
10145         * configure.ac: Initialize the variable $PREFER_CURSES.
10146         * configure: Regenerated.
10147
10148 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10149
10150         * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
10151         * configure: Regenerated.
10152
10153 2009-03-24  Pierre Muller  <muller@ics.u-strasbg.fr>
10154
10155         ARI fix: "strerror" rule.
10156         * darwin-nat.c (darwin_ptrace): Use safe_strerror.
10157         (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
10158
10159 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10160
10161         * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
10162         before looking up the fields inside our struct type.
10163
10164 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10165
10166         * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
10167         trying to resolve the type qualification.
10168
10169 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10170
10171         * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
10172         we try to apply the attribute on the real type, rather than
10173         its associated typedef.
10174
10175 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10176
10177         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
10178         to make sure we try to get the modulus of the actual type, not the
10179         associated typedef.
10180
10181 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10182
10183         * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
10184         [OP_ATR_LENGTH]: When using the attribute on a type, make sure
10185         to get the real type, not the associated typedef.
10186
10187 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10188
10189         * ada-lang.c (ada_get_field_index): Add handling of the case
10190         when TYPE is a typedef of a struct.
10191
10192 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10193
10194         Add gdb_usleep as a portable version of usleep based on gdb_select.
10195         * gdb_usleep.h, gdb_usleep.c: New files.
10196         * Makefile.in (SFILES): Add gdb_usleep.c.
10197         (HFILES_NO_SRCDIR): Add gdb_usleep.h.
10198         (COMMON_OBS): Add gdb_usleep.o.
10199         * ser-unix.c (hardwire_send_break): Replace call to gdb_select
10200         by call to gdb_usleep.
10201
10202 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10203
10204         * buildsym.c (end_symtab): If we ignore the subfiles, then
10205         unlink the associated symtabs if they were already allocated.
10206
10207 2009-03-23  Jerome Guitton  <guitton@adacore.com>
10208
10209         Provide a way to force building of GDB with libcurses.
10210         * configure.ac: Add --with-curses.
10211         * configure: Regenerated.
10212
10213 2009-03-23  Tom Tromey  <tromey@redhat.com>
10214
10215         * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
10216         error message.
10217
10218 2009-03-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
10219
10220         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
10221         solib_contains_address_p instead of searching.
10222
10223 2009-03-23  Tom Tromey  <tromey@redhat.com>
10224
10225         * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
10226         (iconv): Make 'inbuf' argument const.
10227         (convert_between_encodings): Use ICONV_CONST.
10228         (wchar_iterate): Likewise.
10229
10230 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
10231
10232         * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
10233         dynamically loaded function.
10234         (LookupPrivilegeValueA): Ditto.
10235         (OpenProcessToken): Ditto.
10236         (AdjustTokenPrivileges): Rename and define placeholder for address of
10237         dynamically loaded function.
10238         (LookupPrivilegeValueA): Ditto.
10239         (OpenProcessToken): Ditto.
10240         (set_process_privilege): Remove check for loaded functions.
10241         (bad_OpenProcessToken): Define.
10242         (_initialize_loadable): Load token functions from advapi here, setting
10243         OpenProcessToken function to a dummy static function which always return
10244         error if OS doesn't support this functionality.
10245
10246 2009-03-22   Nicolas Roche  <roche@adacore.com>
10247              Christopher Faylor <me+cygwin@cgf.cx>
10248
10249         * win32-nat.c (ctrl_c_handler): New function.
10250         (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
10251         is run in a separate console.
10252
10253 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
10254
10255         * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
10256         for dynamically loaded function.
10257         (DebugBreakProcess): Ditto.
10258         (DebugSetProcessKillOnExit): Ditto.
10259         (EnumProcessModules): Ditto.
10260         (GetModuleFileNameExA): Ditto.
10261         (GetModuleInformation): Ditto.
10262         (DebugActiveProcessStop): Rename and define placeholder for address of
10263         dynamically loaded function.
10264         (DebugBreakProcess): Ditto.
10265         (DebugSetProcessKillOnExit): Ditto.
10266         (EnumProcessModules): Ditto.
10267         (GetModuleFileNameExA): Ditto.
10268         (GetModuleInformation): Ditto.
10269         (psapi_loaded): Delete.
10270         (get_module_name): Don't check psapi_loaded, just rely on the fact that
10271         dynamically loaded functions will return failure if they weren't
10272         previously found.
10273         (has_detach_ability): Delete.
10274         (windows_attach): Remove call to has_detach_ability ().  Just rely on
10275         functions being callable.
10276         (bad_DebugActiveProcessStop): Define.
10277         (bad_DebugBreakProcess): Ditto.
10278         (bad_DebugSetProcessKillOnExit): Ditto.
10279         (bad_EnumProcessModules): Ditto.
10280         (bad_GetModuleFileNameExA): Ditto.
10281         (bad_GetModuleInformation): Ditto.
10282         (_initialize_loadable): Rename from _initialize_psapi.  Initialize all
10283         dynamic storage here, setting nonexistent functions to dummy static
10284         functions which always return error.
10285
10286 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10287
10288         * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
10289         to the about_to_proceed observer notification.
10290         (mi_about_to_proceed): New.
10291         (mi_on_resume): Only output ^running and the prompt here if the
10292         target was proceeded.
10293         * breakpoint.c (breakpoint_proceeded): New static.
10294         (breakpoint_about_to_proceed): New.
10295         (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
10296         the about_to_proceed observer notification.
10297         * inferior.h (breakpoint_proceeded): Delete declaration.
10298         * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
10299         Notify the about_to_proceed observers.
10300         (struct inferior_status): Delete breakpoint_proceeded member.
10301         (save_inferior_status): Don't save it.
10302         (restore_inferior_status): Don't restore it.
10303         * mi-main.h (mi_proceeded): Declare.
10304         * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
10305         a command.
10306
10307 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10308
10309         * gdbthread.h (struct thread_info): Add in_infcall member.
10310         * infcall.c (run_inferior_call): Save, set and restore in_infcall.
10311         Remove reverences to suppress_resume_observer.  Refresh
10312         `call_thread' after returning from `proceed'.
10313         * infcmd.c (suppress_resume_observer): Delete.
10314         * inferior.h (suppress_resume_observer): Delete declaration.
10315         * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
10316         inferior function.
10317         * thread.c (set_running): Remove references to
10318         suppress_resume_observer.
10319         * infrun.c (struct inferior_status): Add in_infcall member.
10320         (save_inferior_status): Save it.
10321         (restore_inferior_status): Restore it.
10322
10323 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10324
10325         * infcall.c (run_inferior_call): Remove references to
10326         suppress_stop_observer.
10327         * infcmd.c (suppress_stop_observer): Delete.
10328         (finish_command_continuation): Remove NOTE.  Don't clear
10329         suppress_stop_observer anymore.
10330         (finish_command_continuation_free_arg): Likewise.
10331         (finish_forward): Remove references to suppress_stop_observer.
10332         Call normal_stop observer if we haven't already.
10333         * inferior.h (suppress_stop_observer): Delete.
10334         * infrun.c (normal_stop): When deciding to suppress the
10335         normal_stop observer, check for proceed_to_finish instead of
10336         suppress_stop_observer.
10337
10338 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10339
10340         * symfile.c (symfile_relocate_debug_section): Remove check for
10341         SEC_DEBUGGING.
10342
10343 2009-03-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
10344             Jim Blandy  <jimb@red-bean.com>
10345             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10346             Tom Tromey  <tromey@redhat.com>
10347
10348         Miscellaneous fixes to the Python code.
10349         * python/python-cmd.c (cmdpy_init): Accept keyword
10350         arguments.
10351         * python/python-value.c (valpy_string): Accept keyword
10352         arguments.
10353         (valpy_binop): Use `break' to exit from the TRY_CATCH block.
10354         Do not call value_to_value_object on NULL RES_VAL.
10355         (value_object_methods): Change `string' entry to also accept
10356         keyword arguments.
10357         (convert_value_from_python): Return a copy of the value if obj is
10358         a gdb.Value object.
10359         (value_object_methods): Mark the `string' method as accepting
10360         keywords, and show method "prototype" in the doc string.
10361         * python/python.c (get_parameter): Don't return inside a
10362         TRY_CATCH.
10363
10364 2009-03-20  Tom Tromey  <tromey@redhat.com>
10365
10366         Add support for convenience functions in Python.
10367         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
10368         (SUBDIR_PYTHON_SRCS): Add python-function.c.
10369         (python-function.o): New target.
10370         * eval.c: Include "python/python.h" and <ctype.h>.
10371         (evaluate_subexp_standard): Handle values of type
10372         TYPE_CODE_INTERNAL_FUNCTION.
10373         * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
10374         * parse.c (write_exp_string): Remove duplicate word in comment.
10375         * python/python-function.c: New file.
10376         * python/python-internal.h (gdbpy_initialize_functions): Add
10377         prototype.
10378         * python/python.c (_initialize_python): Call
10379         gdbpy_initialize_functions.
10380         * valprint.c (value_check_printable): Handle values of type
10381         TYPE_CODE_INTERNAL_FUNCTION.
10382         * value.c: Include "cli/cli-decode.h".
10383         (internal_function): New struct.
10384         (functionlist, internal_fn_type): New static variables.
10385         (lookup_only_internalvar,
10386         lookup_internalvar): Add const qualifier to name argument.
10387         (create_internalvar): Likewise.  Initialize new field.
10388         (set_internal_var): Fix typo in comment.  Don't allow assignment
10389         to canonical variable.
10390         (value_create_internal_function, value_internal_function_name,
10391         call_internal_function, function_command, function_destroyer,
10392         add_internal_function): New functions.
10393         (_initialize_values): Create `function' placeholder command.
10394         Initialize internal_fn_type.
10395         * value.h (lookup_only_internalvar, create_internalvar,
10396         lookup_internalvar): Add const qualifier to name argument.
10397         (internal_function_fn, add_internal_function, call_internal_function,
10398         value_internal_function_name): Add prototypes.
10399         (struct internalvar) <canonical>: New field.
10400
10401 2009-03-20  Tom Tromey  <tromey@redhat.com>
10402
10403         * c-lang.c (evaluate_subexp_c): Call check_typedef.
10404
10405 2009-03-20  Tom Tromey  <tromey@redhat.com>
10406             Julian Brown  <julian@codesourcery.com>
10407
10408         PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
10409         PR i18n/9401, PR exp/9613:
10410         * NEWS: Update
10411         * value.h (value_typed_string): Declare.
10412         (val_print_string): Update.
10413         * valprint.h (print_char_chars): Update.
10414         * valprint.c (print_char_chars): Add type argument.  Update.
10415         (val_print_string): Likewise.
10416         * valops.c (value_typed_string): New function.
10417         * utils.c (host_char_to_target): New function.
10418         (parse_escape): Use host_char_to_target, host_hex_value.  Update.
10419         Remove '^' case.
10420         (no_control_char_error): Remove.
10421         * typeprint.c (print_type_scalar): Update.
10422         * scm-valprint.c (scm_scmval_print): Update.
10423         * scm-lang.h (scm_printchar, scm_printstr): Update.
10424         * scm-lang.c (scm_printchar): Add type argument.
10425         (scm_printstr): Likewise.
10426         * printcmd.c (print_formatted): Update.
10427         (print_scalar_formatted): Update.
10428         (printf_command) <wide_string_arg, wide_char_arg>: New constants.
10429         Handle '%lc' and '%ls'.
10430         * parser-defs.h (struct typed_stoken): New type.
10431         (struct stoken_vector): Likewise.
10432         (write_exp_string_vector): Declare.
10433         * parse.c (write_exp_string_vector): New function.
10434         * p-valprint.c (pascal_val_print): Update.
10435         * p-lang.h (is_pascal_string_type, pascal_printchar,
10436         pascal_printstr): Update.
10437         * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
10438         Add 'char_type' argument.
10439         (pascal_emit_char): Add type argument.
10440         (pascal_printchar): Likewise.
10441         (pascal_printstr): Likewise.
10442         * objc-lang.c (objc_emit_char): Add type argument.
10443         (objc_printchar): Likewise.
10444         (objc_printstr): Likewise.
10445         * macroexp.c (get_character_constant): Handle unicode characters.
10446         Use c_parse_escape.
10447         (get_string_literal): Handle unicode strings.  Use
10448         c_parse_escape.
10449         * m2-valprint.c (print_unpacked_pointer): Update.
10450         (m2_print_array_contents): Update.
10451         (m2_val_print): Update.
10452         * m2-lang.c (m2_emit_char): Add type argument.
10453         (m2_printchar): Likewise.
10454         (m2_printstr): Likewise.
10455         * language.h (struct language_defn) <la_printchar>: Add type
10456         argument.
10457         <la_printstr, la_emitchar>: Likewise.
10458         (LA_PRINT_CHAR): Likewise.
10459         (LA_PRINT_STRING): Likewise.
10460         (LA_EMIT_CHAR): Likewise.
10461         * language.c (unk_lang_emit_char): Add type argument.
10462         (unk_lang_printchar): Likewise.
10463         (unk_lang_printstr): Likewise.
10464         * jv-valprint.c (java_val_print): Update.
10465         * jv-lang.c (java_emit_char): Add type argument.
10466         * f-valprint.c (f_val_print): Update.
10467         * f-lang.c (f_emit_char): Add type argument.
10468         (f_printchar): Likewise.
10469         (f_printstr): Likewise.
10470         * expprint.c (print_subexp_standard): Update.
10471         * charset.h (target_wide_charset): Declare.
10472         (c_target_char_has_backslash_escape, c_parse_backslash,
10473         host_char_print_literally, host_char_to_target,
10474         target_char_to_host, target_char_to_control_char): Remove.
10475         (enum transliterations): New type.
10476         (convert_between_encodings): Declare.
10477         (HOST_ESCAPE_CHAR): New define.
10478         (host_letter_to_control_character, host_hex_value): Declare.
10479         (enum wchar_iterate_result): New enum.
10480         (struct wchar_iterator): Declare.
10481         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
10482         wchar_push_back): Declare.
10483         * charset-list.h: New file.
10484         * c-valprint.c (textual_name): New function.
10485         (textual_element_type): Handle wide character types.
10486         (c_val_print): Pass original type to textual_element_type.  Handle
10487         wide character types.
10488         (c_value_print): Use textual_element_type.  Pass original type of
10489         value to val_print.
10490         * c-lang.h (enum c_string_type): New type.
10491         (c_printchar, c_printstr): Update.
10492         * c-lang.c (classify_type): New function.
10493         (print_wchar): Likewise.
10494         (c_emit_char): Add type argument.  Handle wide characters.
10495         (c_printchar): Likewise.
10496         (c_printstr): Add type argument.  Handle wide and multibyte
10497         character sets.
10498         (convert_ucn): New function.
10499         (emit_numeric_character): Likewise.
10500         (convert_octal): Likewise.
10501         (convert_hex): Likewise.
10502         (ADVANCE): New macro.
10503         (convert_escape): New function.
10504         (parse_one_string): Likewise.
10505         (evaluate_subexp_c): Likewise.
10506         (exp_descriptor_c): New global.
10507         (c_language_defn): Use exp_descriptor_c.
10508         (cplus_language_defn): Likewise.
10509         (asm_language_defn): Likewise.
10510         (minimal_language_defn): Likewise.
10511         (charset_for_string_type): New function.
10512         * c-exp.y (%union): Add 'svec' and 'tsval'.
10513         (CHAR): New token.
10514         (exp): Add CHAR production.
10515         (string_exp): Rewrite.
10516         (exp) <string_exp>: Rewrite.
10517         (tempbuf): Now global.
10518         (tempbuf_init): New global.
10519         (parse_string_or_char): New function.
10520         (yylex) <tempbuf>: Now global.
10521         <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
10522         Remove.
10523         Handle 'u', 'U', and 'L' prefixes.  Call parse_string_or_char.
10524         (c_parse_escape): New function.
10525         * auxv.c (fprint_target_auxv): Update.
10526         * ada-valprint.c (ada_emit_char): Add type argument.
10527         (ada_printchar): Likewise.
10528         (ada_print_scalar): Update.
10529         (printstr): Add type argument.  Update calls to ada_emit_char.
10530         (ada_printstr): Add type argument.
10531         (ada_val_print_array): Update.
10532         (ada_val_print_1): Likewise.
10533         * ada-lang.c (emit_char): Add type argument.
10534         * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
10535         type arguments.
10536         * gdb_locale.h: Include langinfo.h.
10537         * charset.c (_initialize_charset): Set default host charset from
10538         the locale.  Don't register charsets.  Add target-wide-charset
10539         commands.  Call find_charset_names.
10540         (struct charset, struct translation): Remove.
10541         (GDB_DEFAULT_HOST_CHARSET): Remove.
10542         (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
10543         (target_wide_charset_name): New global.
10544         (show_host_charset_name): Handle "auto".
10545         (show_target_wide_charset_name): New function.
10546         (host_charset_enum, target_charset_enum): Remove.
10547         (charset_enum): New global.
10548         (all_charsets, register_charset, lookup_charset, all_translations,
10549         register_translation, lookup_translation): Remove.
10550         (simple_charset, ascii_print_literally, ascii_to_control): Remove.
10551         (iso_8859_print_literally, iso_8859_to_control,
10552         iso_8859_family_charset): Remove.
10553         (ebcdic_print_literally, ebcdic_to_control,
10554         ebcdic_family_charset): Remove.
10555         (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
10556         register_iconv_charsets): Remove.
10557         (target_wide_charset_be_name, target_wide_charset_le_name): New
10558         globals.
10559         (identity_either_char_to_other): Remove.
10560         (set_be_le_names, validate): New functions.
10561         (backslashable, backslashed, represented): Remove.
10562         (default_c_target_char_has_backslash_escape): Remove.
10563         (default_c_parse_backslash, iconv_convert): Remove.
10564         (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
10565         ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
10566         iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
10567         ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
10568         ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
10569         ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
10570         (table_convert_char, table_translation, simple_table_translation):
10571         Remove.
10572         (current_host_charset, current_target_charset,
10573         c_target_char_has_backslash_escape_func,
10574         c_target_char_has_backslash_escape_baton): Remove.
10575         (c_parse_backslash_func, c_parse_backslash_baton): Remove.
10576         (host_char_to_target_func, host_char_to_target_baton): Remove.
10577         (target_char_to_host_func, target_char_to_host_baton): Remove.
10578         (cached_iconv_host_to_target, cached_iconv_target_to_host):
10579         Remove.
10580         (lookup_charset_or_error, check_valid_host_charset): Remove.
10581         (set_host_and_target_charsets): Remove.
10582         (set_host_charset, set_target_charset): Remove.
10583         (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
10584         (set_target_wide_charset_sfunc): New function.
10585         (show_charset): Print target wide character set.
10586         (host_charset, target_charset): Rewrite.
10587         (target_wide_charset): New function.
10588         (c_target_char_has_backslash_escape): Remove.
10589         (c_parse_backslash): Remove.
10590         (host_letter_to_control_character): New function.
10591         (host_char_print_literally): Remove.
10592         (host_hex_value): New function.
10593         (target_char_to_control_char): Remove.
10594         (cleanup_iconv): New function.
10595         (convert_between_encodings): New function.
10596         (target_char_to_host): Remove.
10597         (struct wchar_iterator): Define.
10598         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
10599         wchar_push_back): New functions.
10600         (do_cleanup_iterator): New function.
10601         (char_ptr): New typedef.
10602         (charsets): New global.
10603         (add_one, find_charset_names): New functions.
10604         (default_charset_names): New global.
10605         (auto_host_charset_name): Likewise.
10606         * aclocal.m4, config.in, configure: Rebuild.
10607         * configure.ac: Call AM_LANGINFO_CODESET.
10608         (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
10609         (AM_ICONV): Invoke earlier.
10610         * acinclude.m4: Include codeset.m4.  Subst LIBICONV_INCLUDE and
10611         LIBICONV_LIBDIR.  Check for libiconv in build tree.
10612         * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
10613         (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
10614         (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
10615         * gdb_obstack.h (obstack_grow_wstr): New define.
10616         * gdb_wchar.h: New file.
10617         * defs.h: Include it.
10618
10619 2009-03-20  Tom Tromey  <tromey@redhat.com>
10620             Jan Kratochvil  <jan.kratochvil@redhat.com>
10621
10622         * dwarf2read.c (process_die): Handle DW_TAG_typedef.
10623         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
10624         typedef.
10625         * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
10626         SYMBOL_TYPE result.
10627         * ada-typeprint.c (print_array_type): Do the NULL check
10628         unconditionally.
10629
10630 2009-03-19  Tom Tromey  <tromey@redhat.com>
10631
10632         * utils.c (do_obstack_free): New function.
10633         (make_cleanup_obstack_free): Likewise.
10634         * defs.h (make_cleanup_obstack_free): Declare.
10635
10636 2009-03-18  Doug Evans  <dje@google.com>
10637
10638         * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
10639         int, not a long long.
10640         (linux_nat_info_proc_cmd): Store pid in long instead of long long.
10641
10642         * expprint.c (dump_raw_expression): Print note if non-NULL.
10643
10644         * printcmd.c (display_uses_solib_p): Redo loop, scan element list
10645         backwards.
10646
10647 2009-03-18  Nathan Sidwell  <nathan@codesourcery.com>
10648
10649         * Makefile.in: Update license to GPLv3.
10650         * ada-exp.y: Update license to GPLv3.
10651         * ada-lex.l: Update license to GPLv3.
10652         * c-exp.y: Update license to GPLv3.
10653         * cp-name-parser.y: Update license to GPLv3.
10654         * darwin-nat-info.c: Update license to GPLv3.
10655         * f-exp.y: Update license to GPLv3.
10656         * gdb_thread_db.h: Update license to GPLv3.
10657         * hppanbsd-nat.c: Update license to GPLv3.
10658         * hppanbsd-tdep.c: Update license to GPLv3.
10659         * hppaobsd-tdep.c: Update license to GPLv3.
10660         * jv-exp.y: Update license to GPLv3.
10661         * m2-exp.y: Update license to GPLv3.
10662         * objc-exp.y: Update license to GPLv3.
10663         * p-exp.y: Update license to GPLv3.
10664         * reply_mig_hack.awk: Update license to GPLv3.
10665         * reverse.c: Update license to GPLv3.
10666         * xtensa-xtregs.c: Update license to GPLv3.
10667
10668 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
10669
10670         * remote.c (remote_close): Don't call generic_mourn_inferior.
10671         (remote_mourn_1): Call generic_mourn_inferior after closing the
10672         target.
10673
10674 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
10675
10676         * remote.c (remote_start_remote): Add missing call to
10677         init_wait_for_inferior in non-stop mode.
10678
10679 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
10680
10681         * breakpoint.c (bpstat_should_step): Only consider software
10682         watchpoints that have a location.
10683
10684 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
10685
10686         Add a target_ops parameter to the to_kill method in struct target_ops.
10687
10688         * target.h (struct target_ops): Add a "target_ops *" parameter to
10689         method to_kill.
10690         (target_kill): Remove macro. Add declaration.
10691         * target.c (debug_to_kill): Delete, no longer necessary.
10692         (target_kill): New function.
10693         (update_current_target):  Stop inheriting the to_kill method.
10694         Do not de_fault it to no_process either.
10695         (setup_target_debug): Do not set current_target.to_kill.
10696         * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
10697         linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
10698         remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
10699         accordingly.
10700
10701 2009-03-17  Doug Evans  <dje@google.com>
10702
10703         * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
10704         glibc 2.3.2 and earlier.
10705
10706 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
10707
10708         * frame.c (get_prev_frame_1): Do not perform the inner_frame
10709         sanity check if this_frame is not NORMAL.
10710         (frame_id_inner): Update the description of this function.
10711
10712 2009-03-17  Hui Zhu  <teawater@gmail.com>
10713
10714         * stack.c: Change the introduce of "disassemble-next-line".
10715
10716 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
10717
10718         * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
10719         declare as extern.
10720
10721 2009-03-17  Hui Zhu  <teawater@gmail.com>
10722
10723         * stack.c: Include valprint.h.
10724         (disassemble_next_line): New enum.
10725         (show_disassemble_next_line): New function.  Show the current
10726         value of disassemble-next-line.
10727         (gdb_disassembly_stub_args): New struct for argument passing
10728         between function do_gdb_disassembly and function
10729         gdb_disassembly_stub.
10730         (gdb_disassembly_stub): New function.  Helper for
10731         gdb_disassembly.
10732         (do_gdb_disassembly): New function.  Use TRY_CATCH to catch
10733         the exception from the gdb_disassembly because it will be
10734         broken by filter sometime.
10735         (print_frame_info): If disassemble-next-line is set to auto
10736         or on and doesn't have the line debug messages for $pc,
10737         output the next instruction.
10738         If disassemble-next-line is set to on and there is line debug
10739         messages, output assembly codes for next line.
10740         (_initialize_stack): Make the "set disassemble-next-line"
10741         command an auto-boolean command.  Change its class to
10742         class_stack.  Place it in the top level set list.  Extend help
10743         to describe the auto mode.
10744
10745 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
10746
10747         * infrun.c (normal_stop): Don't overwrite old_chain.
10748
10749 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10750
10751         * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
10752         which is undefined, by call to regcache_invalidate, which should
10753         do what the original author wanted to do.
10754
10755 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10756
10757         * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
10758         (mips_create_inferior): Likewise.
10759
10760 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10761
10762         * go32-nat.c (go32_create_inferior): Add missing ops parameter.
10763
10764 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10765
10766         * darwin-nat.c (darwin_resume): Fix a compiler warning when
10767         building on x86_64-darwin.
10768
10769 2009-03-16  Tristan Gingold  <gingold@adacore.com>
10770
10771         * configure.tgt: Add handling for x86_64-darwin.
10772
10773 2009-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
10774
10775         * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
10776
10777 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
10778
10779         * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
10780         Use the ops parameter to get to the target beneath, rather than
10781         using the current_target global.  Using the current_target global
10782         was an unintended accident.
10783
10784 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
10785
10786         Fix an error happening while loading symbols from a core file
10787         (on AIX).
10788
10789         * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
10790         to detect whether we're debugging a core file or not.
10791
10792 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
10793
10794         Modernize the aix-thread later by getting rid of the base_target
10795         global.  This brings back to life the AIX port which was otherwise
10796         crashing all the time.
10797
10798         * aix-thread.c (base_target): Delete.
10799         (pd_enable): Do not set base_target.
10800         (aix_thread_attach): Use find_target_beneath instead of base_target.
10801         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10802         (aix_thread_fetch_registers, aix_thread_store_registers),
10803         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10804         (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
10805         (aix_thread_kill): Delete. Does not seem necessary.
10806         (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
10807
10808 2009-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
10809
10810         * stack.c (return_command <retval_exp>): New variables retval_expr
10811         and old_chain.  Inline parse_and_eval to initialize retval_expr.  Check
10812         RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
10813         if RETURN_TYPE is NULL.
10814
10815 2009-03-14  Pedro Alves  <pedro@codesourcery.com>
10816
10817         * remote.c (PACKET_qAttached): New.
10818         (remote_query_attached): New.
10819         (remote_add_inferior): Add new `attached' argument.  Handle it.
10820         (remote_notice_new_inferior, remote_start_remote): Adjust to pass
10821         -1 to remote_add_inferior in new parameter.
10822         (extended_remote_attach_1): Adjust to pass 1 to
10823         remote_add_inferior in the new parameter.
10824         (extended_remote_create_inferior_1): Adjust to pass 0 to
10825         remote_add_inferior in the new parameter.
10826         (_initialize_remote): Add "set/show remote query-attached-packet"
10827         commands.
10828
10829 2009-03-13  Tom Tromey  <tromey@redhat.com>
10830
10831         * symtab.c (lookup_symbol_in_language): Use a cleanup.
10832
10833 2009-03-13  Doug Evans  <dje@google.com>
10834
10835         * exceptions.h: Clean up some comments on catch_exceptions usage.
10836         * exceptions.c: Ditto.  Plus mark catch_errors as superseded by
10837         catch_exceptions.
10838
10839 2009-02-17  Joel Brobecker  <brobecker@adacore.com>
10840
10841         The following patch helps getting rid of a warning inside solib-som.c.
10842
10843         * source.c (source_full_path_of): Constify parameter filename.
10844         * defs.h (source_full_path_of): Update declaration accordingly.
10845
10846 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10847
10848         * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
10849         BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
10850         Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
10851
10852 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10853
10854         * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
10855         promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
10856
10857 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10858
10859         * ada-tasks.c (ada_task_is_alive): Move up and make static.
10860         * ada-lang.h (ada_task_is_alive): Remove declaration.
10861
10862 2009-03-12  Jerome Guitton  <guitton@adacore.com>
10863
10864         * ada-lang.c (ada_delta): Change the type of numerators and
10865         denominators to DOUBLEST, as they may not fit into a long.
10866         (scaling_factor): Ditto.
10867
10868 2009-03-12  Jerome Guitton  <guitton@adacore.com>
10869
10870         * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
10871
10872 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10873
10874         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
10875         types, if we are unable to determine the actual symbol type
10876         from its tag, then use the static approximation instead.
10877
10878 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10879
10880         Fix crash printing packed record with packed array.
10881
10882         * ada-lang.c (ada_modulus_from_name): New function.
10883         (ada_modulus): In the case where the type length is bigger than
10884         the size of the type used to hold the bounds, try determining
10885         the modulus from the type name.
10886         (ada_value_primitive_packed_val): Fix bug in the computation of
10887         ntarg causing an out-of-buffer invalid access.
10888
10889 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10890
10891         Fix segfault when printing short_integer'last.
10892
10893         * ada-lang.c (ada_find_any_type): Search in the primitive types
10894         if a symbol could not be found.
10895
10896 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10897
10898         * ada-tasks.c (task_states,long_task_states): Add new states
10899         Activating and Acceptor_Delay_Sleep.  Update the description
10900         of state Acceptor_Sleep.
10901
10902 2009-03-12  Jonas Maebe <jonas.maebe@elis.ugent.be>  (obvious change)
10903
10904         Fix a build failure on Darwin following some changes in
10905         the profile of some target_ops methods.
10906
10907         * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
10908         where missing.
10909         (darwin_stop_inferior, darwin_detach): Likewise.
10910
10911 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
10912
10913         Include token in ^running notification for CLI commands.
10914
10915         * mi/mi-main.c (mi_execute_command): Set current_token here.
10916         (mi_cmd_execute): Do not set current_token here.
10917
10918 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
10919
10920         Fix MI timings.
10921
10922         * mi/mi-main.c (mi_print_timing_maybe): New.
10923         (captured_mi_execute_command): Simplify. Output timings to
10924         CLI commands, too.
10925         (mi_execute_async_cli_command): Do not print timings.
10926         * mi/mi-main.h (mi_print_timing_maybe): Declare.
10927         * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
10928
10929 2009-03-12  Jerome Guitton  <guitton@adacore.com>
10930
10931         * xcoffread.c (process_linenos): Check if the line in the
10932         include table refers to the main source file and, if so,
10933         add them to the main subfile.
10934
10935 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10936
10937         Fix a build failure on AIX introduced after a change in the profile
10938         of some of the "methods" in the target_ops structure.
10939         * aix-thread.c: Add missing target_ops parameter throughout.
10940
10941         Implement Ada task switching on AIX.
10942         * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
10943         (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
10944
10945 2009-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
10946
10947         * breakpoint.c (bpstat_check_breakpoint_conditions): Use
10948         value_mark and value_free_to_mark.
10949         * objfiles.c (free_objfile): Call objfile_free_data before
10950         freeing the BFD.
10951
10952 2009-03-10  Hui Zhu  <teawater@gmail.com>
10953
10954         * disasm.c (gdb_disassembly): Remove unused argument
10955         "line_num".
10956         * disasm.h (gdb_disassembly): Ditto.
10957         * cli/cli-cmds.c (print_disassembly): Ditto.
10958         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
10959
10960 2009-03-09  Paul Pluzhnikov  <ppluzhnikov@google.com>
10961
10962         * solib.c (solib_contains_address_p): New function.
10963         (solib_name_from_address): Use it.
10964         * printcmd.c (display_uses_solib_p): Use it.
10965         * solib.h (solib_contains_address_p): Declare it.
10966
10967 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
10968
10969         * varobj.c (free_variable): Call value_free.
10970
10971 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
10972
10973         PR gdb/9873:
10974         * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
10975         Move the variable `macinfo_type' out of the loop.  Create a new
10976         processing pass before the current one to pre-create `current_file'.
10977         New complaint on misplaced zero/non-zero definitions/includes.
10978         Skip first DW_MACINFO_start_file with `at_commandline' set.
10979
10980 2008-03-09  Vladimir Prus  <vladimir@codesourcery.com>
10981
10982        * solib.c (reload_shared_libraries): Give
10983        inferior a chance to reset solib breakpoint.
10984        Reinit frame cache.
10985
10986 2009-03-08  Christopher Faylor  <me+cygwin@cgf.cx>
10987
10988         * windows-nat.c (dr): Redefine to use largest possible integer which
10989         holds a pointer.
10990         (cygwin_set_dr): Avoid coercion.
10991
10992 2009-03-08  Oswald Buddenhagen  <oswald.buddenhagen@trolltech.de>
10993
10994         * windows-nat.c (windows_create_inferior): Implement --tty handling on
10995         non-cygwin.
10996
10997 2009-03-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
10998
10999         Rename solib_address to solib_name_from_address.
11000         * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
11001         (disable_breakpoints_in_unloaded_shlib): Update.
11002         * printcmd.c (display_uses_solib_p): Likewise.
11003         * stack.c (print_frame): Likewise.
11004         * solib.c: Rename.
11005         * solib.h: Rename.
11006
11007 2009-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
11008
11009         * printcmd.c (do_one_display): Reparse exp_string.
11010         (display_uses_solib_p): New function.
11011         (clear_dangling_display_expressions): New function.
11012         (_initialize_printcmd): Add observer.
11013         * solib.c (no_shared_libraries): Swap order of calls to
11014         clear_solib and objfile_purge_solibs.
11015
11016 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
11017
11018         Implement the target-specific part of Ada tasking support
11019         on Tru64.
11020
11021         * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
11022         (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
11023
11024 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
11025
11026         Get rid of the global "base_target" and use "find_target_beneath"
11027         to find the underlying target.
11028         * dec-thread.c (base_target): Delete.
11029         (enable_dec_thread): Remove assignement to base_target.
11030         (dec_thread_detach, dec_thread_wait, dec_thread_wait)
11031         (dec_thread_fetch_registers, dec_thread_store_registers)
11032         (dec_thread_mourn_inferior, dec_thread_pid_to_str):
11033         Update the function profile if necessary.
11034         Use find_target_beneath to call the same method but from
11035         the underlying target, removing the need for "base_target".
11036
11037         * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
11038         Fix a copy/paste error in a few debug traces...
11039
11040         * solib-osf.c (init_so): Use a simpler method for computing
11041         the size of lm_info structure. This also gets rid of warning
11042         emitted by the compiler.
11043
11044 2009-03-05  Pedro Alves  <pedro@codesourcery.com>
11045
11046         * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
11047         duplicates of permanent breakpoints.
11048
11049 2009-03-04  Pedro Alves  <pedro@codesourcery.com>
11050
11051         * inferior.h (notice_new_inferior): Declare.
11052         * infcmd.c (notice_new_inferior): New.
11053         * remote.c (remote_add_inferior, remote_add_thread): New.
11054         (notice_new_inferiors): Rename to...
11055         (remote_notice_new_inferior): ... this.  Add RUNNING argument.
11056         Use remote_add_thread instead of add_thread, passing it the
11057         RUNNING argument.  Add an inferior with remote_add_inferior.  If
11058         we just learned about an inferior, call notice_new_inferior.
11059         (record_currthread): Adjust.
11060         (remote_threads_info): Adjust to use remote_notice_new_inferior.
11061         (remote_start_remote, extended_remote_attach_1): Use
11062         remote_add_inferior.
11063         (process_stop_reply): Adjust.  Call remote_notice_new_inferior
11064         after handling expedited registers and watchpoint state.
11065         (extended_remote_create_inferior_1): Use remote_add_inferior.
11066
11067 2009-03-04  Aleksandar Ristovski  <aristovski@qnx.com>
11068
11069         * infcmd.c (registers_info): Remove register number case.
11070
11071 2009-03-03  Pedro Alves  <pedro@codesourcery.com>
11072
11073         * top.c (quit_target): Check for target_has_execution before
11074         killing or detaching from inferiors.
11075
11076 2009-03-02  Joel Brobecker  <brobecker@adacore.com>
11077
11078         Remove some unused routines.
11079
11080         * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
11081         Delete.
11082         * ada-lang.c (ada_task_list_iterator_ftype)
11083         (iterate_over_live_ada_tasks): Delete.
11084         * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
11085         Delete.
11086
11087 2009-03-01  Doug Evans  <dje@google.com>
11088
11089         * symtab.c: Remove trailing whitespace throughout the file.
11090         (expand_line_sal): Fix some typos and whitespace.
11091
11092         * Makefile.in (clean): rm -f $(DEPDIR)/*.
11093
11094         * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
11095         (init.c): signals/ -> common/.
11096         (signals.o): Update.
11097         * target.h (target_signal_to_string,target_signal_to_string)
11098         (target_signal_from_name,target_signal_to_host_p)
11099         (target_signal_from_host,target_signal_to_host): Move to ...
11100         * common/gdb_signals.h: ... here.  New file.
11101         * common/signals.c: Moved here from signals/signals.c.
11102         #include gdb_signals.h, remove #include of target.h in gdb case.
11103         (target_signal_from_command,default_target_signal_to_host)
11104         (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
11105
11106         Include thread ID in target_wait debugging output.
11107         * infrun.c (print_target_wait_results): New function.
11108         (wait_for_inferior,fetch_inferior_event): Call it.
11109
11110 2009-02-27  Pedro Alves  <pedro@codesourcery.com>
11111
11112         * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
11113         with a ptid_t field.
11114         * linux-thread-db.c (thread_get_info_callback): Build the ptid
11115         using the pid stored in proc_handle.ptid.
11116         (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
11117         (check_for_thread_db, thread_db_detach, check_event)
11118         (thread_db_mourn_inferior, find_new_threads_callback)
11119         (thread_db_find_new_threads_1): Adjust.
11120         * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
11121         (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
11122
11123 2009-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11124
11125         * valprint.c (read_string): Rework clean-up logic. Use
11126         free_current_contents to clean-up buffer.
11127
11128 2009-02-27  Andreas Schwab  <schwab@linux-m68k.org>
11129
11130         * MAINTAINERS: Update e-mail address.
11131
11132 2009-02-26  Phil Muldoon  <pmuldoon@redhat.com>
11133
11134         * python/python-utils.c (python_string_to_unicode): Always return
11135         a new reference.
11136         (python_string_to_target_string): Decrement transient python
11137         instance.
11138         (python_string_to_host_string): Likewise.
11139
11140 2007-02-26  Pedro Alves  <pedro@codesourcery.com>
11141
11142         * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
11143         call to super_fetch_registers.
11144         (mips64_linux_store_registers): Pass `ops' to call to
11145         super_store_registers.
11146
11147 2009-02-25  Doug Evans  <dje@google.com>
11148
11149         * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
11150         error message.
11151
11152         * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
11153         disabled_shlib_breaks, unused.
11154
11155         * printcmd.c (build_address_symbolic): Fix comment.
11156
11157 2009-02-25  Hui Zhu  <teawater@gmail.com>
11158
11159         * cli/cli-script.c (define_command): Add _() to query.
11160         * gnu-nat.c (inf_validate_task_sc): Ditto.
11161         * infcmd.c (kill_if_already_running): Ditto.
11162         (jump_command): Ditto.
11163         (attach_command): Ditto.
11164         * inflow.c (kill_command): Ditto.
11165         * infrun.c (handle_command): Ditto.
11166         * maint.c (maintenance_dump_me): Ditto.
11167         * memattr.c (mem_delete_command): Ditto.
11168         * monitor.c (monitor_interrupt_query): Ditto.
11169         * nto-procfs.c (interrupt_query): Ditto.
11170         * printcmd.c (undisplay_command): Ditto.
11171         * remote-mips.c (mips_kill): Ditto.
11172         * remote.c (interrupt_query): Ditto.
11173         * solib-irix.c (irix_open_symbol_file_object): Ditto.
11174         * solib-osf.c (osf_open_symbol_file_object): Ditto.
11175         * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
11176         * solib-som.c (som_open_symbol_file_object): Ditto.
11177         * solib-svr4.c (open_symbol_file_object): Ditto.
11178         * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
11179         * target.c (kill_or_be_killed): Ditto.
11180         * tracepoint.c (delete_trace_command): Ditto.
11181         * top.c (quit_confirm): Add _() to s that will be used
11182         in query.
11183
11184 2009-02-24  Pierre Muller  <muller@ics.u-strasbg.fr>
11185
11186         Fix windows-nat.c compilation failure.
11187
11188         * windows-nat.c (windows_thread_alive): Fix forward declaration.
11189         (get_windows_debug_event): Add ops parameter to call to windows_resume.
11190
11191 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
11192
11193         * remote-sim.c (gdbsim_resume): Add target_ops* argument.
11194
11195 2009-02-23  Jay Krell  <jay.krell@cornell.edu>  (tiny change)
11196
11197         * symtab.c (find_line_symtab): Initialize exact to avoid
11198         a compiler warning.
11199
11200 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
11201
11202         * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
11203         `ops' to recursive call.
11204
11205 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
11206
11207         * corelow.c (get_core_registers): Adjust.
11208         (core_file_thread_alive): Rename to...
11209         (core_thread_alive): ... this.
11210         (core_pid_to_str): Try gdbarch_core_pid_to_str first.
11211         (init_core_ops): Adjust.
11212         (coreops_suppress_target): Delete.
11213         (_initialize_corelow): Unconditionally add core_ops.
11214         * procfs.c: Include "inf-child.h".
11215         (procfs_ops): Delete.
11216         (init_procfs_ops): Delete.  Reimplement as...
11217         (procfs_target): ... this, inheriting from inf-child.
11218         (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
11219         (procfs_prepare_to_store): Delete.
11220         (procfs_store_registers, procfs_resume): Adjust.
11221         (procfs_open): Delete.
11222         (procfs_suppress_run): Delete.
11223         (procfs_can_run): Delete.
11224         (procfs_mourn_inferior): Adjust.
11225         (procfs_init_inferior): Add target_ops parameter.  Adjust.
11226         (procfs_create_inferior): Don't pass procfs_init_inferior to
11227         fork_inferior.  Instead call it after fork_inferior returns.
11228         (procfs_find_new_threads): Adjust.
11229         (_initialize_procfs): Adjust to use procfs_target instead of
11230         init_procfs_ops.
11231         * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
11232         (lwp_to_thread): Use target_thread_alive.
11233         (sol_thread_open): Delete.
11234         (sol_thread_attach): Delete.
11235         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11236         (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
11237         to use find_target_beneath.
11238         (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
11239         (sol_thread_xfer_partial): Adjust to use find_target_beneath.
11240         (sol_thread_files_info, sol_thread_kill_inferior): Delete.
11241         (check_for_thread_db): New.
11242         (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
11243         (sol_thread_new_objfile): Call check_for_thread_db.
11244         (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
11245         (sol_thread_can_run): Delete.
11246         (sol_thread_alive): Adjust to use find_target_beneath.
11247         (sol_thread_stop): Delete.
11248         (rw_common): Use target_write_memory or target_read_memory.
11249         (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
11250         (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
11251         (solaris_pid_to_str): Remove check for libthread_db initialization
11252         failing.
11253         (sol_find_new_threads): Remove check for libthread_db
11254         initialization failing, or for an invalid inferior_ptid.  Adjust
11255         to use find_target_beneath.
11256         (sol_core_open, sol_core_close, sol_core_detach,
11257         sol_core_files_info, sol_find_memory_regions,
11258         sol_make_note_section, ignore): Delete.
11259         (init_sol_thread_ops): Make it a thread_stratum target.  Remove
11260         unneeded callback settings.
11261         (init_sol_core_ops): Delete.
11262         (_initialize_sol_thread): No longer call init_sol_core_ops, set
11263         procfs_suppress_run, or hack with core_ops.
11264
11265         * target.h (struct target_ops): Add a target_ops * parameter to
11266         to_resume, to_fetch_registers, to_store_registers, to_thread_alive
11267         and to_find_new_threads.
11268         (target_fetch_registers, target_store_registers)
11269         (target_thread_alive, target_find_new_threads): Redeclare as
11270         function.
11271
11272         * target.c (update_current_target): Do not inherit or de_fault
11273         to_resume, to_fetch_registers, to_store_registers,
11274         to_thread_alive, to_find_new_threads.
11275         (target_resume): Adjust.
11276         (target_thread_alive, target_find_new_threads): New.
11277         (debug_to_resume, debug_to_fetch_registers): Delete.
11278         (target_fetch_registers): New.
11279         (debug_to_store_registers): Delete.
11280         (target_store_registers): New.
11281         (debug_to_thread_alive, debug_to_find_new_threads): Delete.
11282         (setup_target_debug): Adjust.
11283
11284         * gdbcore.h (core_ops): Delete declaration.
11285
11286         * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
11287         inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
11288         i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
11289         hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
11290         nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
11291         alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
11292         bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
11293         hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
11294         ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
11295         m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
11296         mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
11297         ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
11298         shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
11299         vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
11300
11301         * gdbarch.sh (core_pid_to_str): New gdbarch callback.
11302         * gdbarch.h, gdbarch.c: Regenerate.
11303
11304         * sol2-tdep.c: Include "inferior.h".
11305         (sol2_core_pid_to_str): New.
11306         * sol2-tdep.h (sol2_core_pid_to_str): Declare.
11307
11308         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
11309         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
11310         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
11311         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
11312
11313 2009-02-22  Doug Evans  <dje@google.com>
11314
11315         * exec.c (exec_file_attach): Fix comment.
11316
11317 2009-02-22  Pedro Alves  <pedro@codesourcery.com>
11318
11319         Silence a few -Wmissing-prototypes warnings.
11320
11321         PR build/9877:
11322         * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
11323         it static.
11324         * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
11325         * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
11326         * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
11327         (_initialize_amd64nbsd_tdep): ... this.
11328         * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
11329         (_initialize_arm_linux_tdep): Declare.
11330         * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
11331         * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
11332         * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
11333         * avr-tdep.c (avr_return_value): Make it static.
11334         (avr_frame_unwind_cache): Ditto.
11335         * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
11336         (bsd_uthread_solib_loaded): Ditto.
11337         (bsd_uthread_solib_unloaded): Ditto.
11338         (bsd_uthread_target): Ditto.
11339         (_initialize_bsd_uthread): Declare.
11340         * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
11341         (cris_frame_unwind_cache): Ditto.
11342         * frv-tdep.c (frv_return_value): Ditto.
11343         * h8300-tdep.c (h8300_use_struct_convention): Ditto.
11344         (h8300h_use_struct_convention): Ditto.
11345         * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
11346         Ditto.
11347         * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
11348         declarations.
11349         * hppabsd-tdep.c: Include hppabsd-tdep.h.
11350         (hppabsd_find_global_pointer): Make it static.
11351         * hppabsd-tdep.h: New.
11352         * hppanbsd-tdep.c: Include hppabsd-tdep.h.
11353         (hppabsd_init_abi): Remove declaration.
11354         (_initialize_hppabsd_tdep): Remove declaration.
11355         (_initialize_hppanbsd_tdep): Declare.
11356         * hppaobsd-tdep.c: Include hppabsd-tdep.h.
11357         (hppabsd_init_abi): Delete declaration.
11358         (hppaobsd_init_abi): Make it static.
11359         * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
11360         * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
11361         * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
11362         * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
11363         * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
11364         * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
11365         (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
11366         (_initialize_m32c_tdep): Declare.
11367         * m32r-rom.c (_initialize_m32r_rom): Declare.
11368         * m32r-tdep.c (m32r_skip_prologue): Make it static.
11369         (m32r_return_value): Ditto.
11370         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
11371         (m68hc11_return_value): Ditto.
11372         * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
11373         * m88k-tdep.c (m88k_frame_cache): Make it static.
11374         * mep-tdep.c (mep_gdb_print_insn): Ditto.
11375         (mep_return_value): Ditto.
11376         (_initialize_mep_tdep): Declare.
11377         * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
11378         * mips-linux-tdep.c (supply_64bit_reg): Make it static.
11379         (mips_linux_syscall_next_pc): Ditto.
11380         (_initialize_mips_linux_tdep): Declare.
11381         * mips-tdep.c (mips_single_step_through_delay): Make it static.
11382         * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
11383         * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
11384         * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
11385         * mt-tdep.c (_initialize_mt_tdep): Declare.
11386         * nbsd-tdep.c: Include nbsd-tdep.h.
11387         * nto-tdep.c (find_load_phdr): Make it static.
11388         (_initialize_nto_tdep): Declare.
11389         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
11390         static.
11391         (_initialize_ppc_linux_tdep): Declare.
11392         * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
11393         (m32r_insert_watchpoint, m32r_remove_watchpoint)
11394         (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
11395         static.
11396         * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
11397         * rs6000-nat.c: Include xcoffread.h.
11398         (find_toc_address): Don't extern declare get_toc_offset.  Adjust
11399         to call xcoff_get_to_offset.
11400         * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
11401         (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
11402         (rs6000_skip_trampoline_code): Make static.
11403         * s390-tdep.c (s390_regset_from_core_section): Ditto.
11404         * sh-tdep.c (sh_register_reggroup_p): Ditto.
11405         * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
11406         (_initialize_shnbsd_tdep): Declare.
11407         * solib-frv.c (displacement_from_map): Make static.
11408         (_initialize_frv_solib): Declare.
11409         * solib-irix.c (fetch_lm_info): Make static.
11410         (_initialize_irix_solib): Declare.
11411         * solib-som.c: Include solib-som.h.
11412         (som_solib_select): Line break.
11413         * sparc-tdep.c (sparc_regset_from_core_section): Make static.
11414         * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
11415         (_initialize_sparcnbsd_tdep): ... this.
11416         * spu-tdep.c (spu_software_single_step): Make it static.
11417         (_initialize_spu_tdep): Declare.
11418         * vax-tdep.c (vax_frame_cache): Make it static.
11419         * xcoffread.c: Include xcoffread.h.
11420         (get_toc_offset): Rename to ...
11421         (xcoff_get_toc_offset): ... this.
11422         (_initialize_xcoffread): Declare.
11423         * xcoffread.h: New.
11424         * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
11425         * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
11426         static.
11427         (_initialize_xtensa_tdep): Declare.
11428
11429 2008-02-21  Pedro Alves  <pedro@codesorcery.com>
11430
11431         Silence a few -Wmissing-prototypes warnings.
11432
11433         PR build/9877:
11434         * amd64-nat.c: Include "amd64-nat.h".
11435         * fork-child.c (_initialize_fork_child): Ditto.
11436         * gcore.c (_initialize_gcore): Ditto.
11437         * inf-ptrace.c: Include "inf-ptrace.h".
11438         (inf_ptrace_store_registers): Make it static.
11439         * linux-nat.c (linux_nat_terminal_ours): Make it static.
11440         (_initialize_linux_nat): Declare before definition.
11441         * linux-tdep.c: Include "linux-tdep.h".
11442         * linux-thread-db.c (_initialize_thread_db): Declare before
11443         definition.
11444         * proc-service.c (_initialize_proc_service): Ditto.
11445         * remote.c (remote_send_printf): Make it static.
11446         * solib.c: Include "solib.h".
11447         * symfile-mem.c (_initialize_symfile_mem): Declare before
11448         definition.
11449         * ada-lang.c (ada_la_decode, ada_match_name)
11450         (ada_suppress_symbol_printing, ada_is_array_type)
11451         (ada_value_ptr_subscript, ada_array_length)
11452         (ada_to_static_fixed_value): Make them static.
11453         (_initialize_ada_language): Declare before definition.
11454         * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
11455         (ada_task_list_changed, ada_new_objfile_observer): Make them
11456         static.
11457         (_initialize_tasks): Declare before definition.
11458         * addrmap.c (_initialize_addrmap): Declare before definition.
11459         * auxv.c (default_auxv_parse): Make it static.
11460         * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
11461         them static.
11462         * breakpoint.c (remove_sal): Add line break.
11463         (expand_line_sal_maybe): Make it static.
11464         * cp-name-parser.y: Include "cp-support.h".
11465         * cp-valprint.c (cp_find_class_member): Make it static.
11466         * eval.c (value_f90_subarray): Ditto.
11467         * exceptions.c (print_any_exception): Ditto.
11468         * findcmd.c (_initialize_mem_search): Declare before definition.
11469         * frame.c (frame_observer_target_changed): Make it static.
11470         * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
11471         * inf-child.c: Include "inf-child.h".
11472         * inferior.h (valid_inferior_id): Rename to ...
11473         (valid_gdb_inferior_id): ... this.
11474         * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
11475         Make them static.
11476         * jv-lang.c (java_language_arch_info): Make it static.
11477         * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
11478         * osdata.c (info_osdata_command): Make it static.
11479         * regcache.c (regcache_observer_target_changed): Make it static.
11480         * reverse.c (_initialize_reverse): Declare before definition.
11481         * stabsread.c (cleanup_undefined_types_noname)
11482         (cleanup_undefined_types_1): Make them static.
11483         * symfile.c (place_section): Make it static.
11484         * symtab.c (find_pc_sect_psymtab_closer): Make it static.
11485         * target-descriptions.c (_initialize_target_descriptions): Declare
11486         before definition.
11487         * target.c (default_get_ada_task_ptid, find_default_can_async_p)
11488         (find_default_is_async_p, find_default_supports_non_stop): Make
11489         them static.
11490         (target_supports_non_stop): Add prototype.
11491         (dummy_pid_to_str): Make it static.
11492         * utils.c (_initialize_utils): Declare before definition.
11493         * ada-exp.y (_initialize_ada_exp): Declare before definition.
11494         * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
11495         * target.h (struct target_ops): Add a prototype to the
11496         to_can_execute_reverse callback.
11497         * macroscope.c (_initialize_macroscope): Declare before definition.
11498         * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
11499         * python/python.c (_initialize_python): Declare before definition.
11500         * tui/tui-command.c: Include "tui/tui-command.h".
11501         * tui/tui-data.c (init_content_element, init_win_info): Make them
11502         static.
11503         * tui/tui-disasm.c: Include "tui/tui-disasm.h".
11504         * tui/tui-interp.c (_initialize_tui_interp): Declare before
11505         definition.
11506         * tui/tui-layout.c: Include "tui/tui-layout.h".
11507         (_initialize_tui_layout): Declare before definition.
11508         * tui/tui-regs.c: Include "tui/tui-regs.h".
11509         (tui_display_reg_element_at_line): Make it static.
11510         (_initialize_tui_regs): Declare before definition.
11511         * tui/tui-stack.c (_initialize_tui_stack): Declare before
11512         definition.
11513         * tui/tui-win.c: Include "tui/tui-win.h".
11514         (_initialize_tui_win): Declare before definition.
11515         (tui_sigwinch_handler): Make it static.  Wrap in ifdef SIGWINCH.
11516         * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
11517         (tui_get_cmd_list): Add a prototype.
11518         * tui/tui-windata.c: Include tui-windata.h.
11519         * tui/tui-wingeneral.c (box_win): Make it static.
11520         * cli/cli-logging.c (show_logging_command): Make it static.
11521         (_initialize_cli_logging): Declare before definition.
11522         * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
11523         definition.
11524
11525 2009-02-20  Pierre Muller  <muller@ics.u-strasbg.fr>
11526
11527         Extend use of i386_use_watchpoints to all i386 native files
11528         using hardware watchpoints.
11529         * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
11530         * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
11531         * windows-nat.c (init_windows_ops): Ditto.
11532         * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
11533         * config/i386/nm-cygwin64.h: Ditto.
11534         * config/i386/nm-fbsd.h: Ditto.
11535         * config/i386/nm-go32.h: Ditto.
11536
11537 2009-02-19  Joel Brobecker  <brobecker@adacore.com>
11538
11539         * ada-typeprint.c (ada_typedef_print): Remove.  Unused.
11540
11541 2009-02-18  Vladimir Prus  <vladimir@codesourcery.com>
11542
11543         * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
11544         (mi_interpreter_init): Register the above.
11545         * solib.c (clear_solib): Notify solib unload.
11546         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
11547         disable breakpoints on a.out targets.
11548
11549 2009-02-17  Vladimir Prus  <vladimir@codesourcery.com>
11550
11551         * observer.c (observer_test_first_notification_function)
11552         (observer_test_second_notification_function)
11553         (observer_test_third_notification_function): Adjust prototype.
11554
11555 2009-02-17  Pedro Alves  <pedro@codesourcery.com>
11556
11557         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
11558         (ALL_TARGET_OBS): Add dicos-tdep.o.
11559         (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
11560         * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
11561         gdb_target_obs.
11562         (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
11563         gdb_target_obs.
11564         * dicos-tdep.h, dicos-tdep.c: New.
11565         * amd64-dicos-tdep.c: New.
11566         * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
11567         inferior.h.  Include dicos-tdep.h.
11568         (i386_dicos_init_abi): Call dicos_init_abi.
11569         (i386_dicos_bfd_has_symbol_p): Delete.
11570         (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
11571
11572         * NEWS: Mention x86-64 DICOS target support.
11573
11574 2009-02-16  Doug Evans  <dje@google.com>
11575
11576         * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
11577         All callers updated.
11578         (amd64_get_insn_details): Handle more 3-byte opcode insns.
11579         (amd64_breakpoint_p): Delete.
11580         (amd64_displaced_step_fixup): When fixing up after stepping an int3,
11581         don't back up pc to the start of the int3.
11582         * i386-tdep.c: #include opcode/i386.h.
11583         (i386_skip_prefixes): New function.
11584         (i386_absolute_jmp_p): Constify argument.
11585         (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
11586         (i386_breakpoint_p): Delete.
11587         (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
11588         When fixing up after stepping an int3, don't back up pc to the start
11589         of the int3.
11590
11591 2009-02-16  Pedro Alves  <pedro@codesourcery.com>
11592
11593         * corelow.c (core_close): Don't hardcode the core's pid.
11594         (core_open): Find core threads before calling
11595         post_create_inferior.
11596         (add_to_thread_list, get_core_register_section): Take into account
11597         systems where the regset section names encode the pid of the
11598         inferior.
11599
11600         * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
11601         * gdbarch.h, gdbarch.c: Regenerate.
11602
11603         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
11604         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
11605         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
11606         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
11607
11608 2009-02-14  Vladimir Prus  <vladimir@codesourcery.com>
11609
11610         Include frame information for *stopped due to CLI commands.
11611
11612         * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
11613         * infcmd.c (finish_command_continuation): Pass '1' for
11614         'print_frame' parameter to the observer.
11615         * infrun.c (normal_stop): Don't print mi-specific information
11616         here. Pass 'stop_print_frame' to the 'print_frame' parameter
11617         of the observer.
11618         * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
11619         If we need to print frame, and current uiout is not the MI one,
11620         print frame again.
11621
11622 2009-02-13  Pierre Muller  <muller@ics.u-strasbg.fr>
11623
11624         * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
11625         Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
11626
11627 2009-02-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11628
11629         PR fortran/9806
11630         * dwarf2read.c (process_die <DW_TAG_module>, read_module)
11631         (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
11632
11633 2009-02-11  Pierre Muller  <muller@ics.u-strasbg.fr>
11634
11635         * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
11636         for DW_ATE_signed_char and DW_ATE_unsigned_char
11637         for pascal language.
11638
11639 2009-02-11  Jim Meyering  <meyering@redhat.com>
11640             Jan Kratochvil  <jan.kratochvil@redhat.com>
11641
11642         Avoid NULL dereference.
11643         * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
11644         New variable func_type.
11645
11646 2009-02-11  Pedro Alves  <pedro@codesourcery.com>
11647
11648         * gdbarch.c: Regenerate.
11649
11650 2009-02-10  Pierre Muller  <muller@ics.u-strasbg.fr>
11651
11652         * p-lang.c (is_pascal_string_type): Fix comment.
11653         Determine exact size of char elements for GPC
11654         strings.
11655         (pascal_printstr): Handle char width of 2 or 4.
11656         * p-valprint.c (pascal_val_print): Handle char
11657         of width 2 or 4.
11658
11659 2009-02-07  Daniel Jacobowitz  <dan@codesourcery.com>
11660
11661         * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
11662         inside the loop.  Only call addrmap_set_empty if the compilation unit
11663         had DW_AT_high_pc and DW_AT_low_pc.  Update call to
11664         scan_partial_symbols.
11665         (scan_partial_symbols): Take NEED_PC argument and pass it along with
11666         LOWPC and HIGHPC.
11667         (add_partial_namespace): Take NEED_PC argument and pass it through.
11668         (add_partial_subprogram): Take NEED_PC argument.  Update the addrmap
11669         if necessary.
11670
11671 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
11672
11673         * NEWS: Mention inspecting extra signal information, $_siginfo,
11674         and the qXfer:siginfo:read and qXfer:siginfo:write packets.
11675
11676 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
11677
11678         * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
11679         isn't defined.
11680
11681 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11682
11683         * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
11684         (compat_timer_t, compat_clock_t, struct compat_timeval)
11685         (compat_sigval_t, compat_siginfo_t): New types.
11686         (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
11687         (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
11688         (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
11689         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
11690         (amd64_linux_siginfo_fixup): New.
11691         * linux-nat.c (linux_nat_siginfo_fixup): New.
11692         (siginfo_fixup): New.
11693         (linux_xfer_siginfo): Use siginfo_fixup to convert between the
11694         siginfo layout expected by ptrace and the siginfo layout of the
11695         inferior.
11696         (linux_nat_set_siginfo_fixup): New.
11697         * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
11698
11699 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11700
11701         * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
11702         * infrun.c (siginfo_value_read, siginfo_value_write): New.
11703         (siginfo_value_funcs): New.
11704         (siginfo_make_value): New.
11705         (_initialize_infrun): Create the $_siginfo convenience variable.
11706         * gdbtypes.h (append_composite_type_field_aligned): Declare.
11707         * gdbtypes.c (append_composite_type_field): Rename to...
11708         (append_composite_type_field_aligned): ... this.  Add ALIGNMENT
11709         argument.  Handle it.
11710         (append_composite_type_field): Rewrite on top of
11711         append_composite_type_field_aligned.
11712         * value.h (internalvar_make_value): New typedef.
11713         (struct internalvar) <make_value>: New field.
11714         (create_internalvar_type_lazy): Declare.
11715         * value.c (create_internalvar): Clear make_value.
11716         (create_internalvar_type_lazy): New.
11717         (value_of_internalvar): If make_value is set use it.
11718         (preserve_values): Skip internal variables that don't have a
11719         value.
11720         * gdbarch.sh (get_siginfo_type): New.
11721         * gdbarch.h, gdbarch.c: Regenerate.
11722
11723         * linux-tdep.h, linux-tdep.c: New.
11724         * amd64-linux-tdep.c: Include "linux-tdep.h".
11725         (amd64_linux_init_abi): Register linux_get_siginfo_type and
11726         linux_get_siginfo_mapper.
11727         * i386-linux-tdep.c: Include "linux-tdep.h".
11728         (i386_linux_init_abi): Register linux_get_siginfo_type and
11729         linux_get_siginfo_mapper.
11730         * arm-linux-tdep.c: Include "linux-tdep.h".
11731         (i386_linux_init_abi): Register linux_get_siginfo_type and
11732         linux_get_siginfo_mapper.
11733
11734         * linux-nat.c (linux_xfer_siginfo): New.
11735         (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
11736         * remote.c (PACKET_qXfer_siginfo_read)
11737         (PACKET_qXfer_siginfo_write): New.
11738         (feature remote_protocol_features): Add "qXfer:siginfo:read" and
11739         "qXfer:siginfo:write" features.
11740         (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
11741         (_initialize_remote): Add "set/show remote read-siginfo-object"
11742         and "set/show remote write-siginfo-object" commands.
11743
11744         * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
11745         (HFILES_NO_SRCDIR): Add linux-tdep.h.
11746         (ALLDEPFILES): Add linux-tdep.c.
11747
11748         * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
11749         (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
11750         gdb_target_obs.
11751
11752 2009-02-06  Jim Blandy  <jimb@codesourcery.com>
11753             Daniel Jacobowitz  <dan@codesourcery.com>
11754             Vladimir Prus  <vladimir@codesourcery.com>
11755             Pedro Alves  <pedro@codesourcery.com>
11756
11757         * defs.h (enum lval_type): New value: lval_computed.
11758         * value.h (struct lval_funcs): New type.
11759         (allocate_computed_value, value_computed_funcs)
11760         (value_computed_closure): New declarations.
11761         * value.c (struct value): Add a structure to the location union
11762         for computed lvalues, containing 'funcs' and 'closure' members.
11763         (allocate_computed_value, value_computed_funcs)
11764         (value_computed_closure): New functions.
11765         (value_free): For computed lvalues, call the closure's
11766         'free_closure' function before freeing the value itself.
11767         (value_copy): If we're copying an lval_computed value, call the
11768         closure's 'copy_closure' function.
11769         (set_value_component_location): If the original value is a
11770         computed lvalue, then call the closure's 'copy_closure' function.
11771         (value_of_internalvar): If an internal variable's value is a
11772         computed lvalue, make retrieving its value produce an equivalent
11773         computed lvalue.
11774         * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
11775         their read function.
11776         (value_assign): Assign to computed lvalues by calling their write
11777         function.
11778
11779 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11780
11781         * linux-nat.c (linux_nat_wait): Adjust.
11782         (linux_nat_pid_to_str): Adjust.  Remove call to thread_db_init.
11783         * linux-nat.h (thread_db_init): Delete declaration.
11784         * linux-thread-db.c (target_beneath): Delete.
11785         (thread_db_init): Delete.
11786         (thread_db_detach): Use find_target_beneath.
11787         (thread_db_wait): Adjust interface.  Use find_target_beneath.
11788         (thread_db_mourn_inferior): Use find_target_beneath.
11789         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
11790         (thread_db_async_mask): Delete.
11791         (thread_db_pid_to_str): Adjust interface.  Use
11792         find_target_beneath.
11793         (thread_db_get_thread_local_address): Adjust interface.  Use
11794         find_target_beneath.
11795         (init_thread_db_ops): Delete references to delete functions.
11796         * target.c (update_current_target): Don't inherit or default
11797         to_wait.  Don't inherit to_pid_to_str and
11798         to_get_thread_local_address.
11799         (target_translate_tls_address): Look for a pushed target that
11800         implements to_get_thread_local_address, and use it instead of
11801         checking for target_get_thread_local_address_p.
11802         (target_wait, target_pid_to_str): Reimplement as functions.
11803         (dummy_pid_to_str): New.
11804         (init_dummy_target): Register it.
11805         (debug_to_wait): Delete.
11806         * target.h (struct target_ops): Make to_wait, to_pid_to_str and
11807         to_get_thread_local_address accept a pointer to struct target_ops.
11808         (target_wait): Delete macro, and declare as function.
11809         (target_pid_to_str): Likewise.
11810         (target_get_thread_local_address)
11811         (target_get_thread_local_address_p): Delete.
11812         (noprocess): Add NORETURN and ATTR_NORETURN tags.
11813         * inf-ptrace.c (inf_ptrace_wait): Adjust.
11814         (inf_ptrace_pid_to_str): New.
11815         (inf_ptrace_target): Use inf_ptrace_pid_to_str.
11816         * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
11817         * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
11818         * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
11819         Adjust.
11820         * corelow.c (core_pid_to_str): Adjust.
11821         * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
11822         * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
11823         * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
11824         * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
11825         * hpux-thread.c (hpux_thread_wait): Adjust.
11826         * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
11827         * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
11828         * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
11829         * procfs.c (procfs_pid_to_str): Adjust.
11830         * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
11831         * remote-mips.c (mips_wait): Adjust.
11832         * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
11833         * remote.c (remote_wait, remote_pid_to_str)
11834         (remote_get_thread_local_address): Adjust.
11835         * rs6000-nat.c (rs6000_wait): Adjust.
11836         * sol-thread.c (procfs_pid_to_str): Adjust declaration.
11837         (sol_thread_wait, solaris_pid_to_str): Adjust.
11838         * spu-linux-nat.c (spu_child_wait): Adjust.
11839         * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
11840
11841 2009-02-06  Tom Tromey  <tromey@redhat.com>
11842
11843         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
11844         (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
11845         (python-cmd.o): New target.
11846         * cli/cli-decode.c (set_cmd_completer): Add self parameter to
11847         completer prototype.
11848         (add_cmd): Initialize destroyer member of cmd_list_element. Use
11849         make_symbol_completion_list_fn as completer.
11850         (delete_cmd): Call destroyer if one is set.
11851         * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
11852         completer member.  Add destroyer member.
11853         (set_cmd_completer): Add self parameter to
11854         completer prototype.
11855         * command.h (set_cmd_completer): Add cmd parameter to
11856         completer prototype.
11857         * completer.c (noop_completer, filename_completer,
11858         location_completer, expression_completer, command_completer): Adapt
11859         to new completer prototype.
11860         (complete_line_internal): Pass new parameter to completer function.
11861         * completer.h (noop_completer, filename_completer,
11862         location_completer, expression_completer, command_completer): Adapt
11863         prototypes to new completer prototype.
11864         * interps.c (interpreter_completer): Adapt to new completer
11865         prototype.
11866         * python/python-cmd.c: New file.
11867         * python/python-internal.h (gdbpy_initialize_commands): Add
11868         prototype.
11869         (gdbpy_doc_cst): Add forward declaration.
11870         * python/python.c (gdbpy_doc_cst): Declare.
11871         (_initialize_python): Call gdbpy_initialize_commands.  Initialize
11872         gdbpy_doc_cst.
11873         * symtab.c (make_symbol_completion_list_fn): New function.
11874         * symtab.h (make_symbol_completion_list_fn): Add prototype.
11875
11876 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11877
11878         * target.c (target_get_osdata): Check for equal or higher than
11879         process_stratum, not dummy_stratum.
11880
11881 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11882
11883         * remote.c (extended_remote_can_run): Delete.
11884         (init_remote_ops): Don't register it.
11885         * target.c (target_get_osdata): Don't check for target_can_run.
11886         Instead any target that has already been pushed, otherwise
11887         fallback to the default run target.
11888
11889 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11890
11891         * target.c (target_create_inferior, target_detach)
11892         (target_mourn_inferior, target_attach, target_close): Do target
11893         debug output.
11894         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
11895         (debug_to_mourn_inferior, debug_to_close): Delete.
11896         (setup_target_debug): Adjust.
11897
11898 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
11899
11900         * target.h (target_stopped_data_address_p): Delete declaration,
11901         and don't define as macro.
11902         * target.c (target_stopped_data_address_p): Delete.
11903
11904 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11905             Tom Tromey  <tromey@redhat.com>
11906
11907         * python/python-utils.c (target_string_to_unicode): New function.
11908         * python/python-internal.h (target_string_to_unicode): New prototype.
11909         * python/python-value.c (valpy_string): New function.
11910         (value_object_methods): Add `string' entry.
11911
11912 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
11913
11914         * target.h (target_tid_to_str): Delete.
11915         * thread.c (print_thread_info, thread_apply_all_command)
11916         (thread_apply_command, thread_command, do_captured_thread_select):
11917         Use target_pid_to_str instead of target_tid_to_str.
11918         * linux-fork.c (delete_fork_command): Likewise.
11919
11920 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
11921
11922         * frame.c (has_stack_frames): Make public.
11923         (get_prev_frame): Don't allow a NULL this_frame anymore.
11924         * frame.h (has_stack_frames): Declare.
11925         * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
11926         to get_prev_frame, instead start at get_current_frame.
11927         (varobj_create): Check has_stack_frames before getting any frame;
11928         eliminate one usage of deprecated_safe_get_selected_frame.
11929
11930 2009-02-05  Tom Tromey  <tromey@redhat.com>
11931             Thiago Jung Bauermann  <bauerman@br.ibm.com>
11932
11933         * python/python.c (GdbMethods): Move to bottom of file.
11934         (get_parameter, execute_gdb_command, gdbpy_write,
11935         gdbpy_flush): Remove forward declarations.
11936         (eval_python_from_control_command): Fix error checking of function
11937         PyRun_SimpleString.  Fix error string.
11938         (python_command): Likewise.
11939         (execute_gdb_command): Added from_tty argument.
11940
11941 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11942
11943         * language.h (language_dfn): Add la_get_string member.
11944         (LA_GET_STRING): New macro.
11945         (default_get_string): New prototype.
11946         * language.c (default_get_string): New function.
11947         (unknown_language_defn, auto_language_defn, local_language_defn): Use
11948         default_get_string for la_get_string.
11949         * c-lang.c (c_get_string): New function.
11950         (c_language_defn, cplus_language_defn, asm_language_defn): Use
11951         c_get_string for la_get_string.
11952         (minimal_language_defn): Likewise
11953         * ada-lang.c (ada_language_defn): Likewise.
11954         * f-lang.c (f_language_defn): Use default_get_string for
11955         la_get_string.
11956         * jv-lang.c (java_language_defn): Likewise.
11957         * m2-lang.c (m2_language_defn): Likewise.
11958         * objc-lang.c (objc_language_defn): Likewise.
11959         * p-lang.c (p_language_defn): Likewise.
11960         * scm-lang.c (scm_language_defn): Likewise.
11961         * typeprint.c (type_to_string): New function.
11962         * value.h (type_to_string): New prototype.
11963         * valprint.c (val_print_string): Factor out code for reading string
11964         from the inferior into its own function.  Put 2 spaces after period
11965         in comments.
11966         (read_string): New function.
11967         * valprint.h (read_string): New prototype.
11968
11969 2009-01-07  Pierre Muller  <muller@ics.u-strasbg.fr>
11970             Tom Tromey  <tromey@redhat.com>
11971
11972         PR breakpoints/8079:
11973         * breakpoint.c (print_one_breakpoint): Use exp_string field
11974         to display expression of watchpoints.
11975         (mention): Likewise.
11976         (watch_command_1): Remove trailing whitespace from expression.
11977         * printcmd.c (struct display) <exp_string>: New field.
11978         (display_command): Set exp_string.
11979         (free_display): Free exp_string.
11980         (clear_displays): Use free_display.
11981         (do_one_display): Print exp_string.
11982         (display_info): Likewise.
11983
11984 2009-02-04  Tom Tromey  <tromey@redhat.com>
11985             Thiago Jung Bauermann  <bauerman@br.ibm.com>
11986             Phil Muldoon  <pmuldoon@redhat.com>
11987
11988         * python/python-internal.h (gdbpy_get_value_from_history): Rename
11989         prototype to gdbpy_history.
11990         (gdbpy_is_string): Declare.
11991         (python_string_to_host_string): Declare.
11992         * python/python-utils.c (gdbpy_is_string): New function.
11993         (unicode_to_encoded_string): New function.
11994         (unicode_to_target_string): Use it.
11995         (python_string_to_host_string): New function.
11996         * python/python-value.c (valpy_address): New function.
11997         (convert_value_from_python): Use gdbpy_is_string.  Change to throw
11998         Python exception instead of a GDB exception on error.  Properly check
11999         Python booleans.
12000         (valpy_getitem): Convert field name to host string.  Handle array
12001         accesses.  Adapt to new behaviour of convert_value_from_python.
12002         (valpy_new): Adapt to new behaviour of convert_value_from_python.
12003         (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
12004         VALPY_BITXOR, VALPY_BITOR>: New constants.
12005         (valpy_binop): Update.  Adapt to new behaviour of
12006         convert_value_from_python.
12007         (valpy_invert): New function.
12008         (valpy_lsh): Likewise.
12009         (valpy_rsh): Likewise.
12010         (valpy_and): Likewise.
12011         (valpy_or): Likewise.
12012         (valpy_xor): Likewise.
12013         (valpy_richcompare): Call convert_value_from_python instead of doing
12014         conversions itself.
12015         (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
12016         (gdbpy_get_value_from_history): Rename
12017         function to gdbpy_history.
12018         (gdbpy_initialize_values): Don't set tp_new.
12019         (value_object_type): Add valpy_new.
12020         (value_object_methods): Add `address' entry.
12021         (value_object_as_number): Update for new methods.
12022         * python/python.c (GdbMethods): Rename entry from
12023         `get_value_from_history' to `history'.
12024
12025 2009-02-04  Jerome Guitton  <guitton@adacore.com>
12026
12027         * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
12028         of type to guard against a crash.
12029
12030 2009-02-04  Jerome Guitton  <guitton@adacore.com>
12031
12032         * value.c (value_from_contents_and_address): Always return
12033         a lval_memory value, even if address is null.
12034
12035 2009-02-04  Tristan Gingold  <gingold@adacore.com>
12036
12037         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
12038         (amd64_darwin_sigcontext_addr): Ditto.
12039         (darwin_dwarf_signal_frame_p): Ditto.
12040         (i386_darwin_init_abi): Handle signal frames, use the const for
12041         sc_num_regs.
12042         (x86_darwin_init_abi_64): Ditto.
12043
12044 2009-02-04  Tristan Gingold  <gingold@adacore.com>
12045
12046         * i386-tdep.c (i386_sigtramp_p): Make it public.
12047         * i386-tdep.h (i386_sigtramp_p): Declare.
12048
12049 2009-02-04  Tristan Gingold  <gingold@adacore.com>
12050
12051         * machoread.c (macho_symfile_read): Read minsymtab also from
12052         shared libraries.
12053         (macho_symfile_read): Try to read dwarf2 frame info from main
12054         object file, but not from OSO files.
12055         (macho_symfile_offsets): Update section names for latest BFD
12056         changes.
12057         * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
12058         (x86_darwin_init_abi_64): Ditto.
12059         * solib-darwin.c: New file.
12060         * solib-darwin.h: New file.
12061         * configure.tgt: Add solib.o solib-darwin.o for Darwin.
12062
12063 2009-02-04  Tristan Gingold  <gingold@adacore.com>
12064
12065         * solist.h (struct target_so_ops): Comment fallback behavior for
12066         operation same.
12067
12068 2009-02-03  Tom Tromey  <tromey@redhat.com>
12069
12070         * completer.c (add_struct_fields): Check type_name against NULL
12071         before use.
12072
12073 2009-02-03  Joel Brobecker  <brobecker@adacore.com>
12074
12075         * MAINTAINERS: Update Elena's email address.
12076
12077 2009-02-02  Joel Brobecker  <brobecker@adacore.com>
12078
12079         * breakpoint (update_watchpoint): Minor comment adjustment.
12080
12081 2009-02-02  Tom Tromey  <tromey@redhat.com>
12082
12083         PR gdb/9594:
12084         * completer.c (count_struct_fields): Count method names.
12085         (add_struct_fields): Add matching method names.
12086
12087 2009-02-02  Doug Evans  <dje@google.com>
12088
12089         * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
12090         doing any further tcl/tk configury.  Don't configure gdbtk if
12091         tcl or tk check fails.
12092         * aclocal.m4: Regenerate.
12093         * configure: Regenerate.
12094
12095 2009-02-02  Tom Tromey  <tromey@redhat.com>
12096
12097         PR exp/9059:
12098         * valops.c (find_overload_match): Follow typedefs before taking
12099         address of object argument.
12100
12101 2009-02-01  Doug Evans  <dje@google.com>
12102
12103         * target.h (target_waitstatus_to_string): Declare.
12104         * target.c (target_waitstatus_to_string): New function.  Copied from
12105         debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
12106         TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
12107         TARGET_WAITKIND_NO_HISTORY.
12108         (debug_to_wait): Call it.
12109         * infrun.c (wait_for_inferior): If debug_infrun, print result of
12110         target_wait.
12111         (fetch_inferior_event): Ditto.
12112
12113 2009-01-30  Tom Tromey  <tromey@redhat.com>
12114
12115         * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
12116
12117 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
12118
12119         PR 8145.
12120         * thread.c (do_captured_list_thread_ids): Report the current
12121         thread id.
12122
12123 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
12124
12125         * breakpoint.c (create_breakpoint, create_breakpoints)
12126         (break_command_really, set_breakpoint): New parameter enabled.
12127         (create_breakpoint, break_command_really): Make breakpoint
12128         disabled if so requested.
12129         * breakpoint.h (set_breakpoint): New parameter enabled.
12130         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
12131
12132 2009-01-28  Doug Evans  <dje@google.com>
12133
12134         * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
12135         (amd64_displaced_step_fixup): Declare.
12136         * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
12137         (amd64_arch_regmap): Move out of amd64_analyze_stack_align
12138         and make static global.
12139         (amd64_arch_regmap_len): New static global.
12140         (amd64_arch_reg_to_regnum): New function.
12141         (struct amd64_insn): New struct.
12142         (struct displaced_step_closure): New struct.
12143         (onebyte_has_modrm,twobyte_has_modrm): New static globals.
12144         (rex_prefix_p,skip_prefixes)
12145         (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
12146         (amd64_insn_length,amd64_get_unused_input_int_reg)
12147         (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
12148         (amd64_displaced_step_copy_insn)
12149         (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
12150         (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
12151         (amd64_displaced_step_fixup): New functions.
12152         * amd64-linux-tdep.c: #include arch-utils.h.
12153         (amd64_linux_init_abi): Install displaced stepping support.
12154
12155 2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
12156             Jerome Guitton  <guitton@adacore.com>
12157
12158         * configure, config.in: Regenerated.
12159         * configure.ac: Add --with-system-gdbinit.
12160         * main.c (get_init_files): New.
12161         (captured_main): Use get_init_files.  Load system gdbinit before
12162         $HOME/.gdbinit.
12163         (print_gdb_help): Print location of init files.
12164
12165 2009-01-28  Pedro Alves  <pedro@codesourcery.com>
12166
12167         * corefile.c (generic_search): Delete disabled code.
12168         * gdbcore.h (generic_search): Delete declaration.
12169
12170 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
12171
12172         * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
12173         parent to the child.
12174         * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
12175         * inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
12176         remove_breakpoints to remove breakpoints from the parent.
12177
12178 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
12179
12180         PR backtrace/9458, PR backtrace/8864:
12181         * frame.c (create_new_frame): Update the frame's cached PC before
12182         finding its unwinder.  Use frame_id_build to build the new frame's
12183         id.
12184         * stack.c (parse_frame_specification_1): Correct setting ``addrs''
12185         array values from the ``args'' array values.
12186
12187 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
12188
12189         * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
12190         (create_array_type, create_set_type, init_flags_type)
12191         (copy_type_recursive): Replace pairs of calls to XALLOC and memset
12192         with a call to XZALLOC or XCALLOC, and pairs of calls to
12193         obstack_alloc and memset with a call to OBSTACK_ZALLOC.
12194
12195 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
12196
12197         Add "maint set|show internal-error|internal-warning quit|corefile
12198         ask|yes|no" commands.
12199
12200         PR gdb/7580:
12201         * utils.c (internal_problem_ask, internal_problem_yes)
12202         (internal_problem_no, internal_problem_modes): New.
12203         (struct internal_problem): Remove FIXME.  Make should_quit and
12204         should_dump_core types to char *.
12205         (internal_vproblem, internal_error_problem)
12206         (internal_warning_problem): Adjust.
12207         (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
12208         functions.
12209         (add_internal_problem_command): New.
12210         (_initialize_utils): New.
12211
12212 2009-01-25  Pedro Alves  <pedro@codesourcery.com>
12213
12214         * infcmd.c (program_info): Use paddress instead of casting stop_pc
12215         to unsigned long.
12216
12217 2009-01-24  Pedro Alves  <pedro@codesourcery.com>
12218
12219         * infrun.c (normal_stop): Don't call
12220         deprecated_update_frame_pc_hack.
12221         * frame.c (deprecated_update_frame_pc_hack)
12222         (deprecated_update_frame_base_hack): Delete, and ...
12223         (create_new_frame): ... inline here.
12224         * frame.h (deprecated_update_frame_pc_hack)
12225         (deprecated_update_frame_base_hack): Delete declarations.
12226
12227 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
12228
12229         * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
12230         * cli/cli-setshow.c (do_setshow_command): Handle it.
12231         * command.h (enum var_types): Add var_zuinteger.
12232         (add_setshow_zuinteger_cmd): Declare.
12233
12234         * valprint.c (_initialize_valprint): Change the set input-radix
12235         and set output-radix commands to zuinteger type.
12236
12237 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
12238
12239         PR gdb/9664:
12240         * infrun.c (normal_stop): Tag threads as stopped, and run the
12241         hook-stop before printing the stack frame.
12242
12243 2009-01-22  Pedro Alves  <pedro@codesourcery.com>
12244
12245         PR c++/9631:
12246         * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
12247         vbasetype.
12248
12249 2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
12250
12251         * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
12252         unsigned long.
12253
12254 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
12255
12256         PR gdb/9346
12257         * infcmd.c (signal_command): Do not specify a resume PC.
12258
12259 2009-01-19  Doug Evans  <dje@google.com>
12260
12261         * dummy-frame.c (dummy_frame): Replace regcache member with
12262         caller_state.
12263         (dummy_frame_push): Replace caller_regcache arg with caller_state.
12264         All callers updated.
12265         (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
12266         (dummy_frame_pop): Rewrite.  Verify requested frame is in the
12267         dummy frame stack.  Restore program state.
12268         (cleanup_dummy_frames): Rewrite.
12269         (dummy_frame_sniffer): Update.  Make static.
12270         * dummy-frame.h (regcache,frame_info): Delete forward decls.
12271         (inferior_thread_state): New forward decl.
12272         (dummy_frame_push): Update prototype.
12273         * frame.c (frame_pop): dummy_frame_pop now does all the work for
12274         DUMMY_FRAMEs.
12275         * infcall.c (breakpoint_auto_delete_contents): Delete.
12276         (get_function_name,run_inferior_call): New fns.
12277         (call_function_by_hand): Simplify by moving some code to
12278         get_function_name, run_inferior_call.  Inferior function call wrapped
12279         in TRY_CATCH so there's less need for cleanups and all exits from
12280         proceed are handled similarily.  Detect program exit.
12281         Detect program stopping in a different thread.
12282         Make error messages more consistent.
12283         * inferior.h (inferior_thread_state): Declare (opaque type).
12284         (save_inferior_thread_state,restore_inferior_thread_state,
12285         make_cleanup_restore_inferior_thread_state,
12286         discard_inferior_thread_state, get_inferior_thread_state_regcache):
12287         Declare.
12288         (save_inferior_status): Update prototype.
12289         * infrun.c: (normal_stop): When stopped for the completion of an
12290         inferior function call, verify the expected stack frame kind.
12291         (inferior_thread_state): New struct.
12292         (save_inferior_thread_state,restore_inferior_thread_state,
12293         do_restore_inferior_thread_state_cleanup,
12294         make_cleanup_restore_inferior_thread_state,
12295         discard_inferior_thread_state,
12296         get_inferior_thread_state_regcache): New functions.
12297         (inferior_status): Move stop_signal, stop_pc, registers to
12298         inferior_thread_state.  Remove restore_stack_info.
12299         (save_inferior_status): Remove arg restore_stack_info.
12300         All callers updated.  Remove saving of state now saved by
12301         save_inferior_thread_state.
12302         (restore_inferior_status): Remove restoration of state now done by
12303         restore_inferior_thread_state.
12304         (discard_inferior_status): Remove freeing of registers, now done by
12305         discard_inferior_thread_state.
12306
12307 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12308
12309         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
12310         at a time, times NUM_TO_SCROLL.
12311         * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
12312         fetch the selected frame if there is no stack.
12313
12314 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12315
12316         PR gdb/9747:
12317         * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
12318         Declare.
12319         * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
12320         * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
12321         is thrown while handling an event, finish the thread state.
12322         (normal_stop): Use finish_thread_state cleanup.
12323         * infcmd.c (run_command_1): If an error is thrown while starting
12324         the inferior, finish the thread state.
12325
12326 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12327
12328         * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
12329         skip breakpoints without a location (pending breakpoints).
12330
12331 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12332
12333         PR build/9186:
12334         * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
12335
12336 2009-01-18  Nick Roberts  <nickrob@snap.net.nz>
12337
12338         * thread.c (thread_command): Move call to annotate_thread_changed
12339         to...
12340         (do_captured_thread_select): ... here, to avoid printing an
12341         annotation if the thread change generates an exception.
12342
12343 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
12344
12345         * NEWS: Document x86_64/MinGW as a new native configuration.
12346
12347 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
12348
12349         * NEWS: Move the documentation of "info os processes" to
12350         the appropriate section (documenting the new commands).
12351
12352 2009-01-15  Doug Evans  <dje@google.com>
12353
12354         * target.h (target_signal_to_string): Make return type const char *.
12355         (target_signal_to_name): Ditto.
12356         (target_signal_from_name): Make arg const char *.
12357         * infrun.c (sig_print_info): Update.
12358         * signals/signals.c (signals): Make array and struct members const.
12359         (target_signal_to_string): Make return type const char *.
12360         (target_signal_to_name): Ditto.
12361         (target_signal_from_name): Make arg const char *.
12362
12363 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
12364             Tristan Gingold  <gingold@adacore.com>
12365
12366         * solist.h (struct target_so_ops): New member bfd_open.
12367         (solib_find): Add prototype.
12368         (solib_bfd_fopen): Add prototype.
12369         * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
12370         from solib_bfd_open.
12371         (solib_bfd_open): Use ops->bfd_open override if present.  Call
12372         solib_find and solib_bfd_open otherwise.
12373
12374         * objfiles.h (OBJF_KEEPBFD): New define.
12375         * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
12376         objfile flag is set.
12377         * solib.c (symbol_add_stub): Do not allocate second BFD for
12378         shared library; use OBJF_KEEPBFD flag on solib objfile.
12379
12380 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
12381
12382         * frame.c (get_frame_arch): Abort if called with NULL this_frame.
12383
12384 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
12385
12386         * value.h (address_of_variable): Add prototype.
12387         (locate_var_value): Remove prototype.
12388
12389         * findvar.c (read_var_value): Do not attempt to default frame
12390         to selected frame.
12391         (locate_var_value): Remove function.
12392         * valops.c (value_of_variable): Retrieve selected frame for
12393         symbols that require a frame when called with NULL block.
12394         * valops.c (address_of_variable): New function.
12395
12396         * eval.c (evaluate_subexp_for_address): Call address_of_variable
12397         instead of calling locate_var_value.
12398         (evaluate_subexp_with_coercion): Likewise.
12399
12400 2009-01-14  Daniel Jacobowitz  <dan@codesourcery.com>
12401
12402         * NEWS: Document "define" for prefixed commands.
12403         * cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
12404         show_user_1 for prefix commands.
12405         * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
12406         * cli/cli-script.c (validate_comname): Rewrite to handle prefix
12407         commands.  Return the containing command list.
12408         (define_command, document_command): Update to handle prefix commands.
12409         (show_user_1): Add prefix and name arguments.  Handle prefix
12410         commands.
12411         * cli/cli-script.h (show_user_1): Update prototype.
12412
12413 2009-01-14  Kai Tietz  <kai.tietz@onevision.com>
12414
12415         * ser-mingw.c (console_select_thread): Add return to make
12416         compiler happy.
12417         (pipe_select_thread): Likewise.
12418         (file_select_thread): Likewise.
12419
12420 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
12421
12422         * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
12423         previous change.
12424
12425 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
12426
12427         * remote.c (extended_remote_mourn_1): Invalidate our notion of
12428         current general thread.
12429
12430 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
12431
12432         * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
12433         without a live selected thread.
12434
12435 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
12436
12437         Update the copyright notice of some of the files I missed
12438         in the previous copyright update.
12439
12440 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
12441
12442         * windows-nat.c (handle_unload_dll): Use %p to print the DLL
12443         base address instead of casting it to DWORD.
12444
12445 2009-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
12446
12447         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
12448         for NULL frame pointers.
12449
12450 2009-01-13  Mark Kettenis  <kettenis@gnu.org>
12451
12452         * utils.c (host_address_to_string): Reimplement in a way that
12453         avoids the cast of the address to long.
12454
12455 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
12456
12457         * mdebugread.c (parse_symbol): Save the symbol private data
12458         using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
12459         (psymtab_to_symtab_1): Likewise.
12460         (parse_procedure): Declare variable "e" only in the scope
12461         where it is used. Extract the symbol private data using
12462         SYMBOL_VALUE_BYTES.
12463
12464 2009-01-13  Jim Blandy  <jimb@codesourcery.com>
12465
12466         Abstract out common code for copying value locations.
12467
12468         * value.h (set_value_component_location): New declaration.
12469         * value.c (set_value_component_location): New function.
12470         (value_primitive_field): Use it.
12471         * valarith.c (value_subscript, value_subscripted_rvalue): Same.
12472         * valops.c (search_struct_field, value_slice): Same.
12473         * ada-lang.c (coerce_unspec_val_to_type)
12474         (ada_value_primitive_packed_val): Same.
12475
12476 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
12477
12478         * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
12479
12480 2009-01-12  Christopher Faylor  <me+cygwin@cgf.cx>
12481
12482         * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
12483         throughout.
12484         * i386-cygwin-tdep.c: Ditto.
12485         * i386-windows-nat.c: Ditto.
12486         * windows-nat.h: Ditto.
12487         * windows-tdep.c: Ditto.
12488         * windows-tdep.h: Ditto.
12489         * windows-nat.c: Ditto.
12490         (cygwin_load_start): Redefine as CORE_ADDR.
12491         (cygwin_load_end): Ditto.
12492         (windows_make_so): Coerce result of address arithmetic to uintptr_t
12493         before coercing to CORE_ADDR to avoid a compiler warning.
12494         (handle_exception): Define addr as CORE_ADDR and coerce
12495         ExceptionAddress to uintptr_t before assigining to avoid a compiler
12496         warning.
12497         * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
12498         files.
12499
12500 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
12501
12502         Fix linking with --enable-targets=all:
12503         * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
12504         (HFILES_NO_SRCDIR): Add windows-tdep.h.
12505         (ALLDEPFILES): Add windows-tdep.c.
12506
12507 2009-01-11  Chris Faylor  <me.gdb@cgf.cx>
12508
12509         * win32-nat.h: Delete.
12510         * windows-nat.h: Rename from win32-nat.h.
12511         * win32-nat.c: Delete.
12512         * windows-nat.c: Rename from win32-nat.c.
12513         * win32-termcap.c: Delete.
12514         * windows-termcap.c: Rename from win32-termcap.c.
12515         * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
12516         * configure.ac: Handle rename from win32-termcap.c ->
12517         windows-termcap.c.
12518         * configure: Regenerate.
12519         * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
12520         -> windows-termcap.c.
12521         * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
12522         windows-tdep.h.
12523         * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
12524         * windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
12525         windows-tdep.h.
12526         (win32_make_so): Handle cygwin compiler warning due to change of
12527         load_addr from DWORD to LPVOID.
12528         (handle_load_dll): Use %p in format string to properly print address
12529         and avoid a compiler warning.
12530         (DEBUG_EXCEPTION_SIMPLE): Ditto.
12531         (handle_exception): Ditto.
12532         * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
12533         * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
12534         windows-nat.o.
12535         * config/i386/mingw.mh: Ditto.
12536         * config/i386/mingw64.mh: Ditto.
12537
12538 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
12539
12540         * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
12541         arrayprint_recurse_level to a parameter.  Update all the callers.  New
12542         comment at autovariables.
12543
12544 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
12545
12546         * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
12547         coding style.
12548
12549 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12550
12551         * target.c (target_xfer_partial): Use host_address_to_string to
12552         print the address of readbuf and writebuf. Cast the address of
12553         elements inside the myaddr buffer into intptr_t.
12554         (deprecated_debug_xfer_memory): Use paddress to print memaddr.
12555         Cast the address of elements inside the myaddr buffer into
12556         intptr_t.
12557
12558 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12559
12560         * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
12561         * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
12562         * configure.host, configure.tgt: Add handling for x86_64/windows.
12563         * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
12564         and amd64-windows-tdep.c.
12565
12566 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12567
12568         * win32-tdep.h, win32-tdep.c: New files.
12569         * i386-cygwin-tdep.h: Delete.
12570         * i386-cygwin-tdep.c: Include win32-tdep.h instead of
12571         i386-cygwin-tdep.h.
12572         (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
12573         * win32-nat.c: Likewise.
12574         * configure.tgt: Add win32-tdep.o to the list of target object
12575         files for i386-cygwin and i386-mingw targets.
12576
12577 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12578
12579         * win32-nat.h: New file.
12580         * win32-nat.c (mappings): Initialize to NULL.
12581         (win32_set_context_register_offsets): New function.
12582         * i386-windows-nat.c: New file.
12583         (mappings): Moved here from win32-nat.c.
12584         (_initialize_i386_windows_nat): New function.
12585         * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
12586         * config/i386/cygwin.mh (NATDEPFILES): Likewise.
12587
12588 2009-01-09  Andreas Schwab  <schwab@suse.de>
12589
12590         * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
12591
12592 2009-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
12593
12594         * gdbtypes.c (append_composite_type_field): Correct the location of
12595         appended fields.
12596
12597 2009-01-09  Pedro Alves  <pedro@codesourcery.com>
12598
12599         * defs.h (deprecated_error_hook): Delete declaration.
12600         * interps.c (clear_interpreter_hooks): Adjust.
12601         * remote-sim.c (gdb_os_error): Don't try to call
12602         deprecated_error_hook.  No need to call exit anymore.
12603         * top.c (deprecated_error_hook): Delete.
12604
12605 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12606
12607         * arch-utils.c (gdbarch_update_p): Use host_address_to_string
12608         to print the address of the gdbarch pointer.
12609
12610 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12611
12612         * gdbarch.sh: Fix all the compilation errors on amd64-windows
12613         due to casting a pointer to a long when printing a function
12614         address. Instead, use host_address_to_string to convert our
12615         address to a string.
12616         * gdbarch.c: Regenerate.
12617
12618 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12619
12620         * event-top.c (async_disconnect, async_stop_sig): use "raise"
12621         instead of "kill" to raise a signal.
12622
12623 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12624
12625         * win32-nat.c (get_module_name): Change the type of parameter
12626         "base_address" to LPVOID.  Remove unnecessary cast.
12627         (struct lm_info): Change type of load_addr to LPVOID.
12628         (win32_make_so): Change the type of parameter "load_addr"
12629         to LPVOID.  Remove some unnecessary casts.
12630         (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
12631         (win32_xfer_shared_libraries): Add missing cast.
12632
12633 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12634
12635         * win32-nat.c (has_detach_ability, set_process_privilege):
12636         Cast the result of GetProcAddress to (void *) to avoid
12637         a compilation warning.
12638
12639 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12640
12641         * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
12642         already defined.
12643
12644 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12645
12646         * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
12647         definition of local variable "done".
12648         (info_w32_command, handle_exception): Remove unnecessary cast.
12649
12650 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12651
12652         * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
12653         DebugSetProcessKillOnExit.  Update all uses in this file.
12654         (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
12655         Update all uses in this file.
12656
12657 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12658
12659         * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
12660         and use it when pushing the target.
12661         (win32_attach, win32_create_inferior): Update call to
12662         do_initial_win32_stuff.
12663         (win32_detach, win32_mourn_inferior): Use our ops parameter
12664         instead of the global win32_ops to unpush the target.
12665
12666 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12667
12668         * ser-mingw.c (ser_windows_open): Use proper type when casting
12669         in call to _open_osfhandle.
12670
12671 2009-01-09  Kai Tietz  <kai.tietz@onevision.com>
12672
12673         * coff-pe-read.c (read_pe_exported_syms): Fix typo.
12674
12675 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12676
12677         * CONTRIBUTE: Minor reformatting.
12678
12679 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
12680
12681         * MAINTAINERS: Add myself to Write After Approval.
12682         * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
12683         export directory.
12684
12685 2009-01-08  Nathan Froyd  <froydnj@codesourcery.com>
12686
12687         * remote-sim.c (gdb_os_error): Mark as a noreturn function.
12688         Call exit to make it obvious to GCC.
12689
12690 2009-01-08  Tom Tromey  <tromey@redhat.com>
12691
12692         PR breakpoints/9350:
12693         * varobj.c (varobj_invalidate): Unconditionally free
12694         all_rootvarobj.
12695         * symfile.c (syms_from_objfile): Free local_addr when returning
12696         normally.
12697         * exec.c (exec_file_attach): Do cleanups before returning.
12698         (exec_file_command): Likewise.
12699         * corefile.c (reopen_exec_file): Do cleanups before returning.
12700         * breakpoint.c (insert_breakpoint_locations): Do cleanups before
12701         returning.
12702         (do_vec_free): New function.
12703         (update_global_location_list): Make a cleanup for old_locations.
12704         Do cleanups before returning.  Remove unused variable 'e'.
12705         (find_condition_and_thread): Free result of parsing the
12706         expression.
12707         (print_it_typical): Do cleanups before returning.
12708         (breakpoint_re_set_one): Always free sals.sals.
12709
12710 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
12711             Emi Suzuki  <emi-suzuki@tjsys.co.jp>
12712
12713         * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
12714         watchpoints.
12715
12716 2009-01-07  Doug Evans  <dje@google.com>
12717
12718         * top.c (gdb_prompt_string): Delete, unused.
12719
12720 2009-01-07  Pedro Alves  <pedro@codesourcery.com>
12721
12722         Delete ONE_PROCESS_WRITETEXT leftovers.
12723
12724         * breakpoint.c (insert_bp_location): Delete process_warning
12725         argument.  Adjust.
12726         (insert_breakpoint_locations): Adjust.
12727         (reattach_breakpoints): Adjust.
12728         * infrun.c (normal_stop): Drop "It might be running in another
12729         process" notice.
12730
12731 2009-01-07  Stan Shebs  <stan@codesourcery.com>
12732
12733         * config/pa/linux.mh (XDEPFILES): Remove.
12734
12735 2009-01-07  Doug Evans  <dje@google.com>
12736
12737         * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
12738
12739 2009-01-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
12740
12741         * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
12742         spacing, a regression from 2008-04-22.
12743
12744 2009-01-07  Joel Brobecker  <brobecker@adacore.com>
12745
12746         * utils.c (gdb_print_host_address): Adjust implementation to
12747         reuse host_address_to_string. Move comment explaining the conversion
12748         from host address to string from here...
12749         (host_address_to_string): ... to there.
12750
12751 2009-01-07  Emi Suzuki  <emi-suzuki@tjsys.co.jp>
12752
12753         * MAINTAINERS: Add myself for write after approval privileges.
12754
12755 2009-01-06  Tom Tromey  <tromey@redhat.com>
12756
12757         * value.c (set_internalvar): Use value_free, not xfree.
12758
12759 2009-01-06  Jim Blandy  <jimb@red-bean.com>
12760
12761         Check return values of functions declared with warn_unused_result
12762         attribute in GLIBC 2.8.
12763         * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
12764         * inflow.c (check_syscall): New function.
12765         (new_tty): Use check_syscall to check return values from open and dup.
12766         * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
12767         * main.c (captured_main): Call cwd after setting up gdb_stderr;
12768         check for errors from getcwd.
12769         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
12770         * ui-file.c (stdio_file_write): Ignore return value from fwrite.
12771         (stdio_file_fputs): Same.
12772         * utils.c (internal_vproblem): abort if last-ditch error message
12773         write fails.
12774
12775         * top.c (gdb_init): Don't set the current directory here; that's
12776         already been done in captured_main.
12777
12778 2009-01-06  Sandra Loosemore  <sandra@codesourcery.com>
12779
12780         * ser-tcp.c: Adjust includes.
12781         (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
12782         (tcp_auto_retry, tcp_retry_limit): Declare.
12783         (TIMEOUT): Remove, in favor of tcp_retry_limit.
12784         (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
12785         (wait_for_connect): New function.
12786         (net_open): Use it.  Add auto-retry logic.
12787         (set_tcp_cmd, show_tcp_cmd): New functions.
12788         (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
12789         and "set/show tcp connect-timeout" commands.
12790         * NEWS: Document new commands.
12791
12792 2009-01-05  Tom Tromey  <tromey@redhat.com>
12793
12794         * python/python-internal.h (Py_ssize_t): Define as int.
12795
12796 2009-01-05  Jim Blandy  <jimb@red-bean.com>
12797
12798         * MAINTAINERS: Fix my e-mail address as steering committee member.
12799
12800 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
12801
12802         Updated copyright notices for most files.
12803
12804 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
12805
12806         * top.c (print_gdb_version): Update copyright year.
12807
12808 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
12809
12810         * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
12811
12812 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
12813
12814         PR breakpoints/9681:
12815         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
12816         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
12817         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
12818         retrow all other exceptions.
12819
12820 For older changes see ChangeLog-2008.
12821 \f
12822 Local Variables:
12823 mode: change-log
12824 left-margin: 8
12825 fill-column: 74
12826 version-control: never
12827 coding: utf-8
12828 End: