2009-11-12 Paul Brook <paul@codesourcery.com>
[external/binutils.git] / gdb / ChangeLog
1 2009-11-12  Paul Brook  <paul@codesourcery.com>
2             Daniel Jacobowitz  <dan@codesourcery.com>
3
4         * dwarf2read.c (dwarf2_add_member_fn): Calculate virtual function
5         offset for classes without DW_AT_containing_type.
6
7 2009-11-12  Paul Brook  <paul@codesourcery.com>
8             Daniel Jacobowitz  <dan@codesourcery.com>
9
10         * dwarf2read.c (struct field_info): Add baseclasses.
11         (dwarf2_add_field): Add base classes to a separate list.
12         (dwarf2_attach_fields_to_type): Merge base classes and fields.
13
14 2009-11-12  Daniel Jacobowitz  <dan@codesourcery.com>
15
16         * dwarf2read.c (process_psymtab_comp_unit): Initialize per_cu backlink
17         at the same time as the forward link.
18         (load_partial_comp_unit): Initialize per_cu links before calling
19         init_cu_die_reader.
20
21 2009-11-11  Paul Pluzhnikov  <ppluzhnikov@google.com>
22
23         PR gdb/10838
24         * linux-thread-db.c (thread_db_info): New member.
25         (disable_thread_event_reporting): Call td_ta_clear_event.
26
27 2009-11-11  Keith Seitz  <keiths@redhat.com>
28
29         * linespec.c (lookup_prefix_sym): Lookup the symbol
30         in both STRUCT_DOMAIN and VAR_DOMAIN.
31
32 2009-11-11  Michael Snyder  <msnyder@vmware.com>
33
34         * darwin-nat-info.c: Update copyright.
35         * dbxread.c: Ditto.
36         * gdbarch.sh: Ditto.
37         * gdbarch.c: Ditto.
38         * gdbarch.h: Ditto.
39         * inline-frame.c: Ditto.
40         * inline-frame.h: Ditto.
41         * s390-nat.c: Ditto.
42
43 2009-11-11  Michael Snyder  <msnyder@vmware.com>
44
45         * findvar.c (top level): Fix and add comments.
46
47 2009-11-10  Keith Seitz  <keiths@redhat.com>
48
49         * c-exp.y (operator_stoken): New function.
50         (OPERATOR): New token.
51         (NEW): New token.
52         (DELETE): New token.
53         (operator): New rule.
54         (name): Add operator.
55         (ident_tokens): Add "new", "delete", and "operator".
56         * gdbtypes.c (rank_one_type): Don't complain about
57         void pointer conversion badness if both types are
58         void pointers.
59
60 2009-11-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
61
62         * symfile.c (separate_debug_file_exists): Change parameter parent_name
63         to parent_objfile.  New variables parent_stat and abfd_stat.  Call
64         strcmp and then bfd_stat functions to verify if NAME matches.
65         (find_separate_debug_file): Update the passed parameter at caller.
66
67 2009-11-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
68
69         * objfiles.c (objfile_relocate): Update also the field psymtabs_addrmap.
70
71 2009-11-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
72
73         * configure.ac: Call ACX_LARGEFILE.
74         * aclocal.m4: Call m4_include for ../config/largefile.m4 and
75         ../config/plugins.m4.
76         * configure: Regenerate.
77         * config.in: Regenerate.
78
79 2009-11-10  Keith Seitz  <keiths@redhat.com>
80
81         * c-exp.y: Add new rule for resolving method overloads.
82         * eval.c (make_params): New function.
83         (free_param_types): New function.
84         (evaluate_subexp_standard): Pass expect_type to value_aggregate_elt.
85         Handle case TYPE_INSTANCE.
86         (evaluate_subexp_for_address): Pass expect_type to value_aggregate_elt.
87         * expression.h (enum exp_opcode): Add TYPE_INSTANCE.
88         (compare_parameters): Add declaration.
89         * parse.c (operator_length_standard): Add TYPE_INSTANCE.
90         * valops.c (value_aggregate_elt): Add new expect_type parameter.
91         Pass expect_type to value_struct_elt_for_reference.
92         (value_struct_elt_for_reference): Add expect_type parameter and use
93         compare_parameters.
94         Check for overload matches with and without artificial parameters.
95         Skip artificial methods.
96         (compare_parameters): New function.
97         * value.h (value_aggregate_elt): Add new expect_type parameter.
98
99 2009-11-10  Joseph Myers  <joseph@codesourcery.com>
100
101         * solib-svr4.c (enable_break): Call
102         gdbarch_convert_from_func_ptr_addr on results of looking up
103         fallback symbol names.
104
105 2009-11-10  Daniel Gutson  <dgutson@codesourcery.com>
106
107         * procfs.c (procfs_do_thread_registers): Added a call to fetch
108         register values before saving them in the core file
109         through the gcore command.
110         (procfs_corefile_thread_callback): Removed the backup of
111         inferior_ptid before calling procfs_do_thread_registers since
112         the function already saves and restores it before returning.
113
114 2009-11-10  Michael Snyder  <msnyder@vmware.com>
115
116         * dcache.c (dcache_invalidate_line): Remove block from used list
117         when adding it to freed list.
118
119 2009-11-10  Michael Snyder  <msnyder@vmware.com>
120
121         * dcache.c: Fix typo, shorten long lines in comment.
122
123 2009-11-10  Tristan Gingold  <gingold@adacore.com>
124
125         * avr-tdep.c: Add AVR_PSEUDO_PC_REGNUM and AVR_NUM_PSEUDO_REGS.
126         (struct gdbarch_tdep): Add void_type, func_void_type and pc_type
127         fields.
128         (avr_register_name): Add "pc" name, renames "PC" to "PC2".
129         (avr_register_type): Handle AVR_PSEUDO_PC_REGNUM.
130         (avr_write_pc): Fix indentation.
131         (avr_pseudo_register_read): New function.
132         (avr_pseudo_register_write): New function.
133         (avr_frame_prev_register): Handle AVR_PSEUDO_PC_REGNUM.
134         (avr_gdbarch_init): Create types for pc.  Register pseudo regs.
135
136 2009-11-10  Tristan Gingold  <gingold@adacore.com>
137
138         * avr-tdep.c (avr_integer_to_address): New function.
139         (avr_gdbarch_init): Set integer_to_address.
140
141 2009-11-10  Tristan Gingold  <gingold@adacore.com>
142
143         * avr-tdep.c (avr_skip_prologue): First try to skip prologue
144         using skip_prologue_using_sal.
145
146 2009-11-10  Tristan Gingold  <gingold@adacore.com>
147
148         * avr-tdep.c (avr_extract_return_value): Remove.
149         (avr_return_value): Mostly rewritten.  Fix handling for structures.
150         (avr_push_dummy_call): Handle struct_return.
151
152 2009-11-10  Tristan Gingold  <gingold@adacore.com>
153
154         * avr-tdep.c (avr_scan_prologue): Decode instructions used for
155         small stack allocation.
156         Adjust code for prologue that don't write SP.
157
158 2009-11-10  Tristan Gingold  <gingold@adacore.com>
159
160         * avr-tdep.c (avr_make_saddr): Return 0 for NULL.
161
162 2009-11-10  Tristan Gingold  <gingold@adacore.com>
163
164         * avr-tdep.c (avr_dwarf_reg_to_regnum): New function.
165         (avr_gdbarch_init): Call set_gdbarch_dwarf2_reg_to_regnum.
166
167 2009-11-09  Sebastien Granjoux  <seb.sfo@free.fr>
168
169         PR mi/9583:
170         * symtab.c (find_line_symtab, append_exact_match_to_sals)
171         (expand_line_sal): Use full filename when setting breakpoints if
172         available
173
174 2009-11-09  Cary Coutant  <ccoutant@google.com>
175
176         * dwarf2read.c (read_import_statement): Don't clobber original cu.
177
178 2009-11-09  Tom Tromey  <tromey@redhat.com>
179
180         * python/python.c (execute_gdb_command): Copy the argument text.
181
182 2009-11-06  Vladimir Prus  <vladimir@codesourcery.com>
183
184         * m68k-tdep.c (m68k_convert_register_p): Correct
185         messup.
186
187 2009-11-06  Vladimir Prus  <vladimir@codesourcery.com>
188
189         * m68k-tdep.c (m68k_convert_register_p): Compare with
190         the actual type of fp registers, not one of the possible
191         values.
192
193 2009-11-06  Vladimir Prus  <vladimir@codesourcery.com>
194
195         Prevent program output from mix with "^running".
196
197         gdb/
198         * mi/mi-interp.c (mi_on_resume): Output token
199         and "^running" together, so that nothing else gets
200         in between.
201
202 2009-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
203
204         * dwarf2read.c (struct dwarf2_cu): Remove ranges_offset and
205         has_ranges_offset.
206         (struct partial_die_info): Remove language, has_stmt_list, dirname,
207         and line_offset.
208         (dwarf2_build_include_psymtabs): Take a die_info.  Handle a missing
209         line table.
210         (dwarf2_get_pc_bounds): Take PST argument.  Pass it
211         to dwarf2_ranges_read.  Update all callers.
212         (init_cu_die_reader): Move earlier.
213         (dwarf2_find_base_address): New function.
214         (process_psymtab_comp_unit): Rewrite to use a full DIE for the
215         compilation unit.  Use dwarf2_get_pc_bounds and
216         dwarf2_find_base_address.
217         (load_comp_unit): Rewrite to use a full DIE for the compilation unit.
218         (process_full_comp_unit): Use dwarf2_find_base_address.
219         (read_partial_die): Remove support for attributes only used
220         in the compilation unit DIE.
221         * symfile.c (allocate_psymtab): Make FILENAME const.
222         (start_psymtab_common): Likewise.
223         * symfile.h (allocate_psymtab, start_psymtab_common): Update
224         prototypes.
225
226 2009-11-05  Tom Tromey  <tromey@redhat.com>
227
228         * symmisc.c (print_symbol_bcache_statistics): Print filename cache
229         statistics.
230         (print_objfile_statistics): Likewise.
231         * symfile.c (reread_symbols): Initialize filename_cache.
232         (allocate_symtab): Cache the file name.
233         (allocate_psymtab): Likewise.
234         * solib-sunos.c (allocate_rt_common_objfile): Initialize
235         filename_cache.
236         * objfiles.h (struct objfile) <filename_cache>: New field.
237         * objfiles.c (allocate_objfile): Initialize filename_cache.
238         (free_objfile): Free filename_cache.
239
240 2009-11-05  Tom Tromey  <tromey@redhat.com>
241
242         * symfile.c (add_psymbol_to_bcache): Make 'psymbol' static again.
243         Zero the 'value' field.
244
245 2009-11-05  Doug Evans  <dje@google.com>
246
247         * amd64-tdep.c (amd64_init_frame_cache): Enhance comment describing
248         saved_regs.
249
250 2009-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
251
252         * top.c (execute_command): Select a frame before checking the current
253         language.  Only output a message if verbose.
254
255 2009-11-05  Tom Tromey  <tromey@redhat.com>
256
257         * symtab.h (SYMBOL_SET_LINKAGE_NAME): Update comment.
258         * symfile.c (allocate_symtab): Don't use obsavestring on a
259         constant string.
260         * stabsread.c (define_symbol): Don't use obsavestring on a
261         constant string.
262         * mdebugread.c (parse_type): Don't use obsavestring on a constant
263         string.
264         (new_symtab): Likewise.
265         * elfread.c (elf_symtab_read): Don't use obsavestring on a
266         constant string.
267
268 2009-11-04  Tom Tromey  <tromey@redhat.com>
269
270         * symfile.c (add_psymbol_to_bcache): Don't copy name.  Make
271         'psymbol' non-static.
272
273 2009-11-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
274
275         * linux-thread-db.c (disable_thread_event_reporting): Adjust.
276         
277 2009-11-03  Joel Brobecker  <brobecker@adacore.com>
278
279         * MAINTAINERS (Responsible Maintainers): Add Tristan Gingold as
280         maintainer of the avr target.
281
282 2009-11-02  Daniel Jacobowitz  <dan@codesourcery.com>
283
284         * elfread.c (elf_symfile_segments): Do not warn about
285         uninitialized sections outside of load segments.
286
287 2009-11-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
288
289         * symfile.c (build_id_to_debug_filename): New variable debugdir.  Move
290         variables size, s and data into a new inner block.  Change xmalloc for
291         alloca, use direct BUILDID->SIZE there now.  Loop for the
292         DEBUG_FILE_DIRECTORY components.
293         (find_separate_debug_file): New variable debugdir and debugdir_end.
294         Loop for the DEBUG_FILE_DIRECTORY components.
295         (_initialize_symfile): For "debug-file-directory" use plural and note
296         one can use multiple components now.
297
298 2009-11-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
299
300         * symfile.c (find_separate_debug_file): Initialize dir, debugfile and
301         canon_name to NULL.  Change alloca to xmalloc, newly call xfree for it.
302         New label cleanup_return_debugfile, jump to it from the failure paths.
303
304 2009-11-02  Andrew Cagney  <cagney@gnu.org>
305
306         * symfile.c (separate_debug_file_exists): When the CRCs mismatch
307         print a warning.
308         (find_separate_debug_file): Pass in the objfile's name.
309
310 2009-11-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
311
312         Remove INVALID_ENTRY_POINT.
313         * frame.c (inside_entry_func): New variable entry_point.  Return 0 if
314         the entry point is not known.
315         * solib-irix.c (enable_break): Likewise.
316         * objfiles.c (init_entry_point_info): Stop using INVALID_ENTRY_POINT.
317         Initialize EI.ENTRY_POINT_P.
318         (entry_point_address): Rename to ...
319         (entry_point_address_query): ... a new function.  Use EI.ENTRY_POINT_P.
320         (entry_point_address): New function.
321         (objfile_relocate): Use EI.ENTRY_POINT_P.
322         * objfiles.h (struct entry_info): Simplify entry_point comment.  New
323         field entry_point_p.
324         (INVALID_ENTRY_POINT): Remove.
325         (entry_point_address_query): New prototype.
326         * solib-frv.c (enable_break): Check for NULL SYMFILE_OBJFILE and its
327         EI.ENTRY_POINT_P.  Return 0 if ".interp" is not found.
328
329 2009-11-01  Michael Snyder  <msnyder@vmware.com>
330
331         * NEWS (New Commands): Mention record save/restore.
332
333 2009-10-31  Michael Snyder  <msnyder@vmware.com>
334
335         * breakpoint.c (bpstat_stop_status): Fix broken comment.
336
337 2009-10-31  Pedro Alves  <pedro@codesourcery.com>
338
339         * record.c (record_restore, cmd_record_save): Debug output goes to
340         gdb_stdlog.
341
342 2009-10-31  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
343
344         * breakpoint.c (catch_syscall_split_args): Remove unecessary warning
345         displayed when the user provided a syscall name and there is no
346         XML support.
347         * xml-syscall.c: Renamed `_sysinfo' to `sysinfo'.
348         (set_xml_syscall_file_name): Remove syscall_warn_user.
349         (xml_init_syscalls_info): Remove warning.
350         (init_sysinfo): Update warnings.
351
352 2009-10-30  Vladimir Prus  <vladimir@codesourcery.com>
353
354         Fix breakpoint commands in MI.
355
356         * mi/mi-main.c (mi_execute_command): Run bpstat_do_actions.
357         * mi/mi-cmd-break.c (mi_cmd_break_commands): Pass 1 to
358         read_command_line_1 to actually parse composite commands.
359
360 2009-10-29  Sandra Loosemore  <sandra@codesourcery.com>
361
362         PR gdb/10783
363
364         * target.c (simple_search_memory): Correct read_addr initialization
365         in loop for searching subsequent chunks.
366
367 2009-10-28  Daniel Jacobowitz  <dan@codesourcery.com>
368
369         Reported by Antti Hatala <ahatala@nvidia.com>.
370
371         * arm-tdep.c (thumb_get_next_pc): Limit check to IT instructions
372         correctly.
373
374 2009-10-28  Pedro Alves  <pedro@codesourcery.com>
375
376         * dwarf2-frame.c (dwarf2_build_frame_info): Discard --gc-section
377         leftover FDEs.
378
379 2009-10-28  Pedro Alves  <pedro@codesourcery.com>
380
381         * infrun.c (keep_going): Wrap with resume_cleanups.
382
383 2009-10-27  Paul Pluzhnikov  <ppluzhnikov@google.com>
384         
385         * MAINTAINERS: Add self to "modify-after-approval" maintainers.
386
387 2009-10-27  Paul Pluzhnikov  <ppluzhnikov@google.com>
388
389         PR gdb/10757
390         * linux-thread-db.c (attach_thread): Return success/failure
391         indicator.
392         (thread_db_find_new_threads_silently): Retry until no new threads.
393         (struct callback_data): New.
394         (find_new_threads_callback): Count new threads, stop iteration
395         on error.
396         (find_new_threads_once): New function.
397         (thread_db_find_new_threads_2): Rename from
398         thread_db_find_new_threads_1 and adjust.
399         (thread_db_find_new_threads_1): New function.
400         
401 2009-10-26  Michael Eager  <eager@eagercon.com>
402
403         * MAINTAINERS: Add self to "modify-after-approval" maintainers.
404
405 2009-10-26  Michael Snyder  <msnyder@vmware.com>
406             Hui Zhu  <teawater@gmail.com>
407
408         * Makefile.in (SFILES): Add gcore.c.
409         (COMMON_OBS): Add gcore.o.
410         * config/alpha/alpha-linux.mh (NATDEPFILES): Delete gcore.o.
411         * config/alpha/fbsd.mh (NATDEPFILES): Ditto.
412         * config/arm/linux.mh (NATDEPFILES): Ditto.
413         * config/i386/fbsd.mh (NATDEPFILES): Ditto.
414         * config/i386/fbsd64.mh (NATDEPFILES): Ditto.
415         * config/i386/i386sol2.mh (NATDEPFILES): Ditto.
416         * config/i386/linux.mh (NATDEPFILES): Ditto.
417         * config/i386/linux64.mh (NATDEPFILES): Ditto.
418         * config/i386/sol2-64.mh (NATDEPFILES): Ditto.
419         * config/ia64/linux.mh (NATDEPFILES): Ditto.
420         * config/m32r/linux.mh (NATDEPFILES): Ditto.
421         * config/m68k/linux.mh (NATDEPFILES): Ditto.
422         * config/mips/linux.mh (NATDEPFILES): Ditto.
423         * config/pa/linux.mh (NATDEPFILES): Ditto.
424         * config/powerpc/linux.mh (NATDEPFILES): Ditto.
425         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Ditto.
426         * config/s390/s390.mh (NATDEPFILES): Ditto.
427         * config/sparc/fbsd.mh (NATDEPFILES): Ditto.
428         * config/sparc/linux.mh (NATDEPFILES): Ditto.
429         * config/sparc/linux64.mh (NATDEPFILES): Ditto.
430         * config/sparc/sol2.mh (NATDEPFILES): Ditto.
431         * config/xtensa/linux.mh (NATDEPFILES): Ditto.
432         * target.c (dummy_find_memory_regions): Change output.
433         (dummy_make_corefile_notes): Ditto.
434
435 2009-10-26  Tristan Gingold  <gingold@adacore.com>
436         
437         * charset.c (_initialize_charset): Set a default value to
438         auto_host_charset_name if empty.
439
440 2009-10-26  Tristan Gingold  <gingold@adacore.com>
441
442         * avr-tdep.c (avr_push_dummy_call): Handle avr6 architecture.
443         Fix the returned value.  Fix style.
444
445 2009-10-26  Joel Brobecker  <brobecker@adacore.com>
446
447         * MAINTAINERS (Responsible Maintainers): Add info about the microblaze
448         targets.  Add Michael Eager as the maintainer for this target.
449
450 2009-10-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
451
452         Performance optimize large bp_location count.
453         * breakpoint.c (ALL_BP_LOCATIONS_SAFE): Remove.
454         (ALL_BP_LOCATIONS): New parameter BP_TMP.  Use now bp_location and
455         bp_location_count.
456         (bp_location_chain): Remove variable.
457         (bp_location, bp_location_count)
458         (bp_location_placed_address_before_address_max)
459         (bp_location_shadow_len_after_address_max): New variables.
460         (moribund_locations, update_watchpoint): Update the bp_location
461         variable name.
462         (breakpoint_restore_shadows): Extend the comment.  Move the variable
463         b to local blocks.  Move the variables bp_addr, bp_size and bptoffset
464         to a local block.  New variables bc_l, bc_r and bc.  New binary search
465         for the left range boundary.  New break on reaching the right range
466         boundary.  Move shadow existence conditionals to ...
467         (bp_location_has_shadow): ... a new function.
468         (insert_breakpoint_locations): Replace the temp variable by bp_tmp.
469         Use now ALL_BP_LOCATIONS instead of ALL_BP_LOCATIONS_SAFE.
470         (remove_breakpoints, remove_hw_watchpoints, reattach_breakpoints)
471         (detach_breakpoints): New variable bp_tmp.  Update the ALL_BP_LOCATIONS
472         calling convention.
473         (update_breakpoints_after_exec): New variable bplocp_tmp.  Update the
474         ALL_BP_LOCATIONS calling convention.
475         (breakpoint_here_p, software_breakpoint_inserted_here_p)
476         (breakpoint_thread_match): New variable bptp_tmp.  Drop the const
477         attribute of bpt.  Update the ALL_BP_LOCATIONS calling convention.
478         (regular_breakpoint_inserted_here_p): Likewise.  Update the bp_location
479         variable name.
480         (mark_breakpoints_out, breakpoint_init_inferior): New variable
481         bptp_tmp.  Update the ALL_BP_LOCATIONS calling convention.
482         (bpstat_stop_status): New variables blp_tmp and update_locations.  Drop
483         the const attribute of bl.  Update the ALL_BP_LOCATIONS calling
484         convention.  Protect HIT_COUNT increment by an ENABLE_STATE check.
485         Delay the update_global_location_list call using update_locations.
486         (set_default_breakpoint): Drop the check_duplicates name from comment.
487         (disable_breakpoints_in_shlibs, disable_breakpoints_in_unloaded_shlib):
488         New variable locp_tmp.  Update the ALL_BP_LOCATIONS calling convention.
489         (bp_location_compare, bp_location_compare_for_qsort)
490         (bp_location_target_extensions_update): New functions.
491         (check_duplicates, check_duplicates_for): Remove, moving their code ...
492         (update_global_location_list): ... into this existing function.  Remove
493         variables next, loc2, old_locations, ret and ix.  New variables locp,
494         loc_first, old_location, old_locp and old_location_count.  Stop using
495         global_next, create now the array bp_location, sort it by
496         bp_location_compare_for_qsort and call
497         bp_location_target_extensions_update.  Change quadratic iteration by
498         loc2 into an in-sync scanning by locp and loc2p.  Rename former loc
499         usage as old_loc.
500         (do_vec_free): Remove.
501         (breakpoint_program_space_exit): Update the ALL_BP_LOCATIONS calling
502         convention.
503         (remove_breakpoints_pid): New variable b_tmp.  Update the
504         ALL_BP_LOCATIONS calling convention.
505         * breakpoint.h (struct bp_location <global_next>): Remove.
506
507 2009-10-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
508
509         * mep-tdep.c: Update include for the new location cgen/bitset.h.
510
511 2009-10-23  Tom Tromey  <tromey@redhat.com>
512
513         * blockframe.c (_initialize_blockframe): Remove declaration.
514
515 2009-10-23  Doug Evans  <dje@google.com>
516
517         * record.c (record_core_xfer_partial): Pass correct offset to
518         record_beneath_to_xfer_partial.
519
520 2009-10-23  Michael Snyder  <msnyder@vmware.com>
521
522         * record.c (top level): Don't include byteswap.h.
523         (netorder64): Use store_unsigned_integer instead of bswap_64.
524         (netorder32): Use store_unsigned_integer instead of bswap_32.
525         (netorder16): Use store_unsigned_integer instead of bswap_16.
526
527 2009-10-23  Michael Snyder  <msnyder@vmware.com>
528
529         * record.c (netorder64): Use BFD_ENDIAN_LITTLE not LITTLE_ENDIAN.
530         (netorder32): Ditto.
531         (netorder16): Ditto.
532
533 2009-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
534
535         * objfiles.c (allocate_objfile): Use xzalloc.
536
537 2009-10-23  Hui Zhu  <teawater@gmail.com>
538
539         * record.c (record_restore): Use phex_nz.
540
541 2009-10-23  Tristan Gingold  <gingold@adacore.com>
542
543         * frame.c (frame_unwind_pc): Fix typo: remove duplicate 0x.
544
545 2009-10-23  Tristan Gingold  <gingold@adacore.com>
546         
547         * objfiles.c (allocate_objfile): Remove useless test.  Move
548         declaration of last_one to the block that uses it.
549
550 2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
551
552         * record.c (record_restore, cmd_record_save): Fix warnings.
553         
554 2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
555
556         * disasm.h (DISASSEMBLY_OMIT_FNAME) New define.
557         (gdb_disassembly): Correct parameter name.
558         * disasm.c (dump_insns): Adjust.
559         (gdb_disassembly): Fix indentation.
560         * cli/cli-cmds.c (disassemble_command): Adjust.
561         
562 2009-10-22  Michael Snyder  <msnyder@vmware.com>
563
564         * infrun.c (keep_going): If insert_breakpoints fails, 
565         print the reason.
566
567 2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
568
569         PR gdb/10819
570         * dwarf2-frame.c (find_cie): Don't call bsearch on empty cie_table.
571         * objfiles.c (find_pc_section): Likewise.
572         (update_section_map): Don't allocate empty table.
573         
574 2009-10-22  Hui Zhu  <teawater@gmail.com>
575             Michael Snyder  <msnyder@vmware.com>
576
577         * record.c (RECORD_FILE_MAGIC): New constant.
578         (record_arch_list_cleanups): Renamed from record_message_cleanups.
579         (bfdcore_read): New function.
580         (netorder64): New function.
581         (netorder32): New function.
582         (netorder16): New function.
583         (record_restore): New function.  Restore a saved record log.
584         (bfdcore_write): New function.
585         (cmd_record_restore): New function.
586         (cmd_record_save): New function.  Save a record log to a file.
587         (_initialize_record): Set up commands for save and restore.
588
589 2009-10-22  Michael Snyder  <msnyder@vmware.com>
590
591         * gcore.h: New file.
592         * gcore.c (create_gcore_bfd): New function.
593         (write_gcore_file): New function.
594         (call_target_sbrk): New function.  Abstracted from gcore_command.
595         (gcore_command): Call call_target_sbrk.
596
597 2009-10-22  Hui Zhu  <teawater@gmail.com>
598             Michael Snyder  <msnyder@vmware.com>
599
600         * record.c (record_core_ops): New ops target vector.
601         (record_core_open_1): New function.  Open core target.
602         (record_open_1): New function.  Open normal process record.
603         (record_open): Call one of the above.
604         (record_close): Allow for both core and normal targets.
605         (record_core_resume): New function.
606         (record_core_kill): New function.
607         (record_core_fetch_registers): New function.
608         (record_core_prepare_to_store): New function.
609         (record_core_store_registers): New function.
610         (record_core_xfer_partial): New function.
611         (record_core_insert_breakpoint): New function.
612         (record_core_remove_breakpoint): New function.
613         (record_core_has_execution): New function.
614         (init_record_core_ops): New function.
615         (_initialize_record): Call init_record_core_ops, add_target.
616
617 2009-10-22  Tristan Gingold  <gingold@adacore.com>
618
619         * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Use
620         amd64_supply_fxsave for amd64.  Fix the offset.
621         (i386_darwin_store_inferior_registers): Use amd64_collect_fxsave
622         for amd64.
623
624 2009-10-21  Maxim Grigoriev  <maxim2405@gmail.com>
625
626         * xtensa-tdep.c (XTENSA_ISA_BADPC): New.
627         (xtensa_scan_prologue): Replace read_memory with target_read_memory.
628         (call0_analyze_prologue): Use XTENSA_ISA_BADPC instead of "0".
629         (call0_frame_cache): Check error conditions on call0_analyze_prologue.
630
631 2009-10-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
632
633         * defs.h (pc_prefix): New prototype.
634         * disasm.c (dump_insns): Mark current instruction.
635         * printcmd.c (do_examine): Likewise.
636         (pc_prefix): New function.
637         * stack.c (print_frame_info): Disassemble entire current line.
638
639 2009-10-21  Michael Snyder  <msnyder@vmware.com>
640
641         Elaborate "info record".
642         * record.c (struct record_end_entry): New field 'insn_num'.
643         (record_insn_count): New variable.
644         (record_open): Initialize record_insn_count.
645         (info_record_command): Display contents of record log as
646         lowest, current, and highest instruction counts.
647         (show_record_insn_number): Delete.
648         (_initialize_record): Remove add_cmd show_record_insn_number.
649
650 2009-10-21  Andrew Stubbs  <ams@codesourcery.com>
651             Joel Brobecker  <brobecker@adacore.com>
652
653         * Makefile.in (HFILES_NO_SRCDIR): Remove shnbsd-tdep.h
654         * configure.tgt (sh*-*-linux*): Add corelow.o to gdb_target_obs.
655         * sh-linux-tdep.c: Include sh-tdep.h.
656         (REGSx16): New macro.
657         (gregs_table, fpregs_table): New variables.
658         (sh_linux_init_abi): Set core_gregmap and fpregmap.
659         * sh-tdep.c: Include regset.h.
660         (sh_corefile_supply_regset): New function.
661         (sh_corefile_collect_regset): New function.
662         (sh_corefile_gregset, sh_corefile_fpregset): New variables.
663         (sh_regset_from_core_section): New function.
664         (sh_gdbarch_init): Set up tdep value.
665         Call set_gdbarch_regset_from_core_section.
666         * sh-tdep.h (PC_REGNUM): New enum value.
667         (struct sh_corefile_regs): New type.
668         (sh_corefile_gregset): Export variable.
669         (sh_corefile_supply_regset): New prototype.
670         (sh_corefile_collect_regset): New prototype.
671         * shnbsd-tdep.c: Remove include of regcache.h, gdb_assert.h and
672         shnbsd-tdep.h.
673         (regmap): Use new definition using struct sh_corefile_regs.
674         (shnbsd_supply_gregset, shnbsd_collect_gregset): Delete.
675         (shnbsd_gregset): Delete.
676         (shnbsd_regset_from_core_section): Delete.
677         (shnbsd_supply_reg, shnbsd_fill_reg): Use new regset interface.
678         (shnbsd_init_abi): Set core_gregmap.
679         (shnbsd_supply_reg): Delete.
680         (shnbsd_fill_reg): Delete.
681         (SHNBSD_SIZEOF_GREGS): Move ...
682         * shnbsd-nat.c (SHNBSD_SIZEOF_GREGS): ... to here.
683         Remove include of shnbsd-tdep.h.
684         (shnbsd_fetch_inferior_registers): Replace shnbsd_supply_reg call
685         with sh_corefile_supply_regset.
686         (shnbsd_store_inferior_registers): Replace shnbsd_fill_reg call with
687         sh_corefile_collect_regset.
688         * shnbsd-tdep.h: Delete file.
689
690 2009-10-21  Pierre Muller  <muller@ics.u-strasbg.fr>
691
692         * rs6000-nat.c (exec_one_dummy_insn): Add missing new ASPACE parameter
693         to depreacted_insert_raw_breakpoint function call.
694         * procfs.c (insert_dbx_link_bpt_in_file): Likewise.
695
696 2009-10-20  Michael Snyder  <msnyder@vmware.com>
697
698         * record.c: Add some top-level comments for general explanation.
699
700 2009-10-20  Hui Zhu  <teawater@gmail.com>
701             Michael Snyder  <msnyder@vmware.com>
702
703         * record.c (record_exec_insn): New function.  Emulate one
704         instruction, forward or backward.  Abstracted from record_wait.
705         (record_wait) Call record_exec_insn.
706
707 2009-10-20  Michael Snyder  <msnyder@msnyder-server.eng.vmware.com>
708
709         * infrun.c (handle_inferior_event): Add pspace field to sal
710         for reverse execution cases.
711
712 2009-10-20  Ken Werner  <ken@linux.vnet.ibm.com>
713
714         * go32-nat.c (go32_create_inferior): Use inferior_appeared, not
715         inferior_appeared_silent.
716         * remote-sim.c (gdbsim_create_inferior): Ditto.
717
718 2009-10-20  Pedro Alves  <pedro@codesourcery.com>
719
720         * darwin-nat.c (cancel_breakpoint): Pass the regcache's address
721         space to breakpoint_inserted_here_p.
722
723 2009-10-20  Pedro Alves  <pedro@codesourcery.com>
724
725         * linux-nat.c (linux_nat_thread_address_space): New.
726         (linux_nat_add_target): Install it.
727         * progspace.c (address_space_num): New.
728         * progspace.h (address_space_num): Declare.
729         * target.c (target_thread_address_space): Really query the target.
730         * target.h (struct target_ops) <to_thread_address_space>: New
731         field.
732
733 2009-10-19  Joel Brobecker  <brobecker@adacore.com>
734
735         * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Add comment.
736
737 2009-10-19  Pedro Alves  <pedro@codesourcery.com>
738             Stan Shebs  <stan@codesourcery.com>
739
740         Add base multi-executable/process support to GDB.
741
742         * Makefile.in (SFILES): Add progspace.c.
743         (COMMON_OBS): Add progspace.o.
744         * progspace.h: New.
745         * progspace.c: New.
746
747         * breakpoint.h (struct bp_target_info) <placed_address_space>: New
748         field.
749         (struct bp_location) <pspace>: New field.
750         (struct breakpoint) <pspace>: New field.
751         (bpstat_stop_status, breakpoint_here_p)
752         (moribund_breakpoint_here_p, breakpoint_inserted_here_p)
753         (regular_breakpoint_inserted_here_p)
754         (software_breakpoint_inserted_here_p, breakpoint_thread_match)
755         (set_default_breakpoint): Adjust prototypes.
756         (remove_breakpoints_pid, breakpoint_program_space_exit): Declare.
757         (insert_single_step_breakpoint, deprecated_insert_raw_breakpoint):
758         Adjust prototypes.
759         * breakpoint.c (executing_startup): Delete.
760         (default_breakpoint_sspace): New.
761         (breakpoint_restore_shadows): Skip if the address space doesn't
762         match.
763         (update_watchpoint): Record the frame's program space in the
764         breakpoint location.
765         (insert_bp_location): Record the address space in target_info.
766         Adjust to pass the symbol space to solib_name_from_address.
767         (breakpoint_program_space_exit): New.
768         (insert_breakpoint_locations): Switch the symbol space and thread
769         when inserting breakpoints.  Don't insert breakpoints in a vfork
770         parent waiting for vfork done if we're not attached to the vfork
771         child.
772         (remove_breakpoints_pid): New.
773         (reattach_breakpoints): Switch to a thread of PID.  Ignore
774         breakpoints of other symbol spaces.
775         (create_internal_breakpoint): Store the symbol space in the sal.
776         (create_longjmp_master_breakpoint): Iterate over all symbol
777         spaces.
778         (update_breakpoints_after_exec): Ignore breakpoints for other
779         symbol spaces.
780         (remove_breakpoint): Rename to ...
781         (remove_breakpoint_1): ... this.  Pass the breakpoints symbol
782         space to solib_name_from_address.
783         (remove_breakpoint): New.
784         (mark_breakpoints_out): Ignore breakpoints from other symbol
785         spaces.
786         (breakpoint_init_inferior): Ditto.
787         (breakpoint_here_p): Add an address space argument and adjust to
788         use breakpoint_address_match.
789         (moribund_breakpoint_here_p): Ditto.
790         (regular_breakpoint_inserted_here_p): Ditto.
791         (breakpoint_inserted_here_p): Ditto.
792         (software_breakpoint_inserted_here_p): Ditto.
793         (breakpoint_thread_match): Ditto.
794         (bpstat_check_location): Ditto.
795         (bpstat_stop_status): Ditto.
796         (print_breakpoint_location): If there's a location to print,
797         switch the current symbol space.
798         (print_one_breakpoint_location): Add `allflag' argument.
799         (print_one_breakpoint): Ditto.  Adjust.
800         (do_captured_breakpoint_query): Adjust.
801         (breakpoint_1): Adjust.
802         (breakpoint_has_pc): Also match the symbol space.
803         (describe_other_breakpoints): Add a symbol space argument and
804         adjust.
805         (set_default_breakpoint): Add a symbol space argument.  Set
806         default_breakpoint_sspace.
807         (breakpoint_address_match): New.
808         (check_duplicates_for): Add an address space argument, and adjust.
809         (set_raw_breakpoint): Record the symbol space in the location and
810         in the breakpoint.
811         (set_longjmp_breakpoint): Skip longjmp master breakpoints from
812         other symbol spaces.
813         (remove_thread_event_breakpoints, remove_solib_event_breakpoints)
814         (disable_breakpoints_in_shlibs): Skip breakpoints from other
815         symbol spaces.
816         (disable_breakpoints_in_unloaded_shlib): Match symbol spaces.
817         (create_catchpoint): Set the symbol space in the sal.
818         (disable_breakpoints_before_startup): Skip breakpoints from other
819         symbol spaces.  Set executing_startup in the current symbol space.
820         (enable_breakpoints_after_startup): Clear executing_startup in the
821         current symbol space.  Skip breakpoints from other symbol spaces.
822         (clone_momentary_breakpoint): Also copy the symbol space.
823         (add_location_to_breakpoint): Set the location's symbol space.
824         (bp_loc_is_permanent): Switch thread and symbol space.
825         (create_breakpoint): Adjust.
826         (expand_line_sal_maybe): Expand comment to mention symbol spaces.
827         Switch thread and symbol space when reading memory.
828         (parse_breakpoint_sals): Set the symbol space in the sal.
829         (break_command_really): Ditto.
830         (skip_prologue_sal): Switch and space.
831         (resolve_sal_pc): Ditto.
832         (watch_command_1): Record the symbol space in the sal.
833         (create_ada_exception_breakpoint): Adjust.
834         (clear_command): Adjust.  Match symbol spaces.
835         (update_global_location_list): Use breakpoint_address_match.
836         (breakpoint_re_set_one): Switch thread and space.
837         (breakpoint_re_set): Save symbol space.
838         (breakpoint_re_set_thread): Also reset the symbol space.
839         (deprecated_insert_raw_breakpoint): Add an address space argument.
840         Adjust.
841         (insert_single_step_breakpoint): Ditto.
842         (single_step_breakpoint_inserted_here_p): Ditto.
843         (clear_syscall_counts): New.
844         (_initialize_breakpoint): Install it as inferior_exit observer.
845
846         * exec.h: Include "progspace.h".
847         (exec_bfd, exec_bfd_mtime): New defines.
848         (exec_close): Declare.
849         * exec.c: Include "gdbthread.h" and "progspace.h".
850         (exec_bfd, exec_bfd_mtime, current_target_sections_1): Delete.
851         (using_exec_ops): New.
852         (exec_close_1): Rename to exec_close, and make public.
853         (exec_close): Rename to exec_close_1, and adjust all callers.  Add
854         description.  Remove target sections and close executables from
855         all program spaces.
856         (exec_file_attach): Add comment.
857         (add_target_sections): Check on `using_exec_ops' to check if the
858         target should be pushed.
859         (remove_target_sections): Only unpush the target if there are no
860         more target sections in any symbol space.
861         * gdbcore.h: Include "exec.h".
862         (exec_bfd, exec_bfd_mtime): Remove declarations.
863
864         * frame.h (get_frame_program_space, get_frame_address_space)
865         (frame_unwind_program_space): Declare.
866         * frame.c (struct frame_info) <pspace, aspace>: New fields.
867         (create_sentinel_frame): Add program space argument.  Set the
868         pspace and aspace fields of the frame object.
869         (get_current_frame, create_new_frame): Adjust.
870         (get_frame_program_space): New.
871         (frame_unwind_program_space): New.
872         (get_frame_address_space): New.
873         * stack.c (print_frame_info): Adjust.
874         (print_frame): Use the frame's program space.
875
876         * gdbthread.h (any_live_thread_of_process): Declare.
877         * thread.c (any_live_thread_of_process): New.
878         (switch_to_thread): Switch the program space as well.
879         (restore_selected_frame): Don't warn if trying to restore frame
880         level 0.
881
882         * inferior.h: Include "progspace.h".
883         (detach_fork): Declare.
884         (struct inferior) <removable, aspace, pspace>
885         <vfork_parent, vfork_child, pending_detach>
886         <waiting_for_vfork_done>: New fields.
887         <terminal_info>: Remove field.
888         <data, num_data>: New fields.
889         (register_inferior_data, register_inferior_data_with_cleanup)
890         (clear_inferior_data, set_inferior_data, inferior_data): Declare.
891         (exit_inferior, exit_inferior_silent, exit_inferior_num_silent)
892         (inferior_appeared): Declare.
893         (find_inferior_pid): Typo.
894         (find_inferior_id, find_inferior_for_program_space): Declare.
895         (set_current_inferior, save_current_inferior, prune_inferiors)
896         (number_of_inferiors): Declare.
897         (inferior_list): Declare.
898         * inferior.c: Include "gdbcore.h" and "symfile.h".
899         (inferior_list): Make public.
900         (delete_inferior_1): Always delete thread silently.
901         (find_inferior_id): Make public.
902         (current_inferior_): New.
903         (current_inferior): Use it.
904         (set_current_inferior): New.
905         (restore_inferior): New.
906         (save_current_inferior): New.
907         (free_inferior): Free the per-inferior data.
908         (add_inferior_silent): Allocate per-inferior data.
909         Call inferior_appeared.
910         (delete_threads_of_inferior): New.
911         (delete_inferior_1): Adjust interface to take an inferior pointer.
912         (delete_inferior): Adjust.
913         (delete_inferior_silent): Adjust.
914         (exit_inferior_1): New.
915         (exit_inferior): New.
916         (exit_inferior_silent): New.
917         (exit_inferior_num_silent): New.
918         (detach_inferior): Adjust.
919         (inferior_appeared): New.
920         (discard_all_inferiors): Adjust.
921         (find_inferior_id): Make public.  Assert pid is not zero.
922         (find_inferior_for_program_space): New.
923         (have_inferiors): Check if we have any inferior with pid not zero.
924         (have_live_inferiors): Go over all pushed targets looking for
925         process_stratum.
926         (prune_inferiors): New.
927         (number_of_inferiors): New.
928         (print_inferior): Add executable column.  Print vfork parent/child
929         relationships.
930         (inferior_command): Adjust to cope with not running inferiors.
931         (remove_inferior_command): New.
932         (add_inferior_command): New.
933         (clone_inferior_command): New.
934         (struct inferior_data): New.
935         (struct inferior_data_registration): New.
936         (struct inferior_data_registry): New.
937         (inferior_data_registry): New.
938         (register_inferior_data_with_cleanup): New.
939         (register_inferior_data): New.
940         (inferior_alloc_data): New.
941         (inferior_free_data): New.
942         (clear_inferior_data): New.
943         (set_inferior_data): New.
944         (inferior_data): New.
945         (initialize_inferiors): New.
946         (_initialize_inferiors): Register "add-inferior",
947         "remove-inferior" and "clone-inferior" commands.
948
949         * objfiles.h: Include "progspace.h".
950         (struct objfile) <pspace>: New field.
951         (symfile_objfile, object_files): Don't declare.
952         (ALL_PSPACE_OBJFILES): New.
953         (ALL_PSPACE_OBJFILES_SAFE): New.
954         (ALL_OBJFILES, ALL_OBJFILES_SAFE): Adjust.
955         (ALL_PSPACE_SYMTABS): New.
956         (ALL_PRIMARY_SYMTABS): Adjust.
957         (ALL_PSPACE_PRIMARY_SYMTABS): New.
958         (ALL_PSYMTABS): Adjust.
959         (ALL_PSPACE_PSYMTABS): New.
960         * objfiles.c (object_files, symfile_objfile): Delete.
961         (struct objfile_sspace_info): New.
962         (objfiles_pspace_data): New.
963         (objfiles_pspace_data_cleanup): New.
964         (get_objfile_pspace_data): New.
965         (objfiles_changed_p): Delete.
966         (allocate_objfile): Set the objfile's program space.  Adjust to
967         reference objfiles_changed_p in pspace data.
968         (free_objfile): Adjust to reference objfiles_changed_p in pspace
969         data.
970         (objfile_relocate): Ditto.
971         (update_section_map): Add pspace argument.  Adjust to iterate over
972         objfiles in the passed in pspace.
973         (find_pc_section): Delete sections and num_sections statics.
974         Adjust to refer to program space's objfiles_changed_p.  Adjust to
975         refer to sections and num_sections store in the objfile's pspace
976         data.
977         (objfiles_changed): Adjust to reference objfiles_changed_p in
978         pspace data.
979         (_initialize_objfiles): New.
980         * linespec.c (decode_all_digits, decode_dollar): Set the sal's
981         program space.
982         * source.c (current_source_pspace): New.
983         (get_current_source_symtab_and_line): Set the sal's program space.
984         (set_current_source_symtab_and_line): Set current_source_pspace.
985         (select_source_symtab): Ditto.  Use ALL_OBJFILES.
986         (forget_cached_source_info): Iterate over all program spaces.
987         * symfile.c (clear_symtab_users): Adjust.
988         * symmisc.c (print_symbol_bcache_statistics): Iterate over all
989         program spaces.
990         (print_objfile_statistics): Ditto.
991         (maintenance_print_msymbols): Ditto.
992         (maintenance_print_objfiles): Ditto.
993         (maintenance_info_symtabs): Ditto.
994         (maintenance_info_psymtabs): Ditto.
995         * symtab.h (SYMTAB_PSPACE): New.
996         (struct symtab_and_line) <pspace>: New field.
997         * symtab.c (init_sal): Clear the sal's program space.
998         (find_pc_sect_symtab): Set the sal's program space.  Switch thread
999         and space.
1000         (append_expanded_sal): Add program space argument.  Iterate over
1001         all program spaces.
1002         (expand_line_sal): Iterate over all program spaces.  Switch
1003         program space.
1004
1005         * target.h (enum target_waitkind) <TARGET_WAITKIND_VFORK_DONE>: New.
1006         (struct target_ops) <to_thread_address_space>: New field.
1007         (target_thread_address_space): Define.
1008         * target.c (target_detach): Only remove breakpoints from the
1009         inferior we're detaching.
1010         (target_thread_address_space): New.
1011
1012         * defs.h (initialize_progspace): Declare.
1013         * top.c (gdb_init): Call it.
1014
1015         * solist.h (struct so_list) <sspace>: New field.
1016         * solib.h (struct program_space): Forward declare.
1017         (solib_name_from_address): Adjust prototype.
1018         * solib.c (so_list_head): Replace with a macro referencing the
1019         program space.
1020         (update_solib_list): Set the so's program space.
1021         (solib_name_from_address): Add a program space argument and adjust.
1022
1023         * solib-svr4.c (struct svr4_info) <pid>: Delete field.
1024         <interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low>
1025         <interp_plt_sect_high>: New fields.
1026         (svr4_info_p, svr4_info): Delete.
1027         (solib_svr4_sspace_data): New.
1028         (get_svr4_info): Rewrite.
1029         (svr4_sspace_data_cleanup): New.
1030         (open_symbol_file_object): Adjust.
1031         (svr4_default_sos): Adjust.
1032         (svr4_fetch_objfile_link_map): Adjust.
1033         (interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low)
1034         (interp_plt_sect_high): Delete.
1035         (svr4_in_dynsym_resolve_code): Adjust.
1036         (enable_break): Adjust.
1037         (svr4_clear_solib): Revert bit that removed the svr4_info here,
1038         and reinstate clearing debug_base, debug_loader_offset_p,
1039         debug_loader_offset and debug_loader_name.
1040         (_initialize_svr4_solib): Register solib_svr4_pspace_data.  Don't
1041         install an inferior_exit observer anymore.
1042
1043         * printcmd.c (struct display) <pspace>: New field.
1044         (display_command): Set the display's sspace.
1045         (do_one_display): Match the display's sspace.
1046         (display_uses_solib_p): Ditto.
1047
1048         * linux-fork.c (detach_fork): Moved to infrun.c.
1049         (_initialize_linux_fork): Moved "detach-on-fork" command to
1050         infrun.c.
1051         * infrun.c (detach_fork): Moved from linux-fork.c.
1052         (proceed_after_vfork_done): New.
1053         (handle_vfork_child_exec_or_exit): New.
1054         (follow_exec_mode_replace, follow_exec_mode_keep)
1055         (follow_exec_mode_names, follow_exec_mode_string)
1056         (show_follow_exec_mode_string): New.
1057         (follow_exec): New.  Reinstate the mark_breakpoints_out call.
1058         Remove shared libraries before attaching new executable.  If user
1059         wants to keep the inferior, keep it.
1060         (displaced_step_fixup): Adjust to pass an address space to the
1061         breakpoints module.
1062         (resume): Ditto.
1063         (clear_proceed_status): In all-stop mode, always clear the proceed
1064         status of all threads.
1065         (prepare_to_proceed): Adjust to pass an address space to the
1066         breakpoints module.
1067         (proceed): Ditto.
1068         (adjust_pc_after_break): Ditto.
1069         (handle_inferior_event): When handling a process exit, switch the
1070         program space to the inferior's that had exited.  Call
1071         handle_vfork_child_exec_or_exit.  Adjust to pass an address space
1072         to the breakpoints module.  In non-stop mode, when following a
1073         fork and detach-fork is off, also resume the other branch.  Handle
1074         TARGET_WAITKIND_VFORK_DONE.  Set the program space in sals.
1075         (normal_stop): Prune inferiors.
1076         (_initialize_infrun): Install the new "follow-exec-mode" command.
1077         "detach-on-fork" moved here.
1078
1079         * regcache.h (get_regcache_aspace): Declare.
1080         * regcache.c (struct regcache) <aspace>: New field.
1081         (regcache_xmalloc): Clear the aspace.
1082         (get_regcache_aspace): New.
1083         (regcache_cpy): Copy the aspace field.
1084         (regcache_cpy_no_passthrough): Ditto.
1085         (get_thread_regcache): Fetch the thread's address space from the
1086         target, and store it in the regcache.
1087
1088         * infcall.c (call_function_by_hand): Set the sal's pspace.
1089
1090         * arch-utils.c (default_has_shared_address_space): New.
1091         * arch-utils.h (default_has_shared_address_space): Declare.
1092
1093         * gdbarch.sh (has_shared_address_space): New.
1094         * gdbarch.h, gdbarch.c: Regenerate.
1095
1096         * linux-tdep.c: Include auxv.h, target.h, elf/common.h.
1097         (linux_has_shared_address_space): New.
1098         (_initialize_linux_tdep): Declare.
1099
1100         * arm-tdep.c (arm_software_single_step): Pass the frame's address
1101         space to insert_single_step_breakpoint.
1102         * arm-linux-tdep.c (arm_linux_software_single_step): Pass the
1103         frame's pspace to breakpoint functions.
1104         * cris-tdep.c (crisv32_single_step_through_delay): Ditto.
1105         (cris_software_single_step): Ditto.
1106         * mips-tdep.c (deal_with_atomic_sequence): Add frame argument.
1107         Pass the frame's pspace to breakpoint functions.
1108         (mips_software_single_step): Adjust.
1109         (mips_single_step_through_delay): Adjust.
1110         * rs6000-aix-tdep.c (rs6000_software_single_step): Adjust.
1111         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Adjust.
1112         * solib-irix.c (enable_break): Adjust to pass the current frame's
1113         address space to breakpoint functions.
1114         * sparc-tdep.c (sparc_software_single_step): Ditto.
1115         * spu-tdep.c (spu_software_single_step): Ditto.
1116         * alpha-tdep.c (alpha_software_single_step): Ditto.
1117         * record.c (record_wait): Adjust to pass an address space to the
1118         breakpoints module.
1119
1120         * fork-child.c (fork_inferior): Set the new inferior's program and
1121         address spaces.
1122         * inf-ptrace.c (inf_ptrace_follow_fork): Copy the parent's program
1123         and address spaces.
1124         (inf_ptrace_attach): Set the inferior's program and address spaces.
1125         * linux-nat.c: Include "solib.h".
1126         (linux_child_follow_fork): Manage parent and child's program and
1127         address spaces.  Clone the parent's program space if necessary.
1128         Don't wait for the vfork to be done here.  Refuse to resume if
1129         following the vfork parent while leaving the child stopped.
1130         (resume_callback): Don't resume a vfork parent.
1131         (linux_nat_resume): Also check for pending events in the
1132         lp->waitstatus field.
1133         (linux_handle_extended_wait): Report TARGET_WAITKIND_VFORK_DONE
1134         events to the core.
1135         (stop_wait_callback): Don't wait for SIGSTOP on vfork parents.
1136         (cancel_breakpoint): Adjust.
1137         * linux-thread-db.c (thread_db_wait): Don't remove thread event
1138         breakpoints here.
1139         (thread_db_mourn_inferior): Don't mark breakpoints out here.
1140         Remove thread event breakpoints after mourning.
1141         * corelow.c: Include progspace.h.
1142         (core_open): Set the inferior's program and address spaces.
1143         * remote.c (remote_add_inferior): Set the new inferior's program
1144         and address spaces.
1145         (remote_start_remote): Update address spaces.
1146         (extended_remote_create_inferior_1): Don't init the thread list if
1147         we already debugging other inferiors.
1148         * darwin-nat.c (darwin_attach): Set the new inferior's program and
1149         address spaces.
1150         * gnu-nat.c (gnu_attach): Ditto.
1151         * go32-nat.c (go32_create_inferior): Ditto.
1152         * inf-ttrace.c (inf_ttrace_follow_fork, inf_ttrace_attach): Ditto.
1153         * monitor.c (monitor_open): Ditto.
1154         * nto-procfs.c (procfs_attach, procfs_create_inferior): Ditto.
1155         * procfs.c (do_attach): Ditto.
1156         * windows-nat.c (do_initial_windows_stuff): Ditto.
1157
1158         * inflow.c (inferior_process_group)
1159         (terminal_init_inferior_with_pgrp, terminal_inferior,
1160         (terminal_ours_1, inflow_inferior_exit, copy_terminal_info)
1161         (child_terminal_info, new_tty_postfork, set_sigint_trap): Adjust
1162         to use per-inferior data instead of inferior->terminal_info.
1163         (inflow_inferior_data): New.
1164         (inflow_new_inferior): Delete.
1165         (inflow_inferior_data_cleanup): New.
1166         (get_inflow_inferior_data): New.
1167
1168         * mi/mi-interp.c (mi_new_inferior): Rename to...
1169         (mi_inferior_appeared): ... this.
1170         (mi_interpreter_init): Adjust.
1171
1172         * tui/tui-disasm.c: Include "progspace.h".
1173         (tui_set_disassem_content): Pass an address space to
1174         breakpoint_here_p.
1175
1176         * NEWS: Mention multi-program debugging support.  Mention new
1177         commands "add-inferior", "clone-inferior", "remove-inferior",
1178         "maint info program-spaces", and new option "set
1179         follow-exec-mode".
1180
1181 2009-10-19  Don Lee  <don.lee@sunplusct.com>
1182
1183         * score-tdep.c: Delete dead codes.
1184
1185 2009-10-15  Michael Snyder  <msnyder@vmware.com>
1186
1187         * record.c (struct record_reg_entry): Replace ptr with union 
1188         of ptr and buf.
1189         (struct record_mem_entry): Ditto.
1190         (record_reg_alloc): Don't alloc ptr if reg will fit into buf.
1191         (record_mem_alloc): Ditto.
1192         (record_reg_release): Don't free ptr if reg was stored in buf.
1193         (record_mem_release): Ditto.
1194         (record_get_loc): New function.  Return a pointer to where the
1195         value (mem or reg) is to be stored.
1196         (record_arch_list_add_reg): Call record_get_loc instead of using ptr.
1197         (record_arch_list_add_mem): Ditto.
1198         (record_wait): Ditto.
1199
1200 2009-10-16  Michael Eager  <eager@eagercon.com>
1201
1202         * microblaze-linux-tdep.c:
1203         microblaze_linux_memory_remove_breakpoint(): Add gdbarch to param,
1204         replace frame_pc_unwind with get_frame_address_in_block.
1205         * microblaze-tdep.c: Remove MICROBLAZE_REGISTER_SIZE.
1206         * microblaze-tdep.h: Add MICROBLAZE_REGISTER_SIZE.
1207
1208 2008-10-15  Steven G. Kargl  <kargl@gcc.gnu.org>  (tiny patch)
1209
1210         * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Conditionally compile in
1211         support for pcb->pcb_{fs,ds,es,gs} on FreeBSD older than 8.0.
1212
1213 2009-10-15  Michael Eager  <eager@eagercon.com>
1214
1215         * config/djgpp/fnchange.lst: Add translations for cpu-microblaze.c,
1216         elf32-microblaze.c, microblaze-rom.c, microblaze-linux-tdep.c,
1217         microblaze-tdep.h, microblaze-tdep.c, microblaze-opc.h,
1218         microblaze-opcm.h, microblaze-dis.c, microblaze-dis.h, sim/microblaze,
1219         microblaze.h, and microblaze.isa.
1220         * configure.tgt: Add targets microblaze*-linux-*, microblaze*-xilinx-*.
1221         * Makefile.in: Build microblaze-tdep.o, microblaze-linux-tdep.o.
1222         HFILES_NO_SRCDIR: Add microblaze-tdep.h.
1223         * microblaze-linux-tdep.c: New.
1224         * microblaze-tdep.c: New.
1225         * microblaze-tdep.h: New.
1226         * NEWS: Announce Xilinx MicroBlaze support.
1227
1228 2009-10-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
1229
1230         PR gdb/10757
1231         * linux-nat.c (linux_nat_post_attach_wait): Adjust assert.
1232         (lin_lwp_attach_lwp, linux_nat_attach): Handle disappearing LWP.
1233         
1234 2009-10-15  Michael Snyder  <msnyder@vmware.com>
1235
1236         * record.c (record_insn_max_num): Make unsigned.
1237         (_initialize_record): Use uinteger instead of zinteger for
1238         set command, so that it will report "unlimited" for zero.
1239
1240 2009-10-15  Michael Snyder  <msnyder@vmware.com>
1241
1242         * record.c (record_reg_alloc): New function.
1243         (record_reg_release): New function.
1244         (record_mem_alloc): New function.
1245         (record_mem_release): New function.
1246         (record_end_alloc): New function.
1247         (record_end_release): New function.
1248         (record_entry_release): New function.
1249         (record_list_release): Simplify, call record_entry_release.
1250         (record_list_release_next): Rename to record_list_release_following.
1251         Simplify and call record_entry_release.
1252         (record_list_release_first): Simplify, comment, and use
1253         record_entry_release.
1254         (record_arch_list_add_reg): Simplify, call record_reg_alloc.
1255         (record_arch_list_add_mem): Simplify, call record_mem_alloc.
1256         (record_arch_list_add_end): Simplify, call record_end_alloc.
1257
1258 2009-10-14  Michael Snyder  <msnyder@vmware.com>
1259
1260         * record.c (record_list_release_first): Do not decrement
1261         record_insn_num.
1262         (set_insn_num_max): Remove printf.
1263         Decrement record_insn_num in the loop.
1264
1265 2009-10-14  Cary Coutant  <ccoutant@google.com>
1266
1267         * dwarf2read.c (read_import_statement): Call follow_die_ref_or_sig.
1268
1269 2009-10-14  Keith Seitz  <keiths@redhat.com>
1270
1271         * dwarf2read.c (dwarf2_const_value): Fix order of arguments to
1272         store_unsigned_integer.
1273
1274 2009-10-14  Pedro Alves  <pedro@codesourcery.com>
1275
1276         * configure.ac (build_warnings): Add -Wunused-value.
1277         * configure: Regenerate.
1278
1279 2009-10-14  Tristan Gingold  <gingold@adacore.com>
1280
1281         * solib-darwin.c: Remove trailing whitespaces.
1282         (darwin_dyld_version_ok): Fix typo.
1283
1284 2009-10-14  Andrew Stubbs  <ams@codesourcery.com>
1285
1286         * sh-tdep.c (sh_gdbarch_init): Add show_regs settings for
1287         bfd_mach_sh3_nommu, bfd_mach_sh2a_nofpu_or_sh3_nommu,
1288         bfd_mach_sh2a_or_sh3e, bfd_mach_sh2a_or_sh4, bfd_mach_sh4_nommu_nofpu,
1289         and bfd_mach_sh2a_nofpu_or_sh4_nommu_nofpu.
1290         Move bfd_mach_sh2a_or_sh4 to use the same configuration as
1291         bfd_mach_sh4.
1292
1293 2009-10-13  Daniel Jacobowitz  <dan@codesourcery.com>
1294
1295         * arm-tdep.c (arm_push_dummy_call): Set the low bit of LR for
1296         a Thumb entry point.
1297         (thumb_get_next_pc): Handle Thumb-2 and ARM v6 instructions.  Refuse
1298         to single step into IT blocks.
1299
1300 2009-10-13  Pedro Alves  <pedro@codesourcery.com>
1301
1302         * infcall.c (call_function_by_hand): Formatting.
1303
1304 2009-10-13  Tristan Gingold  <gingold@adacore.com>
1305
1306         * solib-darwin.c: Add an empty line after comment for functions.
1307         (struct gdb_dyld_all_image_infos): Improve comment.
1308         (DYLD_VERSION): Removed and replaced by ...
1309         (DYLD_VERSION_MAX, DYLD_VERSION_MIN): ... New macros.
1310         (darwin_dyld_version_ok): New function.
1311         (darwin_load_image_infos): Call darwin_dyld_version_ok.
1312         (darwin_current_sos): Ditto.
1313         (darwin_solib_create_inferior_hook): Ditto.
1314
1315 2009-10-13  Tristan Gingold  <gingold@adacore.com>
1316
1317         * machoread.c: Add an empty line after comment for functions.
1318         (oso_el_compare_name): New function.
1319         (macho_add_oso_symfile): New function.
1320         (macho_oso_symfile): Use macho_add_oso_symfile.  Sort the oso
1321         and optimize accesses to libraries.
1322
1323 2009-10-13  Tristan Gingold  <gingold@adacore.com>
1324
1325         * objfiles.c (objfile_has_symbols): New function.
1326         * objfiles.h (objfile_has_symbols): Add prototype.
1327         * symfile.c (symbol_file_add_with_addrs_or_offsets): Call
1328         objfile_has_symbols.
1329         (reread_symbols): Ditto.
1330
1331 2009-10-12  Jiang Jilin  <freephp@gmail.com>
1332
1333         * i386-tdep.c (i386_process_record): Add xgetbv/xsetbv
1334         instructions support.
1335
1336 2009-10-11  Pedro Alves  <pedro@codesourcery.com>
1337
1338         * procfs.c (procfs_make_note_section): Go back to only outputing
1339         an NT_PSTATUS note when UNIXWARE is defined.
1340
1341 2009-10-11  Daniel Jacobowitz  <dan@codesourcery.com>
1342
1343         * features/xinclude.dtd: Correct EMPTY typo.
1344
1345 2009-10-10  Michael Snyder  <msnyder@vmware.com>
1346
1347         * i386-tdep.c (i386_process_record): Or-equals, not not-equals.
1348
1349 2009-10-10  Pedro Alves  <pedro@codesourcery.com>
1350
1351         * mi/mi-cmd-stack.c (list_args_or_locals): Use internal_error.
1352         Put "break" statements on their own line.
1353
1354 2009-10-09  Pedro Alves  <pedro@codesourcery.com>
1355
1356         * linux-nat.c (linux_nat_wait_1): Bail out, if TARGET_WNOHANG and
1357         we found no event while waiting for a specific LWP.
1358         * infrun.c (handle_inferior_event): Handle TARGET_WAITKIND_IGNORE
1359         before anything else.
1360
1361 2009-10-09  Pedro Alves  <pedro@codesourcery.com>
1362
1363         * procfs.c (procfs_make_note_section): Always output a NT_PSTATUS
1364         note when NEW_PROC_API is defined.
1365
1366 2009-10-09  Pedro Alves  <pedro@codesourcery.com>
1367
1368         * corelow.c (core_has_fake_pid): New.
1369         (core_close): Clear it.
1370         (add_to_thread_list): Fake a pid if one is not found on a Solaris
1371         core.  Add the inferior here.  Always add the thread, don't use
1372         thread_change_ptid.
1373         (core_open): Don't add the main thread or the inferior here unless
1374         we find that the core had no .reg/NN sections.
1375         (get_core_register_section): Handle Solaris cores with fake pids.
1376
1377         * corelow.c (add_to_thread_list): Fix typo.
1378
1379 2009-10-08  Paul Pluzhnikov  <ppluzhnikov@google.com>
1380
1381         PR gdb/10457
1382         * elfread.c (elf_symtab_read): Don't use alloca in a loop.
1383         
1384 2009-10-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
1385
1386         * i386-nat.c (i386_stopped_by_hwbp): Remove.
1387
1388 2009-10-07  Joel Brobecker  <brobecker@adacore.com>
1389
1390         * NEWS: Update following the GDB 7.0 release.
1391
1392 2009-10-07  Pierre Muller  <muller@ics.u-strasbg.fr>
1393
1394         ARI fix: OP eol rule.
1395         * doublest.c (floatformat_from_length): Avoid operator at end of line.
1396         * dwarf2-frame.c (dwarf2_build_frame_info): Idem.
1397         * dwarf2read.c (read_array_order, dwarf_decode_macros): Idem.
1398         * eval.c (evaluate_subexp_standard): Idem.
1399         * event-loop.c (create_timer, handle_timer_event): Idem.
1400         * expprint.c (print_subexp_standard): Idem.
1401         * f-exp.y (variable): Idem.
1402         * f-typeprint.c (f_print_type): Idem.
1403
1404 2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1405
1406         ARI fix: OP eol rule.
1407         * blockframe.c (find_pc_partial_function): Avoid operator at end of
1408         line.
1409         * buildsym.c (find_symbol_in_list): Idem.
1410         (start_subfile, patch_subfile_names): Idem.
1411         * c-exp.y (variable, yylex): Idem.
1412         * c-typeprint.c (c_print_type, c_type_print_base): Idem.
1413         * c-valprint.c (c_val_print): Idem.
1414         * coffread.c (patch_opaque_types, process_coff_symbol): Idem.
1415         * corelow.c (core_open): Idem.
1416         * cris-tdep.c (move_reg_to_mem_movem_op): Idem.
1417         * cli/cli-decode.c (help_cmd_list, find_command_name_length): Idem.
1418
1419 2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1420
1421         ARI fix: OP eol rule.
1422         * ada-exp.y (block_lookup): Avoid operator at end of line.
1423         * aix-thread.c (pd_enable): Idem.
1424         * alpha-tdep.c (alpha_next_pc): Idem.
1425         * arm-tdep.c (arm_skip_prologue, arm_scan_prologue): Idem.
1426         (condition_true, coff_sym_is_thumb): Idem.
1427
1428 2009-10-06  Joel Brobecker  <brobecker@adacore.com>
1429
1430         GDB 7.0 released.
1431
1432 2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1433
1434         ARI fix: "%p" rule.
1435         * target.c (debug_to_thread_architecture): Replace %p by %s using
1436         host_address_to_string function.
1437
1438 2009-10-06  Tristan Gingold  <gingold@adacore.com>
1439
1440         * darwin-nat.c: Add __TEXT __info_plist content.
1441         (darwin_attach_pid): Update error message.
1442
1443 2009-10-06  Joel Brobecker  <brobecker@adacore.com>
1444
1445         * MAINTAINERS: Add Tristan Gingold as Maintainer of the Darwin port.
1446
1447 2009-10-06  Joel Brobecker  <brobecker@adacore.com>
1448
1449         * MAINTAINERS: Add Jan Kratochvil as Maintainer of the ia64 target.
1450
1451 2009-10-05  Pedro Alves  <pedro@codesourcery.com>
1452
1453         Revert:
1454         2009-10-04  Pedro Alves  <pedro@codesourcery.com>
1455         * gdbinit.in: Set data-directory to @srcdir@.
1456
1457 2009-10-04  Pedro Alves  <pedro@codesourcery.com>
1458
1459         * NEWS: Mention non-stop mode.
1460
1461 2009-10-04  Pedro Alves  <pedro@codesourcery.com>
1462
1463         * gdbinit.in: Set data-directory to @srcdir@.
1464
1465 2009-10-02  Pedro Alves  <pedro@codesourcery.com>
1466
1467         * linux-nat.c (TRAP_IS_SYSCALL, TRAP_REMOVE_SYSCALL_FLAG): Delete.
1468         (SYSCALL_SIGTRAP): New.
1469         (status_to_str): Adjust.
1470         (get_pending_status): Pending events in lp->waitstatus don't map
1471         to any signal.  Simplify.
1472         (linux_handle_syscall_trap): New.
1473         (linux_handle_extended_wait): When handling PTRACE_EVENT_CLONE
1474         events, use linux_ops->to_resume instead of direct ptrace with
1475         PTRACE_CONT.  Remove all TRAP_IS_SYSCALL handling.
1476         (wait_lwp): Handle syscall traps with linux_handle_syscall_trap,
1477         and clear the sysgood bit.
1478         (status_callback): Make it clearer and add comments.
1479         (cancel_breakpoints_callback): Ignore if LP has waitstatus set.
1480         (linux_nat_filter_event): Handle syscall traps with
1481         linux_handle_syscall_trap, and clear the sysgood bit.  Move the
1482         check for storing siginfo to after handling extended statuses and
1483         syscall traps.  Store status in the lwp object.
1484         (linux_wait_1): Don't swap the pending status out of the lwp
1485         object until after deciding we found an lwp with an interesting
1486         event.  Requeue a new pending signal if we find one while getting
1487         rid or a pending SIGSTOP we sent ourselves.  Don't clear the
1488         sysgood bit here.
1489
1490         * infrun.c (deal_with_syscall_event): Rename to ...
1491         (handle_syscall_event): ... this.  Always context switch and set
1492         stop_pc, even if not catching the syscall.  If not catching the
1493         syscall, always resume with keep_going.
1494         (handle_inferior_event): Adjust.
1495
1496 2009-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1497
1498         Fix compatibility of --with-system-readline and readline-6.0+.
1499         * configure.ac <--with-system-readline> (for readline_echoing_p): New
1500         test.
1501         * config.in: Regenerate.
1502         * configure: Regenerate.
1503
1504 2009-10-01  Joel Brobecker  <brobecker@adacore.com>
1505
1506         * MAINTAINERS: Move Don Lee to the correct section (Write After
1507         Approval).
1508
1509 2009-10-01  Phil Muldoon  <pmuldoon@redhat.com>
1510
1511         * infcall.c (call_function_by_hand): Add a new cleanup branch for
1512         std::terminate breakpoints.
1513
1514 2009-09-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
1515
1516         * ia64-tdep.c (ia64_convert_from_func_ptr_addr): New variable buf.
1517         Check first the descriptor memory is readable.
1518
1519 2009-09-29  Tom Tromey  <tromey@redhat.com>
1520
1521         * python/py-value.c (valpy_string): NULL-terminate 'keywords'.
1522
1523 2009-09-29  Ulrich Weigand  <uweigand@de.ibm.com>
1524
1525         * s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST
1526         instead of CORE_ADDR for "amode".
1527
1528 2009-09-29  Joel Brobecker  <brobecker@adacore.com>
1529
1530         * ia64-tdep.c: Update the comments on how we insert/remove
1531         breakpoints for L-X instructions.
1532         (ia64_memory_insert_breakpoint, ia64_memory_remove_breakpoint):
1533         Update the comments inside these functions.
1534
1535 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
1536
1537         * gdbarch.sh (displaced_step_hw_singlestep): New callback.
1538         * gdbarch.c, gdbarch.h: Regenerate.
1539         * arch-utils.c (default_displaced_step_hw_singlestep): New function.
1540         * arch-utils.h (default_displaced_step_hw_singlestep): Add prototype.
1541
1542         * ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function.
1543         (rs6000_gdbarch_init): Install it.
1544
1545         * infrun.c (displaced_step_fixup): Use new callback to determine
1546         whether to "step" or "continue" displaced copy.
1547         (resume): Likewise.  Do not call maybe_software_singlestep
1548         for displaced stepping.
1549         (maybe_software_singlestep): Do not handle displaced stepping.
1550
1551 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
1552
1553         * eval.c (evaluate_subexp_standard) [OP_OBJC_MSGCALL]: Support
1554         platforms that use function descriptors.  Prefer to use function
1555         pointer types instead of function types.
1556         * linespec.c (decode_objc): Support function descriptors.  Fully
1557         initialize SAL result.
1558         * objc-lang.c (find_methods): Support function descriptors.
1559         Do not require function symbol to point to text section.
1560
1561         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): When calling
1562         via a function pointer, use the descriptor it points to.
1563
1564 2009-09-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
1565
1566         Fix ia64 breakpoints in the L-X slot.
1567         * ia64-tdep.c (ia64_memory_insert_breakpoint): Extend the comment.
1568         New variable shadow_slotnum, use it appropriately instead of slotnum.
1569         Move shadow_len initialization before SLOTNUM adjustment, cover now the
1570         whole remaining bundle.  Error now on breakpoints requested for the
1571         slot 2 of L-X bundles.  Better sanity check the requested slot 1 of L-X
1572         bundles.
1573         (ia64_memory_remove_breakpoint): New variable shadow_slotnum, use it
1574         appropriately instead of slotnum.  Warn now on breakpoints requested
1575         for the slot 2 of L-X bundles.  Better sanity check the requested slot
1576         1 of L-X bundles.  Update the assertio check of PLACED_SIZE.
1577         (ia64_breakpoint_from_pc): New variable shadow_slotnum, use it
1578         appropriately instead of slotnum.  Move *lenptr initialization before
1579         SLOTNUM adjustment, cover now the whole remaining bundle.  Error now
1580         on breakpoints requested for the slot 2 of L-X bundles.  Better sanity
1581         check the requested slot 1 of L-X bundles.  Simplify the returned
1582         expression.
1583
1584 2009-09-28  Joel Brobecker  <brobecker@adacore.com>
1585
1586         * ia64-tdep.c (ia64_memory_insert_breakpoint): Check the slotnum
1587         and the type of instruction before deciding which slot to save
1588         in the breakpoint shadown contents.
1589
1590 2009-09-28  Doug Evans  <dje@google.com>
1591
1592         * linux-nat.c (status_to_str): Handle TRAP_IS_SYSCALL.
1593         (TRAP_REMOVE_SYSCALL_FLAG): New macro.
1594         (linux_nat_wait_1): Mask off is-syscall bit in wait status for
1595         TRAP_IS_SYSCALL before passing value to caller.
1596
1597 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
1598
1599         * valops.c (value_assign): Respect parent offset when
1600         assigning to a bitfield.
1601
1602 2009-09-28  Hui Zhu  <teawater@gmail.com>
1603
1604         * i386-tdep.c (i386_process_record): Remove "0x" that
1605         don't need.
1606
1607 2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
1608
1609         * s390-tdep.c (op_bctr, op_bctgr, op_bct, op1_bctg, op2_bctg,
1610         op_bxh, op1_bxhg, op2_bxhg, op_bxle, op1_bxleg, op2_bxleg,
1611         op1_brct, op2_brct, op1_brctg, op2_brctg, op_brxh, op1_brxhg,
1612         op2_brxhg, op_brxle, op1_brxlg, op2_brxlg): New enum values.
1613         (is_rsi, is_rie): New insn format decoder routines.
1614         (s390_displaced_step_fixup): New function.
1615         (s390_gdbarch_init): Install displaced stepping routines.
1616
1617 2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
1618
1619         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*):
1620         Add linux-tdep.o to gdb_target_obs.
1621         (s390*-*-*): Likewise.
1622
1623 2009-09-27  Don Lee  <don.lee@sunplusct.com>
1624
1625         * score-tdep.c: Comment out some simulator dependent codes.
1626         * score-tdep.h: Delete some simulator dependent macro definitions.
1627
1628 2009-09-27  Hui Zhu  <teawater@gmail.com>
1629
1630         * record.c (record_open): Change "query" to "error".
1631         (cmd_record_stop): Change "query" to "printf_unfiltered".
1632
1633 2009-09-26  Pierre Muller  <muller@ics.u-strasbg.fr>
1634
1635         * i386-nat.c (i386_stopped_data_address): Also check that
1636         hitted watch register is not vacant.
1637
1638 2009-09-25  Tom Tromey  <tromey@redhat.com>
1639
1640         PR python/10664:
1641         * language.h (struct language_defn) <la_get_string>: Add
1642         'char_type' argument.
1643         (LA_GET_STRING): Likewise.
1644         (default_get_string, c_get_string): Update.
1645         * language.c (default_get_string): Add 'char_type' argument.
1646         * c-valprint.c (c_textual_element_type): Rename from
1647         textual_element_type.  No longer static.  Update callers.
1648         * c-lang.h (c_textual_element_type): Declare.
1649         * c-lang.c (c_get_string): Add 'char_type' argument.
1650
1651 2009-09-25  Tom Tromey  <tromey@redhat.com>
1652
1653         * charset.c (iconv_open): Use UTF-16 and UTF-32, not UCS-2 and
1654         UCS-4.
1655         (iconv): Rename 'ucs_flag'.
1656         (GDB_DEFAULT_TARGET_WIDE_CHARSET): Use UTF-32.
1657         * c-lang.c (charset_for_string_type): Use UTF-16 and UTF-32, not
1658         UCS-2 and UCS-4.
1659         (convert_ucn): Use UTF-32.
1660
1661 2009-09-25  Nick Roberts  <nickrob@snap.net.nz>
1662
1663         * mi/gdb-mi.el: Remove file.
1664
1665 2009-09-23  Joel Brobecker  <brobecker@adacore.com>
1666
1667         * record.c (record_open, record_store_registers, record_xfer_partial):
1668         Replace calls to nquery by calls to query.
1669
1670 2009-09-23  John Wright  <john.wright@hp.com>
1671
1672         PR gdb/10684:
1673         * event-top.c (command_line_handler): Terminate linebuffer before
1674         xstrdup.
1675
1676 2009-09-22  Joel Brobecker  <brobecker@adacore.com>
1677
1678         * solib.c (solib_bfd_open): Relax a bit the compatibility check.
1679
1680 2009-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
1681
1682         * source.c (forget_cached_source_info): Clear last_source_visited.
1683         (init_last_source_visited): Delete.
1684         (directory_command): Do not clear last_source_visited.  Call
1685         forget_cached_source_info only if required.
1686         (unset_substitute_path_command, set_substitute_path_command): Call
1687         forget_cached_source_info.
1688         * mi/mi-cmd-env.c (mi_cmd_env_dir): Do not call
1689         init_last_source_visited.
1690         * defs.h (init_last_source_visited): Delete declaration.
1691
1692 2009-09-22  Tom Tromey  <tromey@redhat.com>
1693
1694         PR gdb/10583:
1695         * python/py-value.c (valpy_int): Use PyLong_FromLongLong.
1696         (valpy_long): Likewise.
1697
1698 2009-09-22  Tom Tromey  <tromey@redhat.com>
1699
1700         PR python/10680:
1701         * eval.c (evaluate_subexp_standard) <do_call_it>: Handle internal
1702         functions in EVAL_AVOID_SIDE_EFFECTS case.
1703
1704 2009-09-22  Jie Zhang  <jie.zhang@analog.com>
1705
1706         * MAINTAINERS: Add myself under Write After Approval.
1707
1708 2009-09-22  Pierre Muller  <muller@ics.u-strasbg.fr>
1709
1710         * windows-nat.c (ctrl_c_handler): Also handle CTRL_BREAK_EVENT.
1711
1712 2009-09-18  Keith Seitz  <keiths@redhat.com>
1713
1714         * cp-support.h (cp_validate_operator): Declare new function.
1715         * cp-support.c (cp_validate_operator): New function.
1716         * linespec.c (decode_compound): For C++ check for a valid operator.
1717
1718 2009-09-21  Keith Seitz  <keiths@redhat.com>
1719
1720         * c-exp.y (qualified_name): Call CHECK_TYPEDEF before deciding
1721         that a type is not an aggregate type.
1722
1723 2009-09-21  Jason Orendorff  <jason.orendorff@gmail.com>
1724
1725         PR python/10666:
1726         * python/py-function.c (fnpy_init): Use xstrdup.
1727
1728 2009-09-21  Jie Zhang  <jie.zhang@analog.com>
1729
1730         * doc/gdb.texinfo: Escape "{" and "}".
1731
1732 2009-09-21  Phil Muldoon <pmuldoon@redhat.com>
1733
1734         PR python/10633
1735
1736         * c-lang.c (c_printstr): Do not loop past  options->print_max when
1737         iterating with wchar_iterate.
1738
1739 2009-09-21  Phil Muldoon <pmuldoon@redhat.com>
1740
1741         * python/py-value.c (valpy_getitem): Test value before allowing
1742         subscript operation.
1743
1744 2009-09-21  Hui Zhu  <teawater@gmail.com>
1745             Michael Snyder  <msnyder@vmware.com>
1746
1747         * amd64-linux-tdep.c (amd64_all_but_ip_registers_record): New
1748         function.
1749         (amd64_linux_syscall_record): Call
1750         amd64_all_but_ip_registers_record if syscall is
1751         sys_rt_sigreturn.
1752         (AMD64_LINUX_redzone, AMD64_LINUX_xstate,
1753         AMD64_LINUX_frame_size): New macros.
1754         (amd64_linux_record_signal): New function.
1755         (amd64_linux_init_abi): Call set_gdbarch_process_record_signal.
1756
1757 2009-09-21  Hui Zhu  <teawater@gmail.com>
1758             Michael Snyder  <msnyder@vmware.com>
1759
1760         * i386-linux-tdep.c (i386_all_but_ip_registers_record): New
1761         function.
1762         (i386_linux_intx80_sysenter_record): Call
1763         i386_all_but_ip_registers_record if syscall is sys_sigreturn
1764         or sys_rt_sigreturn.
1765         (I386_LINUX_xstate, I386_LINUX_frame_size): New macros.
1766         (i386_linux_record_signal): New function.
1767         (i386_linux_init_abi): Call set_gdbarch_process_record_signal.
1768
1769 2009-09-21  Hui Zhu  <teawater@gmail.com>
1770             Michael Snyder  <msnyder@vmware.com>
1771
1772         * record.c (record_end_entry): New struct.
1773         (record_type): Add end.
1774         (record_arch_list_add_end): Set rec->u.end.sigval to
1775         TARGET_SIGNAL_0.
1776         (record_message_args): New struct.
1777         (record_message): Call gdbarch_process_record_signal.
1778         (do_record_message): Add argument "signal".
1779         (record_resume): Ditto.
1780         (record_wait): Ditto.  Check record_list->u.end.sigval
1781         in replay mode.
1782
1783 2009-09-21  Hui Zhu  <teawater@gmail.com>
1784             Michael Snyder  <msnyder@vmware.com>
1785
1786         * gdbarch.sh (process_record_signal): New interface.
1787
1788 2009-09-19  Matt Rice <ratmice@gmail.com>  (tiny change)
1789
1790         Checked in by Joel Brobecker  <brobecker@gnat.com>
1791         * varobj.c (varobj_update): Initialize children_changed.
1792
1793 2009-09-19  Vladimir Prus  <vladimir@codesourcery.com>
1794
1795         * mi/mi-cmd-stack.c (list_args_or_locals): Workaround
1796         gcc warning.
1797
1798 2009-09-19  Vladimir Prus  <vladimir@codesourcery.com>
1799
1800         * mi/mi-cmds.h (mi_cmd_stack_list_variables): Declare.
1801         * mi/mi-cmds.c (mi_cmds): Register -stack-list-variables.
1802         * mi/mi-cmd-stack.c (enum what_to_list): New.
1803         (list_args_or_locals): Accept what_to_list parameter.
1804         Use 'variables' as output name of all are requested.
1805         (mi_cmd_stack_list_variables): New.
1806         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Adjust.
1807
1808 2009-09-19  Eli Zaretskii  <eliz@gnu.org>
1809
1810         * config/djgpp/fnchange.lst: Add missing edits.
1811
1812 2009-09-18  Maxim Grigoriev  <maxim2405@gmail.com>
1813
1814         * xtensa-tdep.c (call0_analyze_prologue): Replace INT_MAX by UNIT_MAX.
1815
1816 2009-09-18  Jan Kratochvil  <jan.kratochvil@redhat.com>
1817
1818         * objfiles.c (free_objfile): Clear SYMFILE_OBJFILE if it is OBJFILE.
1819         * rs6000-nat.c (vmap_ldinfo): Only assertion check SYMFILE_OBJFILE now.
1820         * symfile.c (syms_from_objfile, symbol_file_clear): Likewise.
1821
1822 2009-09-18  Ulrich Weigand  <uweigand@de.ibm.com>
1823
1824         * rs6000-tdep.c (rs6000_builtin_type_vec128): Add v2_double
1825         union member.
1826
1827 2009-09-17  Joel Brobecker  <brobecker@adacore.com>
1828
1829         Fix a build failure on pa-hpux:
1830         * gdb_ptrace.h (PT_SYSCALL): Define here if not already defined.
1831         * inf-ttrace.c (inf_ttrace_wait): Fix compilation failure
1832         introduced after field syscall_id inside struct target_waitstatus
1833         has been renamed into syscall_number.
1834
1835 2009-09-16  H.J. Lu  <hongjiu.lu@intel.com>
1836
1837         PR gdb/10649
1838         * Makefile.in (GDB_DATADIR_PATH): Renamed to ...
1839         (GDB_DATADIR): This.
1840         (xml-syscall-install): Updated.
1841
1842 2009-09-16  Joel Brobecker  <brobecker@adacore.com>
1843
1844         GDB 7.0 branch created (branch timestamp: 2009-09-16 19:00 UTC)
1845         * version.in: Bump version to 7.0.50.20090916-cvs.
1846
1847 2009-09-15  Tom Tromey  <tromey@redhat.com>
1848
1849         * varobj.h (varobj_update_result_t) <new>: New field.
1850         (varobj_get_child_range, varobj_set_child_range): Declare.
1851         (varobj_list_children): Update.
1852         (varobj_enable_pretty_printing, varobj_has_more)
1853         (varobj_pretty_printed_p): Declare.
1854         * varobj.c (pretty_printing): New global.
1855         (varobj_enable_pretty_printing): New function.
1856         (struct varobj_root) <from, to, constructor, child_iter,
1857         saved_item>: New fields.
1858         (varobj_create): Don't call install_default_visualizer.
1859         (instantiate_pretty_printer): Don't use value_copy.
1860         (varobj_has_more): New function.
1861         (restrict_range): New function.
1862         (install_dynamic_child): Likewise.
1863         (dynamic_varobj_has_child_method): Likewise.
1864         (update_dynamic_varobj_children): Remove 'new_and_unchanged'
1865         argument; add 'new', 'unchanged', 'from', and 'to' arguments.
1866         Rewrite.
1867         (varobj_get_num_children): Call update_dynamic_varobj_children.
1868         (varobj_list_children): Add 'from' and 'to' arguments.  Ignore
1869         result of update_dynamic_varobj_children.  Don't call
1870         install_default_visualizer.  Restrict result range.
1871         (varobj_add_child): Don't call install_default_visualizer.
1872         (varobj_pretty_printed_p): New function.
1873         (install_visualizer): Rewrite.  Move earlier in file.
1874         (install_default_visualizer): Likewise.
1875         (construct_visualizer): New function.
1876         (install_new_value_visualizer): Likewise.
1877         (install_new_value): Don't call release_value.  Special case
1878         pretty-printed objects.  Use value_incref.  Rearrange "changed"
1879         logic.
1880         (varobj_get_child_range): New function.
1881         (varobj_set_child_range): Likewise.
1882         (varobj_set_visualizer): Rewrite.
1883         (varobj_update): Rewrite pretty-printing logic.
1884         (new_variable): Initialize new fields.
1885         (free_variable): Destroy new fields.
1886         (value_of_root): Copy 'from' and 'to'.
1887         (my_value_of_variable): Handle pretty-printers.
1888         (value_get_print_value): Rework pretty-printing logic.
1889         (cplus_describe_child): Don't use release_value.
1890         * mi/mi-cmds.h (mi_cmd_enable_pretty_printing)
1891         (mi_cmd_var_set_update_range): Declare.
1892         * mi/mi-cmds.c (mi_cmds): Add enable-pretty-printing and
1893         var-set-update-range.
1894         * mi/mi-cmd-var.c (print_varobj): Update.  Emit "dynamic"
1895         attribute.
1896         (mi_cmd_var_create): Emit "has_more" attribute.
1897         (mi_cmd_var_set_format): Plug memory leak.
1898         (mi_print_value_p): Replace 'type' argument with 'var'.  Handle
1899         pretty-printed varobjs.
1900         (mi_cmd_var_list_children): Accept 'from' and 'to' arguments.
1901         Emit "has_more" attribute.
1902         (mi_cmd_var_evaluate_expression): Plug memory leak.
1903         (mi_cmd_var_assign): Likewise.
1904         (varobj_update_one): Likewise.  Emit "dynamic", "has_more", and
1905         "new_children" attributes.
1906         (mi_cmd_enable_pretty_printing): New function.
1907         (mi_cmd_var_set_update_range): Likewise.
1908
1909 2009-09-15  Doug Evans  <dje@google.com>
1910
1911         * dwarf2expr.h (dwarf_value_location): Add more comments describing
1912         enum values.
1913         (struct dwarf_stack_value): New struct.
1914         (struct dwarf_expr_context): Change type of `stack' from CORE_ADDR*
1915         to struct dwarf_stack_value*.
1916         (struct dwarf_expr_piece): Move `v.value' into its own struct, v.expr,
1917         all uses updated.  Add v.expr.in_stack_memory.
1918         (dwarf_expr_push): Update declaration.
1919         (dwarf_expr_fetch_in_stack_memory): Declare.
1920         * dwarf2expr.c (dwarf_expr_grow_stack): Update calculation of
1921         size of stack value.
1922         (dwarf_expr_push): New arg in_stack_memory, all callers updated.
1923         (dwarf_expr_fetch_in_stack_memory): New function.
1924         (add_piece): Set in_stack_memory for non-literal values.
1925         (execute_stack_op): Allow ops to specify whether the value is on the
1926         program's stack.
1927         (execute_stack_op, case DW_OP_fbreg): Mark value as in stack memory.
1928         (execute_stack_op, case DW_OP_call_frame_cfa): Ditto.
1929         (execute_stack_op, case DW_OP_dup): Copy in_stack_memory flag.
1930         (execute_stack_op, cases DW_OP_pick, DW_OP_over): Ditto.
1931         (execute_stack_op, cases DW_OP_swap, DW_OP_rot): Update type of
1932         dwarf stack value.
1933         * dwarf2loc.c (read_pieced_value): Call read_stack for values known
1934         to be on the program's stack.
1935         (dwarf2_evaluate_loc_desc, case DWARF_VALUE_MEMORY): Call
1936         set_value_stack only for objects known to be in stack memory.
1937         * dwarf2-frame.c (execute_stack_op): New arg initial_in_stack_memory,
1938         all callers updated.
1939
1940         * target.c (memory_xfer_partial): Pass correct length to dcache_update.
1941
1942 2009-09-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
1943
1944         Fix gcc-4.5 HEAD warnings for enum ada_operator.
1945         * Makefile.in (HFILES_NO_SRCDIR): Add ada-operator.inc.
1946         * ada-lang.h (enum ada_operator): Move it to ...
1947         * ada-operator.inc: ... a new file.
1948         * expression.h (enum exp_opcode): Include ada-operator.inc.
1949         New element OP_UNUSED_LAST.  Update comment for OP_EXTENDED0.
1950
1951         Fix gcc-4.5 HEAD warnings for GDB_FORM_cached_string.
1952         * dwarf2read.c (GDB_FORM_cached_string)
1953         (dwarf_form_name <GDB_FORM_cached_string>): Remove.
1954         (struct attribute <dwarf_form>): Reduce the bit width.
1955         (struct attribute <string_is_canonical>, DW_STRING_IS_CANONICAL): New.
1956         (read_attribute_value <DW_FORM_string>)
1957         (read_attribute_value <DW_FORM_strp>): Initialize
1958         DW_STRING_IS_CANONICAL.
1959         (dwarf2_name, dump_die_shallow <DW_FORM_string>)
1960         (dump_die_shallow <DW_FORM_strp>): Update the code using former
1961         GDB_FORM_cached_string.
1962
1963 2009-09-14  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
1964
1965         * amd64-linux-tdep.c: Include xml-syscall.h header, define the XML
1966         syscall name for the architecture.
1967         (amd64_linux_get_syscall_number): New function.
1968         (amd64_linux_init_abi): Register the correct functions for syscall
1969         catchpoint; set the correct syscall file name.
1970         * breakpoint.c: New include: xml-syscall.h.
1971         (set_raw_breakpoint_without_location): Setting the parameters
1972         for the catch syscall feature.
1973         (insert_catch_syscall): New.
1974         (remove_catch_syscall): New.
1975         (breakpoint_hit_catch_syscall): New.
1976         (print_it_catch_syscall): New.
1977         (print_one_catch_syscall): New.
1978         (print_mention_catch_syscall): New.
1979         (catch_syscall_breakpoint_ops): New.
1980         (syscall_catchpoint_p): New.
1981         (create_catchpoint_without_mention): New.
1982         (create_catchpoint): Modified in order to use
1983         create_catchpoint_without_mention.
1984         (create_syscall_event_catchpoint): New.
1985         (clean_up_filters): New.
1986         (catch_syscall_split_args): New.
1987         (catch_syscall_command_1): New.
1988         (delete_breakpoint): Add cleanup for catch syscall.
1989         (is_syscall_catchpoint_enabled): New.
1990         (catch_syscall_enabled): New.
1991         (catching_syscall_number): New.
1992         (catch_syscall_completer): New completer function.
1993         (add_catch_command): Add the completer function for catchpoints.
1994         * breakpoint.h (syscalls_to_be_caught): New vector.
1995         (catch_syscall_enabled): New.
1996         (catching_syscall_number): New.
1997         * gdbarch.c: Regenerated.
1998         * gdbarch.h: Regenerated.
1999         * gdbarch.sh: Add syscall catchpoint functions and structures.
2000         (get_syscall_number): New.
2001         (UNKNOWN_SYSCALL): New definition.
2002         * i386-linux-nat.c (i386_linux_resume): Select the proper request
2003         to be made for ptrace() considering if we are catching syscalls
2004         or not.
2005         * i386-linux-tdep.c: Include xml-syscall.h header, define the XML
2006         syscall name for the architecture.
2007         (i386_linux_get_syscall_number): New.
2008         (i386_linux_init_abi): Register the correct functions for syscall
2009         catchpoint; set the correct syscall file name.
2010         * inf-child.c (inf_child_set_syscall_catchpoint): New.
2011         (inf_child_target): Assign default values to target_ops.
2012         * inf-ptrace.c (inf_ptrace_resume): Select the proper request
2013         to be made for ptrace() considering if we are catching syscalls
2014         or not.
2015         * inferior.h (struct inferior): Included new variables
2016         any_syscall_count, syscalls_counts and total_syscalls_count,
2017         used to keep track of requested syscall catchpoints.
2018         * infrun.c (resume): Add syscall catchpoint.
2019         (deal_with_syscall_event): New.
2020         (handle_inferior_event): Add syscall entry/return events.
2021         (inferior_has_called_syscall): New.
2022         * linux-nat.c: Define some helpful variables to track wether we have
2023         support for the needed ptrace option.
2024         (linux_test_for_tracesysgood): New.
2025         (linux_supports_tracesysgood): New.
2026         (linux_enable_tracesysgood): New.
2027         (linux_enable_event_reporting): Save the current used ptrace
2028         options.
2029         (linux_child_post_attach): Calling linux_enable_tracesysgood.
2030         (linux_child_post_startup_inferior): Likewise.
2031         (linux_child_set_syscall_catchpoint): New function.
2032         (linux_handle_extended_wait): Handle the case which the inferior stops
2033         because it has called or returned from a syscall.
2034         (linux_target_install_ops): Install the necessary functions to handle
2035         syscall catchpoints.
2036         * linux-nat.h (struct lwp_info): Include syscall_state into the
2037         structure, which indicates if we are in a syscall entry or return.
2038         * ppc-linux-tdep.c: Include xml-syscall.h header, define the XML
2039         syscall filename for the arch.
2040         (ppc_linux_get_syscall_number): New.
2041         (ppc_linux_init_abi): Register the correct functions for syscall
2042         catchpoint; setting the correct name for the XML syscall file.
2043         * target.c (update_current_target): Update/copy functions related to
2044         syscall catchpoint.
2045         (target_waitstatus_to_string): Add syscall catchpoint entry/return
2046         events.
2047         * target.h (struct target_waitstatus): Add syscall number.
2048         (struct syscall): New struct to hold information about syscalls
2049         in the system.
2050         (struct target_ops): Add ops for syscall catchpoint.
2051         (inferior_has_called_syscall): New.
2052         (target_set_syscall_catchpoint): New.
2053         * xml-support.c (xml_fetch_content_from_file): New function,
2054         transferred from xml-tdesc.c.
2055         * xml-support.h (xml_fetch_content_from_file): New.
2056         * xml-tdesc.c (fetch_xml_from_file): Function removed;
2057         transferred to xml-support.c.
2058         (file_read_description_xml): Updated to use the new
2059         xml_fetch_content_from_file function.
2060         * syscalls/gdb-syscalls.dtd: New definition file for syscall's XML
2061         support.
2062         * syscalls/amd64-linux.xml: New file containing information about
2063         syscalls for GNU/Linux systems that use amd64 architecture.
2064         * syscalls/i386-linux.xml: New file containing information about
2065         syscalls for GNU/Linux systems that use i386 architecture.
2066         * syscalls/ppc-linux.xml: New file containing information about
2067         syscalls for GNU/Linux systems that use PPC architecture.
2068         * syscalls/ppc64-linux.xml: New file containing information about
2069         syscalls for GNU/Linux systems that use PPC64 architecture.
2070         * xml-syscall.c: New file containing functions for manipulating
2071         syscall's XML files.
2072         * xml-syscall.h: New file, exporting the functions above mentioned.
2073         * Makefile.in: Support for relocatable GDB datadir and XML
2074         syscall.
2075         * NEWS: Added information about the catch syscall feature.
2076
2077 2009-09-14  Doug Evans  <dje@google.com>
2078
2079         * target.c (memory_xfer_partial): Only update dcache after we know
2080         the write succeeded.
2081
2082 2009-09-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
2083
2084         *minsyms.c (lookup_minimal_symbol_by_pc_section_1): Assert non-NULL
2085         section.
2086         (lookup_minimal_symbol_by_pc_section): Check for NULL section.
2087         (lookup_minimal_symbol_by_pc): Adjust.
2088
2089 2009-09-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
2090
2091         * objfiles.c (qsort_cmp): Remove asserts.
2092         (insert_section_p, filter_debuginfo_sections): New function.
2093         (filter_overlapping_sections): Likewise.
2094         (update_section_map): Adjust.   
2095
2096 2009-09-13  Daniel Jacobowitz  <dan@codesourcery.com>
2097
2098         * frame.c (get_frame_id): Default to outer_frame_id if the this_id
2099         method does not supply an ID.  Assert that the result is not
2100         null_frame_id.
2101         (outer_frame_id): New.
2102         (frame_id_p): Accept outer_frame_id.
2103         (frame_id_eq): Allow outer_frame_id to be equal to itself.
2104         (frame_find_by_id): Revert previous local workarounds.
2105         (get_prev_frame_1): Adjust end-of-stack check to test outer_frame_id.
2106         * frame.h (null_frame_id, frame_id_p): Update comments.
2107         (outer_frame_id): Declare.
2108         * infrun.c (handle_inferior_event): Do not treat all steps from the
2109         outermost frame as subroutine calls.
2110
2111         * libunwind-frame.c (libunwind_frame_this_id): Do not clear THIS_ID.
2112         * hppa-tdep.c (hppa_stub_frame_this_id): Likewise.
2113         * ia64-tdep.c (ia64_frame_this_id): Likewise.
2114         (ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id):
2115         Use outer_frame_id instead of null_frame_id.
2116         * amd64obsd-tdep.c (amd64obsd_trapframe_cache): Use outer_frame_id.
2117         * i386obsd-tdep.c (i386obsd_trapframe_cache): Likewise.
2118         * inline-frame.c (inline_frame_this_id): Refuse outer_frame_id.
2119         * thread.c (restore_selected_frame): Update comment and remove
2120         frame_id_p check.
2121
2122 2009-09-11  Doug Evans  <dje@google.com>
2123
2124         * dwarf2expr.c (execute_stack_op, case DW_OP_piece): Delete unused
2125         local addr_or_regnum.
2126
2127         * objfiles.c (struct objfile_data): Delete member cleanup and replace
2128         with save, free.
2129         (register_objfile_data_with_cleanup): Delete arg cleanup and replace
2130         with save, free.  All callers updated.
2131         (clear_objfile_data): Replace cleanup loop with separate save and
2132         free loops.
2133         * objfiles.h (register_objfile_data_with_cleanup): Update.
2134         * arm-tdep.c (arm_objfile_data_free): Renamed from
2135         arm_objfile_data_cleanup, all callers updated.
2136         * dwarf2read.c (dwarf2_per_objfile_free): Renamed from
2137         dwarf2_per_objfile_cleanup, all callers updated.
2138         * python/py-objfile.c (py_free_objfile): Renamed from clean_up_objfile,
2139         all callers updated.
2140         * python/py-type.c (save_objfile_types): Renamed from
2141         clean_up_objfile_types, all callers updated.
2142
2143 2009-09-11  Tom Tromey  <tromey@redhat.com>
2144
2145         * dwarf2loc.c (struct piece_closure) <arch>: New field.
2146         (dwarf2_evaluate_loc_desc): Update.
2147         (dwarf2_loc_desc_needs_frame): Likewise.
2148         (allocate_piece_closure): Initialize new field.
2149         (read_pieced_value): Update.
2150         (write_pieced_value): Update.
2151         (copy_pieced_value_closure): Update.
2152         * dwarf2expr.h (enum dwarf_value_location): New.
2153         (struct dwarf_expr_context) <in_reg>: Remove.
2154         <location, len, data>: New fields.
2155         (struct dwarf_expr_piece) <in_reg, value>: Remove.
2156         <location, v>: New fields.
2157         * dwarf2expr.c (add_piece): Remove in_reg, value arguments.
2158         Update.
2159         (require_composition): New function.
2160         (execute_stack_op): Update.
2161         <DW_OP_implicit_value, DW_OP_stack_value>: New cases.
2162         <DW_OP_reg0>: Set location, not in_reg.
2163         <DW_OP_regx>: Likewise.  Use require_composition.
2164         <DW_OP_fbreg>: Update.
2165         <DW_OP_piece>: Likewise.
2166         * dwarf2-frame.c (execute_stack_op): Update.
2167
2168 2009-09-10  Anthony Green  <green@moxielogic.com>
2169
2170         * moxie-tdep.c (moxie_analyze_prologue): Recognize new prologue
2171         sequences.
2172
2173 2009-09-10  Michael Snyder  <msnyder@vmware.com>
2174
2175         * remote.c (PACKET_bc, PACKET_bs): New enums.
2176         (remote_protocol_features): Add ReverseStep, ReverseContinue.
2177         (remote_resume): Check for reverse capability.
2178         (_initialize_remote): Add packet config for "bs" and "bc" packets.
2179         * NEWS (new options): Mention set/show for "bs" and "bc" packets.
2180
2181 2009-09-10  Joel Brobecker  <brobecker@adacore.com>
2182
2183         * top.c (interactive_mode): New static variable.
2184         (show_interactive_mode): New function.
2185         (input_from_terminal_p): If interactive_mode is not auto, then
2186         use that rather than checking the stdin settings.
2187         (init_main): Add "set/show interactive-mode" command.
2188         * NEWS: Add entry for new "set/show interactive-mode" command.
2189
2190 2009-09-10  Joel Brobecker  <brobecker@adacore.com>
2191
2192         * configure.ac: Fix the names of the python source and object files
2193         following the renaming done in an earlier change.
2194         * configure: Regenerate.
2195
2196 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
2197
2198         Fix a build failure on AIX.
2199         * rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table
2200         instead of relying on the to_sections/to_section_end target_ops
2201         field, since the latter have been removed in a previous patch.
2202
2203 2009-09-08  Thiago Jung Bauermann  <thiago.bauermann@gmail.com>
2204
2205         * Makefile.in (py-cmd.o): Renamed from python-cmd.o.  Updated
2206         references.
2207         (py-frame.o): Renamed from python-frame.o.  Updated references.
2208         (py-function.o): Renamed from python-function.o.  Updated references.
2209         (py-objfile.o): Renamed from python-objfile.o.  Updated references.
2210         (py-prettyprint.o): Renamed from python-prettyprint.o.  Updated
2211         references.
2212         (py-type.o): Renamed from python-type.o.  Updated references.
2213         (py-utils.o): Renamed from python-utils.o.  Updated references.
2214         (py-value.o): Renamed from python-value.o.  Updated references.
2215         * py-cmd.c: Renamed from python-cmd.c.
2216         * py-frame.c: Renamed from python-frame.c.
2217         * py-function.c: Renamed from python-function.c.
2218         * py-objfile.c: Renamed from python-objfile.c.
2219         * py-prettyprint.c: Renamed from python-prettyprint.c.
2220         * py-type.c: Renamed from python-type.c.
2221         * py-utils.c: Renamed from python-utils.c.
2222         * py-value.c: Renamed from python-value.c.
2223
2224 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
2225
2226         Avoid quadratic behavior when computing the value of a register.
2227         * frame.c (frame_stash): New static constant.
2228         (frame_stash_add, frame_stash_find, frame_stash_invalidate):
2229         New functions.
2230         (get_frame_id): Minor reformatting. Add the frame to the frame stash.
2231         (frame_find_by_id): Search the frame stash first before walking all
2232         frames starting from te current_frame.
2233         (reinit_frame_stash): Add call to frame_stash_invalidate ();
2234
2235 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
2236
2237         * block.c (contained_in): Return zero for nested functions.
2238         * blockframe.c (block_innermost_frame): Delete unreferenced local
2239         variable.
2240
2241 2009-09-08  Doug Evans  <dje@google.com>
2242
2243         * target.c (initialize_targets): Fix thinko in stack_cache_enabled_p.
2244
2245 2009-09-08  Michael Snyder  <msnyder@vmware.com>
2246
2247         * amd64-linux-tdep.h (enum amd64_syscall): New enum consts, 
2248         to replace literal consts used in amd64-linux-tdep.c
2249         * linux-record.h (enum gdb_syscall): New enum consts, to replace
2250         literal consts used in amd64-linux-tdep.c and linux-record.c.
2251         * amd64-linux-tdep.c (amd64_canonicalize_syscall): New function,
2252         translate from native amd64 Linux syscall id to internal gdb id.
2253         (amd64_linux_syscall_record): Switch statement abstracted out 
2254         and replaced with a call to amd64_canonicalize_syscall.
2255         * linux-record.c (record_linux_system_call): Replace literal
2256         consts with enum consts.
2257         * i386-linux-tdep.c (i386_canonicalize_syscall): New function,
2258         trivially translate from native i386 Linux syscalls to gdb syscalls.
2259         (i386_linux_intx80_sysenter_record): 
2260
2261 2009-09-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2262
2263         * gdb/Makefile.in (check//%): Parse 'config.status --version'
2264         output to recreate the configuration from the testsuite directory,
2265         rather than running 'config.status --recheck' from a different
2266         build directory.  Let configure do the recursion rather than
2267         doing it manually.
2268
2269 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2270
2271         * ia64-tdep.c (ia64_memory_remove_breakpoint): Call do_cleanups
2272         before a return.
2273
2274 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2275
2276         * ia64-tdep.c (ia64_memory_insert_breakpoint)
2277         (ia64_memory_remove_breakpoint): Return immediately if any of memory
2278         reads fail.  Do not combine the VAL values.
2279
2280 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2281
2282         Fix ia64 shadowing of breakpoints in multiple slots of a single bundle.
2283         * ia64-tdep.c (ia64_memory_insert_breakpoint): New call
2284         of make_show_memory_breakpoints_cleanup with parameter 0.  Move the
2285         reading of SHADOW_CONTENTS to this memory state point of code.  Update
2286         comment for the memory re-read.
2287
2288 2009-09-07  Michael Snyder  <msnyder@vmware.com>
2289
2290         * record.c: Minor comment and white space fix-ups.
2291
2292 2009-09-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
2293
2294         * m68k-tdep.c (m68k_gdbarch_init): Allocate TDEP as cleared.
2295         * sparc-tdep.c (sparc32_gdbarch_init): Allocate TDEP as cleared.
2296         Remove explicit clearing of TDEP fields.
2297
2298 2009-09-06  Hui Zhu  <teawater@gmail.com>
2299
2300         * i386-tdep.c (i386_record_check_override): Deleted.
2301         (i386_record_lea_modrm): Ditto.
2302         (i386_process_record): Ditto.
2303
2304 2009-09-05  Eli Zaretskii  <eliz@gnu.org>
2305
2306         * config/djgpp/djconfig.sh: Fix for Autoconf 2.64.
2307         * config/djgpp/config.sed: Fix for Autoconf 2.64.
2308
2309 2009-09-05  Hui Zhu  <teawater@gmail.com>
2310
2311         * i386-tdep.c (i386_record_s): Add orig_addr.
2312         (i386_record_check_override): New function.
2313         (i386_record_lea_modrm): Call i386_record_check_override.
2314         (i386_process_record): Ditto.
2315
2316 2009-09-03  Nathan Froyd  <froydnj@codesourcery.com>
2317
2318         * dwarf2loc.c (struct piece_closure): New.
2319         (allocate_piece_closure): New function.
2320         (read_pieced_value): New function.
2321         (write_pieced_value): New function.
2322         (copy_pieced_value_closure): New function.
2323         (free_pieced_value_closure): New function.
2324         (pieced_value_funcs): Define.
2325         (dwarf2_evaluate_loc_desc): Return a computed value for a variable
2326         described with pieces.
2327
2328 2009-09-03  Pierre Muller <muller@ics.u-strasbg.fr>
2329             Richard Earnshaw <rearnsha@arm.com>
2330
2331         * arm-tdep.c (displaced_write_reg): Replace call to abort by call
2332         to internal_error.
2333
2334 2009-09-02  Tom Tromey  <tromey@redhat.com>
2335
2336         * frame.h (frame_unwinder_is): Declare.
2337         * frame.c (frame_unwinder_is): New function.
2338         * dwarf2loc.c: Include dwarf2-frame.h.
2339         (dwarf_expr_frame_cfa): New function.
2340         (dwarf2_evaluate_loc_desc): Use it.
2341         (needs_frame_frame_cfa): New function.
2342         (dwarf2_loc_desc_needs_frame): Use it.
2343         * dwarf2expr.h (struct dwarf_expr_context) <get_frame_cfa>: New
2344         field.
2345         * dwarf2expr.c (execute_stack_op) <DW_OP_call_frame_cfa>: New
2346         case.
2347         * dwarf2-frame.h (dwarf2_frame_cfa): Declare.
2348         * dwarf2-frame.c (no_get_frame_cfa): New function.
2349         (execute_stack_op): Use it.
2350         (dwarf2_frame_cfa): New function.
2351
2352 2009-09-02  Hui Zhu  <teawater@gmail.com>
2353
2354         * record.c (record_resume): Change "signal" to "siggnal".
2355
2356 2009-09-01  Hui Zhu  <teawater@gmail.com>
2357
2358         * record.c (record_resume): Change "siggnal" to "signal".
2359
2360 2009-09-01  Hui Zhu  <teawater@gmail.com>
2361
2362         * record.c (record_resume_siggnal): Deleted.
2363         (record_resume): Ditto.
2364         (record_wait): Change record_resume_siggnal to
2365         TARGET_SIGNAL_0.
2366
2367 2009-08-31  Jacob Potter  <jdpotter@google.com>
2368             Doug Evans  <dje@google.com>
2369
2370         Implement TARGET_OBJECT_STACK_MEMORY.
2371         * NEWS: Add note on new "set stack-cache" option.
2372         * corefile.c (read_stack): New function.
2373         * dcache.c (dcache_struct): New member ptid.
2374         (dcache_enable_p): Mark as obsolete.
2375         (show_dcache_enabled_p): Flag option as deprecated.
2376         (dcache_invalidate): Update ptid.
2377         (dcache_invalidate_line): New function.
2378         (dcache_read_line): No longer check cacheable attribute, stack
2379         accesses get cached despite attribute.
2380         (dcache_init): Set ptid.
2381         (dcache_xfer_memory): Flush cache if from different ptid than before.
2382         Update cache after write.
2383         (dcache_update): New function.
2384         (dcache_info): Report ptid.
2385         (_initialize_dcache): Update text for `remotecache' to indicate it
2386         is obsolete.
2387         * dcache.h (dcache_update): Declare.
2388         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Mark values on stack with
2389         set_value_stack.
2390         * frame-unwind.c (frame_unwind_got_memory): Ditto.
2391         * gdbcore.h (read_stack): Declare.
2392         * memattr.c (mem_enable_command): Call target_dcache_invalidate
2393         instead of dcache_invalidate.
2394         (mem_disable_command, mem_delete_command): Ditto.
2395         * target.c (stack_cache_enabled_p_1): New static global.
2396         (stack_cache_enabled_p): New static global.
2397         (set_stack_cache_enabled_p): New function.
2398         (show_stack_cache_enabled_p): New function.
2399         (target_dcache): Make static.
2400         (target_dcache_invalidate): New function.
2401         (target_load, target_resume): Call target_dcache_invalidate
2402         instead of dcache_invalidate.
2403         (memory_xfer_partial): New arg object, all callers updated.
2404         Check for existing inferior before calling dcache routines.
2405         When writing non-TARGET_OBJECT_STACK_MEMORY, notify dcache.
2406         (target_xfer_partial): Call memory_xfer_partial for
2407         TARGET_OBJECT_STACK_MEMORY.
2408         (target_read_stack): New function.
2409         (initialize_targets): Install new option `stack-cache'.
2410         * target.h: Remove #include of dcache.h.
2411         (enum target_object): New value TARGET_OBJECT_STACK_MEMORY.
2412         (target_dcache): Delete.
2413         (target_dcache_invalidate): Declare.
2414         (target_read_stack): Declare.
2415         * top.c (prepare_execute_command): New function.
2416         (execute_command): Call prepare_execute_command
2417         instead of free_all_values.
2418         * top.h (prepare_execute_command): Declare.
2419         * valops.c (get_value_at): New function.
2420         (value_at): Guts moved to get_value_at.
2421         (value_at_lazy): Similarly.
2422         (value_fetch_lazy): Call read_stack for stack values.
2423         * value.c (struct value): New member `stack'.
2424         (value_stack, set_value_stack): New functions.
2425         * value.h (value_stack, set_value_stack): Declare.
2426         * mi/mi-main.c (mi_cmd_execute): Call prepare_execute_command
2427         instead of free_all_values.
2428
2429 2009-08-29  Hui Zhu  <teawater@gmail.com>
2430
2431         * i386-tdep.c (i386_process_record): Fix the error of string
2432         ops instructions's handler.
2433
2434 2009-08-28  Doug Evans  <dje@google.com>
2435
2436         * top.c (execute_command): Remove redundant comment.
2437
2438 2009-08-28  Daniel Jacobowitz  <dan@codesourcery.com>
2439
2440         PR gdb/10565
2441
2442         * value.c (value_primitive_field): Do not save value_offset for
2443         bitfields.
2444         (unpack_bits_as_long): Do not read an entire ULONGEST.
2445
2446 2009-08-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
2447
2448         Support constant DW_AT_data_member_location by GCC PR debug/40659.
2449         * dwarf2read.c
2450         (dwarf2_add_field <DW_TAG_member> <DW_AT_data_member_location>):
2451         Initialize BYTE_OFFSET to 0 by default.  Explicitly check if
2452         attr_form_is_block.
2453         (dwarf2_add_field <DW_TAG_inheritance> <DW_AT_data_member_location>)
2454         (read_common_block <DW_AT_data_member_location>): New variable
2455         byte_offset.  Fix crash on non-DW_BLOCK ATTR values.
2456
2457 2009-08-28  Hui Zhu  <teawater@gmail.com>
2458
2459         * record.c (record_list_release_next): Change the first
2460         record_reg to record_end.
2461
2462 2009-08-27  Doug Evans  <dje@google.com>
2463
2464         * value.c (free_all_values): Tweak comment.
2465
2466         * NEWS: Add note on "info sharedlibrary".
2467         Remove note on "set print symbol-loading".
2468         * main.c (captured_main): Pass !batch for from_tty when calling
2469         symbol_file_add_main.
2470         * objfiles.h (objfile_has_partial_symbols): Declare.
2471         (objfile_has_full_symbols): Declare.
2472         * objfiles.c (objfile_has_partial_symbols): New function.
2473         (have_partial_symbols): Use it.
2474         (objfile_has_full_symbols): New function.
2475         (have_full_symbols): Use it.
2476         * solib.c: Include interps.h.
2477         (solib_read_symbols): Back out patch of 2008-07-10.
2478         Add test for info_verbose for symbol loading messages for
2479         consistency with symfile.c.
2480         (info_sharedlibrary_command): Handle optional parameter of regex of
2481         libraries to list.  Inform user of libraries without debugging info.
2482         Rewrite to use ui_out routines to format output.
2483         * symfile.c (print_symbol_loading): Delete.
2484         (symbol_file_add_with_addrs_or_offsets): Back out patch of 2008-07-10.
2485         Print "no debugging symbols found" only if from_tty || info_verbose;
2486         and only check file being loaded, not all files.
2487         (reread_symbols): Test file being loaded for whether it has symbols,
2488         not all files.
2489         (__initialize_symfile): Delete `set print symbol-loading'.
2490         * symfile.h (print_symbol_loading): Delete.
2491
2492 2009-08-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
2493
2494         * varobj.c (varobj_create): Error if the specified frame was not found
2495         and it is needed.
2496
2497 2009-08-26  Michael Snyder  <msnyder@vmware.com>
2498
2499         * i386-tdep.c (i386_process_record): Break out of prefix loop
2500         if not amd64.  Otherwise inc/dec instructions are lost.
2501
2502 2009-08-25  Keith Seitz  <keiths@redhat.com>
2503
2504         * c-exp.y (yylex): Add cxx_only check for tokentab2 and tokentab3
2505         searches. 
2506         (tokentab3): Add cxx_only for DOT_STAR.
2507
2508 2009-08-25  Pedro Alves  <pedro@codesourcery.com>
2509
2510         * inferior.c (print_inferior): Align columns left.  Remove header
2511         for the the "current" column.  Rename column "Id" to "Num".
2512         Rename column "PID" to "Description".  Print if there's no selected
2513         inferior.
2514
2515 2009-08-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
2516
2517         Fix ia64 start crash when GDB built with -lmcheck.
2518         * ia64-tdep.c (ia64_gdbarch_init): Allocate TDEP as cleared.  Remove
2519         specific clearing of TDEP SIGCONTEXT_REGISTER_ADDRESS and
2520         PC_IN_SIGTRAMP.
2521
2522 2009-08-24  Keith Seitz  <keiths@redhat.com>
2523
2524         * c-exp.y (tokentab3): Add new token, ARROW_STAR. Changed all users.
2525         (tokentab2): Add new token, DOT_STAR. Changed all users.
2526
2527 2009-08-24  Keith Seitz  <keiths@redhat.com>
2528
2529         * symtab.c (default_make_symbol_completion_list): Keep
2530         ':', too, so that we can limit searches in namespaces
2531         and classes. 
2532
2533 2009-08-24  Tom Tromey  <tromey@redhat.com>
2534
2535         * python/python-value.c (valpy_richcompare): Don't return from
2536         inside a TRY_CATCH.
2537
2538 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2539
2540         * CONTRIBUTE: Bump documented Autoconf version.
2541         * configure.ac: Do not substitute datarootdir, htmldir,
2542         pdfdir, docdir.  Do not process --with-datarootdir,
2543         --with-htmldir, --with-pdfdir, --with-docdir.
2544         * configure: Regenerate.
2545
2546         * aclocal.m4: Regenerate.
2547         * config.in: Likewise.
2548         * configure: Likewise.
2549         * gnulib/Makefile.in: Likewise.
2550
2551         * configure.ac: Use AC_USE_SYSTEM_EXTENSIONS instead of
2552         AC_GNU_SOURCE, AC_AIX, AC_ISC_POSIX.
2553
2554 2009-08-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
2555
2556         * objfiles.h (gdb_bfd_ref): New prototype.
2557         * objfiles.c (gdb_bfd_ref): New function.
2558         (allocate_objfile): Call it.
2559         (gdb_bfd_unref): Adjust assertion.
2560         * solib.c (solib_map_sections): Add reference.
2561         (symbol_add_stub): Don't add reference here.
2562         * symfile.c (reread_symbols): Add reference.
2563
2564 2009-08-21  Ken Werner <ken@linux.vnet.ibm.com>
2565             Doug Evans  <dje@google.com>
2566
2567         * jit.c (jit_event_handler): Use paddress to print target addresses.
2568         Wrap printf string in _().
2569
2570 2009-08-21  Doug Evans  <dje@google.com>
2571
2572         * jit.c (jit_read_descriptor): New arg gdbarch, all callers updated.
2573         (jit_read_code_entry, jit_register_code): Ditto.
2574         (jit_event_handler): Ditto.
2575         (jit_inferior_init): Renamed from previous jit_inferior_created_hook.
2576         (jit_inferior_created_hook, jit_breakpoint_re_set): New functions.
2577         (jit_inferior_created_observer): Renamed from
2578         jit_inferior_created_hook1, all callers updated.
2579         * jit.h (jit_breakpoint_re_set): Declare.
2580         (jit_event_handler): Update prototype.
2581         * breakpoint.c (breakpoint_re_set): Call jit_breakpoint_re_set instead
2582         of jit_inferior_created_hook.
2583
2584 2009-08-21  Hui Zhu  <teawater@gmail.com>
2585
2586         * record.c (record_wait): Change the argument of
2587         record_beneath_to_wait to options.
2588
2589 2009-08-20  Jacob Potter  <jdpotter@google.com>
2590
2591         Replace dcache with splay tree.
2592         Remove partially implemented writeback support.
2593         * dcache.c: Include splay-tree.h.
2594         (LINE_SIZE_POWER): Change from 5 to 6.
2595         (DCACHE_SIZE): Change from 64 to 4096.
2596         (ENTRY_INVALID, ENTRY_VALID, ENTRY_DIRTY): Delete.
2597         (state_chars): Delete.
2598         (struct dcache_block): Clean up; remove state and anydirty fields.
2599         (struct dcache_struct): Redefine as a splay tree and linked list.
2600         (last_cache): Make static.
2601         (dcache_invalidate, dcache_hit): Rewrite for new cache structure.
2602         (dcache_read_line, dcache_alloc): Rewrite for new cache structure.
2603         (dcache_write_line): Delete.
2604         (dcache_writeback): Delete.
2605         (dcache_peek_byte): Clean up; remove "invalid" state check.
2606         (dcache_poke_byte): Rewrite for new cache structure; clarify comment.
2607         (dcache_splay_tree_compare): New function.
2608         (dcache_init, dcache_free): Rewrite for new cache structure.
2609         (dcache_xfer_memory): Rewrite for new write-through cache structure.
2610         (dcache_print_line): New function.
2611         (dcache_info): Rewrite for new cache structure.
2612         (_initialize_dcache): Update "info dcache" help text.
2613         * dcache.h (dcache_xfer_memory): Update declaration.
2614         * target.c (memory_xfer_partial): Update calls to dcache_xfer_memory.
2615
2616 2009-08-19  Reid Kleckner  <reid@kleckner.net>
2617
2618         Add interface for JIT code generation.
2619         * NEWS: Announce JIT interface.
2620         * Makefile.in (SFILES): Add jit.c.
2621         (HFILES_NO_SRCDIR): Add jit.h.
2622         (COMMON_OBS): Add jit.o.
2623         * jit.c: New file.
2624         * jit.h: New file.
2625         * breakpoint.h (enum bptype): Add bp_jit_event to enum.
2626         * breakpoint.c:
2627         (update_breakpoints_after_exec): Delete jit breakpoints after exec.
2628         (bpstat_what): Update event table for bp_jit_event.
2629         (print_it_typical): Added case for bp_jit_event.
2630         (print_one_breakpoint_location): Added case for bp_jit_event.
2631         (allocate_bp_location): Added case for bp_jit_event.
2632         (mention): Added case for bp_jit_event.
2633         (delete_command): Added case for bp_jit_event.
2634         (breakpoint_re_set_one): Added case for bp_jit_event.
2635         (breakpoint_re_set): Added call to jit_inferior_created_hook.
2636         (create_jit_event_breakpoint): New.
2637         * infrun.c (handle_inferior_event): Add handler for jit event.
2638         (follow_exec): Add call to jit_inferior_created_hook.
2639
2640 2009-08-19  Ulrich Weigand  <uweigand@de.ibm.com>
2641
2642         * value.c (enum internalvar_kind): Replace INTERNALVAR_SCALAR by
2643         INTERNALVAR_INTEGER and INTERNALVAR_POINTER.
2644         (union internalvar_data): Replace "scalar" member by "integer"
2645         and "pointer".
2646         (value_of_internalvar): Handle INTERNALVAR_INTEGER and
2647         INTERNALVAR_POINTER instead of INTERNALVAR_SCALAR.
2648         (get_internalvar_integer): Likewise.
2649         (set_internalvar): Likewise.
2650         (set_internalvar_integer): Likewise.
2651         (preserve_one_internalvar): Likewise.
2652         (value_from_pointer): Handle typedef'd pointer types.
2653
2654 2009-08-18  Tom Tromey  <tromey@redhat.com>
2655
2656         * utils.c (add_internal_problem_command): Free set_doc and
2657         show_doc.
2658         * remote.c (add_packet_config_cmd): Free set_doc and show_doc.
2659         * language.c (add_language): Free language_set_doc.
2660
2661 2009-08-18  Tom Tromey  <tromey@redhat.com>
2662
2663         * Makefile.in (ALL_TARGET_OBS): Remove prologue-value.o, solib.o.
2664
2665 2009-08-17  Ulrich Weigand  <uweigand@de.ibm.com>
2666
2667         * symfile.c (reread_symbols): Call objfiles_changed *before*
2668         calling clear_symtab_users.
2669
2670 2009-08-17  Michael Snyder  <msnyder@vmware.com>
2671
2672         * amd64-tdep.c: Add a frame unwinder for function epilogues.
2673         (amd64_in_function_epilogue_p): New function.
2674         (amd64_epilogue_frame_sniffer): New function.
2675         (amd64_epilogue_frame_cache): New function.
2676         (amd64_epilogue_frame_this_id): New function.
2677         (amd64_epilogue_frame_unwind): New struct frame_unwind.
2678         (amd64_init_abi): Hook the new unwinder.
2679
2680         * amd64-linux-tdep.c (amd64_linux_init_abi): Set gdbarch to use
2681         SVR4 method for skip_trampoline_code.
2682
2683 2009-08-17  Pedro Alves  <pedro@codesourcery.com>>
2684
2685         * objfiles.c (objfile_relocate): Relocate the entry point before
2686         relocating the section offsets.  Flush the section map before
2687         resetting breakpoints.
2688
2689 2009-08-14  Doug Evans  <dje@google.com>
2690
2691         * symfile.c (find_separate_debug_file): Remove double free of
2692         canon_name.
2693
2694 2009-08-14  Pedro Alves  <pedro@codesourcery.com>
2695
2696         * top.c (any_thread_of): Delete.
2697         (kill_or_detach): Use any_thread_of_process.
2698         * top.c (print_inferior_quit_action): New.
2699         (quit_confirm): Rewrite to print info about all inferiors.
2700         * target.c (dispose_inferior): New.
2701         (target_preopen): Use it.
2702
2703 2009-08-14  Pedro Alves  <pedro@codesourcery.com>
2704
2705         * ui-file.h (ui_file_xstrdup): Mention that the length argument
2706         may be NULL.
2707         * ui-file.c (ui_file_xstrdup): Don't dereference LENGTH if it is
2708         NULL.
2709         * aix-thread.c (aix_thread_extra_thread_info): Pass NULL as length
2710         parameter to ui_file_xstrdup.
2711         * arm-tdep.c (_initialize_arm_tdep): Ditto.
2712         * infrun.c (print_target_wait_results): Ditto.
2713         * language.c (add_language): Ditto.
2714         * linespec.c (cplusplus_error): Ditto.
2715         * remote.c (escape_buffer): Ditto.
2716         * typeprint.c (type_to_string): Ditto.
2717         * utils.c (error_stream): Ditto.
2718         * varobj.c (value_get_print_value): Ditto.
2719         * xtensa-tdep.c (xtensa_verify_config): Replace `dummy' local with
2720         `length' local.  Pass it to ui_file_xstrdup, and avoid an strlen
2721         call.
2722         * gdbarch.sh (verify_gdbarch): Ditto.
2723         * gdbarch.c: Regenerate.
2724         * cli/cli-setshow.c (do_setshow_command): Pass NULL as length
2725         parameter to ui_file_xstrdup.
2726         * python/python-frame.c (frapy_str): Ditto.
2727         * python/python-type.c (typy_str): Use the length local instead of
2728         calling strlen.
2729         * python/python-value.c (valpy_str): Pass NULL as length parameter
2730         to ui_file_xstrdup.
2731
2732 2009-08-13  Doug Evans  <dje@google.com>
2733
2734         * utils.c (gnu_debuglink_crc32): Store crc32_table as unsigned int
2735         instead of unsigned long.
2736
2737 2009-08-13  Tom Tromey  <tromey@redhat.com>
2738
2739         * varobj.c (update_dynamic_varobj_children): Don't use
2740         value_copy.
2741         * value.h: (preserve_one_value): Declare.
2742         (value_prepend_to_list, value_remove_from_list): Remove.
2743         * value.c (preserve_one_value): No longer static.
2744         (preserve_values): Call preserve_python_values.
2745         (value_prepend_to_list): Remove.
2746         (value_remove_from_list): Remove.
2747         * python/python.h (values_in_python): Don't declare.
2748         (preserve_python_values): Declare.
2749         * python/python-value.c (values_in_python): Change type.  Move
2750         lower.  Now static.
2751         (struct value_object): Add struct tag.
2752         <next, prev>: New fields.
2753         (valpy_dealloc): Update.
2754         (note_value): New function.
2755         (valpy_new): Use value_incref, note_value.
2756         (preserve_python_values): New function.
2757         (valpy_positive): Don't use value_copy.
2758         (value_to_value_object): Use value_incref, note_value.
2759         (convert_value_from_python): Update comment.
2760
2761 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
2762
2763         * remote.c (remote_pid_to_str): If printing a process id and we
2764         don't know what the remote pid could be, output "Remote target";
2765         otherwise, use normal_pid_to_str.
2766
2767 2009-08-13  Tom Tromey  <tromey@redhat.com>
2768
2769         * language.h (longest_raw_hex_string): Remove unused declaration.
2770
2771 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
2772
2773         PR gdb/8869:
2774
2775         * language.c (language, type, range, case_sensitive): Make const.
2776         (show_language_command): Don't call deprecated_show_value_hack.
2777         Special case "auto".
2778         (set_language_command): An unrecognized language is now an
2779         internal error instead of a user error.  Don't call set_lang_str.
2780         (show_type_command): Don't call deprecated_show_value_hack.
2781         Special case "auto".  Use warning.
2782         (set_type_command): An unrecognized type is now an internal error
2783         instead of a user error.  Output type check mismatch with language
2784         here.  Don't call set_type_str.
2785         (show_range_command): Don't call deprecated_show_value_hack.
2786         Special case "auto".  Use warning.
2787         (set_range_command): An unrecognized range check is now an
2788         internal error instead of a warning.  Output range check mismatch
2789         with language here.  Don't call set_range_str.
2790         (show_case_command): Don't call deprecated_show_value_hack.
2791         Special case "auto".  Use warning.
2792         (set_case_command): Don't call set_case_str.  An unrecognized case
2793         check is now an internal error instead of a warning.  Output range
2794         check mismatch with language here.  Don't call set_case_str.
2795         (set_type_range_case): Don't call set_type_str, set_range_str or
2796         set_case_str here.
2797         (set_lang_str, set_type_str, set_range_str, set_case_str): Delete.
2798         (add_language): Install or reinstall the "set language" command
2799         here, and make it an enum command.  Build the enumeration and the
2800         help string from the current list of known languages.
2801         (_initialize_language): Don't install "set language" here.  Make
2802         "set check type", "set check range" and "set case-sensitive" enum
2803         commands.  Register the "auto" "local" and "unknown" languages in
2804         that order.
2805
2806 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
2807
2808         Revert 2009-08-07 changes for PR gdb/8869:
2809
2810         * language.c (set_language_command): Strip whitespace.
2811         (set_type_command): Likewise.
2812         (set_range_command): Likewise.
2813
2814         * language.c (language_completer): New function.
2815         (range_or_type_completer): New function.
2816         (case_completer): New function.
2817         (_initialize_language): Set completers.
2818         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
2819         command.
2820         (add_setshow_string_noescape_cmd): Likewise.
2821         (add_setshow_integer_cmd): Likewise.
2822         (add_setshow_uinteger_cmd): Likewise.
2823         (add_setshow_zinteger_cmd): Likewise.
2824         (add_setshow_zuinteger_cmd): Likewise.
2825         * command.h (add_setshow_string_cmd,
2826         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
2827         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
2828
2829 2009-08-12  Michael Snyder  <msnyder@vmware.com>
2830
2831         * remote.c (remote_add_inferior): Remove unused local.
2832         (remote_add_thread): Ditto.
2833         (read_ptid): Ditto.
2834         (remote_current_thread): Ditto.
2835         (remote_stop_ns): Ditto.
2836         (remote_parse_stop_reply): Ditto.
2837         (remote_get_pending_stop_replies): Ditto.
2838         (remote_wait_ns): Ditto.
2839         (remote_wait_as): Ditto.
2840         (send_g_packet): Ditto.
2841         (remote_fetch_registers): Ditto.
2842         (store_register_using_P): Ditto.
2843         (remote_store_registers): Ditto.
2844         (remote_remove_breakpoint): Ditto.
2845         (remote_write_qxfer): Ditto.
2846         (remote_read_qxfer): Ditto.
2847
2848 2009-08-11  Tom Tromey  <tromey@redhat.com>
2849
2850         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Make a cleanup.
2851         (dwarf2_loc_desc_needs_frame): Likewise.
2852         * dwarf2expr.h (make_cleanup_free_dwarf_expr_context): Declare.
2853         * dwarf2expr.c (free_dwarf_expr_context_cleanup): New function.
2854         (make_cleanup_free_dwarf_expr_context): Likewise.
2855         * dwarf2-frame.c (execute_stack_op): Make a cleanup.
2856
2857 2009-08-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
2858
2859         * objfiles.c (gdb_bfd_unref): Use the bfd_usrdata accessor.
2860         * solib.c (symbol_add_stub): Likewise.
2861         * symfile.c (symfile_bfd_open): Assert BFD_USRDATA is NULL.
2862
2863 2009-08-10  Paul Pluzhnikov  <ppluzhnikov@google.com>
2864
2865         * objfiles.c (qsort_cmp): Remove assert.
2866         (preferred_obj_section): New function.
2867         (update_section_map): Filter duplicates.
2868         
2869 2009-08-10  Tristan Gingold  <gingold@adacore.com>
2870
2871         * solib-darwin.c (find_program_interpreter): Simplify the code by
2872         looking up for the load_dylinker command instead of reading the
2873         corresponding (but deprecated) section.
2874         (darwin_solib_create_inferior_hook): Adjust: do not free the
2875         interpreter path.
2876
2877 2009-08-10  Tristan Gingold  <gingold@adacore.com>
2878
2879         * i386-darwin-tdep.c (i386_m128_p): New function.
2880         (i386_darwin_arg_type_alignment): Ditto.
2881         (i386_darwin_push_dummy_call): Ditto.
2882         (i386_darwin_init_abi): Define Darwin specific push_dummy_call.
2883         Adjust long_double size.  Adjust pc offset in setjump buffer.
2884
2885 2009-08-10  Hui Zhu  <teawater@gmail.com>
2886
2887         Add Linux AMD64 process record support.
2888
2889         * amd64-linux-tdep.c (amd64_linux_record_tdep): New variable.
2890         This struct has the argument for the function
2891         "record_linux_system_call".
2892         (amd64_linux_syscall_record): New function. Parse the
2893         system call instruction and call function
2894         "record_linux_system_call" to record execute log.
2895         (i386_linux_init_abi): Initialize "amd64_linux_record_tdep".
2896         Set "amd64_linux_syscall_record" to "i386_syscall_record".
2897
2898 2009-08-10  Hui Zhu  <teawater@gmail.com>
2899
2900         Add process record Linux system call 64 bits support.
2901
2902         * linux-record.h (linux_record_tdep): Add size_pointer,
2903         size_size_t, size_iovec and arg6.  Change the values of
2904         size_int, size_long and size_ulong to
2905         gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
2906         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT,
2907         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT.
2908         * i386-linux-tdep.c (i386_linux_init_abi): Ditto.
2909         (i386_linux_intx80_sysenter_record): Add a check for system
2910         call number.
2911         * linux-record.c (record_linux_system_call): Make this
2912         function support 64 bits.
2913
2914 2009-08-10  Hui Zhu  <teawater@gmail.com>
2915
2916         Add AMD64 process record instruction set support.
2917
2918         * i386-tdep.h (gdbarch_tdep): Add record_regmap for registers
2919         because the AMD64's registers order in GDB is not same with
2920         I386 instructions.
2921         Add i386_syscall_record to be the syscall function handle
2922         interface.
2923         (record_i386_regnum): Number for record_regmap.
2924         * i386-tdep.c (OT_QUAD): For 64 bits.
2925         (i386_record_s): Add rex_x, rex_b, rip_offset and
2926         popl_esp_hack for AMD64 instruction set. And regmap for
2927         record_regmap.
2928         (i386_record_lea_modrm_addr): Support AMD64 instruction set
2929         64 bits lea.
2930         (i386_record_lea_modrm): Ditto.
2931         (i386_record_push): New function.  Record the execution log
2932         of push.
2933         (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the
2934         register.
2935         (i386_process_record): Support AMD64 instruction set.
2936         * amd64-tdep.c (amd64_record_regmap): For record_regmap.
2937         (amd64_init_abi): Set amd64_record_regmap to record_regmap.
2938
2939 2009-08-08  Pedro Alves  <pedro@codesourcery.com>
2940
2941         * bfd-target.c (struct target_bfd_data): New.
2942         (target_bfd_xfer_partial): Adjust to get at the section table from
2943         the new structure.
2944         (target_bfd_get_section_table): Ditto.
2945         (target_bfd_xclose): Ditto.  Get the bfd pointer from the
2946         target_bfd_data structure, from the section table.
2947         (target_bfd_reopen): Store a struct target_bfd_data in the
2948         target_ops to_data field, instead of a target_section_table.
2949
2950 2009-08-08  Aleksandar Ristovski  <aristovski@qnx.com>
2951             Hui Zhu  <teawater@gmail.com>
2952
2953         * record.c (record_store_registers): Remove unused variable.
2954
2955 2009-08-07  Tom Tromey  <tromey@redhat.com>
2956
2957         * language.c (set_language_command): Strip whitespace.
2958         (set_type_command): Likewise.
2959         (set_range_command): Likewise.
2960
2961 2009-08-07  Tom Tromey  <tromey@redhat.com>
2962
2963         PR gdb/8869:
2964         * language.c (language_completer): New function.
2965         (range_or_type_completer): New function.
2966         (case_completer): New function.
2967         (_initialize_language): Set completers.
2968         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
2969         command.
2970         (add_setshow_string_noescape_cmd): Likewise.
2971         (add_setshow_integer_cmd): Likewise.
2972         (add_setshow_uinteger_cmd): Likewise.
2973         (add_setshow_zinteger_cmd): Likewise.
2974         (add_setshow_zuinteger_cmd): Likewise.
2975         * command.h (add_setshow_string_cmd,
2976         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
2977         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
2978
2979 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
2980         
2981         gold/10400
2982         * dwarf2-frame.c (qsort_fde_cmp): Use stable sort.      
2983         
2984 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
2985
2986         * dwarf2-frame.c (struct dwarf2_cie): Remove 'next'.
2987         (struct dwarf2_cie_table): New.
2988         (struct dwarf2_fde): Remove 'next'.
2989         (struct dwarf2_fde_table): New.
2990         (struct comp_unit): Remove 'cie'.
2991         (bsearch_cie_cmp, bsearch_fde_cmp): New function.
2992         (find_cie, dwarf2_frame_find_fde): Use bsearch.
2993         (add_cie, add_fde): Use array instead of linked list.
2994         (decode_frame_entry, decode_frame_entry_1): New parameters.
2995         (qsort_fde_cmp): New function.
2996         (dwarf2_build_frame_info): Adjust.
2997         
2998 2009-08-06  Don Lee <don.lee@sunplusct.com>
2999
3000         * score-tdep.c: Support a new Sunplus CT S+core variant, S+core 3.
3001         * score-tdep.h: Ditto.
3002         * NEWS: Ditto.
3003         * configure.tgt: Test do we have a simulator.
3004         * MAINTAINERS: Add myself under target score
3005
3006 2009-08-06  Nick Roberts  <nickrob@snap.net.nz>
3007
3008         * utils.c (defaulted_query): Don't ask for confirmation if server
3009         prefix is used.
3010
3011 2009-08-05  Tom Tromey  <tromey@redhat.com>
3012
3013         * spu-tdep.h (SPUADDR_SPU): Cast result to int.
3014
3015 2009-08-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
3016
3017         * objfiles.h (OBJF_KEEPBFD): Delete.
3018         (gdb_bfd_unref): New prototype.
3019         * objfiles.c (gdb_bfd_unref): New function.
3020         (free_objfile): Call gdb_bfd_unref.
3021         * solib.c (free_so): Likewise.
3022         (symbol_add_stub): Set refcount.
3023
3024 2009-08-04  Hui Zhu  <teawater@gmail.com>
3025             Michael Snyder  <msnyder@vmware.com>
3026
3027         * record.c (record_mem_entry): New field 'mem_entry_not_accessible'.
3028         (record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'.
3029         (record_wait): Set 'mem_entry_not_accessible' flag if target
3030         memory not readable.  Don't try to change target memory if
3031         'mem_entry_not_accessible' is set.
3032
3033 2009-08-03  Richard Guenther  <rguenther@suse.de>
3034             Jan Kratochvil  <jan.kratochvil@redhat.com>
3035
3036         Fix memory corruption on reread of file through a symbolic link.
3037         * symfile.c (find_separate_debug_file): Initialize CANON_NAME earlier.
3038         Allocate DEBUGFILE with length based on CANON_NAME.  Free CANON_NAME on
3039         all the return paths.
3040
3041 2009-08-03  Jim Ingham  <jingham@apple.com>
3042             Vladimir Prus  <vladimir@codesourcery.com>
3043
3044         Implement -break-commands
3045
3046         * breakpoint.c (get_breakpoint, breakpoint_set_commands): New.
3047         (commands_command): Use breakpoint_set_commands.
3048         * breakpoint.h (get_breakpoint, breakpoint_set_commands): Declare.
3049
3050         * mi/mi-cmds.h (mi_cmd_break_commands): New.
3051         * mi/mi-cmds.c: Register -break-commands.
3052         * mi/mi-cmd-break.c (mi_cmd_break_commands, mi_read_next_line)
3053         (mi_command_line_array, mi_command_line_array_cnt)
3054         (mi_command_line_array_ptr): New.
3055
3056 2009-08-03  Jim Ingham  <jingham@apple.com>
3057             Vladimir Prus  <vladimir@codesourcery.com>
3058
3059         Refactor reading of commands
3060
3061         * defs.h (read_command_lines_1): Declare.
3062         * cli/cli-script.c (read_next_line): Only return string,
3063         do not process.
3064         (process_next_line): New, extracted from read_next_line.
3065         (recurse_read_control_structure): Take a function pointer to the
3066         read function.
3067         (get_command_line) Pass the read_next_line as reader function
3068         into recurse_read_control_structure.
3069         (read_command_lines_1): New, extracted from...
3070         (read_command_lines): ...here.
3071
3072 2009-07-31  Kazu Hirata  <kazu@codesourcery.com>
3073
3074         * procfs.c (proc_set_current_signal): Populate mysinfo before
3075         copying it to arg.
3076         (proc_clear_current_signal): Likewise.
3077         (proc_set_watchpoint): Populate pwatch before copying it to arg.
3078
3079 2009-07-31  Michael Snyder  <msnyder@vmware.com>
3080
3081         * remote.c (store_register_using_P): Call putpkt and getpkt
3082         directly instead of calling remote_send.
3083         (store_registers_using_G): Ditto.
3084         (fetch_register_using_p): Ditto.
3085
3086         * remote.c (store_register_using_P): Make error msg more verbose.
3087         (store_registers_using_G): Ditto.
3088         (fetch_register_using_p): Ditto.
3089
3090 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3091
3092         * spu-tdep.c: Include "infcall.h".
3093         (spu_address_class_type_flags): New function.
3094         (spu_address_class_type_flags_to_name): Likewise.
3095         (spu_address_class_name_to_type_flags): Likewise.
3096         (spu_pointer_to_address): Handle __ea pointers.
3097         (spu_auto_flush_cache_p): New static variable.
3098         (spu_objfile_from_frame): New function.
3099         (flush_ea_cache, spu_attach_normal_stop): Likewise.
3100         (show_spu_auto_flush_cache): Likewise.
3101         (spu_gdbarch_init): Install address class handlers.
3102         (_initialize_spu_tdep): Attach to normal_stop observer.
3103         Install "set spu auto-flush-cache" / "show spu auto-flush-cache"
3104         commands.
3105
3106         * NEWS: Mention "set/show spu auto-flush-cache" commands.
3107
3108 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3109
3110         * spu-tdep.c: Include "block.h".
3111         (setspucmdlist, showspucmdlist): New static variables.
3112         (spu_stop_on_load_p): Likewise.
3113         (spu_catch_start): New function.
3114         (show_spu_command, set_spu_command): New functions.
3115         (show_spu_stop_on_load): Likewise.
3116         (_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer.
3117         Install "set spu" / "show spu" prefix command handler.
3118         Install "set spu stop-on-load" / "show spu stop-on-load" command.
3119
3120         * NEWS: Mention "set/show spu stop-on-load" commands.
3121
3122 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3123
3124         * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h",
3125         "arch-utils.h", and "spu-tdep.h".
3126         (spu_context_objfile, spe_context_lm_addr, spe_context_offset):
3127         New static variables.
3128         (spe_context_cache_ptid, spe_context_cache_address): Likewise.
3129         (ppc_linux_spe_context_lookup): New function.
3130         (ppc_linux_spe_context_inferior_created): Likewise.
3131         (ppc_linux_spe_context_solib_loaded): Likewise.
3132         (ppc_linux_spe_context_solib_unloaded): Likewise.
3133         (ppc_linux_spe_context): Likewise.
3134         (struct ppu2spu_cache, struct ppu2spu_data): New data types.
3135         (ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register,
3136         ppu2spu_unwind_register, ppu2spu_sniffer,
3137         ppu2spu_dealloc_cache): New functions.
3138         (ppu2spu_unwind): New static variable.
3139         (ppc_linux_init_abi): Install cross-architecture unwinder.
3140         (_initialize_ppc_linux_tdep): Attach to observers.
3141
3142         * spu-tdep.c (struct spu2ppu_cache): New data type.
3143         (spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register,
3144         spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions.
3145         (spu2ppu_unwind): New static variable.
3146         (spu_gdbarch_init): Install cross-architecture unwinder.
3147
3148 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3149
3150         * target.h (enum strata): New value arch_stratum.
3151         * target.c (target_require_runnable): Skip arch_stratum targets.
3152
3153         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
3154         solib-spu.o and spu-multiarch.o to gdb_target_obs.
3155         * Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o.
3156         (ALLDEPFILES): Add solib-spu.c and spu-multiarch.c.
3157
3158         * solib-spu.c: New file.
3159         * solib-spu.h: New file.
3160         * spu-multiarch.c: New file.
3161
3162         * spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros.
3163
3164         * spu-tdep.c (struct gdbarch_tdep): New member id.
3165         (spu_gdbarch_id): New function.
3166         (spu_lslr): New function.
3167
3168         (spu_address_to_pointer): New function.
3169         (spu_pointer_to_address): Support SPU ID address encoding.  Use
3170         spu_gdbarch_id and spu_lslr.
3171         (spu_integer_to_address): Likewise.
3172         (spu_frame_unwind_cache): Update for encoded addresses.
3173         (spu_unwind_pc, spu_unwind_sp): Likewise.
3174         (spu_read_pc, spu_write_pc): Likewise.
3175         (spu_push_dummy_call): Likewise.
3176         (spu_software_single_step): Likewise.
3177         (spu_get_longjmp_target): Likewise.
3178         (spu_overlay_update_osect): Likewise.
3179
3180         (spu_dis_asm_print_address): New function.
3181         (gdb_print_insn_spu): Likewise.
3182
3183         (spu_gdbarch_init): Store SPU ID in tdep structure.
3184         Install spu_address_to_pointer and gdb_print_insn_spu.
3185
3186         * ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h"
3187         and "solib-spu.h".
3188         (ppc_linux_entry_point_addr): New static variable.
3189         (ppc_linux_inferior_created): New function.
3190         (ppc_linux_displaced_step_location): Likewise.
3191         (ppc_linux_init_abi): Enable Cell/B.E. support if supported
3192         by the target.
3193         (_initialize_ppc_linux_tdep): Attach to inferior_created observer.
3194
3195         * NEWS: Mention multi-architecture and Cell/B.E. debugging
3196         capabilities.
3197
3198 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3199
3200         * linux-nat.c: Include <sys/vfs.h>.
3201         (SPUFS_MAGIC): Define.
3202         (spu_enumerate_spu_ids): New function.
3203         (linux_proc_xfer_spu): New function.
3204         (linux_xfer_partial): Handle TARGET_OBJECT_SPU.
3205
3206         (iterate_over_spus): New function.
3207         (struct linux_spu_corefile_data): New data type.
3208         (linux_spu_corefile_callback): New function.
3209         (linux_spu_make_corefile_notes): New function.
3210         (linux_nat_make_corefile_notes): Call it.
3211
3212         * corelow.c (struct spuid_list): New data type.
3213         (add_to_spuid_list): New function.
3214         (core_xfer_partial): Handle TARGET_OBJECT_SPU.
3215
3216 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3217
3218         * features/Makefile: Allow sub-platform specific expedite settings.
3219         (WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l.
3220         (rs6000/powerpc-cell32l-expedite): Define.
3221         (rs6000/powerpc-cell64l-expedite): Likewise.
3222         * features/rs6000/powerpc-cell32l.xml: New file.
3223         * features/rs6000/powerpc-cell64l.xml: New file.
3224         * features/rs6000/powerpc-cell32l.c: New generated file.
3225         * features/rs6000/powerpc-cell64l.c: New generated file.
3226
3227         * regformats/rs6000/powerpc-cell32l.dat: New generated file.
3228         * regformats/rs6000/powerpc-cell64l.dat: New generated file.
3229
3230         * config/djgpp/fnchange.lst: Add mappings for new files.
3231
3232         * ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype.
3233         (tdesc_powerpc_cell64l): Likewise.
3234         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c"
3235         and "features/rs6000/powerpc-cell64l.c".
3236         (_initialize_ppc_linux_tdep): Initialize target descriptions.
3237         (ppc_linux_spu_section): New function.
3238         (ppc_linux_core_read_description): Detect Cell/B.E. core files.
3239         * ppc-linux-nat.c (PPC_FEATURE_CELL): Define.
3240         (ppc_linux_read_description): Detect Cell/B.E. architecture.
3241
3242         * rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize
3243         if exec file is not PowerPC architecture.
3244
3245 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3246
3247         * features/gdb-target.dtd (target): Accept optional
3248         <compatible> elements.
3249         (compatible): Define element.
3250
3251         * target-descriptions.h (tdesc_compatible_p): New.
3252         (tdesc_add_compatible): New.
3253         * target-descriptions.c (arch_p): New VEC_P type.
3254         (struct target_desc): New member compatible.
3255         (free_target_description): Handle it.
3256         (maint_print_c_tdesc_cmd): Likewise.
3257         (tdesc_compatible_p): New function.
3258         (tdesc_add_compatible): New function.
3259
3260         * xml-tdesc.c (tdesc_end_compatible): New function.
3261         (target_children): Handle <compatible> element.
3262
3263         * arch-utils.c (choose_architecture_for_target): Accept target
3264         description instead of BFD architecture as input.  Query target
3265         description for compatible architectures.
3266         (gdbarch_info_fill): Update call.
3267
3268         * NEWS: Mention <compatible> element of target descriptions.
3269
3270 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3271
3272         * breakpoint.c (remove_breakpoints): If removing one breakpoint
3273         location fails, still continue to remove other locations.
3274         (remove_hw_watchpoints): Likewise.
3275         (detach_breakpoints): Likewise.
3276
3277 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
3278
3279         * breakpoint.h (enum enable_state): Add bp_startup_disabled.
3280         (disable_breakpoints_before_startup): Add prototype.
3281         (enable_breakpoints_after_startup): Likewise.
3282
3283         * breakpoint.c (executing_startup): New static variable.
3284         (describe_other_breakpoints): Handle bp_startup_disabled.
3285         (check_duplicates_for): Likewise.
3286         (disable_breakpoints_before_startup): New function.
3287         (enable_breakpoints_after_startup): New function.
3288         (create_breakpoint): Mark new breakpoints as bp_startup_disabled
3289         if executing_startup flag is true.
3290         (break_command_really): Likewise.
3291         (breakpoint_re_set_one): Skip bp_startup_disabled breakpoints.
3292
3293 2009-07-31  Julian Brown  <julian@codesourcery.com>
3294
3295         * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h):
3296         Include files.
3297         (arm_linux_cleanup_svc, arm_linux_copy_svc): New.
3298         (cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New.
3299         (arm_linux_displaced_step_copy_insn): New.
3300         (arm_linux_init_abi): Initialise displaced stepping callbacks.
3301         * arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro.
3302         (ARM_NOP): New.
3303         (displaced_read_reg, displaced_in_arm_mode, branch_write_pc)
3304         (bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg)
3305         (insn_references_pc, copy_unmodified, cleanup_preload, copy_preload)
3306         (copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store)
3307         (cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm)
3308         (copy_alu_imm, cleanup_alu_reg, copy_alu_reg)
3309         (cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load)
3310         (cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb)
3311         (cleanup_block_load_all, cleanup_block_store_pc)
3312         (cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc)
3313         (copy_undef, copy_unpred): New.
3314         (decode_misc_memhint_neon, decode_unconditional)
3315         (decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte)
3316         (decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st)
3317         (decode_svc_copro, arm_process_displaced_insn)
3318         (arm_displaced_init_closure, arm_displaced_step_copy_insn)
3319         (arm_displaced_step_fixup): New.
3320         (arm_gdbarch_init): Initialise max insn length field.
3321         * arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New
3322         macros.
3323         (displaced_step_closure, pc_write_style): New.
3324         (arm_displaced_init_closure, displaced_read_reg)
3325         (arm_process_displaced_insn, arm_displaced_init_closure)
3326         (displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn)
3327         (arm_displaced_step_fixup): Add prototypes.
3328
3329 2009-07-31  Pedro Alves  <pedro@codesourcery.com>
3330             Julian Brown  <julian@codesourcery.com>
3331
3332         * infrun.c (displaced_step_fixup): If this is a software
3333         single-stepping arch, don't tell the target to single-step.
3334         (maybe_software_singlestep): Return 0 if we're using displaced
3335         stepping.
3336         (resume): If this is a software single-stepping arch, and
3337         displaced-stepping is enabled, use it for all single-step
3338         requests.
3339
3340 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3341
3342         * Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
3343         (AUTOCONF, configure_deps, AUTOHEADER): New variables.
3344         ($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
3345         (am--refresh): New rules.
3346         (stamp-h, config.status): List config.in and configure including
3347         $(srcdir)/ prefix.
3348         * aclocal.m4: Regenerate.
3349         * configure: Regenerate.
3350
3351 2009-07-30  Thomas Schwinge  <tschwinge@gnu.org>
3352
3353         * gnu-nat.c (add_task_commands) <stopped>: Register the correct
3354         callback function.
3355
3356 2009-07-30  H.J. Lu  <hongjiu.lu@intel.com>
3357
3358         * ia64-tdep.c (ia64_access_reg): Correct paddress.
3359
3360 2009-07-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
3361
3362         Replace public function varobj_list by all_root_varobjs iterator.
3363         * mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter):
3364         New.
3365         (mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs.
3366         Remove the variables rootlist, cr.  New variable data.
3367         * varobj.c (rootcount, varobj_list): Remove.
3368         (install_variable, uninstall_variable): Remove the rootcount updates.
3369         (all_root_varobjs): New function.
3370         (varobj_invalidate): Use the all_root_varobjs call.  Move the code to...
3371         (varobj_invalidate_iter): ... a new function.
3372         * varobj.h (varobj_list): Remove the prototype.
3373         (all_root_varobjs): New prototype.
3374
3375 2009-07-29  Paul Pluzhnikov  <ppluzhnikov@google.com>
3376
3377         PR gdb/6817
3378         * dbxread.c (read_dbx_symtab): Reduce stack use.
3379         
3380 2009-07-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
3381
3382         Fix gcc-4.5 HEAD warnings.
3383         * cp-name-parser.y (%union <typed_val_int>, %token GLOBAL)
3384         (GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>):
3385         Remove.
3386         (yylex <"global constructors keyed to ">)
3387         (yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL.
3388         (cp_comp_to_string): Remove variables str, prefix and buf.  Remove the
3389         GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling.
3390         (cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS
3391         handling.
3392
3393 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
3394
3395         * NEWS: Mention ARM VFP support.
3396         * target-descriptions.c (tdesc_register_type): Make public.
3397         (tdesc_unnumbered_register): New function.
3398         (tdesc_register_reggroup_p): Allow missing
3399         pseudo_register_reggroup_p.
3400         * target-descriptions.h (tdesc_register_type): Declare.
3401         (tdesc_unnumbered_register): Declare.
3402         * arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions.
3403         (arm_push_dummy_call): Use arm_neon_quad_write.
3404         (arm_neon_double_type, arm_neon_quad_type): New functions.
3405         (arm_register_type): Handle VFP and NEON registers.  Override the
3406         types of double-precision registers for NEON.  Disable FPA registers
3407         if they are not present.
3408         (arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers.
3409         (arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read.
3410         (arm_register_name): Handle VFP single and NEON quad registers.
3411         (arm_pseudo_read, arm_pseudo_write): New functions.
3412         (arm_gdbarch_init): Check for VFP and NEON in the target description.
3413         Assign numbers to double-precision registers.  Register VFP and NEON
3414         pseudo registers.  Remove a shadowed "i" variable.
3415         * arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and
3416         ARM_D31_REGNUM.
3417         (struct gdbarch_tdep): Add have_neon_pseudos, have_neon,
3418         have_vfp_registers, have_vfp_pseudos, neon_double_type,
3419         and neon_quad_type.
3420
3421         * features/Makefile: Make expedite settings only architecture
3422         specific.
3423         (WHICH): Add new ARM descriptions.
3424         * features/arm-with-neon.xml, features/arm-with-vfpv2.c,
3425         features/arm-with-vfpv3.c, features/arm-vfpv2.xml,
3426         features/arm-vfpv3.xml, features/arm-with-vfpv2.xml,
3427         features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files.
3428         * regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat,
3429         regformats/arm-with-vfpv3.dat: Generate.
3430
3431 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
3432
3433         * infrun.c (handle_inferior_event): Clear trap_expected after
3434         stepping past a single-step breakpoint.
3435
3436 2009-07-28  Joseph Myers  <joseph@codesourcery.com>
3437
3438         * arm-tdep.c (enum arm_vfp_cprc_base_type,
3439         arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char,
3440         arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate,
3441         arm_vfp_abi_for_function): New.
3442         (arm_push_dummy_call): Handle VFP ABI.
3443         (arm_extract_return_value, arm_store_return_value): Handle
3444         ARM_FLOAT_VFP case.
3445         (arm_return_value): Handle VFP ABI.
3446         (arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for
3447         EABI binaries.
3448
3449 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
3450
3451         * arch-utils.c (displaced_step_at_entry_point): Do not call
3452         gdbarch_convert_from_func_ptr_addr.
3453         * cris-tdep.c: Remove outdated comment.
3454         * infcall.c (call_function_by_hand): Do not call
3455         gdbarch_convert_from_func_ptr_addr after entry_point_address.
3456         * objfiles.c (entry_point_address): Call both
3457         gdbarch_convert_from_func_ptr_addr and
3458         gdbarch_addr_bits_remove.
3459
3460 2009-07-28  Aleksandar Ristovski  <aristovski@qnx.com>
3461
3462         * nto-tdep.c (nto_thread_state_str): New array.
3463         (nto_extra_thread_info): New function definition.
3464         * nto-tdep.h (gdbthread.h): New include.
3465         (private_thread_info): New struct.
3466         (nto_extra_thread_info): New declaration.
3467         * nto-procfs.c (procfs_thread_alive): Properly check if
3468         thread is still alive.
3469         (update_thread_private_data_name, update_thread_private_data): New
3470         function definition.
3471         (procfs_find_new_threads): Fetch thread private data.
3472         (init_procfs_ops): Register to_extra_thread_info.
3473
3474 2009-07-25  Pedro Alves  <pedro@codesourcery.com>
3475
3476         * stack.c (backtrace_command_1): Remove dead check of NULL current
3477         frame.
3478
3479 2009-07-23  Keith Seitz  <keiths@redhat.com>
3480
3481         * source.c (forward_search_command): Don't fclose the stream,
3482         just run the cleanups.
3483         (reverse_search_command): Likewise.
3484
3485 2009-07-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
3486
3487         * symtab.c (search_symbols): Add QUIT.
3488         
3489 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
3490
3491         * symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
3492         
3493 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
3494
3495         * objfiles.h (objfiles_changed): New prototype.
3496         * objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
3497         (allocate_objfile, free_objfile): Must rebuild section map.
3498         (objfile_relocate): Likewise.
3499         (update_section_map, find_pc_section): Adjust.
3500         (set_objfiles_updated_on_exe_change): Remove.
3501         (set_objfiles_updated_on_solib_activity): Remove.
3502         (_initialize_objfiles): Remove.
3503         (objfiles_changed): New function.
3504         * symfile.c (reread_symbols): Call objfiles_changed.    
3505         
3506 2009-07-22  Hui Zhu  <teawater@gmail.com>
3507
3508         * record.c (record_xfer_partial): Call error When nquery
3509         return "n".
3510
3511 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
3512         
3513         * objfiles.c (objfiles_updated_p): New variable.
3514         (qsort_cmp, bsearch_cmp, update_section_map): New function.
3515         (find_pc_section): Use bsearch.
3516         (set_objfiles_updated_on_exe_change): New function.
3517         (set_objfiles_updated_on_solib_activity): New function.
3518         (_initialize_objfiles): New function.
3519         
3520 2009-07-21 Michael Eager <eager@eagercon.com>
3521
3522         * features/rs6000/powerpc-405.xml: New.
3523         * rs6000-tdep.c: Add include & initialize for
3524         powerpc-405.c, add 405 to variants.
3525         * features/rs6000/powerpc-405.c: Generate.
3526
3527 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
3528
3529         * utils.c (internal_vproblem): Always print failure message.
3530
3531 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
3532             Vladimir Prus <vladimir@codesourcery.com>
3533
3534         * valops.c (value_fetch_lazy): Handle bitfields explicitly.
3535         (value_assign): Remove unnecessary FIXME.  Honor the container
3536         type of bitfields if possible.
3537         * value.c (struct value): Add parent field.
3538         (value_parent): New function.
3539         (value_free): Free the parent also.
3540         (value_copy): Copy the parent also.
3541         (value_primitive_field): Do not read the contents of a lazy
3542         value to create a child bitfield value.  Set bitpos and offset
3543         according to the container type if possible.
3544         (unpack_bits_as_long): Rename from unpack_field_as_long.  Take
3545         field_type, bitpos, and bitsize instead of type and fieldno.
3546         (unpack_field_as_long): Use unpack_bits_as_long.
3547         * value.h (value_parent, unpack_bits_as_long): New prototypes.
3548
3549 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
3550
3551         * value.c (struct value): Add reference_count field.
3552         (allocate_value_lazy): Initialize reference_count.
3553         (value_incref): New function.
3554         (value_free): Check the reference count.
3555         * value.h (value_incref): New prototype.
3556
3557 2009-07-20  Marc Khouzam  <marc.khouzam@ericsson.com>
3558
3559         * utils.c (defaulted_query): Update comment and remove dead code.
3560
3561 2009-07-20  Doug Evans  <dje@google.com>
3562
3563         Add support for "comdat types" from DWARF4.
3564         * dwarf2read.c (dwarf2_per_objfile): New member types,
3565         signatured_types.
3566         (TYPES_SECTION): New macro.
3567         (dwarf2_per_cu_data): Change size of length field from 30 bits
3568         to 29 bits.  New member from_debug_types.
3569         (signatured_type): New struct.
3570         (struct attribute): New union member signatured_type.
3571         (DW_SIGNATURED_TYPE): New macro.
3572         (dwarf2_attr_no_follow): New function.
3573         (read_type_unit_scope): New function.
3574         (follow_die_ref_or_sig, follow_die_sig): New functions.
3575         (dwarf2_locate_sectoins): Handle .debug_types.
3576         (dwarf2_build_psymtabs): Read .debug_types.
3577         (read_type_comp_unit_head): New function.
3578         (hash_type_signature, eq_type_signature): New functions.
3579         (create_debug_types_hash_table): New function.
3580         (lookup_signatured_type): New function.
3581         (process_psymtab_comp_unit): Handle type units too.
3582         (process_type_comp_unit, build_type_psymtabs): New functions.
3583         (dwarf2_build_psymtabs_hard): Call build_type_psymtabs.
3584         (load_partial_comp_unit): Assert not called for a type unit.
3585         (skip_one_die): Handle DW_FORM_sig8.
3586         (queue_comp_unit): Don't call load_full_comp_unit here, or
3587         update read_in_chain.
3588         (psymtab_to_symtab_1): Call read_signatured_type_at_offset for
3589         type units, or load_full_comp_unit for comp units after
3590         queue_comp_unit returns.
3591         (load_full_comp_unit): Assert not called for type units.
3592         (load_full_comp_unit): Update read_in_chain here.
3593         (process_die): Handle DW_TAG_type_unit.
3594         (read_structure_type): Look for signatured types.
3595         (read_enumeration_type): Ditto.
3596         (init_cu_die_reader): Handle .debug_types.
3597         (read_comp_unit): Assert hash not computed yet.
3598         (read_die_and_children): Expand debugging printf to handle .debug_types.
3599         (read_partial_die): Handle DW_TAG_type_unit:
3600         (find_patial_die): Handle .debug_types.
3601         (read_attribute_value): Handle DW_FORM_sig8.
3602         (die_type): Call follow_die_ref_or_sig instead of follow_die_ref.
3603         (die_containing_type): Ditto.
3604         (dwarf_tag_name): Handle DW_TAG_type_unit.
3605         (dwarf_attr_name): Handle DW_AT_signature.
3606         (dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc,
3607         DW_FORM_flag_present, DW_FORM_sig8.
3608         (dump_die_shallow): Handlel DW_FORM_sig8.
3609         (maybe_queue_comp_unit): Change return type to int from void.
3610         All callers updated.
3611         (follow_die_ref): Handle .debug_types.
3612         (lookup_signatured_type_at_offset): New function.
3613         (read_signatured_type_at_offset): New function.
3614         (read_signatured_type): New function.
3615
3616 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
3617
3618         * arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT
3619         if the macro is defined.
3620
3621 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
3622
3623         * features/gdb-target.dtd (target): Accept an optional 'osabi'
3624         element.
3625         (osabi): Define element.
3626         * features/mips-linux.xml (target): Add an osabi subelement set to
3627         GNU/Linux.
3628         * regformats/regdat.sh (xmlarch, xmlosabi): New variables.  Don't
3629         write the architecture into $xmltarget.  Store it in $xmlarch.
3630         Handle the 'osabi' type.  Handle outputting the osabi element of
3631         the target description.
3632         * regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux.
3633         * regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux.
3634
3635         * target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare.
3636         * target-descriptions.c (struct target_desc) <osabi>: New field.
3637         (tdesc_osabi): New function.
3638         (set_tdesc_osabi): New function.
3639         * xml-tdesc.c: Include osabi.h.
3640         (tdesc_end_osabi): New.
3641         (target_children): Parse "osabi" elements.
3642         * arch-utils.c (gdbarch_info_fill): Try to get the osabi from the
3643         target description if the user didn't override it or it is not
3644         extractable from the bfd.  If that still fails, fallback to the
3645         configured in default.
3646         * osabi.h (osabi_from_tdesc_string): Declare.
3647         * osabi.c (osabi_from_tdesc_string): New.
3648         (gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of
3649         GDB_OSABI_DEFAULT.
3650
3651         * NEWS: Mention that target descriptions can now describe the
3652         target OS ABI.
3653
3654 2009-07-20  Mike Frysinger  <vapier@gentoo.org>
3655
3656         * configure.ac (AC_CHECK_FUNCS): Check for pipe.
3657         * config.in, configure: Regenerate.
3658         * tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE.
3659
3660 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
3661
3662         * gnu-nat.c: Include "inf-child.h".
3663         (gnu_mourn_inferior): Use the passed in target_ops
3664         instead of the gnu_ops global.
3665         (gnu_create_inferior): Inline `attach_to_child', use the passed in
3666         target_ops instead of the gnu_ops global.
3667         (gnu_can_run): Delete.
3668         (gnu_attach): Use the passed in target_ops instead of the gnu_ops
3669         global.
3670         (gnu_detach): Ditto.
3671         (gnu_prepare_to_store, gnu_open): Delete.
3672         (gnu_store_registers, gnu_fetch_registers): Delete declarations.
3673         (gnu_ops): Delete.
3674         (init_gnu_ops): Delete.
3675         (gnu_target): New.
3676         (_initialize_gnu_nat): Don't call init_gnu_ops or add_target here.
3677         * gnu-nat.h (gnu_target): Declare.
3678         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make
3679         static.
3680         (_initialize_i386gnu_nat): New.
3681
3682 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
3683
3684         * dwarf2loc.c (find_location_expression): Retrieve beginning and
3685         ending address offsets in location list entries as integers,
3686         not as addresses.
3687
3688 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
3689
3690         * infrun.c (wait_for_inferior): Invalidate registers and overlay
3691         cache every time before calling target_wait.
3692         (handle_inferior_event): Make static. Always reset waiton_ptid.
3693         Never call registers_changed.
3694         (prepare_to_wait): Do not invaliate registers or overlay cache
3695         (moved to wait_for_inferior).  Do not reset waiton_ptid (moved
3696         to handle_inferior_event).
3697         (fetch_inferior_event): Remove check for always-true condition.  
3698
3699 2009-07-20  Thomas Schwinge  <tschwinge@gnu.org>
3700
3701         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to
3702         2009-02-23 target_ops changes.
3703
3704 2009-07-18  Michael Snyder  <msnyder@vmware.com>
3705
3706         * infrun.c (handle_inferior_event): Remove an execution_direction
3707         check in the "check for subroutine calls" test, and add some 
3708         additional handling for reverse-stepping through shared libraries.
3709
3710 2009-07-18  Anthony Green  <green@moxielogic.com>
3711
3712         * moxie-tdep.c (moxie_analyze_prologue): Take gdbarch as last
3713         parameter instead of frame_info.
3714         (moxie_frame_cache): Call moxie_analyze_prologue with different
3715         args.
3716
3717 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
3718
3719         * solib.c (solib_bfd_open): Do not call ops->bfd_open.
3720         (solib_map_sections): Call ops->bfd_open instead of solib_bfd_open.
3721         * solib-frv.c (_initialize_frv_solib): Initialize bfd_open member.
3722         * solib-irix.c (_initialize_irix_solib): Likewise.
3723         * solib-null.c (_initialize_null_solib): Likewise.
3724         * solib-osf.c (_initialize_osf_solib): Likewise.
3725         * solib-pa64.c (_initialize_pa64_solib): Likewise.
3726         * solib-som.c (_initialize_som_solib): Likewise.
3727         * solib-sunos.c (_initialize_sunos_solib): Likewise.
3728         * solib-svr4.c (_initialize_svr4_solib): Likewise.
3729         * solib-target.c (_initialize_solib_target): Likewise.
3730
3731 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
3732
3733         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag.
3734
3735 2009-07-16  Doug Evans  <dje@google.com>
3736
3737         * linux-thread.db.c (try_thread_db_load_1): Tweak comment.
3738
3739 2007-07-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
3740
3741         * linux-thread-db.c (thread_db_find_new_threads_silently):
3742         New function.
3743         (try_thread_db_load_1): Call it.
3744
3745 2009-07-15  Doug Evans  <dje@google.com>
3746
3747         Code reorg in preparation for adding comdat types support.
3748         * dwarf2read.c (struct die_reader_specs): New struct.
3749         (locate_pdi_sibling): New arg buffer.  All callers updated.
3750         (load_partial_dies, read_partial_die): Ditto.
3751         (read_8_bytes): Change return type to ULONGEST.
3752         (read_comp_unit): Delete arg abfd.  All callers updated.
3753         (read_die_and_children_1): Delete args abfd, cu.  New arg reader.
3754         All callers updated.
3755         (read_die_and_children, read_die_and_siblings): Ditto.
3756         (read_full_die): Ditto.  Move closer to callers.
3757         (skip_one_die): New arg buffer.  All callers updated.
3758         (load_full_comp_unit): Change return type to void.  All callers
3759         updated.
3760         (partial_read_comp_unit_head): New args buffer, buffer_size.
3761         All callers updated.
3762         (process_psymtab_comp_unit): New function, split out from
3763         dwarf2_build_psymtabs_hard.
3764         (dwarf2_build_psymtabs_hard): Call it.
3765         (load_partial_comp_unit): Renamed from load_comp_unit.
3766         All callers updated.
3767         (skip_children): New arg buffer.  All callers updated.
3768         (init_cu_die_reader): New function.
3769         (is_ref_attr): New function.
3770         (dwarf2_get_ref_die_offset): Call it.
3771         (alloc_one_comp_unit): New function.
3772
3773 2009-07-14  Stan Shebs  <stan@codesourcery.com>
3774
3775         * MAINTAINERS (Global Maintainers): Add Doug Evans.
3776
3777 2009-07-14  Stan Shebs  <stan@codesourcery.com>
3778
3779         Conditional tracepoints.
3780         * ax-gdb.h (gen_eval_for_expr): Declare.
3781         * ax-gdb.c (gen_expr): Generate bytecodes for BINOP_EQUAL
3782         and other comparisons.
3783         (gen_eval_for_expr): New function.
3784         (agent_eval_command): New maintenance command.
3785         (_initialize_ax_gdb): Define the command.
3786         * remote.c (struct remote_state): New field cond_tracepoints.
3787         (PACKET_ConditionalTracepoints): New packet config type.
3788         (remote_cond_tracepoint_feature): New function.
3789         (remote_protocol_features): Add ConditionalTracepoints.
3790         (remote_supports_cond_tracepoints): New function.
3791         (_initialize_remote): Add ConditionalTracepoints.
3792         * tracepoint.c (download_tracepoint): Add conditional.
3793         * NEWS: Mention conditional tracepoints.
3794
3795 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
3796
3797         * objfiles.c (objfile_relocate): Do not relocate the same
3798         BLOCKVECTOR_MAP address map multiple times.
3799
3800 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
3801
3802         * remote.c (process_stop_reply): Access expedited target registers
3803         in target_gdbarch.
3804
3805 2009-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
3806
3807         Fix memory access from signed 32bit inferior registers on 64bit GDB.
3808         * linux-nat.c (linux_xfer_partial <TARGET_OBJECT_MEMORY>): New variable
3809         addr_bit.  Mask OFFSET by the ADDR_BIT width.
3810
3811 2009-07-13  Anthony Green  <green@moxielogic.com>
3812
3813         * moxie-tdep.c (moxie_gdbarch_init): Call
3814         set_gdbarch_process_record.
3815         (moxie_process_record): New.
3816         (moxie_process_readu): New.
3817
3818 2009-07-12  Michael Snyder  <msnyder@vmware.com>
3819
3820         * i386-tdep.c: Add a frame unwinder for function epilogues.
3821         (i386_in_function_epilogue_p): New function.
3822         (i386_epilogue_frame_sniffer): New function.
3823         (i386_epilogue_frame_cache): New function.
3824         (i386_epilogue_frame_this_id): New function.
3825         (i386_epilogue_frame_unwind): New struct frame_unwind.
3826         (i386_gdbarch_init): Hook the new unwinder.
3827
3828 2009-07-11  Hui Zhu  <teawater@gmail.com>
3829
3830         * cli/cli-cmds.c (disassemble_command): Add a new modifier /r
3831         to "disassemble" command to print the raw instructions in hex as
3832         well as in symbolic form.
3833         (init_cli_cmds): Ditto.
3834         (print_disassembly): Change "mixed" to "flags" to translate
3835         the behavior of disassemble.
3836         (disassemble_current_function): Ditto.
3837         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
3838         * stack.c (gdb_disassembly_stub): Ditto.
3839         * disasm.c (do_mixed_source_and_assembly): Ditto.
3840         (do_mixed_source_and_assembly): Ditto.
3841         (do_assembly_only): Ditto.
3842         (gdb_disassembly): Ditto.
3843         (dump_insns): print the raw instructions in hex as well as in
3844         symbolic form if DISASSEMBLY_RAW_INSN and flags is true.
3845         * disasm.h (DISASSEMBLY_SOURCE): Include source code with the
3846         assembly if it and flags is true.
3847         (DISASSEMBLY_RAW_INSN): Include the raw instructions in hex with
3848         the assembly if it and flags is true.
3849         (gdb_disassembly): Update extern.
3850         * NEWS: Document disassemble/r support.
3851
3852 2009-07-10  Tom Tromey  <tromey@redhat.com>
3853
3854         * dwarf2-frame.c: Include dwarf2.h, not elf/dwarf2.h.
3855         * dwarf2expr.c: Likewise.
3856         * dwarf2loc.c: Likewise.
3857         * dwarf2read.c: Likewise.
3858         * sh-tdep.c: Likewise.
3859         * xtensa-tdep.c: Likewise.
3860
3861 2009-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
3862
3863         Tidy up the code.
3864         * mi/mi-cmd-var.c (mi_cmd_var_update): Remove variable nv.  Move
3865         variables var, rootlist and cr to their local sub-block.  Move the
3866         make_cleanup_ui_out_tuple_begin_end, make_cleanup_ui_out_list_begin_end
3867         and do_cleanups calls to the common base block.  Remove the zero NV
3868         check.
3869
3870 2009-07-10 Phil Muldoon  <pmuldoon@redhat.com>
3871
3872         * python/python-internal.h (apply_varobj_pretty_printer): Update
3873         definition.
3874         (python_string_to_target_python_string): Add definition.
3875         * python/python-utils.c (unicode_to_encoded_python_string)
3876         (unicode_to_target_python_string)
3877         (python_string_to_target_python_string): New Functions.
3878         * python/python-prettyprint.c (pretty_print_one_value): Likewise.
3879         (print_string_repr): Refactor to logic to account for PyObject
3880         returned strings.
3881         (apply_varobj_pretty_printer): Likewise.
3882         * python/python-value.c (valpy_string): Parse length keyword. Use
3883         length keyword in LA_GET_STRING.
3884         * varobj.c (value_get_print_value): Refactor logic to account for
3885         PyObject returned strings.
3886         * c-lang.c (c_get_string): If the length parameter is specified,
3887         use that. Return value in characters. Update comments.
3888         * language.h: Update c_get_string prototype comments.
3889
3890 2009-07-09  Doug Evans  <dje@google.com>
3891
3892         * i386-tdep.c (i386_displaced_step_fixup): Fix order of arguments
3893         to read_memory_unsigned_integer.
3894
3895 2009-07-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
3896
3897         Report error on inaccessible memory.
3898         * cli/cli-dump.c: Include gdbcore.h.
3899         (dump_memory_to_file): Call read_memory instead of target_read_memory.
3900
3901 2009-07-09  Hui Zhu  <teawater@gmail.com>
3902
3903         * solib.c (solib_bfd_open): Output a warning if solib's
3904         architecture is not compatible with inferior's architecture.
3905
3906 2009-07-09  Ulrich Weigand  <uweigand@de.ibm.com>
3907             Jan Kratochvil  <jan.kratochvil@redhat.com>
3908
3909         * target.h (struct target_ops <to_thread_architecture>): Describe it.
3910         (target_thread_architecture): Refer to to_thread_architecture.
3911
3912 2009-07-08  Pierre Muller  <muller@ics.u-strasbg.fr>
3913
3914         * cli/cli-cmds.c (init_cli_cmds): Add "inf" alias for "info" command.
3915
3916 2009-07-07  Ulrich Weigand  <uweigand@de.ibm.com>
3917
3918         * tui/tui-stack.c (tui_make_status_line): Display PC as ?? if unknown.
3919
3920 2009-07-07  Pierre Muller  <muller@ics.u-strasbg.fr>
3921
3922         * breakpoint.c (set_raw_breakpoint): Remove static modifier.
3923
3924 2009-07-07  Tom Tromey  <tromey@redhat.com>
3925
3926         * c-lang.c (convert_octal): Only allow 3 octal digits.
3927         (print_wchar): Prefer 3-digit octal form.  Fall back to hex if
3928         needed.
3929         * c-exp.y (c_parse_escape): Only allow 3 octal digits.
3930
3931 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
3932
3933         * python/python-value.c (valpy_getitem): Remove incorrect assert.
3934         
3935 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
3936
3937         * python/python-value.c (valpy_getitem): Don't return from TRY_CATCH.
3938
3939 2009-07-07  Sami Wagiaalla  <swagiaal@redhat.com>
3940
3941         * cp-support.h (struct using_direct): Rename members inner and
3942         outer to import_src, and import_dest respectively.
3943         * cp-namespace.c (cp_add_using_directive): Update.
3944         (cp_add_using): Update.
3945         (cp_copy_usings): Update.
3946         (cp_lookup_symbol_namespace): Update.
3947         (cp_scan_for_anonymous_namespaces): Update.
3948         * cp-support.c (make_symbol_overload_list_using): Update.
3949         * cp-support.h (cp_add_using_directive, cp_add_using): Rename
3950         arguments from inner and outer to src and dest respectively.
3951         * cp-namespace.c (cp_add_using_directive): Ditto.
3952         (cp_add_using): Ditto.
3953
3954 2009-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3955
3956         * mi/mi-cmd-var.c (mi_cmd_var_update): Replace a while loop by for loop.
3957         * varobj.c (varobj_invalidate): Replace a while loop by for loop.
3958
3959 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
3960
3961         Fix hang in floating varobjs.
3962
3963         * varobj.c (varobj_invalidate): Advance to next
3964         element when processing floating varobj.
3965
3966 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
3967
3968         * varobj.c: Remove unnecessary include.
3969
3970 2009-07-07  Tristan Gingold  <gingold@adacore.com>
3971
3972         * config/i386/darwin.mh (NATDEPFILES): Remove excServer.o.
3973         Remove excServer.c target.  Remove _all target.
3974         * darwin.defs: Removed.
3975
3976 2009-07-06  Aleksandar Ristovski  <aristovski@qnx.com>
3977
3978         * configure.tgt (i[34567]86-*-nto*): Add build_gdbserver=yes.
3979
3980 2009-07-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
3981
3982         * source.c (find_and_open_source): Remove the `objfile' parameter.
3983         Update the function comment.
3984         (open_source_file, symtab_to_fullname, psymtab_to_fullname): Update the
3985         find_and_open_source callers.
3986
3987 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
3988
3989         * coff-pe-read.c (read_pe_exported_syms): Recognize
3990         "pe-arm-wince-little" and "pei-arm-wince-little" bfd targets as PE
3991         targets.
3992
3993 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
3994
3995         * arm-wince-tdep.c (arm_wince_skip_main_prologue): New.
3996         (arm_wince_init_abi): Register it as gdbarch_skip_main_prologue
3997         callback.
3998
3999 2009-06-29  Tristan Gingold  <gingold@adacore.com>
4000
4001         * i386-darwin-tdep.c (amd64_darwin_thread_state_reg_offset)
4002         (amd64_darwin_thread_state_num_regs)
4003         (amd64_darwin_sigcontext_addr, x86_darwin_init_abi_64): Moved to
4004         amd64-darwin-tdep.c
4005         (_initialize_i386_darwin_tdep): Remove 64 bits parts.
4006         (darwin_dwarf_signal_frame_p): Make public.
4007         * amd64-darwin-tdep.c: New file with most chunks from
4008         i386-darwin-tdep.c      
4009         * i386-darwin-tdep.h: Add a prototype for darwin_dwarf_signal_frame_p.
4010         (amd64_darwin_thread_state_reg_offset)
4011         (amd64_darwin_thread_state_num_regs): Moved to amd64-darwin-tdep.h
4012         * amd64-darwin-tdep.h: New file.
4013         * i386-darwin-nat.c: Only includes amd64-nat.h and amd64-darwin-tdep.h
4014         if BFD64 is defined.
4015         (i386_darwin_fetch_inferior_registers): Add #ifdef BFD64/#endif around
4016         64 bits parts.
4017         (i386_darwin_store_inferior_registers): Ditto.
4018         (darwin_set_sstep): Ditto.
4019         (darwin_complete_target): Ditto.
4020         (amd64_darwin_sstep_at_sigreturn): Ditto.
4021         * configure.tgt: Create a separate entry for x86_64-*-darwin.
4022         Add 64 bits support for i386-*-darwin if --enable-64-bit-bfd.
4023         * Makefile.in (ALLDEPFILES): Add amd64-darwin-tdep.c, darwin-nat.c,
4024         i386-darwin-tdep.c i386-darwin-nat.c
4025         (ALL_64_TARGET_OBS): Add amd64-darwin-tdep.o
4026         
4027 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
4028
4029         * linux-fork.c (forks_exist_p): Drop unnecessary extern.
4030         (add_fork, linux_fork_killall, linux_fork_mourn_inferior)
4031         (linux_fork_detach): Ditto.
4032         (delete_fork_command): Rename to ...
4033         (delete_checkpoint_command): ... this.
4034         (detach_fork_command): Rename to ...
4035         (detach_checkpoint_command): ... this.
4036         (info_forks_command): Rename to ...
4037         (info_checkpoints_command): ... this.
4038         (_initialize_linux_fork): Remove stale comments.  Adjust.
4039
4040 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
4041
4042         * linux-nat.c (linux_child_follow_fork): If we're staying attached
4043         to the child process, enable event reporting on it.  Don't handle
4044         checkpoints here.  Instead, add the child fork to the lwp thread
4045         and inferior lists without clobbering the previous inferior.  Let
4046         the thread_db layer learn about a new child process, even if
4047         following the parent.
4048         (linux_nat_switch_fork): Delete lwps of the current inferior only,
4049         instead of clearing the whole list.  Use thread_change_ptid to
4050         give the core the illusion the new checkpoint is still the same
4051         inferior.  Clear the register cache.
4052         (linux_handle_extended_wait): Handle checkpoints here.
4053         (linux_multi_process): Turn on.
4054         * linux-fork.c (struct fork_info) <pc>: Remove field.
4055         (init_fork_list): Do not delete the checkpoint from the inferior
4056         list (it is not there).
4057         (fork_load_infrun_state): Don't switch inferior_ptid here.  Pass
4058         the new checkpoint's ptid to linux_nat_switch_fork.
4059         (fork_save_infrun_state): Make static.  Don't stop the pc field of
4060         fork_info, it's gone.
4061         (linux_fork_mourn_inferior): Don't delete the checkpoint from the
4062         inferior list, it's not there.
4063         (linux_fork_detach): Ditto.
4064         (delete_fork_command): Replace mention of fork/checkpoint by
4065         checkpoint only.
4066         (detach_fork_command): Likewise.  Don't delete the checkpoint from
4067         the inferior list.
4068         (info_forks_command): Adjust.
4069         (restore_detach_fork): Delete.
4070         (checkpointing_pid): New.
4071         (linux_fork_checkpointing_p): New.
4072         (save_detach_fork): Delete.
4073         (checkpoint_command): Delete temp_detach_fork.  Don't remove
4074         breakpoints, that's a nop.  Store the pid of the process we're
4075         checkpointing, and use make_cleanup_restore_integer to restore it.
4076         Don't reinsert breakpoints here.
4077         (process_command, fork_command): Delete.
4078         (restart_command): Update comments to only mention checkpoints,
4079         not forks.
4080         (_initialize_linux_fork): Delete "fork", "process", "info forks"
4081         commands.
4082         * linux-fork.h (fork_save_infrun_state, fork_list): Delete
4083         declarations.
4084         (linux_fork_checkpointing_p): Declare.
4085         * cli/cli-cmds.c (killlist): New.
4086         * cli/cli-cmds.h (killlist): Declare.
4087         * gdbcmd.h (killlist): Declare.
4088         * inferior.c: Include "gdbthread.h".
4089         (detach_inferior_command, kill_inferior_command)
4090         (inferior_command): New.
4091         (info_inferiors_command): Allow specifying a specific inferior id.
4092         (_initialize_inferiors): Register "inferior", "kill inferior" and
4093         "detach inferior" commands.
4094         * infcmd.c (_initialize_infcmd): Make "kill" a prefix command.
4095         * gdbthread.h (any_thread_of_process): Declare.
4096         * thread.c (any_thread_of_process): New.
4097
4098         * NEWS: Mention multi-inferior debugging.  Mention 'info
4099         inferiors', 'inferior', 'detach inferior' and 'kill inferior' as
4100         new commands.
4101         (Removed commands): New section, mentioning that 'info forks',
4102         'fork', 'process', 'delete fork' and 'detach fork' are now gone.
4103
4104 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4105
4106         * gdbarch.sh (current_gdbarch): Remove global variable.
4107         (find_arch_by_info): Remove, inline into ...
4108         (gdbarch_find_by_info): ... this.  Remove current_gdbarch swapping.
4109         (deprecated_current_gdbarch_select_hack): Rename to ...
4110         (deprecated_target_gdbarch_select_hack): ... this.  Do not set
4111         or access current_gdbarch.
4112         * gdbarch.c, gdbarch.h: Regenerate.
4113
4114         * arch-utils.c (gdbarch_update_p): Update call.
4115         (set_gdbarch_from_file): Likewise.
4116
4117 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4118
4119         * defs.h (extract_signed_integer, extract_unsigned_integer,
4120         extract_long_unsigned_integer, store_signed_integer,
4121         store_unsigned_integer): Add BYTE_ORDER parameter.
4122         * findvar.c (extract_signed_integer, extract_unsigned_integer,
4123         extract_long_unsigned_integer, store_signed_integer,
4124         store_unsigned_integer): Add BYTE_ORDER parameter.  Use it
4125         instead of current_gdbarch.
4126
4127         * gdbcore.h (read_memory_integer, safe_read_memory_integer,
4128         read_memory_unsigned_integer, write_memory_signed_integer,
4129         write_memory_unsigned_integer): Add BYTE_ORDER parameter.
4130         * corefile.c (struct captured_read_memory_integer_arguments): Add
4131         BYTE_ORDER member.
4132         (safe_read_memory_integer): Add BYTE_ORDER parameter.  Store it into
4133         struct captured_read_memory_integer_arguments.
4134         (do_captured_read_memory_integer): Pass it to read_memory_integer.
4135         (read_memory_integer): Add BYTE_ORDER parameter.  Pass it to
4136         extract_signed_integer.
4137         (read_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it to
4138         extract_unsigned_integer.
4139         (write_memory_signed_integer): Add BYTE_ORDER parameter.  Pass it
4140         to store_signed_integer.
4141         (write_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it
4142         to store_unsigned_integer.
4143
4144         * target.h (get_target_memory_unsigned): Add BYTE_ORDER parameter.
4145         * target.c (get_target_memory_unsigned): Add BYTE_ORDER parameter.
4146         Pass it to extract_unsigned_integer.
4147
4148
4149         Update calls to extract_signed_integer, extract_unsigned_integer,
4150         extract_long_unsigned_integer, store_signed_integer,
4151         store_unsigned_integer, read_memory_integer,
4152         read_memory_unsigned_integer, safe_read_memory_integer,
4153         write_memory_signed_integer, write_memory_unsigned_integer, and
4154         get_target_memory_unsigned to pass byte order:
4155         * ada-lang.c (ada_value_binop): Update.
4156         * ada-valprint.c (char_at): Update.
4157         * alpha-osf1-tdep.c (alpha_osf1_sigcontext_addr): Update.
4158         * alpha-tdep.c (alpha_lds, alpha_sts, alpha_push_dummy_call,
4159         alpha_extract_return_value, alpha_read_insn,
4160         alpha_get_longjmp_target): Update.
4161         * amd64-linux-tdep.c (amd64_linux_sigcontext_addr): Update.
4162         * amd64obsd-tdep.c (amd64obsd_supply_uthread,
4163         amd64obsd_collect_uthread, amd64obsd_trapframe_cache): Update.
4164         * amd64-tdep.c (amd64_push_dummy_call, amd64_analyze_prologue,
4165         amd64_frame_cache, amd64_sigtramp_frame_cache, fixup_riprel,
4166         amd64_displaced_step_fixup): Update.
4167         * arm-linux-tdep.c (arm_linux_sigreturn_init,
4168         arm_linux_rt_sigreturn_init, arm_linux_supply_gregset): Update.
4169         * arm-tdep.c (thumb_analyze_prologue, arm_skip_prologue,
4170         arm_scan_prologue, arm_push_dummy_call, thumb_get_next_pc,
4171         arm_get_next_pc, arm_extract_return_value, arm_store_return_value,
4172         arm_return_value): Update.
4173         * arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update.
4174         * auxv.c (default_auxv_parse): Update.
4175         * avr-tdep.c (avr_address_to_pointer, avr_pointer_to_address,
4176         avr_scan_prologue, avr_extract_return_value,
4177         avr_frame_prev_register, avr_push_dummy_call): Update.
4178         * bsd-uthread.c (bsd_uthread_check_magic, bsd_uthread_lookup_offset,
4179         bsd_uthread_wait, bsd_uthread_thread_alive,
4180         bsd_uthread_extra_thread_info): Update.
4181         * c-lang.c (c_printstr, print_wchar): Update.
4182         * cp-valprint.c (cp_print_class_member): Update.
4183         * cris-tdep.c (cris_sigcontext_addr, cris_sigtramp_frame_unwind_cache,
4184         cris_push_dummy_call, cris_scan_prologue, cris_store_return_value,
4185         cris_extract_return_value, find_step_target, dip_prefix,
4186         sixteen_bit_offset_branch_op, none_reg_mode_jump_op,
4187         move_mem_to_reg_movem_op, get_data_from_address): Update.
4188         * dwarf2expr.c (dwarf2_read_address, execute_stack_op): Update.
4189         * dwarf2-frame.c (execute_cfa_program): Update.
4190         * dwarf2loc.c (find_location_expression): Update.
4191         * dwarf2read.c (dwarf2_const_value): Update.
4192         * expprint.c (print_subexp_standard): Update.
4193         * findvar.c (unsigned_pointer_to_address, signed_pointer_to_address,
4194         unsigned_address_to_pointer, address_to_signed_pointer,
4195         read_var_value): Update.
4196         * frame.c (frame_unwind_register_signed,
4197         frame_unwind_register_unsigned, get_frame_memory_signed,
4198         get_frame_memory_unsigned): Update.
4199         * frame-unwind.c (frame_unwind_got_constant): Update.
4200         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp,
4201         frv_linux_sigcontext_reg_addr, frv_linux_sigtramp_frame_cache):
4202         Update.
4203         * frv-tdep.c (frv_analyze_prologue, frv_skip_main_prologue,
4204         frv_extract_return_value, find_func_descr,
4205         frv_convert_from_func_ptr_addr, frv_push_dummy_call): Update.
4206         * f-valprint.c (f_val_print): Update.
4207         * gnu-v3-abi.c (gnuv3_decode_method_ptr, gnuv3_make_method_ptr):
4208         Update.
4209         * h8300-tdep.c (h8300_is_argument_spill, h8300_analyze_prologue,
4210         h8300_push_dummy_call, h8300_extract_return_value,
4211         h8300h_extract_return_value, h8300_store_return_value,
4212         h8300h_store_return_value): Update.
4213         * hppabsd-tdep.c (hppabsd_find_global_pointer): Update.
4214         * hppa-hpux-nat.c (hppa_hpux_fetch_register, hppa_hpux_store_register):
4215         Update.
4216         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline,
4217         hppa64_hpux_in_solib_call_trampoline,
4218         hppa_hpux_in_solib_return_trampoline, hppa_hpux_skip_trampoline_code,
4219         hppa_hpux_sigtramp_frame_unwind_cache,
4220         hppa_hpux_sigtramp_unwind_sniffer, hppa32_hpux_find_global_pointer,
4221         hppa64_hpux_find_global_pointer, hppa_hpux_search_pattern,
4222         hppa32_hpux_search_dummy_call_sequence,
4223         hppa64_hpux_search_dummy_call_sequence, hppa_hpux_supply_save_state,
4224         hppa_hpux_unwind_adjust_stub): Update.
4225         * hppa-linux-tdep.c (insns_match_pattern,
4226         hppa_linux_find_global_pointer): Update.
4227         * hppa-tdep.c (hppa_in_function_epilogue_p, hppa32_push_dummy_call,
4228         hppa64_convert_code_addr_to_fptr, hppa64_push_dummy_call,
4229         skip_prologue_hard_way, hppa_frame_cache, hppa_fallback_frame_cache,
4230         hppa_pseudo_register_read, hppa_frame_prev_register_helper,
4231         hppa_match_insns): Update.
4232         * hpux-thread.c (hpux_thread_fetch_registers): Update.
4233         * i386-tdep.c (i386bsd_sigcontext_addr): Update.
4234         * i386-cygwin-tdep.c (core_process_module_section): Update.
4235         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn,
4236         amd64_darwin_sstep_at_sigreturn): Update.
4237         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr,
4238         amd64_darwin_sigcontext_addr): Likewise.
4239         * i386-linux-nat.c (i386_linux_sigcontext_addr): Update.
4240         * i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Update.
4241         * i386-nto-tdep.c (i386nto_sigcontext_addr): Update.
4242         * i386obsd-nat.c (i386obsd_supply_pcb): Update.
4243         * i386obsd-tdep.c (i386obsd_supply_uthread, i386obsd_collect_uthread,
4244         i386obsd_trapframe_cache): Update.
4245         * i386-tdep.c (i386_displaced_step_fixup, i386_follow_jump,
4246         i386_analyze_frame_setup, i386_analyze_prologue,
4247         i386_skip_main_prologue, i386_frame_cache, i386_sigtramp_frame_cache,
4248         i386_get_longjmp_target, i386_push_dummy_call,
4249         i386_pe_skip_trampoline_code, i386_svr4_sigcontext_addr,
4250         i386_fetch_pointer_argument): Update.
4251         * i387-tdep.c (i387_supply_fsave): Update.
4252         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Update.
4253         * ia64-tdep.c (ia64_pseudo_register_read, ia64_pseudo_register_write,
4254         examine_prologue, ia64_frame_cache, ia64_frame_prev_register,
4255         ia64_sigtramp_frame_cache, ia64_sigtramp_frame_prev_register,
4256         ia64_access_reg, ia64_access_rse_reg, ia64_libunwind_frame_this_id,
4257         ia64_libunwind_frame_prev_register,
4258         ia64_libunwind_sigtramp_frame_this_id,
4259         ia64_libunwind_sigtramp_frame_prev_register, ia64_find_global_pointer,
4260         find_extant_func_descr, find_func_descr,
4261         ia64_convert_from_func_ptr_addr, ia64_push_dummy_call, ia64_dummy_id,
4262         ia64_unwind_pc): Update.
4263         * iq2000-tdep.c (iq2000_pointer_to_address, iq2000_address_to_pointer,
4264         iq2000_scan_prologue, iq2000_extract_return_value,
4265         iq2000_push_dummy_call): Update.
4266         * irix5nat.c (fill_gregset): Update.
4267         * jv-lang.c (evaluate_subexp_java): Update.
4268         * jv-valprint.c (java_value_print): Update.
4269         * lm32-tdep.c (lm32_analyze_prologue, lm32_push_dummy_call, 
4270         lm32_extract_return_value, lm32_store_return_value): Update.
4271         * m32c-tdep.c (m32c_push_dummy_call, m32c_return_value,
4272         m32c_skip_trampoline_code, m32c_m16c_address_to_pointer,
4273         m32c_m16c_pointer_to_address): Update.
4274         * m32r-tdep.c (m32r_store_return_value, decode_prologue,
4275         m32r_skip_prologue, m32r_push_dummy_call, m32r_extract_return_value):
4276         Update.
4277         * m68hc11-tdep.c (m68hc11_pseudo_register_read,
4278         m68hc11_pseudo_register_write, m68hc11_analyze_instruction,
4279         m68hc11_push_dummy_call): Update.
4280         * m68linux-tdep.c (m68k_linux_pc_in_sigtramp,
4281         m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
4282         Update.
4283         * m68k-tdep.c (m68k_push_dummy_call, m68k_analyze_frame_setup,
4284         m68k_analyze_register_saves, m68k_analyze_prologue, m68k_frame_cache,
4285         m68k_get_longjmp_target): Update.
4286         * m88k-tdep.c (m88k_fetch_instruction): Update.
4287         * mep-tdep.c (mep_pseudo_cr32_read, mep_pseudo_csr_write,
4288         mep_pseudo_cr32_write, mep_get_insn, mep_push_dummy_call): Update.
4289         * mi/mi-main.c (mi_cmd_data_write_memory): Update.
4290         * mips-linux-tdep.c (mips_linux_get_longjmp_target, supply_32bit_reg,
4291         mips64_linux_get_longjmp_target, mips64_fill_gregset,
4292         mips64_fill_fpregset, mips_linux_in_dynsym_stub): Update.
4293         * mipsnbdsd-tdep.c (mipsnbsd_get_longjmp_target): Update.
4294         * mips-tdep.c (mips_fetch_instruction, fetch_mips_16,
4295         mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call,
4296         mips_o32_push_dummy_call, mips_o64_push_dummy_call, 
4297         mips_single_step_through_delay, mips_skip_pic_trampoline_code,
4298         mips_integer_to_address): Update.
4299         * mn10300-tdep.c (mn10300_analyze_prologue, mn10300_push_dummy_call):
4300         Update.
4301         * monitor.c (monitor_supply_register, monitor_write_memory,
4302         monitor_read_memory_single): Update.
4303         * moxie-tdep.c (moxie_store_return_value, moxie_extract_return_value,
4304         moxie_analyze_prologue): Update.
4305         * mt-tdep.c (mt_return_value, mt_skip_prologue, mt_select_coprocessor,
4306         mt_pseudo_register_read, mt_pseudo_register_write, mt_registers_info,
4307         mt_push_dummy_call): Update.
4308         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
4309         read_objc_methlist_method, read_objc_object, read_objc_super,
4310         read_objc_class, find_implementation_from_class): Update.
4311         * ppc64-linux-tdep.c (ppc64_desc_entry_point,
4312         ppc64_linux_convert_from_func_ptr_addr, ppc_linux_sigtramp_cache):
4313         Update.
4314         * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_sniffer,
4315         ppcobsd_sigtramp_frame_cache): Update.
4316         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call,
4317         do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call,
4318         ppc64_sysv_abi_return_value): Update.
4319         * ppc-linux-nat.c (ppc_linux_auxv_parse): Update.
4320         * procfs.c (procfs_auxv_parse): Update.
4321         * p-valprint.c (pascal_val_print): Update.
4322         * regcache.c (regcache_raw_read_signed, regcache_raw_read_unsigned,
4323         regcache_raw_write_signed, regcache_raw_write_unsigned,
4324         regcache_cooked_read_signed, regcache_cooked_read_unsigned,
4325         regcache_cooked_write_signed, regcache_cooked_write_unsigned): Update.
4326         * remote-m32r-sdi.c (m32r_fetch_register): Update.
4327         * remote-mips.c (mips_wait, mips_fetch_registers, mips_xfer_memory):
4328         Update.
4329         * rs6000-aix-tdep.c (rs6000_push_dummy_call, rs6000_return_value,
4330         rs6000_convert_from_func_ptr_addr, branch_dest, 
4331         rs6000_software_single_step): Update.
4332         * rs6000-tdep.c (rs6000_in_function_epilogue_p,
4333         ppc_displaced_step_fixup, ppc_deal_with_atomic_sequence,
4334         bl_to_blrl_insn_p, rs6000_fetch_instruction, skip_prologue,
4335         rs6000_skip_main_prologue, rs6000_skip_trampoline_code,
4336         rs6000_frame_cache): Update.
4337         * s390-tdep.c (s390_pseudo_register_read, s390_pseudo_register_write,
4338         s390x_pseudo_register_read, s390x_pseudo_register_write, s390_load,
4339         s390_backchain_frame_unwind_cache, s390_sigtramp_frame_unwind_cache,
4340         extend_simple_arg, s390_push_dummy_call, s390_return_value): Update.
4341         * scm-exp.c (scm_lreadr): Update.
4342         * scm-lang.c (scm_get_field, scm_unpack): Update.
4343         * scm-valprint.c (scm_val_print): Update.
4344         * score-tdep.c (score_breakpoint_from_pc, score_push_dummy_call,
4345         score_fetch_inst): Update.
4346         * sh64-tdep.c (look_for_args_moves, sh64_skip_prologue_hard_way,
4347         sh64_analyze_prologue, sh64_push_dummy_call, sh64_extract_return_value,
4348         sh64_pseudo_register_read, sh64_pseudo_register_write,
4349         sh64_frame_prev_register): Update:
4350         * sh-tdep.c (sh_analyze_prologue, sh_push_dummy_call_fpu,
4351         sh_push_dummy_call_nofpu, sh_extract_return_value_nofpu,
4352         sh_store_return_value_nofpu, sh_in_function_epilogue_p): Update.
4353         * solib-darwin.c (darwin_load_image_infos): Update.
4354         * solib-frv.c (fetch_loadmap, lm_base, frv_current_sos, enable_break2,
4355         find_canonical_descriptor_in_load_object): Update.
4356         * solib-irix.c (extract_mips_address, fetch_lm_info, irix_current_sos,
4357         irix_open_symbol_file_object): Update.
4358         * solib-som.c (som_solib_create_inferior_hook, link_map_start,
4359         som_current_sos, som_open_symbol_file_object): Update.
4360         * solib-sunos.c (SOLIB_EXTRACT_ADDRESS, LM_ADDR, LM_NEXT, LM_NAME):
4361         Update.
4362         * solib-svr4.c (read_program_header, scan_dyntag_auxv,
4363         solib_svr4_r_ldsomap): Update.
4364         * sparc64-linux-tdep.c (sparc64_linux_step_trap): Update.
4365         * sparc64obsd-tdep.c (sparc64obsd_supply_uthread,
4366         sparc64obsd_collect_uthread): Update.
4367         * sparc64-tdep.c (sparc64_pseudo_register_read,
4368         sparc64_pseudo_register_write, sparc64_supply_gregset,
4369         sparc64_collect_gregset): Update.
4370         * sparc-linux-tdep.c (sparc32_linux_step_trap): Update.
4371         * sparcobsd-tdep.c (sparc32obsd_supply_uthread,
4372         sparc32obsd_collect_uthread): Update.
4373         * sparc-tdep.c (sparc_fetch_wcookie, sparc32_push_dummy_code,
4374         sparc32_store_arguments, sparc32_return_value, sparc_supply_rwindow,
4375         sparc_collect_rwindow): Update.
4376         * spu-linux-nat.c (parse_spufs_run): Update.
4377         * spu-tdep.c (spu_pseudo_register_read_spu,
4378         spu_pseudo_register_write_spu, spu_pointer_to_address,
4379         spu_analyze_prologue, spu_in_function_epilogue_p,
4380         spu_frame_unwind_cache, spu_push_dummy_call, spu_software_single_step,
4381         spu_get_longjmp_target, spu_get_overlay_table, spu_overlay_update_osect,
4382         info_spu_signal_command, info_spu_mailbox_list, info_spu_dma_cmdlist,
4383         info_spu_dma_command, info_spu_proxydma_command): Update.
4384         * stack.c (print_frame_nameless_args, frame_info): Update.
4385         * symfile.c (read_target_long_array, simple_read_overlay_table,
4386         simple_read_overlay_region_table): Update.
4387         * target.c (debug_print_register): Update.
4388         * tramp-frame.c (tramp_frame_start): Update.
4389         * v850-tdep.c (v850_analyze_prologue, v850_push_dummy_call,
4390         v850_extract_return_value, v850_store_return_value, 
4391         * valarith.c (value_binop, value_bit_index): Update.
4392         * valops.c (value_cast): Update.
4393         * valprint.c (val_print_type_code_int, val_print_string,
4394         read_string): Update.
4395         * value.c (unpack_long, unpack_double, unpack_field_as_long,
4396         modify_field, pack_long): Update.
4397         * vax-tdep.c (vax_store_arguments, vax_push_dummy_call,
4398         vax_skip_prologue): Update.
4399         * xstormy16-tdep.c (xstormy16_push_dummy_call,
4400         xstormy16_analyze_prologue, xstormy16_in_function_epilogue_p,
4401         xstormy16_resolve_jmp_table_entry, xstormy16_find_jmp_table_entry,
4402         xstormy16_pointer_to_address, xstormy16_address_to_pointer): Update.
4403         * xtensa-tdep.c (extract_call_winsize, xtensa_pseudo_register_read,
4404         xtensa_pseudo_register_write, xtensa_frame_cache,
4405         xtensa_push_dummy_call, call0_track_op, call0_frame_cache): Update.
4406
4407
4408         * dfp.h (decimal_to_string, decimal_from_string, decimal_from_integral,
4409         decimal_from_floating, decimal_to_doublest, decimal_is_zero): Add
4410         BYTE_ORDER parameter.
4411         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
4412         parameters.
4413         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
4414         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
4415         * dfp.c (match_endianness): Add BYTE_ORDER parameter.  Use it
4416         instead of current_gdbarch.
4417         (decimal_to_string, decimal_from_integral, decimal_from_floating,
4418         decimal_to_doublest, decimal_is_zero): Add BYTE_ORDER parameter.
4419         Pass it to match_endianness.
4420         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
4421         parameters.  Pass them to match_endianness.
4422         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
4423         Pass them to match_endianness.
4424         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
4425         Pass them to match_endianness.
4426         * valarith.c (value_args_as_decimal): Add BYTE_ORDER_X and
4427         BYTE_ORDER_Y output parameters.
4428         (value_binop): Update call to value_args_as_decimal.
4429
4430         Update calls to decimal_to_string, decimal_from_string,
4431         decimal_from_integral, decimal_from_floating, decimal_to_doublest,
4432         decimal_is_zero, decimal_binop, decimal_compare and decimal_convert
4433         to pass/receive byte order:
4434         * c-exp.y (parse_number): Update.
4435         * printcmd.c (printf_command): Update.
4436         * valarith.c (value_args_as_decimal, value_binop, value_logical_not,
4437         value_equal, value_less): Update.
4438         * valops.c (value_cast, value_one): Update.
4439         * valprint.c (print_decimal_floating): Update.
4440         * value.c (unpack_long, unpack_double): Update.
4441         * python/python-value.c (valpy_nonzero): Update.
4442
4443
4444         * ada-valprint.c (char_at): Add BYTE_ORDER parameter.
4445         (printstr): Update calls to char_at.
4446         (ada_val_print_array): Likewise.
4447         * valprint.c (read_string): Add BYTE_ORDER parameter.
4448         (val_print_string): Update call to read_string.
4449         * c-lang.c (c_get_string): Likewise.
4450         * charset.h (target_wide_charset): Add BYTE_ORDER parameter.
4451         * charset.c (target_wide_charset): Add BYTE_ORDER parameter.
4452         Use it instead of current_gdbarch.
4453         * printcmd.c (printf_command): Update calls to target_wide_charset.
4454         * c-lang.c (charset_for_string_type): Add BYTE_ORDER parameter.
4455         Pass to target_wide_charset.  Use it instead of current_gdbarch.
4456         (classify_type): Add BYTE_ORDER parameter.  Pass to
4457         charset_for_string_type.  Allow NULL encoding pointer.
4458         (print_wchar): Add BYTE_ORDER parameter.
4459         (c_emit_char): Update calls to classify_type and print_wchar.
4460         (c_printchar, c_printstr): Likewise.
4461
4462
4463         * gdbarch.sh (in_solib_return_trampoline): Convert to type "m".
4464         * gdbarch.c, gdbarch.h: Regenerate.
4465         * arch-utils.h (generic_in_solib_return_trampoline): Add GDBARCH
4466         parameter.
4467         * arch-utils.c (generic_in_solib_return_trampoline): Likewise.
4468         * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Likewise.
4469         * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Likewise.
4470         (rs6000_skip_trampoline_code): Update call.
4471
4472         * alpha-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
4473         dynamic_sigtramp_offset and pc_in_sigtramp callbacks.
4474         (alpha_read_insn): Add GDBARCH parameter.
4475         * alpha-tdep.c (alpha_lds, alpha_sts): Add GDBARCH parameter.
4476         (alpha_register_to_value): Pass architecture to alpha_sts.
4477         (alpha_extract_return_value): Likewise.
4478         (alpha_value_to_register): Pass architecture to alpha_lds.
4479         (alpha_store_return_value): Likewise.
4480         (alpha_read_insn): Add GDBARCH parameter.
4481         (alpha_skip_prologue): Pass architecture to alpha_read_insn.
4482         (alpha_heuristic_proc_start): Likewise.
4483         (alpha_heuristic_frame_unwind_cache): Likewise.
4484         (alpha_next_pc): Likewise.
4485         (alpha_sigtramp_frame_this_id): Pass architecture to
4486         tdep->dynamic_sigtramp_offset callback.
4487         (alpha_sigtramp_frame_sniffer): Pass architecture to
4488         tdep->pc_in_sigtramp callback.
4489         * alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): Add GDBARCH parameter.
4490         (alphafbsd_sigtramp_offset): Likewise.
4491         * alpha-linux-tdep.c (alpha_linux_sigtramp_offset_1): Add GDBARCH
4492         parameter.  Pass to alpha_read_insn.
4493         (alpha_linux_sigtramp_offset): Add GDBARCH parameter.  Pass to
4494         alpha_linux_sigtramp_offset_1.
4495         (alpha_linux_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
4496         alpha_linux_sigtramp_offset.
4497         (alpha_linux_sigcontext_addr): Pass architecture to alpha_read_insn
4498         and alpha_linux_sigtramp_offset.
4499         * alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Add GDBARCH parameter.
4500         (alphanbsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
4501         alphanbsd_sigtramp_offset.
4502         * alphaobsd-tdep.c (alphaobsd_sigtramp_offset): Add GDBARCH parameter.
4503         (alphaobsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
4504         alpha_read_insn.
4505         (alphaobsd_sigcontext_addr): Pass architecture to
4506         alphaobsd_sigtramp_offset.
4507         * alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): Add GDBARCH
4508         parameter.
4509
4510         * amd64-tdep.c (amd64_analyze_prologue): Add GDBARCH parameter.
4511         (amd64_skip_prologue): Pass architecture to amd64_analyze_prologue.
4512         (amd64_frame_cache): Likewise.
4513
4514         * arm-tdep.c (SWAP_SHORT, SWAP_INT): Remove.
4515         (thumb_analyze_prologue, arm_skip_prologue, arm_scan_prologue,
4516         thumb_get_next_pc, arm_get_next_pc): Do not use SWAP_ macros.
4517         * arm-wince-tdep.c: Include "frame.h".
4518
4519         * avr-tdep.c (EXTRACT_INSN): Remove.
4520         (avr_scan_prologue): Add GDBARCH argument, inline EXTRACT_INSN.
4521         (avr_skip_prologue): Pass architecture to avr_scan_prologue.
4522         (avr_frame_unwind_cache): Likewise.
4523
4524         * cris-tdep.c (struct instruction_environment): Add BYTE_ORDER member.
4525         (find_step_target): Initialize it.
4526         (get_data_from_address): Add BYTE_ORDER parameter.
4527         (bdap_prefix): Pass byte order to get_data_from_address.
4528         (handle_prefix_assign_mode_for_aritm_op): Likewise.
4529         (three_operand_add_sub_cmp_and_or_op): Likewise.
4530         (handle_inc_and_index_mode_for_aritm_op): Likewise.
4531
4532         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Add GDBARCH parameter.
4533         (frv_linux_sigcontext_reg_addr): Pass architecture to
4534         frv_linux_pc_in_sigtramp.
4535         (frv_linux_sigtramp_frame_sniffer): Likewise.
4536
4537         * h8300-tdep.c (h8300_is_argument_spill): Add GDBARCH parameter.
4538         (h8300_analyze_prologue): Add GDBARCH parameter.  Pass to
4539         h8300_is_argument_spill.
4540         (h8300_frame_cache, h8300_skip_prologue): Pass architecture
4541         to h8300_analyze_prologue.
4542
4543         * hppa-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
4544         in_solib_call_trampoline callback.
4545         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.
4546         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Add GDBARCH
4547         parameter.
4548         (hppa64_push_dummy_call): Pass architecture to
4549         hppa64_convert_code_addr_to_fptr.
4550         (hppa_match_insns): Add GDBARCH parameter.
4551         (hppa_match_insns_relaxed): Add GDBARCH parameter.  Pass to
4552         hppa_match_insns.
4553         (hppa_skip_trampoline_code): Pass architecture to hppa_match_insns.
4554         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.  Pass to
4555         hppa_match_insns_relaxed.
4556         (hppa_stub_unwind_sniffer): Pass architecture to
4557         tdep->in_solib_call_trampoline callback.
4558         * hppa-hpux-tdep.c (hppa_hpux_search_pattern): Add GDBARCH parameter.
4559         (hppa32_hpux_search_dummy_call_sequence): Pass architecture to
4560         hppa_hpux_search_pattern.
4561         * hppa-linux-tdep.c (insns_match_pattern): Add GDBARCH parameter.
4562         (hppa_linux_sigtramp_find_sigcontext): Add GDBARCH parameter.
4563         Pass to insns_match_pattern.
4564         (hppa_linux_sigtramp_frame_unwind_cache): Pass architecture to
4565         hppa_linux_sigtramp_find_sigcontext.
4566         (hppa_linux_sigtramp_frame_sniffer): Likewise.
4567         (hppa32_hpux_in_solib_call_trampoline): Add GDBARCH parameter.
4568         (hppa64_hpux_in_solib_call_trampoline): Likewise.
4569
4570         * i386-tdep.c (i386_follow_jump): Add GDBARCH parameter.
4571         (i386_analyze_frame_setup): Add GDBARCH parameter.
4572         (i386_analyze_prologue): Add GDBARCH parameter.  Pass to
4573         i386_follow_jump and i386_analyze_frame_setup.
4574         (i386_skip_prologue): Pass architecture to i386_analyze_prologue
4575         and i386_follow_jump.
4576         (i386_frame_cache): Pass architecture to i386_analyze_prologue.
4577         (i386_pe_skip_trampoline_code): Add FRAME parameter.
4578         * i386-tdep.h (i386_pe_skip_trampoline_code): Add FRAME parameter.
4579         * i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Pass
4580         frame to i386_pe_skip_trampoline_code.
4581
4582         * ia64-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter
4583         to sigcontext_register_address callback.
4584         * ia64-tdep.c (ia64_find_global_pointer): Add GDBARCH parameter.
4585         (ia64_find_unwind_table): Pass architecture to
4586         ia64_find_global_pointer.
4587         (find_extant_func_descr): Add GDBARCH parameter.
4588         (find_func_descr): Pass architecture to find_extant_func_descr
4589         and ia64_find_global_pointer.
4590         (ia64_sigtramp_frame_init_saved_regs): Pass architecture to
4591         tdep->sigcontext_register_address callback.
4592         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Add
4593         GDBARCH parameter.
4594
4595         * iq2000-tdep.c (iq2000_scan_prologue): Add GDBARCH parameter.
4596         (iq2000_frame_cache): Pass architecture to iq2000_scan_prologue.
4597
4598         * lm32-tdep.c (lm32_analyze_prologue): Add GDBARCH parameter.
4599         (lm32_skip_prologue, lm32_frame_cache): Pass architecture to
4600         lm32_analyze_prologue.
4601
4602         * m32r-tdep.c (decode_prologue): Add GDBARCH parameter.
4603         (m32r_skip_prologue): Pass architecture to decode_prologue.
4604
4605         * m68hc11-tdep.c (m68hc11_analyze_instruction): Add GDBARCH parameter.
4606         (m68hc11_scan_prologue): Pass architecture to
4607         m68hc11_analyze_instruction.
4608
4609         * m68k-tdep.c (m68k_analyze_frame_setup): Add GDBARCH parameter.
4610         (m68k_analyze_prologue): Pass architecture to
4611         m68k_analyze_frame_setup.
4612
4613         * m88k-tdep.c (m88k_fetch_instruction): Add BYTE_ORDER parameter.
4614         (m88k_analyze_prologue): Add GDBARCH parameter.  Pass byte order
4615         to m88k_fetch_instruction.
4616         (m88k_skip_prologue): Pass architecture to m88k_analyze_prologue.
4617         (m88k_frame_cache): Likewise.
4618
4619         * mep-tdep.c (mep_get_insn): Add GDBARCH parameter.
4620         (mep_analyze_prologue): Pass architecture to mep_get_insn.
4621
4622         * mips-tdep.c (mips_fetch_instruction): Add GDBARCH parameter.
4623         (mips32_next_pc): Pass architecture to mips_fetch_instruction.
4624         (deal_with_atomic_sequence): Likewise.
4625         (unpack_mips16): Add GDBARCH parameter, pass to mips_fetch_instruction.
4626         (mips16_scan_prologue): Likewise.
4627         (mips32_scan_prologue): Likewise.
4628         (mips16_in_function_epilogue_p): Likewise.
4629         (mips32_in_function_epilogue_p): Likewise.
4630         (mips_about_to_return): Likewise.
4631         (mips_insn16_frame_cache): Pass architecture to mips16_scan_prologue.
4632         (mips_insn32_frame_cache): Pass architecture to mips32_scan_prologue.
4633         (mips_skip_prologue): Pass architecture to mips16_scan_prologue
4634         and mips32_scan_prologue.
4635         (mips_in_function_epilogue_p): Pass architecture to
4636         mips16_in_function_epilogue_p and
4637         mips32_in_function_epilogue_p.
4638         (heuristic_proc_start): Pass architecture to mips_fetch_instruction
4639         and mips_about_to_return.
4640         (mips_skip_mips16_trampoline_code): Pass architecture to
4641         mips_fetch_instruction.
4642         (fetch_mips_16): Add GDBARCH parameter.
4643         (mips16_next_pc): Pass architecture to fetch_mips_16.
4644         (extended_mips16_next_pc): Pass architecture to unpack_mips16 and
4645         fetch_mips_16.
4646
4647         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
4648         read_objc_methlist_method, read_objc_object, read_objc_super,
4649         read_objc_class): Add GDBARCH parameter.
4650         (find_implementation_from_class): Add GDBARCH parameter, pass
4651         to read_objc_class, read_objc_methlist_nmethods, and
4652         read_objc_methlist_method.
4653         (find_implementation): Add GDBARCH parameter, pass to
4654         read_objc_object and find_implementation_from_class.
4655         (resolve_msgsend, resolve_msgsend_stret): Pass architecture
4656         to find_implementation.
4657         (resolve_msgsend_super, resolve_msgsend_super_stret): Pass
4658         architecture to read_objc_super and find_implementation_from_class.
4659
4660         * ppc64-linux-tdep.c (ppc64_desc_entry_point): Add GDBARCH parameter.
4661         (ppc64_standard_linkage1_target, ppc64_standard_linkage2_target,
4662         ppc64_standard_linkage3_target): Pass architecture to
4663         ppc64_desc_entry_point.
4664         * rs6000-tdep.c (bl_to_blrl_insn_p): Add BYTE_ORDER parameter.
4665         (skip_prologue): Pass byte order to bl_to_blrl_insn_p.
4666         (rs6000_fetch_instruction): Add GDBARCH parameter.
4667         (rs6000_skip_stack_check): Add GDBARCH parameter, pass to
4668         rs6000_fetch_instruction.
4669         (skip_prologue): Pass architecture to rs6000_fetch_instruction.
4670         
4671         * remote-mips.c (mips_store_word): Return old_contents as host
4672         integer value instead of target bytes.
4673
4674         * s390-tdep.c (struct s390_prologue_data): Add BYTE_ORDER member.
4675         (s390_analyze_prologue): Initialize it.
4676         (extend_simple_arg): Add GDBARCH parameter.
4677         (s390_push_dummy_call): Pass architecture to extend_simple_arg.
4678
4679         * scm-lang.c (scm_get_field): Add BYTE_ORDER parameter.
4680         * scm-lang.h (scm_get_field): Add BYTE_ORDER parameter.
4681         (SCM_CAR, SCM_CDR): Pass SCM_BYTE_ORDER to scm_get_field.
4682         * scm-valprint.c (scm_scmval_print): Likewise.
4683         (scm_scmlist_print, scm_ipruk, scm_scmval_print): Define
4684         SCM_BYTE_ORDER.
4685
4686         * sh64-tdep.c (look_for_args_moves): Add GDBARCH parameter.
4687         (sh64_skip_prologue_hard_way): Add GDBARCH parameter, pass to
4688         look_for_args_moves.
4689         (sh64_skip_prologue): Pass architecture to
4690         sh64_skip_prologue_hard_way.
4691         * sh-tdep.c (sh_analyze_prologue): Add GDBARCH parameter.
4692         (sh_skip_prologue): Pass architecture to sh_analyze_prologue.
4693         (sh_frame_cache): Likewise.
4694
4695         * solib-irix.c (extract_mips_address): Add GDBARCH parameter.
4696         (fetch_lm_info, irix_current_sos, irix_open_symbol_file_object):
4697         Pass architecture to extract_mips_address.
4698
4699         * sparc-tdep.h (sparc_fetch_wcookie): Add GDBARCH parameter.
4700         * sparc-tdep.c (sparc_fetch_wcookie): Add GDBARCH parameter.
4701         (sparc_supply_rwindow, sparc_collect_rwindow): Pass architecture
4702         to sparc_fetch_wcookie.
4703         (sparc32_frame_prev_register): Likewise.
4704         * sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
4705         * sparc32nbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
4706         * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
4707
4708         * spu-tdep.c (spu_analyze_prologue): Add GDBARCH parameter.
4709         (spu_skip_prologue): Pass architecture to spu_analyze_prologue.
4710         (spu_virtual_frame_pointer): Likewise.
4711         (spu_frame_unwind_cache): Likewise.
4712         (info_spu_mailbox_list): Add BYTE_ORER parameter.
4713         (info_spu_mailbox_command): Pass byte order to info_spu_mailbox_list.
4714         (info_spu_dma_cmdlist): Add BYTE_ORER parameter.
4715         (info_spu_dma_command, info_spu_proxydma_command): Pass byte order
4716         to info_spu_dma_cmdlist.
4717
4718         * symfile.c (read_target_long_array): Add GDBARCH parameter.
4719         (simple_read_overlay_table, simple_read_overlay_region_table,
4720         simple_overlay_update_1): Pass architecture to read_target_long_array.
4721
4722         * v850-tdep.c (v850_analyze_prologue): Add GDBARCH parameter.
4723         (v850_frame_cache): Pass architecture to v850_analyze_prologue.
4724
4725         * xstormy16-tdep.c (xstormy16_analyze_prologue): Add GDBARCH
4726         parameter.
4727         (xstormy16_skip_prologue, xstormy16_frame_cache): Pass architecture
4728         to xstormy16_analyze_prologue.
4729         (xstormy16_resolve_jmp_table_entry): Add GDBARCH parameter.
4730         (xstormy16_find_jmp_table_entry): Likewise.
4731         (xstormy16_skip_trampoline_code): Pass architecture to
4732         xstormy16_resolve_jmp_table_entry.
4733         (xstormy16_pointer_to_address): Likewise.
4734         (xstormy16_address_to_pointer): Pass architecture to
4735         xstormy16_find_jmp_table_entry.
4736
4737         * xtensa-tdep.c (call0_track_op): Add GDBARCH parameter.
4738         (call0_analyze_prologue): Add GDBARCH parameter, pass to
4739         call0_track_op.
4740         (call0_frame_cache): Pass architecture to call0_analyze_prologue.
4741         (xtensa_skip_prologue): Likewise.
4742
4743 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4744
4745         * defs.h (strlen_paddr, paddr, paddr_nz): Remove.
4746         (paddress): Add GDBARCH parameter.
4747         * utils.c (strlen_paddr, paddr, paddr_nz): Remove.
4748         (paddress): Add GDBARCH parameter, use it instead of current_gdbarch.
4749         * ui-out.h (ui_out_field_core_addr): Add GDBARCH parameter.
4750         * ui-out.c (ui_out_field_core_addr): Add GDBARCH parameter,
4751         use it instead of current_gdbarch.
4752
4753         Update calls to ui_out_field_core_addr to pass architecture:
4754         * ada-lang.c (print_one_exception): Update.
4755         * breakpoint.c (print_one_breakpoint_location,
4756         print_one_exception_catchpoint): Update.
4757         * disasm.c (dump_insns): Update.
4758         * darwin-nat-info.c (darwin_debug_regions_recurse): Update.
4759         * mi/mi-main.c (mi_cmd_data_read_memory): Update.
4760         * mi/mi-symbol-cmds.c: Include "objfiles.h".
4761         (mi_cmd_symbol_list_lines): Update.
4762         * stack.c (print_frame_info, print_frame): Update.
4763
4764         Update callers of paddress to pass architecture:
4765         * ada-tasks.c (info_task): Update.
4766         * ada-valprint.c (ada_val_print_1): Update.
4767         * annotate.c (annotate_source, annotate_frame_begin): Update.
4768         * breakpoint.c (insert_bp_location, describe_other_breakpoints,
4769         mention): Update.
4770         * cli/cli-cmds.c (edit_command, list_command, print_disassembly):
4771         Update.
4772         * corefile.c (memory_error): Update.
4773         * c-valprint.c (print_function_pointer_address, c_val_print): Update.
4774         * disasm.c (dis_asm_print_address): Update.
4775         * exec.c (print_section_info): Update.
4776         * f-valprint.c (f_val_print): Update.
4777         * infcmd.c: Include "arch-utils.h".
4778         (jump_command, program_info): Update.
4779         * linux-fork.c: Include "arch-utils.h".
4780         (info_forks_command): Update.
4781         * m2-valprint.c (print_function_pointer_address,
4782         print_unpacked_pointer, print_variable_at_address,
4783         m2_val_print): Update.
4784         * m32r-rom.c (m32r_load_section, m32r_load, m32r_upload_command):
4785         Update.
4786         * printcmd.c (print_address, print_address_demangle, address_info):
4787         Update.
4788         * p-valprint.c (pascal_val_print): Update.
4789         * source.c: Include "arch-utils.h".
4790         (line_info): Update.
4791         * stack.c (frame_info, print_block_frame_labels): Update.
4792         * symfile.c (add_symbol_file_command, list_overlays_command): Update.
4793         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1,
4794         print_symbol, print_partial_symbols, maintenance_info_psymtabs,
4795         maintenance_check_symtabs): Update.
4796         * symtab.c (find_pc_sect_symtab): Update.
4797         * target.c (deprecated_debug_xfer_memory): Update.
4798         * tracepoint.c (scope_info): Update.
4799         * tui/tui-stack.c (tui_make_status_line): Update.
4800         * valprint.c (val_print_string): Update.
4801
4802         Update callers of paddr_nz to use paddress instead (keeping
4803         user-visible output identical):
4804         * alpha-tdep.c (alpha_heuristic_proc_start): Update.
4805         * amd64-tdep.c (fixup_riprel, amd64_displaced_step_copy_insn,
4806         amd64_displaced_step_fixup): Update.
4807         * arch-utils.c (simple_displaced_step_copy_insn): Update.
4808         * auxv.c (fprint_target_auxv): Update.
4809         * breakpoint.c (insert_single_step_breakpoint): Update.
4810         * buildsym.c (finish_block): Update.
4811         * cli/cli-dump.c (restore_section_callback): Update.
4812         * fbsd-nat.c (fbsd_find_memory_regions): Update.
4813         * frame.c (frame_unwind_register_value): Update.
4814         * gcore.c (gcore_create_callback): Update.
4815         * hppa-tdep.c (hppa_frame_cache, hppa_skip_trampoline_code): Update.
4816         * i386-tdep.c (i386_displaced_step_fixup, i386_record_modrm,
4817         i386_record_lea_modrm_addr, i386_record_lea_modrm,
4818         i386_process_record): Update.
4819         * ia64-tdep.c (ia64_frame_this_id, ia64_sigtramp_frame_this_id,
4820         ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id,
4821         ia64_dummy_id, ia64_access_reg, ia64_access_rse_reg): Update.
4822         * infrun.c (displaced_step_prepare, displaced_step_fixup,
4823         handle_inferior_event, insert_step_resume_breakpoint_at_sal,
4824         insert_longjmp_resume_breakpoint): Update.
4825         * linux-nat.c (linux_nat_find_memory_regions): Update.
4826         * linux-record.c (record_linux_system_call): Update.
4827         * mips-tdep.c (heuristic_proc_start, mips_eabi_push_dummy_call,
4828         mips_n32n64_push_dummy_call, mips_o32_push_dummy_call,
4829         mips_o64_push_dummy_call): Update.
4830         * monitor.c (monitor_error, monitor_remove_breakpoint): Update.
4831         * record.c (record_arch_list_add_mem, record_wait,
4832         record_xfer_partial): Update.
4833         * remote-mips.c (mips_fetch_word, mips_check_lsi_error,
4834         mips_common_breakpoint): Update.
4835         * remote-sim.c (gdbsim_xfer_inferior_memory): Update.
4836         * rs6000-tdep.c (ppc_displaced_step_fixup): Update.
4837         * solib-som.c (som_current_sos): Update.
4838         * symfile.c (load_progress, generic_load): Update.
4839         * symfile-mem.c (add_vsyscall_page): Update.
4840         * valops.c (value_fetch_lazy): Update.
4841         * windows-tdep.c (windows_xfer_shared_library): Update.
4842
4843         Update callers of paddr_nz to use paddress instead (changing
4844         user-visible output to make it more correct):
4845         * dwarf2loc.c (locexpr_describe_location): Update.
4846         * ia64-tdep.c (ia64_memory_insert_breakpoint,
4847         ia64_memory_remove_breakpoint): Update.
4848         * jv-valprint.c (java_value_print): Update.
4849         * m32c-tdep.c (m32c_m16c_address_to_pointer): Update.
4850         * monitor.c (monitor_read_memory): Update.
4851
4852         Update callers of paddr to use paddress instead (changing
4853         user-visible output to make it more correct):
4854         * arm-tdep.c (arm_push_dummy_call): Update.
4855         * breakpoint.c (insert_bp_location, create_thread_event_breakpoint,
4856         create_breakpoint): Update.
4857         * darwin-nat-info.c (darwin_debug_regions): Update.
4858         * dcache.c (dcache_info): Update.
4859         * dsrec.c (load_srec, make_srec): Update.
4860         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program,
4861         dwarf2_frame_cache): Update.
4862         * gcore.c (gcore_copy_callback): Update.
4863         * gnu-nat.c (gnu_xfer_memory): Update.
4864         * mips-linux-nat.c (mips_show_dr): Update.
4865         * monitor.c (monitor_write_memory, monitor_insert_breakpoint,
4866         monitor_remove_breakpoint): Update.
4867         * remote.c (compare_sections_command): Update.
4868         * remote-m32r-sdi.c (m32r_xfer_memory, m32r_insert_breakpoint,
4869         m32r_remove_breakpoint, m32r_insert_watchpoint,
4870         m32r_remove_watchpoint): Update.
4871         * sol-thread.c (info_cb): Update.
4872         * symfile.c (load_progress): Update.
4873
4874         Update callers of paddress or paddr_nz to use hex_string instead
4875         (changes output of internal/error/debug messages only):
4876         * dwarf2read.c (dump_die_shallow): Update.
4877         * frame.c (fprint_field, fprint_frame, frame_pc_unwind,
4878         get_frame_func, create_new_frame): Update.
4879         * hppa-tdep.c (find_unwind_entry, unwind_command): Update.
4880         * ia64-tdep.c (get_kernel_table, ia64_find_proc_info_x,
4881         ia64_get_dyn_info_list): Update.
4882         * maint.c (maintenance_translate_address): Update.
4883         * mi/mi-cmd-var.c (mi_cmd_var_create): Update.
4884         * target.c (target_flash_erase): Update.
4885
4886         Update callers of paddr/paddr_nz to use phex/phex_nz instead,
4887         using an appropriate address size.  Remove use of strlen_paddr.
4888         * exec.c (exec_files_info): Update.
4889         * i386-nat.c (i386_show_dr): Update.
4890         * remote.c (remote_flash_erase): Update.
4891         * m32r-rom.c (m32r_load_section): Update.
4892         * monitor.c (monitor_vsprintf, monitor_store_register): Update.
4893         * remote.c (remote_check_symbols, remote_search_memory): Update.
4894         * remote-mips.c (mips_request, mips_common_breakpoint): Update.
4895         * scm-valprint.c (scm_ipruk, scm_scmval_print): Update.
4896         * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs): Update.
4897         * sh-tdep.c (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs,
4898         sh2a_show_regs, sh2a_nofpu_show_regs, sh3e_show_regs,
4899         sh3_dsp_show_regs, sh4_show_regs, sh4_nofpu_show_regs,
4900         sh_dsp_show_regs): Update.
4901         * xcoffsolib.c (sharedlibrary_command): Update.
4902
4903
4904         * maint.c (maint_print_section_info): Add ADDR_SIZE parameter.
4905         Use hex_string_custom instead of paddr.
4906         (print_bfd_section_info): Pass address size.
4907         (print_objfile_section_info): Likewise.
4908
4909         * annotate.h (annotate_source): Add GDBARCH parameter.
4910         (annotate_frame_begin): Likewise.
4911         * annotate.c (annotate_source): Add GDBARCH parameter.
4912         (annotate_frame_begin): Likewise.
4913         * source.c (identify_source_line): Update call to annotate_source.
4914         * stack.c (print_frame_info, print_frame): Update call to
4915         annotate_frame_begin.
4916
4917         * breakpoint.c (describe_other_breakpoints): Add GDBARCH parameter.
4918         (create_breakpoint, create_ada_exception_breakpoint): Update call.
4919
4920         * stack.c (print_block_frame_labels): Add GDBARCH parameter.
4921         (print_frame_label_vars): Update call.
4922
4923         * symmisc.c (print_partial_symbols): Add GDBARCH parameter.
4924         (dump_psymtab): Update call to print_partial_symbols.
4925         (struct print_symbol_args): Add GDBARCH member.
4926         (dump_symtab_1): Set print_symbol_args architecture member.
4927         (print_symbol): Use it.
4928
4929         * windows-tdep.h (windows_xfer_shared_library): Add GDBARCH
4930         parameter.
4931         * windows-tdep.c (windows_xfer_shared_library): Likewise.
4932         * i386-cygwin-tdep.c (struct cpms_data): Add GDBARCH member.
4933         (core_process_module_section): Pass architecture from cpms_data to
4934         windows_xfer_shared_library.
4935         (windows_core_xfer_shared_libraries): Initialize cmps_data 
4936         architecture member.
4937         * windows-nat.c (windows_xfer_shared_libraries): Pass architecture
4938         to windows_xfer_shared_library.
4939
4940         * defs.h (print_address): Add GDBARCH parameter.
4941         * printcmd.c (print_address): Add GDBARCH parameter.
4942         (print_scalar_formatted, do_examine): Update call.
4943         * findcmd.c (find_command): Update call.
4944         * tracepoint.c: Include "arch-utils.h".
4945         (trace_find_line_command): Update call.
4946         * tui/tui-disasm.c (tui_disassemble): Update call.
4947
4948         * value.h (print_address_demangle): Add GDBARCH parameter.
4949         * printcmd.c (print_address_demangle): Add GDBARCH parameter.
4950         * c-valprint.c (print_function_pointer_address, c_val_print):
4951         Update call.
4952         * f-valprint.c (f_val_print): Update call.
4953         * gnu-v3-abi.c (gnuv3_print_method_ptr): Update call.
4954         * jv-valprint.c (java_val_print): Update call.
4955         * m2-valprint.c (print_function_pointer_address, m2_val_print):
4956         Update call.
4957         * p-valprint.c (pascal_val_print): Update call.
4958
4959         * disasm.c (gdb_disassemble_info): Install architecture into
4960         di.application_data field.
4961
4962 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4963
4964         * disasm.h (gdb_disassembly): Add GDBARCH parameter.
4965         (gdb_print_insn): Likewise.
4966         * disasm.c (dump_insns): Add GDBARCH parameter.  Use it instead
4967         of current_gdbarch.
4968         (do_mixed_source_and_assembly): Add GDBARCH parameter.  Pass to
4969         dump_insns.
4970         (do_assembly_only): Likewise.
4971         (gdb_disassembly): Add GDBARCH parameter.  Use it instead of
4972         current_gdbarch.  Pass to subroutines.
4973         (gdb_print_insn): Add GDBARCH parameter.  Use it instead of
4974         current_gdbarch.
4975
4976         * stack.c (struct gdb_disassembly_stub_args): Add GDBARCH member.
4977         (gdb_disassembly_stub): Pass architecture to gdb_disassembly.
4978         (do_gdb_disassembly): Add GDBARCH argument.  Store into args.
4979         (print_frame_info): Pass architecture to do_gdb_disassembly.
4980
4981         * printcmd.c (print_formatted): Pass architecture to gdb_print_insn.
4982
4983         * mi/mi-cmd-disas.c: Include "arch-utils.h"
4984         (mi_cmd_disassemble): Pass architecture to gdb_disassembly.
4985
4986         * cli/cli-cmds.c: Include "arch-utils.h".
4987         (print_disassembly): Add GDBARCH parameter.  Pass to gdb_disassembly
4988         and tui_show_assembly.
4989         (disassemble_current_function): Pass architecture to
4990         tui_get_low_disassembly_address and print_disassembly.
4991         (disassemble_command): Pass architecture to
4992         tui_get_low_disassembly_address and print_disassembly.
4993
4994         * tui/tui.c (tui_show_assembly): Add GDBARCH parameter.  Pass to
4995         tui_update_source_windows_with_addr.
4996
4997         * tui/tui-data.h (struct tui_locator_element): Add GDBARCH member.
4998         (struct tui_source_info): Likewise.
4999         * tui/tui-data.c (tui_clear_win_detail): Clear source_info.gdbarch.
5000
5001         * tui/tui-disasm.c (tui_disassemble): Add GDBARCH parameter.
5002         Pass to gdb_print_insn.
5003         (tui_find_disassembly_address): Add GDBARCH parameter.  Pass to
5004         tui_disassemble.
5005         (tui_set_disassem_content): Add GDBARCH parameter.  Install into
5006         source_info.gdbarch.  Pass to tui_disassemble.
5007         (tui_show_disassem): Add GDBARCH parameter.  Pass to 
5008         tui_update_source_window.
5009         (tui_show_disassem_and_update_source): Add GDBARCH parameter.  Pass to
5010         tui_show_disassem and tui_update_source_window.
5011
5012         (tui_get_begin_asm_address): Return locator architecture in addition
5013         to locator PC value.
5014
5015         (tui_get_low_disassembly_address): Add GDBARCH parameter.   Pass to
5016         tui_get_low_disassembly_address.
5017
5018         (tui_vertical_disassem_scroll): Pass architecture to subroutines.
5019
5020         * tui/tui-disasm.h (tui_set_disassem_content): Add GDBARCH parameter.
5021         (tui_show_disassem): Likewise.
5022         (tui_show_disassem_and_update_source): Likewise.
5023         (tui_get_begin_asm_address): Return architecture and PC value.
5024
5025         * tui/tui.h (tui_get_low_disassembly_address): Add GDBARCH parameter.
5026         (tui_show_assembly): Add GDBARCH parameter.
5027
5028         * tui/tui-layout.c (extract_display_start_addr): Return current window
5029         architecture in addition to current PC value.
5030
5031         (tui_set_layout): Update calls to tui_get_low_disassembly_address and
5032         extract_display_start_addr.  Pass architecture to
5033         tui_update_source_windows_with_addr.
5034
5035         * tui/tui-source.c: Include "objfiles.h".
5036         (tui_set_source_content): Initialize window architecture.
5037         (tui_show_symtab_source): Add GDBARCH parameter.  Pass to
5038         tui_update_source_window_as_is
5039
5040         * tui/tui-source.h (tui_show_symtab_source): Add GDBARCH parameter.
5041
5042         * tui/tui-stack.c (tui_set_locator_info): Add GDBARCH parameter.
5043         Install locator architecture.
5044         (tui_set_locator_filename): Update call.
5045         (tui_show_frame_info): Pass architecture to tui_set_locator_info
5046         and subroutines.
5047
5048         * tui/tui-win.c (make_visible_with_new_height): Pass architecture
5049         to tui_update_source_window.
5050
5051         * tui/tui-winsource.c: Include "objfiles.h".
5052         (tui_display_main): Update call to tui_get_begin_asm_address.
5053         Pass architecture to tui_update_source_windows_with_addr.
5054         (tui_update_source_window): Add GDBARCH parameter.  Pass to
5055         tui_update_source_window_as_is.
5056         (tui_update_source_window_as_is): Add GDBARCH parameter.
5057         Pass to tui_set_disassem_content.
5058         (tui_update_source_windows_with_addr): Add GDBARCH parameter.
5059         Pass to subroutines.
5060         (tui_update_source_windows_with_line): Pass objfile architecture
5061         to subroutines.
5062         (tui_horizontal_source_scroll): Pass architecture to 
5063         tui_update_source_window_as_is.
5064         
5065         * tui/tui-winsource.h (tui_update_source_window): Add GDBARCH
5066         parameter.
5067         (tui_update_source_window_as_is): Likewise.
5068         (tui_update_source_windows_with_addr): Likewise.
5069
5070 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5071
5072         * breakpoint.h (struct breakpoint): New member GDBARCH.
5073         * breakpoint.c: Include "arch-utils.h".
5074         (set_raw_breakpoint_without_location): Add GDBARCH parameter.
5075         Use it to set breakpoint architecture.
5076         (set_raw_breakpoint): Add GDBARCH parameter.
5077         (create_internal_breakpoint): Likewise.
5078         (create_catchpoint): Likewise.
5079         (create_fork_vfork_event_catchpoint): Likewise.
5080         (create_breakpoint): Likewise.
5081         (create_breakpoints): Likewise.
5082         (break_command_really): Likewise.
5083         (create_ada_exception_breakpoint): Likewise.
5084         Update local callers to pass architecture:
5085         (create_internal_breakpoint): Update.
5086         (create_overlay_event_breakpoint): Update.
5087         (create_longjmp_master_breakpoint): Update.
5088         (create_thread_event_breakpoint): Update.
5089         (create_solib_event_breakpoint): Update.
5090         (create_catchpoint): Update.
5091         (create_fork_vfork_event_catchpoint): Update.
5092         (set_momentary_breakpoint): Update.
5093         (clone_momentary_breakpoint): Update.
5094         (create_breakpoint): Update.
5095         (create_breakpoints): Update.
5096         (break_command_really): Update.
5097         (break_command_1): Update.
5098         (set_breakpoint): Update.
5099         (watch_command_1): Update.
5100         (catch_fork_command_1): Update.
5101         (catch_exec_commnd_1): Update.
5102         (handle_gnu_v3_exceptions): Update.
5103         (create_ada_exception_breakpoint): Update.
5104         (catch_ada_exception_command): Update.
5105         (catch_assert_command): Update.
5106         (trace_command): Update.
5107
5108         * breakpoint.h (struct bp_location): New member GDBARCH.
5109         * breakpoint.c (get_sal_arch): New function.
5110         (set_raw_breakpoint): Set location architecture.
5111         (add_location_to_breakpoint): Likewise.
5112         (clone_momentary_breakpoint): Likewise.
5113         (watch_command_1): Likewise.
5114         (update_watchpoint): Likewise.
5115         (bp_loc_is_permanent): Use location architecture instead of
5116         current_gdbarch.
5117         (adjust_breakpoint_address): Add GDBARCH parameter; use it
5118         instead of current_gdbarch.
5119         Update callers of adjust_breakpoint_address to pass
5120         breakpoint location architecture:
5121         (set_raw_breakpoint): Update.
5122         (watch_command_1): Update.
5123
5124         * tracepoint.c: (collect_symbol): Add GDBARCH parameter, use instead
5125         of current_gdbarch.
5126         (add_local_symbols): Add GDBARCH parameter.  Pass to collect_symbol.
5127         (encode_actions): Pass tracepoint architecture to add_local_symbols
5128         (encode_actions): Use tracepoint architecture instead of
5129         current_gdbarch.  Pass it to add_local_symbols and collect_symbol.
5130
5131         * breakpoint.h (struct breakpoint_ops): Replace last_addr parameter
5132         of print_one callback with last_loc.
5133         * breakpoint.c (print_one_breakpoint_location): Replace last_addr
5134         parameter with last_loc.
5135         (print_one_breakpoint): Likewise.
5136         (do_captured_breakpoint_query): Update call.
5137         (breakpoint_1): Pass last_loc instead of last_addr to
5138         print_one_breakpoint.  Pass last location architecture instead of
5139         current_gdbarch to set_next_address.
5140         Update all implementations of the print_one callback:
5141         * breakpoint.c (print_one_catch_fork): Update.
5142         (print_one_catch_vfork): Update.
5143         (print_one_catch_exec): Update.
5144         (print_one_exception_catchpoint): Update.
5145         * ada-lang.c (print_one_exception): Update.
5146         (print_one_catch_exception): Update.
5147         (print_one_catch_exception_unhandled): Update.
5148         (print_one_catch_assert): Update.
5149
5150         * breakpoint.c (print_one_breakpoint_location): Add PRINT_ADDRESS_BITS
5151         parameter.  Use it instead of gdbarch_addr_bit (current_gdbarch).
5152         (print_one_breakpoint): Add PRINT_ADDRESS_BITS parameter and pass it
5153         to print_one_breakpoint_location.
5154         (breakpoint_address_bits): New function.
5155         (do_captured_breakpoint_query): Compute number of address bits to print
5156         and pass it to print_one_breakpoint.
5157         (breakpoint_1): Likewise.  Use it instead of current_gdbarch.
5158
5159         * breakpoint.h (create_thread_event_breakpoint): Add GDBARCH.
5160         * breakpoint.c (create_thread_event_breakpoint): Likewise.
5161         Update callers to create_thread_event_breakpoint:
5162         * aix-thread.c (pd_enable): Update.
5163         * linux-thread-db.c (enable_thread_event): Update.
5164
5165         * breakpoint.h (create_solib_event_breakpoint): Add GDBARCH.
5166         * breakpoint.c (create_solib_event_breakpoint): Likewise.
5167         Update callers to create_solib_event_breakpoint:
5168         * solib-frv.c (enable_break, enable_break2): Update.
5169         * solib-pa64.c (pa64_solib_create_inferior_hook): Update.
5170         * solib-som.c (som_solib_create_inferior_hook): Update.
5171         * solib-darwin.c (darwin_solib_create_inferior_hook): Update.
5172         * solib-svr4.c (enable_break): Update.
5173
5174         * breakpoint.h (insert_single_step_breakpoint): Add GDBARCH.
5175         * breakpoint.c (insert_single_step_breakpoint): Likewise.
5176         Update callers to insert_single_step_breakpoint:
5177         * alpha-tdep.c (alpha_software_single_step): Update.
5178         * arm-linux-tdep.c (arm_linux_software_single_step): Update.
5179         * arm-tdep.c (arm_software_single_step): Update.
5180         * cris-tdep.c (cris_software_single_step): Update.
5181         * rs6000-aix-tdep.c (rs6000_software_single_step): Update.
5182         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Update.
5183         * sparc-tdep.c (sparc_software_single_step): Update.
5184         * spu-tdep.c (spu_software_single_step): Update.
5185         * mips-tdep.c (deal_with_atomic_sequence): Add GDBARCH parameter.
5186         Pass it to insert_single_step_breakpoint.
5187         (mips_software_single_step): Pass architecture to
5188         deal_with_atomic_sequence and insert_single_step_breakpoint.
5189
5190         * breakpoint.h (deprecated_insert_raw_breakpoint): Add GDBARCH.
5191         (deprecated_remove_raw_breakpoint): Likewise.
5192         * breakpoint.c (deprecated_insert_raw_breakpoint): Add GDBARCH.
5193         (deprecated_remove_raw_breakpoint): Likewise.
5194         Update callers to deprecated_insert_raw_breakpoint and
5195         deprecated_remove_raw_breakpoint:
5196         * breakpoint.c (single_step_gdbarch): New static variable.
5197         (insert_single_step_breakpoint): Pass GDBARCH parameter to
5198         deprecated_insert_raw_breakpoint.  Store it in single_step_gdbarch.
5199         (remove_single_step_breakpoints): Pass architecture stored in
5200         single_step_gdbarch to deprecated_remove_raw_breakpoint.
5201         * rs6000-nat.c (exec_one_dummy_insn): Update.
5202         * solib-irix.c (enable_break, disable_break): Update.
5203         * procfs.c (procfs_mourn_inferior): Update.
5204         (remove_dbx_link_breakpoint): Update.
5205
5206         * breakpoint.h (set_breakpoint): Add GDBARCH parameter.
5207         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
5208         * breakpoint.c (set_breakpoint): Add GDBARCH parameter.
5209         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
5210         Update callers to set_breakpoint, set_momentary_breakpoint and
5211         set_momentary_breakpoint_at_pc:
5212         * breakpoint.c (set_momentary_breakpoint_at_pc): Update.
5213         (until_break_command): Update.
5214         * infcall.c (call_function_by_hand): Update.
5215         * infcmd.c (finish_backward, finish_forward): Update.
5216         * infrun.c (insert_step_resume_breakpoint_at_sal): Add GDBARCH
5217         parameter.  Pass it to set_momentary_breakpoint.
5218         (insert_longjmp_resume_breakpoint): Add GDBARCH parameter.
5219         Pass it to set_momentary_breakpoint_at_pc.
5220         (handle_inferior_event): Update.
5221         (insert_step_resume_breakpoint_at_frame): Update.
5222         (insert_step_resume_breakpoint_at_caller): Update..
5223         * mi/mi-cmd-break.c: Include "arch-utils.h".
5224         (mi_cmd_break_insert): Update.
5225
5226         * target.h (struct target_ops): Add GDBARCH parameter to
5227         to_insert_breakpoint, to_remove_breakpoint, to_insert_hw_breakpoint,
5228         and to_remove_hw_breakpoint members.
5229         (target_insert_breakpoint, target_remove_breakpoint,
5230         target_insert_hw_breakpoint, target_remove_hw_breakpoint): Add GDBARCH
5231         parameter, pass to target routine.
5232         (memory_remove_breakpoint, memory_insert_breakpoint): Add GDBARCH
5233         parameter.
5234         * target.c (debug_to_insert_breakpoint, debug_to_remove_breakpoint,
5235         debug_to_insert_hw_breakpoint, debug_to_remove_hw_breakpoint): Add
5236         GDBARCH parameter, pass to target routine.
5237         (update_current_target): Update function signature.
5238         * breakpoint.c (insert_bp_location, remove_breakpoint,
5239         deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint):
5240         Pass architecture to target_ routines.
5241         Update all implementations of the target breakpoint routines to take
5242         GDBARCH parameter and use it instead of GDBARCH as appropriate:
5243         * corelow.c (ignore): Update.
5244         * exec.c (ignore): Update.
5245         * mem-break.c (memory_insert_breakpoint): Update.
5246         (memory_remove_breakpoint): Update.
5247         * monitor.c (monitor_insert_breakpoint): Update.
5248         (monitor_remove_breakpoint): Update.
5249         * record.c (record_insert_breakpoint): Update.
5250         (record_beneath_to_insert_breakpoint): Update.
5251         (record_remove_breakpoint): Update.
5252         (record_beneath_to_remove_breakpoint): Update.
5253         * remote.c (remote_insert_breakpoint): Update.
5254         (remote_remove_breakpoint): Update.
5255         (remote_insert_hw_breakpoint): Update.
5256         (remote_remove_hw_breakpoint): Update.
5257         * remote-m32r-sdi.c (m32r_insert_breakpoint): Update.
5258         (m32r_remove_breakpoint): Update.
5259         * remote-mips.c (mips_insert_breakpoint): Update.
5260         (mips_remove_breakpoint): Update.
5261         * i386-nat.c (i386_insert_hw_breakpoint): Update.
5262         (i386_remove_hw_breakpoint): Update.
5263         * nto-procfs.c (procfs_insert_breakpoint):  Update.
5264         (procfs_remove_breakpoint): Update.
5265         (procfs_insert_hw_breakpoint): Update.
5266         (procfs_remove_hw_breakpoint): Update.
5267
5268 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5269
5270         * frame.h (frame_unwind_arch): New.
5271         (frame_unwind_caller_arch): Likewise.
5272         * frame-unwind.h (frame_prev_arch_ftype): New type.
5273         (struct frame_unwind): New member prev_arch.
5274         * frame.c (struct frame_info): New member prev_arch.
5275         (frame_unwind_arch): New function.
5276         (frame_unwind_caller_arch): Likewise..
5277         (get_frame_arch): Reimplement in terms of frame_unwind_arch.
5278         * sentinel-frame.c (sentinel_frame_prev_arch): New function.
5279         (sentinel_frame_unwinder): Install it.
5280
5281         * frame.c (frame_pc_unwind): Use frame_unwind_arch instead
5282         of get_frame_arch.
5283         (frame_unwind_register_value): Likewise.
5284         (frame_unwind_register_signed): Likewise.
5285         (frame_unwind_register_unsigned): Likewise.
5286         * frame-unwind.c (frame_unwind_got_optimized): Likewise.
5287         (frame_unwind_got_register): Likewise.
5288         (frame_unwind_got_constant): Likewise.
5289         (frame_unwind_got_bytes): Likewise.
5290         (frame_unwind_got_address): Likewise.
5291
5292         * frame.h (enum frame_type): New value ARCH_FRAME.
5293         * frame.c (fprint_frame_type): Handle ARCH_FRAME.
5294         * stack.c (print_frame_info): Likewise.
5295
5296 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5297
5298         * target.h (struct target_ops): New member to_thread_architecture.
5299         (target_thread_architecture): New macro.
5300         * target.c (update_current_target): Inherit to_thread_architecture.
5301         (default_thread_architecture): New function.
5302         (debug_to_thread_architecture): New function.
5303         (setup_target_debug): Handle to_thread_architecture.
5304
5305         * regcache.h (get_thread_arch_regcache): New.
5306         * regcache.c (struct regcache_list): New data type.
5307         (current_regcache): Hold regcache list instead of single regcache.
5308         (current_thread_ptid, current_thread_arch): New static variables.
5309         (get_thread_arch_regcache): New function.
5310         (get_thread_regcache): Use it.  Call target_thread_architecture.
5311         (regcache_thread_ptid_changed): Update to current_regcache changes.
5312         (registers_changed): Likewise.  Reset current_thread_arch and
5313         current_thread_ptid.
5314
5315         * remote.c (remote_wait): Access target registers in target_gdbarch.
5316         * linux-nat.c (linux_nat_do_thread_registers): Likewise.
5317         * proc-service.c (ps_lgetregs, ps_lsetregs): Likewise.
5318         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
5319         * sol-thread.c (ps_lgetregs, ps_lsetregs): Likewise.
5320         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
5321         * solib-svr4.c (enable_break): Likewise.
5322         (svr4_relocate_main_executable): Likewise.
5323
5324 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5325
5326         * python/python-internal.h (struct language_defn): Declare.
5327         (python_gdbarch, python_language): Likewise.
5328         (ensure_python_env): Add prototype.
5329         (make_cleanup_py_restore_gil): Remove prototype.
5330
5331         * python/python.c: Include "arch-utils.h", "value.h" and "language.h".
5332         (python_gdbarch, python_language): New global variables.
5333         (struct python_env): New data type.
5334         (ensure_python_env, restore_python_env): New functions.
5335         (eval_python_from_control_command): Call ensure_python_env to
5336         install current architecture and language.
5337         (python_command, gdbpy_new_objfile): Likewise.
5338         * python/python-cmd.c: Include "arch-utils.h" and "language.h".
5339         (cmdpy_destroyer, cmdpy_function, cmdpy_completer): Call
5340         ensure_python_env.
5341         * python/python-type.c (clean_up_objfile_types): Likewise.
5342         * python/python-objfile.c: Include "language.h".
5343         (clean_up_objfile): Call ensure_python_env.
5344         * python/python-prettyprint.c (apply_val_pretty_printer): Likewise.
5345         (apply_varobj_pretty_printer): Do not call PyGILState_Ensure.
5346         * varobj.c (varobj_ensure_python_env): New helper function.
5347         (varobj_get_display_hint, update_dynamic_varobj_children,
5348         install_default_visualizer, varobj_set_visualizer, free_variable,
5349         value_get_print_value): Call it.
5350         (value_get_print_value): Add varobj argument instead of pretty
5351         printer argument.  Update all callers.
5352
5353         * python/python-utils.c (py_gil_restore, make_cleanup_py_restore_gil):
5354         Remove.
5355
5356         * value.h (internal_function_fn): Add GDBARCH and LANGUAGE argument.
5357         (call_internal_function): Likewise.
5358         * value.c (call_internal_function): Likewise.  Pass to handler.
5359         * eval.c (evaluate_subexp_standard): Update call.
5360         * python/python-function.c: Include "language.h".
5361         (fnpy_call): Add GDBARCH and LANGAUAGE arguments and call
5362         make_cleanup_python_env.
5363
5364         * python/python-value.c (builtin_type_pyint, builtin_type_pyfloat,
5365         builtin_type_pylong, builtin_type_pybool, builtin_type_pychar,
5366         valpy_str): Use python_gdbarch and python_language instead of
5367         current_gdbarch and current_language.
5368         * python/python-type.c (typy_lookup_typename): Likewise.
5369
5370 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5371
5372         * arch-utils.c (selected_byte_order): Return target_byte_order_user.
5373         (show_endian): Use target_byte_order_user if specified; otherwise
5374         use get_current_arch () instead of current_gdbarch.
5375         (show_architecture): Use set_architecture_string if specified;
5376         otherwise use get_current_arch () instead of current_gdbarch.
5377         (get_current_arch): New function.
5378         * arch-utils.h (get_current_arch): Add prototype.
5379
5380         * osabi.c (show_osabi): Use get_current_arch () instead of
5381         current_gdbarch.
5382
5383         * findcmd.c: Include "arch-utils.h".
5384         (parse_find_args): Add BIG_P argument.  Use it instead of byte order
5385         of current_gdbarch.
5386         (find_command): Use get_current_arch () instead of current_gdbarch.
5387         Pass byte order to parse_find_args.
5388
5389         * maint.c: Include "arch-utils.h".
5390         (maintenance_print_architecture): Use get_current_arch () instead
5391         of current_gdbarch.
5392
5393         * reggroups.c: Include "arch-utils.h".
5394         (maintenance_print_reggroups): Use get_current_arch () instead
5395         of current_gdbarch.
5396
5397         * symfile.c: Include "arch-utils.h".
5398         (overlay_load_command): Use get_current_arch () instead of
5399         current_gdbarch.
5400
5401         * value.c: Include "arch-utils.h".
5402         (show_convenience): Use get_current_arch () instead of
5403         current_gdbarch.
5404
5405         * tui/tui-regs.c: Include "arch-utils.h".
5406         (tui_reg_next_command): Use get_current_arch () instead of
5407         current_gdbarch.
5408
5409         * mi/mi-main.c: Include "arch-utils.h".
5410         (mi_cmd_data_read_memory): Use get_current_arch () instead of
5411         current_gdbarch.
5412
5413         * parse.c: Include "arch-utils.h".
5414         (parse_exp_in_context): Use get_current_arch () instead of
5415         current_gdbarch.
5416
5417 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5418
5419         * gdbtypes.c (make_pointer_type, make_reference_type,
5420         smash_to_memberptr_type, lookup_array_range_type, check_stub_method):
5421         Use type architecture instead of current_gdbarch.
5422
5423         * gdbtypes.h (address_space_name_to_int, address_space_int_to_name):
5424         Add GDBARCH paramter.
5425         * gdbtypes.c (address_space_name_to_int, address_space_int_to_name):
5426         Add GDBARCH parameter.   Use it instead of current_gdbarch.
5427         * c-typeprint.c (c_type_print_modifier): Update call.
5428         * parse.c (push_type_address_space): Likewise.
5429
5430         * findvar.c (extract_typed_address, store_typed_address): Use type
5431         architecture instead of current_gdbarch.
5432
5433         * value.c (value_as_address, unpack_field_as_long): Use type architecture
5434         instead of current_gdbarch.
5435
5436         * doublest.c (floatformat_from_length): Add GDBARCH argument.  Use it
5437         instead of current_gdbarch.
5438         (floatformat_from_type): Pass type architecture.
5439
5440         * infcall.c (find_function_addr): Use type architecture instead
5441         of current_gdbarch.
5442
5443         * valarith.c (value_bitstring_subscript, value_x_binop, value_neg,
5444         value_bit_index): Use type architecture instead of current_gdbarch.
5445         * valops.c (value_cast, value_slice): Likewise.
5446
5447         * value.h (modify_field): Add TYPE argument.
5448         * value.c (modify_field): Add TYPE argument.  Use type architecture
5449         instead of current_gdbarch.
5450         (set_internalvar_component): Likewise.
5451         * eval.c (evaluate_struct_tuple): Update call.
5452         * valops.c (value_assign): Likewise.
5453         * ada-lang.c (modify_general_field): Likewise.  Add TYPE argument.
5454         (make_array_descriptor): Update calls.
5455         (move_bits): Add BITS_BIG_ENDIAN_P argument.  Use it instead of
5456         current_gdbarch.
5457         (ada_value_assign, value_assign_to_component): Update calls.
5458         (decode_packed_array, ada_value_primitive_packed_val, ada_value_assign,
5459         value_assign_to_component): Use type arch instead of current_gdbarch.
5460
5461         * printcmd.c (float_type_from_length): Remove GDBARCH argument,
5462         use type architecture instead.
5463         (print_scalar_formatted, printf_command): Update calls.  Use type
5464         architecture instead of current_gdbarch.
5465         * valprint.c (val_print_type_code_int): Use type architecture
5466         instead of current_gdbarch.
5467         * varobj.c (value_get_print_value): Likewise.
5468         * python/python-prettyprint.c (print_string_repr): Add GDBARCH
5469         argument.  Use it instead of current_gdbarch.
5470         (apply_val_pretty_printer): Update call.
5471
5472         * ada-valprint.c (ada_val_print_1): Use type architecture instead
5473         of current_gdbarch.
5474         * c-valprint.c (print_function_pointer_address): Add GDBARCH argument.
5475         Use it instead of current_gdbarch.
5476         (c_val_print): Update calls passing type architecture.
5477         * f-valprint.c (f_val_print): Use type architecture instead of
5478         current_gdbarch.
5479         * jv-valprint (java_value_print): Likewise.
5480         * m2-valprint.c (print_function_pointer_address): Add GDBARCH argument.
5481         Use it instead of current_gdbarch.
5482         (print_unpacked_pointer): Update calls passing type architecture.
5483         * scm-valprint.c (scm_scmval_print): Use type architecture instead of
5484         current_gdbarch.
5485
5486         * gnu-v3-abi.c (get_class_arch): Remove.
5487         (gnuv3_rtti_type): Use get_type_arch instead of get_class_arch.  Remove
5488         special-case check for Java classes.
5489         (gnuv3_virtual_fn_field, gnuv3_baseclass_offset, gnuv3_print_method_ptr,
5490         gnuv3_method_ptr_size, gnuv3_make_method_ptr, gnuv3_method_ptr_to_value):
5491         Use get_type_arch instead of get_class_arch.
5492
5493 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5494
5495         * gdbtypes.h (TYPE_OBJFILE_OWNED, TYPE_OWNER): New macros.
5496         (TYPE_OBJFILE, TYPE_ALLOC, TYPE_ZALLOC): Reimplement.
5497         (alloc_type_arch): Add prototype.
5498         (alloc_type_copy): Likewise.
5499         (get_type_arch): Likewise.
5500         (arch_type): Likewise.
5501         (arch_integer_type): Likewise.
5502         (arch_character_type): Likewise.
5503         (arch_boolean_type): Likewise.
5504         (init_float_type): Remove, replace by ...
5505         (arch_float_type): ... this.
5506         (init_complex_type): Remove, replace by ...
5507         (arch_complex_type): ... this.
5508         (init_flags_type): Remove, replace by ...
5509         (arch_flags_type): ... this.
5510         (init_composite_type): Remove, replace by ...
5511         (arch_composite_type): ... this.
5512
5513         * gdbtypes.c (alloc_type): No longer support NULL objfile.
5514         (init_type): Likewise.
5515         (alloc_type_arch): New function.
5516         (alloc_type_copy): New function.
5517         (get_type_arch): New function.
5518
5519         (smash_type): Preserve type ownership information.
5520         (make_pointer_type, make_reference_type, make_function_type,
5521         smash_to_memberptr_type, smash_to_method_type): No longer
5522         preserve OBJFILE across smash_type calls.
5523         (make_pointer_type, make_reference_type, make_function_type,
5524         lookup_memberptr_type, lookup_methodptr_type, allocate_stub_method,
5525         create_range_type, create_array_type, create_set_type, copy_type):
5526         Use alloc_type_copy when allocating types.
5527         (check_typedef): Use alloc_type_arch.
5528         (copy_type_recursive): Likewise.  Preserve type ownership data
5529         after copying type.
5530         (recursive_dump_type): Dump type ownership data.
5531         (alloc_type_instance): Update type ownership check.
5532         (copy_type, copy_type_recursive): Likewise.
5533
5534         (arch_type): New function.
5535         (arch_integer_type): Likewise.
5536         (arch_character_type): Likewise.
5537         (arch_boolean_type): Likewise.
5538         (init_float_type): Remove, replace by ...
5539         (arch_float_type): ... this.
5540         (init_complex_type): Remove, replace by ...
5541         (arch_complex_type): ... this.
5542         (init_flags_type): Remove, replace by ...
5543         (arch_flags_type): ... this.
5544         (append_flags_type_flag): Move down.
5545         (init_composite_type): Remove, replace by ...
5546         (arch_composite_type): ... this.
5547         (append_composite_type_field_aligned,
5548         append_composite_type_field): Move down.
5549
5550         * gdbarch.c (gdbtypes_post_init): Allocate all types
5551         using per-architecture routines.
5552         * ada-lang.c (ada_language_arch_info): Likewise.
5553         * f-lang.c (build_fortran_types): Likewise.
5554         * jv-lang.c (build_java_types): Likewise.
5555         * m2-lang.c (build_m2_types): Likewise.
5556         * scm-lang.c (build_scm_types): Likewise.
5557
5558         * ada-lang.c (ada_type_of_array): Use alloc_type_copy.
5559         (packed_array_type): Likewise.
5560         (ada_template_to_fixed_record_type_1): Likewise.
5561         (template_to_static_fixed_type): Likewise.
5562         (to_record_with_fixed_variant_part): Likewise.
5563         (to_fixed_variant_branch_type): Likewise.
5564         (to_fixed_array_type): Likewise.
5565         (to_fixed_range_type): Likewise.
5566         (empty_record): Use type instead of objfile argument.
5567         Use alloc_type_copy.
5568         (to_fixed_variant_branch_type): Update call to empty_record.
5569         * jv-lang.c (type_from_class): Use alloc_type_arch.
5570
5571         * arm-tdep.c (arm_ext_type): Allocate per-architecture type.
5572         * i386-tdep.c (i386_eflags_type, i386_mxcsr_type, i387_ext_type,
5573         i386_mmx_type, i386_sse_type): Likewise.
5574         * ia64-tdep.c (ia64_ext_type): Likewise.
5575         * m32c-tdep.c (make_types): Likewise.
5576         * m68k-tdep.c (m68k_ps_type, m68881_ext_type): Likewise.
5577         * rs6000-tdep.c (rs6000_builtin_type_vec64,
5578         rs6000_builtin_type_vec128): Likewise.
5579         * sparc-tdep.c (sparc_psr_type, sparc_fsr_type): Likewise.
5580         * sparc64-tdep.c (sparc64_pstate_type, sparc64_fsr_type,
5581         sparc64_fprs_type): Likewise.
5582         * spu-tdep.c (spu_builtin_type_vec128): Likewise.
5583         * xtensa-tdep.c (xtensa_register_type): Likewise.
5584         * linux-tdep.c (linux_get_siginfo_type): Likewise.
5585         * target-descriptions.c (tdesc_gdb_type): Likewise.
5586         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
5587
5588 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5589
5590         * i386-tdep.h (struct gdbarch_tdep): Add i386_eflags_type and
5591         i386_mxcsr_type members.
5592         (i386_eflags_type): Make into function.
5593         (i386_mxcsr_type): Likewise.
5594         * i386-tdep.c (i386_eflags_type): Make into function.
5595         (i386_mxcsr_type): Likewise.
5596         (i386_register_type): Update uses.
5597         (i386_init_types): Remove.
5598         (_initialize_i386_tdep): Do not call it.
5599         * amd64-tdep.c (amd64_register_type): Update uses.
5600
5601         * m68k-tdep.h (struct gdbarch_tdep): Add m68k_ps_type member.
5602         * m68k-tdep.c (m68k_ps_type): Make into function.
5603         (m68k_register_type): Update use.
5604         (m68k_init_types): Remove.
5605         (_initialize_m68k_tdep): Do not call it.
5606
5607         * sparc-tdep.h (struct gdbarch_tdep): Add sparc_psr_type,
5608         sparc_fsr_type, sparc64_pstate_type, sparc64_fsr_type, and
5609         sparc64_fprs_type members.
5610         * sparc-tdep.c (sparc_psr_type): Make into function.
5611         (sparc_fsr_type): Likewise.
5612         (sparc32_register_type): Update uses.
5613         (sparc_init_types): Remove.
5614         (_initialize_sparc_tdep): Do not call it.
5615         * sparc64-tdep.c (sparc64_pstate_type): Make into function.
5616         (sparc64_fsr_type): Likewise.
5617         (sparc64_fprs_type): Likewise.
5618         (sparc64_register_type): Update uses.
5619         (sparc64_init_types): Remove.
5620         (_initialize_sparc64_tdep): Likewise.
5621
5622 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5623
5624         * gdbtypes.h (builtin_type_ieee_single, builtin_type_ieee_double,
5625         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
5626         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
5627         (init_float_type, init_complex_type): Add prototypes.
5628         * gdbtypes.c (builtin_type_ieee_single, builtin_type_ieee_double,
5629         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
5630         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
5631         (_initialize_gdbtypes): Do not initialize them.
5632         (build_flt): Rename to ...
5633         (init_float_type): ... this.  Make global.
5634         (build_complex): Rename to ...
5635         (init_complex_type): ... this.  Make global.  Remove BIT argument.
5636         (gdbtypes_post_init): Update calls.
5637
5638         * ada-lang.c (ada_language_arch_info): Use init_float_type.
5639         * jv-lang.c (build_java_types): Likewise.
5640         * m2-lang.c (build_m2_types): Likewise.
5641         * f-lang.c (build_fortran_types): Use init_float_type and
5642         init_complex_type.
5643
5644         * target-descriptions.c (tdesc_gdb_type): Call init_float_type instead
5645         of using builtin_type_ieee_single, builtin_type_ieee_double, or
5646         builtin_type_arm_ext.
5647
5648         * ia64-tdep.h (struct gdbarch_tdep): Add ia64_ext_type member.
5649         * ia64-tdep.c (builtin_type_ia64_ext): Remove.
5650         (_initialize_ia64_tdep): Do not initialize it.
5651         (floatformat_valid, floatformat_ia64_ext, floatformats_ia64_ext):
5652         Move up.
5653         (ia64_ext_type): New function.
5654         (ia64_register_reggroup_p, ia64_convert_register_p,
5655         ia64_register_to_value, ia64_value_to_register,
5656         ia64_extract_return_value, ia64_store_return_value): Use ia64_ext_type
5657         instead of builtin_type_ia64_ext.
5658
5659         * i386-tdep.h (struct gdbarch_tdep): Add i387_ext_type member.
5660         (i387_ext_type): Add prototype.
5661         * i386-tdep.c (i387_ext_type): New function.
5662         (i386_extract_return_value, i386_store_return_value,
5663         i386_register_type): Use it instead of builtin_type_i387_ext.
5664         * amd64-tdep.c (amd64_register_type): Likewise.
5665         * i387-tdep.c (print_i387_value, i387_register_to_value,
5666         i387_value_to_register): Likewise.
5667         (print_i387_value, print_i387_ext): Add GDBARCH argument.
5668         (print_i387_ext, i387_print_float_info): Pass to subroutines.
5669
5670         * m68k-tdep.h (struct gdbarch_tdep): Add m68881_ext_type member.
5671         * m68k-tdep.c (m68881_ext_type): New function.
5672         (m68k_register_type, m68k_convert_register_p): Use it instead
5673         of builtin_type_m68881_ext.
5674
5675         * arm-tdep.h (struct gdbarch_tdep): Add arm_ext_type member.
5676         * arm-tdep.c (arm_ext_type): New function.
5677         (arm_register_type): Use it instead of builtin_type_arm_ext.
5678
5679         * alpha-tdep.c (alpha_register_type): Use builtin types
5680         instead of builtin_type_ieee_double.
5681
5682         * mips-tdep.c (mips_float_register_type, mips_double_register_type):
5683         Remove.
5684         (mips_register_type): Use builtin types instead of
5685         builtin_type_ieee_single and builtin_type_ieee_double.
5686         (mips_print_fp_register): Use builtin types instead of
5687         mips_float_register_type and mips_double_register_type.
5688
5689         * hppa-tdep.c (hppa32_register_type, hppa64_register_type):
5690         Use builtin types instead of builtin_type_ieee_single and
5691         builtin_type_ieee_double.
5692
5693 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5694
5695         * gdbtypes.h (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
5696         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
5697         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
5698         builtin_type_int128, builtin_type_uint128): Remove.
5699         (struct builtin_type): New members builtin_int0, builtin_int8,
5700         builtin_uint8, builtin_int16, builtin_uint16, builtin_int32,
5701         builtin_uint32, builtin_int64, builtin_uint64, builtin_int128,
5702         and builtin_uint128.
5703         * gdbtypes.c (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
5704         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
5705         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
5706         builtin_type_int128, builtin_type_uint128): Remove.
5707         (_initialize_gdbtypes): Do not initialize them.
5708         (gdbtypes_post_init): Initialize fixed-size integer types.
5709
5710         * dwarf2expr.c (unsigned_address_type, signed_address_type): Add
5711         GDBARCH argument.  Return platform-specific type.
5712         (dwarf2_read_address, execute_stack_op): Update calls.
5713
5714         * target-descriptions.c (tdesc_gdb_type): Use platform-specific types
5715         instead of global builtin_int_... variables.
5716         * mi/mi-main.c (mi_cmd_data_read_memory): Likewise.
5717         * printcmd.c (do_examine): Likewise.
5718         * jv-exp.y (parse_number): Likewise.
5719
5720         * alpha-tdep.c (alpha_register_type, alpha_push_dummy_call,
5721         alpha_store_return_value): Likewise.
5722         * amd64-linux-tdep.c (amd64_linux_register_type): Likewise.
5723         * amd64-tdep.c (amd64_register_type): Likewise.
5724         * arm-tdep.c (arm_register_type): Likewise.
5725         * avr-tdep.c (avr_register_type): Likewise.
5726         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
5727         * frv-tdep.c (frv_register_type): Likewise.
5728         * h8300-tdep.c h8300_register_type): Likewise.
5729         * hppa-tdep.c (hppa64_push_dummy_call, hppa32_register_type,
5730         hppa64_register_type): Likewise.
5731         * i386-tdep.c (i386_mmx_type, i386_sse_type): Likewise.
5732         * iq2000-tdep.c (iq2000_register_type): Likewise.
5733         * lm32-tdep.c (lm32_register_type, lm32_push_dummy_call): Likewise.
5734         * m32r-tdep.c (m32r_register_type): Likewise.
5735         * m68hc11-tdep.c (m68hc11_register_type, m68hc11_pseudo_register_read,
5736         m68hc11_pseudo_register_write): Likewise.
5737         * m68k-tdep.c (m68k_register_type): Likewise.
5738         * m88k-tdep.c (m88k_register_type, m88k_store_arguments): Likewise.
5739         * mep-tdep.c (mep_register_type): Likewise.
5740         * mips-tdep.c (mips_register_type, mips_pseudo_register_type,
5741         mips_print_fp_register): Likewise.
5742         * moxie-tdep.c (moxie_register_type): Likewise.
5743         * mt-tdep.c (mt_copro_register_type, mt_register_type): Likewise.
5744         * rs6000-tdep.c (rs6000_builtin_type_vec64,
5745         rs6000_builtin_type_vec128): Likewise.
5746         * score-tdep.c (score_register_type): Likewise.
5747         * sparc-tdep.c (sparc32_register_type, sparc32_store_arguments):
5748         Likewise.
5749         * sparc64-tdep.c (sparc64_register_type, sparc64_store_arguments):
5750         Likewise.
5751         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
5752         * v850-tdep.c (v850_register_type): Likewise.
5753         * xstormy16-tdep.c (xstormy16_register_type): Likewise.
5754         * xtensa-tdep.c (xtensa_register_type): Likewise.
5755
5756         * mt-tdep.c (struct gdbarch_tdep): New data structure.
5757         (mt_gdbarch_init): Alloc TDEP structures.
5758         (mt_register_type): Cache coprocessor type in TDEP instead of
5759         static global variable.
5760
5761         * xtensa-tdep.h (struct gdbarch_tdep): Add type_entries member.
5762         * xtensa-tdep.c (type_entries): Remove.
5763         (xtensa_register_type): Cache fixed-size types in TDEP instead
5764         of in global variable.
5765
5766 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5767
5768         * gdbtypes.h (builtin_type_true_char): Remove.
5769         (builtin_type_true_unsigned_char): Likewise.
5770         (struct builtin_type): Add builtin_true_char and
5771         builtin_true_unsigned_char members.
5772         * gdbtypes.c (builtin_type_true_char): Remove.
5773         (builtin_type_true_unsigned_char): Likewise.
5774         (_initialize_gdbtypes): Do not initialize them.
5775         (gdbtypes_post_init): Initialize builtin_true_char and
5776         builtin_true_unsigned_char members of builtin_type.
5777
5778         * printcmd.c (print_scalar_formatted): Use builtin_type
5779         members instead of builtin_type_true_char and
5780         builtin_type_true_unsigned_char.
5781         * ada-valprint.c (ada_val_print_1): Likewise.
5782
5783 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5784
5785         * gdbtypes.h (builtin_type_void): Remove.
5786         * gdbtypes.c (builtin_type_void): Remove.
5787         (_initialize_gdbtypes): Do not initialize it.
5788
5789         (safe_parse_type): Add GDBARCH argument.  Use it to construct
5790         void return type.
5791         (check_stub_method): Update call.
5792
5793         * infcall.c (call_function_by_hand): Use platform-specific type
5794         instead of builtin_type_void.
5795         * valops.c (value_cast): Use input void type instead of
5796         builtin_type_void.
5797
5798 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5799
5800         * ada-lang.c (assign_component): Use platform-specific integer type
5801         instead of builtin_type_int32 type.
5802         (ada_evaluate_subexp) [OP_ATR_SIZE]: Likewise.
5803
5804         * ax-gdb.c (gen_expr) [UNOP_NEG]: Use platform-specific integer type
5805         instead of builtin_type_int8 type.
5806         * valarith.c (value_x_unop): Likewise.
5807         * python/python-value.c (valpy_absolute): Avoid reference to
5808         builtin_type_int8 type.
5809
5810         * eval.c (evaluate_subexp_standard): Use platform-specific integer
5811         type instead of builtin_type_int8 as EVAL_SKIP return value type.
5812         * ada-lang.c (ada_evaluate_subexp): Likewise.
5813         * jv-lang.c (evaluate_subexp_java): Likewise.
5814         * m2-lang.c (evaluate_subexp_modula2): Likewise.
5815         * scm-lang.c (evaluate_exp): Likewise.
5816
5817         * value.h (value_bitstring): Add INDEX_TYPE argument.
5818         * valops.c (value_bitstring): Add INDEX_TYPE argument, use it instead
5819         of builtin_type_int32 as base range type.
5820         * eval.c (evaluate_subexp_standard): Update value_bitstring call.
5821
5822 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5823
5824         * gdbtypes.c (lookup_array_range_type): Add prototype.
5825         (lookup_string_range_type): Likewise.
5826         * gdbtypes.c (lookup_array_range_type): New function.
5827         (lookup_string_range_type): Likewise.
5828
5829         * ax-gdb.c (gen_repeat): Use lookup_array_range_type.
5830         * parse.c (follow_types): Likewise.
5831         * jv-lang.c (java_array_type): Likewise.
5832         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
5833         * mt-tdep.c (mt_register_type): Likewise.
5834         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
5835         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
5836         * value.c (allocate_repeat_value): Likewise.
5837         * valops.c (value_array, value_cstring): Likewise.
5838         * valops.c (value_string): Use lookup_string_range_type.
5839
5840 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5841
5842         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Remove
5843         redundant check for NULL TYPE_TARGET_TYPE.
5844         * m2-valprint.c (m2_print_long_set): Likewise.
5845         * p-valprint.c (pascal_type_print_base): Likewise.
5846
5847 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5848
5849         * printcmd.c (next_gdbarch): New static variable.
5850         (set_next_address, do_examine, x_command): Set it.
5851         (decode_format): Use 'a' size to indicate width of an address.
5852         (do_examine): Add GDBARCH argument.  Handle 'a' size.
5853         (x_command): Pass architecture to do_examine.
5854         Error if called without argument the first time.  
5855         (do_one_display): Pass architecture to do_examine.
5856
5857         (examine_i_type, examine_b_type, examine_h_type, examine_w_type,
5858         examine_g_type): Remove.
5859         (_initialize_printcmd): Do not initialize them.
5860         (do_examine): Use builin_type_int... instead of examine_..._type.
5861
5862 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5863
5864         * gdbtypes.h (struct builtin_type): Add internal_fn member.
5865         * gdbtypes.c (gdbtypes_post_init): Initialize it.
5866         * value.c (internal_fn_type): Remove.
5867         (_initialize_values): Do not initialize it.
5868
5869         * value.c (struct internalvar): Add enum internalvar_kind type and
5870         kind member.  Restructure union internalvar_data type.  Remove type,
5871         canonical, and make_value members.
5872         (init_if_undefined_command): Update for data structure changes.
5873         (create_internalvar): Likewise.
5874         (create_internalvar_type_lazy): Likewise.
5875         (get_internalvar_integer): Likewise.
5876         (get_internalvar_function): Likewise.
5877         (set_internalvar_component): Likewise.
5878         (set_internalvar): Likewise.
5879         (set_internalvar_integer): Likewise.
5880         (set_internalvar_function): Likewise.
5881         (clear_internalvar): Likewise.
5882         (add_internal_function): Likewise.
5883         (preserve_one_internalvar): New function.
5884         (preserve_values): Call it.
5885
5886         * value.h (value_of_internalvar): Add GDBARCH parameter.
5887         (internalvar_make_value): Likewise.
5888         * value.c (value_of_internalvar): Add GDBARCH parameter.  Pass it to
5889         make_value callback.  Use it to generate per-architecture result value
5890         types for internal variables with no pre-defined type.  Update for data
5891         structure changes.
5892         (show_convenience): Pass architecture to value_of_internalvar.
5893         * eval.c (evaluate_subexp_standard): Likewise.
5894         * infrun.c (siginfo_make_value): Add GDBARCH parameter.  Use it
5895         instead of current frame architecture.  Return per-architecture type.
5896
5897         * value.h (set_internalvar_string): Add prototype.
5898         * value.c (set_internalvar_string): New function.
5899         * tracepoint.c (set_traceframe_context): Use it.
5900
5901 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
5902
5903         * jv-lang.h (java_int_type, java_byte_type, java_short_type,
5904         java_long_type, java_boolean_type, java_char_type, java_float_type,
5905         java_double_type, java_void_type): Remove.
5906         (struct builtin_java_type): New data type.
5907         (builtin_java_type): Add prototype.
5908         (java_primitive_type): Add GDBARCH argument.
5909         (java_primitive_type_from_name): Likewise.
5910         (type_from_class): Likewise.
5911
5912         * jv-lang.c (java_int_type, java_byte_type, java_short_type,
5913         java_long_type, java_boolean_type, java_char_type, java_float_type,
5914         java_double_type, java_void_type): Remove.
5915
5916         (build_java_types, builtin_java_type): New functions.
5917         (java_type_data): New static variable.
5918         (_initialize_java_language): Initialize it.  No longer initialize
5919         global types.
5920         (java_language_arch_info): Use per-architecture types.
5921
5922         (java_primitive_type): Add GDBARCH argument.  Return per-architecture
5923         type instead of refering to global variable.
5924         (java_primitive_type_from_name): Add GDBARCH argument.
5925         (java_primitive_type_name): New function.
5926         (java_demangled_signature_length): Use it instead of
5927         java_primitive_type_from_name.
5928         (java_demangled_signature_copy): Likewise.
5929
5930         (type_from_class): Add GDBARCH argument.  Pass to java_link_class_type,
5931         java_primitive_type, and recursive type_from_class call.
5932         (java_link_class_type): Add GDBARCH argument.  Pass to type_from_class
5933         calls.  Use per-architecture types instead of global types.
5934
5935         * jv-exp.y (parse_java_type): New define.
5936         Use per-architecture types instead of global types througout.
5937
5938         * jv-valprint.c (java_value_print): Pass architecture to
5939         type_from_class and java_primitive_type_from_name.  Use per-
5940         architecture types instead of global types.
5941
5942 2009-07-01  Doug Evans  <dje@google.com>
5943
5944         * NEWS: Mention biarch amd64-linux gdbserver and hardware watchpoint
5945         support for i386-linux, amd64-linux, and i386-win32 builds of
5946         gdbserver.
5947
5948 2009-07-01  Nick Roberts  <nickrob@snap.net.nz>
5949
5950         * Makefile.in (HFILES_NO_SRCDIR): Remove entries for deleted files.
5951
5952 2009-06-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
5953
5954         * Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL.
5955         (check//%): Construct FORCE_PARALLEL for the sub-make.  Extend the
5956         comment for it.
5957
5958 2009-06-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
5959
5960         gdb/10275
5961         * dwarf2-frame.c (dwarf2_frame_state): Move cfa_offset, cfa_reg,
5962         cfa_how and cfa_exp into regs and adjust users.
5963         
5964 2009-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
5965
5966         * dwarf2read.c (inherit_abstract_dies): Work around GCC PR 40573.
5967
5968 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
5969
5970         * mi/mi-cmd-stack.c (parse_print_values): New.
5971         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Use the above.
5972
5973 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
5974
5975         * varobj.c (varobj_get_type): Use type_to_string.
5976
5977 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
5978
5979         * infrun.c (handle_inferior_event): Context switch to the new
5980         thread when resuming for a new_thread_event.
5981
5982 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
5983
5984         * ada-lang.h (ada_convert_actual): Add GDBARCH argument.
5985         * ada-lang.c (convert_actual): Remove stale prototype.
5986         (ensure_lval, make_array_descriptor, ada_convert_actual):
5987         Add GDBARCH argument and pass through to subroutine calls.
5988         (ensure_lval): Use GDBARCH instead of current_gdbarch.
5989         * infcall.c (value_arg_coerce): Update ada_convert_actual call.
5990
5991 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
5992
5993         * ada-lang.c (resolve): Use per-architecture void type instead
5994         of platform-independent one.
5995         (ada_evaluate_subexp) [STRUCTOP_STRUCT]: Likewise.
5996         (ada_resolve_function): Reimplement fallback logic to avoid
5997         explicit reference to builtin_type_void.
5998
5999 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6000
6001         * ada-valprint.c (ada_print_scalar): Accept NULL type argument
6002         to indicate scalar should be printed as default integer.
6003         (print_optional_low_bound): Pass NULL to ada_print_scalar to
6004         indicate default integer output.
6005         * ada-typeprint.c (print_range, print_range_bound): Likewise.
6006         (print_choices): Likewise.  Thus, accept NULL as val_type.
6007         * ada-lang.c (ada_variant_discrim_type): Return NULL when failed
6008         to look up controlling discriminant name.
6009
6010 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6011
6012         * ada-lang.c (to_fixed_range_type): Add ORIG_TYPE argument.
6013         Fall back to orig_type as index type if symbol lookup fails.
6014         Allocate result types from ORIG_TYPE's objfile.
6015         (ada_array_bound_from_type, to_fixed_array_type,
6016         ada_evaluate_subexp): Pass original index type to
6017         to_fixed_range_type.  Do not pass objfile.
6018
6019         * ada-typeprint.c (print_range_type_named): Add ORIG_TYPE argument.
6020         Fall back to orig_type as index type if symbol lookup fails.
6021         (print_array_type, ada_print_type): Pass original index type
6022         to print_range_type_named.
6023
6024 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6025
6026         * ada-lang.c (ada_index_type): Update comment.
6027
6028 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6029
6030         * ada-lang.c (ada_index_type): Make static.  Add NAME argument.
6031         Throw error on invalid input arguments.  Return NULL if unable
6032         to determine index type.
6033
6034         (ada_array_bound_from_type): Remove TYPEP argument.
6035         (ada_array_bound): Make static.  Return LONGEST instead of value.
6036         Update for ada_array_bound_from_type change.
6037         (ada_array_length): Return LONGEST instead of value.
6038         Update for ada_array_bound_from_type change.
6039         (make_array_descriptor): Update for ada_array_bound change.
6040
6041         (ada_evaluate_subexp) [OP_ATR_RANGE, OP_ATR_FIRST, OP_ATR_LAST,
6042         OP_ATR_LENGTH]: Update for ada_array_bound_from_type,
6043         ada_array_bound, ada_array_length, ada_index_type changes.
6044         Always use ada_index_type to compute result type; fall back
6045         to architecture-specific integer type if ada_index_type fails.
6046
6047         * ada-lang.h (ada_index_type): Remove prototype.
6048         (ada_array_bound): Likewise.
6049
6050 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
6051
6052         * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending
6053         a psymtab.
6054
6055 2009-06-29  Tom Tromey  <tromey@redhat.com>
6056
6057         * README: Mention parallel check.
6058
6059 2009-06-29  Sami Wagiaalla  <swagiaal@redhat.com>
6060
6061         * dwarf2read.c (read_import_statement): Properly set import location
6062         and destination.
6063         * cp-support.h (cp_add_using, cp_add_using_directive): Now take char*
6064         inner, char* outer arguments. Updated callers.
6065
6066 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6067
6068         * value.h (value_subscript, value_subscripted_rvalue,
6069         value_bitstring_subscript, value_ptradd): Use LONGEST instead
6070         of value as type of the index argument.
6071         (value_ptrsub): Remove.
6072         * valarith.c (value_subscript, value_subscripted_rvalue,
6073         value_bitstring_subscript, value_ptradd): Use LONGEST instead
6074         of value as type of the index argument.
6075         (value_ptrsub): Remove.
6076
6077         * wrapper.h (gdb_value_subscript): Use LONGEST instead of
6078         value as type of the index argument.
6079         * wrapper.c (gdb_value_subscript): Likewise.
6080
6081         Update calls to gdb_value_subscript, value_subscript,
6082         value_subscripted_rvalue, value_bitstring_subscript and
6083         value_ptradd to use LONGEST instead of value as index
6084         argument type.  Use value_ptradd instead of value_ptrsub.
6085         * ada-lang.c (ada_value_subscript, ada_value_ptr_subscript,
6086         ada_tag_name_2): Update.
6087         * ada-tasks.c (read_atcb): Update.
6088         * eval.c (evaluate_subexp_standard): Update.
6089         * valarith.c (value_subscript): Update.
6090         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Update.
6091         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
6092         gnuv3_method_ptr_to_value): Update.
6093         * jv-lang.c (evaluate_subexp_java): Update.
6094         * m2-lang.c (evaluate_subexp_modula2): Update.
6095         * python/python-value.c (valpy_getitem, valpy_binop): Update.
6096         * wrapper.c (gdb_value_subscript): Update.
6097         * varobj.c (c_describe_child): Update.
6098
6099 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6100
6101         * gdbtypes.h (make_function_type): Remove OBJFILE parameter.
6102         * gdbtypes.c (make_function_type): Remove OBJFILE parameter.
6103         (lookup_function_type): Update call.
6104         * stabsread.c (read_type): Likewise.
6105         * dwarf2read.c (read_subroutine_type): Use lookup_function_type
6106         instead of make_function_type.
6107         * jv-lang.c (type_from_class): Likewise.  Do not allocate types
6108         on the fake "dynamics" obstack.
6109
6110 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6111
6112         * gdbtypes.h (struct builtin_type): Remove builtin_core_addr,
6113         nodebug_text_symbol, nodebug_data_symbol, nodebug_unknown_symbol,
6114         and nodebug_tls_symbol members.
6115         (struct objfile_type): New data structure.
6116         (objfile_type): Add prototype.
6117         * gdbtypes.c (gdbtypes_post_init): Remove initialization code
6118         for types no longer in struct builtin_type.
6119         (objfile_type_data): New static variable.
6120         (_initialize_gdbtypes): Initialize it.
6121         (objfile_type): New function.
6122
6123         * gdbtypes.h (builtin_type_error): Remove.
6124         * gdbtypes.c (build_complex): Do not use builtin_type_error.
6125         * symtab.c (builtin_type_error): Remove.
6126         (_initialize_symtab): Remove initialization.
6127
6128         * stabsread.c (dbx_lookup_type, define_symbol, error_type,
6129         rs6000_builtin_type, read_range_type): Use per-objfile types
6130         instead of global or per-architecture builtin types.
6131         * coffread.c (decode_type): Likewise.
6132         * dwarf2read.c (read_array_type, read_tag_string_type,
6133         new_symbol, die_type): Likewise.
6134         * mdebugread.c (parse_symbol, basic_type, upgrade_type,
6135         parse_procedure, psymtab_to_symtab_1): Likewise.
6136         * xcoffread.c (process_xcoff_symbol): Likewise.
6137         * parse.c (write_exp_msymbol): Likewise.
6138
6139         * stabsread.c (rs6000_builtin_type_data): New static variable.
6140         (_initialize_stabsread): Initialize it.
6141         (rs6000_builtin_type): Add OBJFILE argument.  Allocate builtin
6142         types per-objfile instead of globally.
6143
6144         * stabsread.c (dbx_lookup_type): Add OBJFILE argument.  Use it
6145         instead of current_objfile; pass it to rs6000_builtin_type.
6146         (dbx_alloc_type, read_type, read_range_type): Update calls.
6147         (cleanup_undefined_types_noname): Add OBJFILE argument and
6148         pass it to dbx_lookup_type.
6149         (cleanup_undefined_types): Add OBJFILE argument and pass it
6150         to cleanup_undefined_types_noname.
6151         * stabsread.h (cleanup_undefined_types): Add OBJFILE argument.
6152         * buildsym.c (end_symtab): Update call.
6153
6154 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6155
6156         * darwin-nat-info.c (darwin_debug_regions_recurse): Use
6157         target_gdbarch instead of current_gdbarch.
6158
6159 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
6160
6161         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-windows-tdep.o.
6162         (ALL_TARGET_OBS): Add moxie-tdep.o, i386-darwin-tdep.o, and
6163         solib-darwin.o.
6164
6165         * configure.tgt: Add comment.
6166
6167 2009-06-28  Paul Pluzhnikov  <ppluzhnikov@google.com>
6168
6169         * mi/mi-cmds.c (mi_cmds): Remove unimplemented entries.
6170         
6171 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
6172             Jan Kratochvil  <jan.kratochvil@redhat.com>
6173
6174         * NEWS: Document inlined function support.
6175         * Makefile.in (SFILES): Add inline-frame.c.
6176         (COMMON_OBS): Add inline-frame.o.
6177         * block.c (contained_in): Rewrite to use lexical nesting.
6178         (block_linkage_function): Skip inlined function blocks.
6179         (block_inlined_p): New.
6180         * block.h (struct block): Update comment.
6181         (block_inlined_p): New prototype.
6182         * blockframe.c (get_frame_block): Handle inlined functions.
6183         (get_frame_function): Do not use block_linkage_function.
6184         (block_innermost_frame): Use get_frame_block and contained_in.
6185         * breakpoint.c (watchpoint_check): Remove extra reinit_frame_cache.
6186         Skip over inlined functions.  Simplify epilogue check.
6187         (bpstat_check_breakpoint_conditions): Use get_stack_frame_id.
6188         Update comments.
6189         (set_momentary_breakpoint): Only accept non-inlined frames.
6190         (watch_command_1): Use frame_unwind_caller_pc and
6191         frame_unwind_caller_id instead of get_prev_frame.
6192         (until_break_command): Likewise.  Use get_stack_frame_id.
6193         * buildsym.c (end_symtab): Set SYMBOL_SYMTAB for block functions.
6194         * dwarf2loc.c (dwarf_expr_frame_base): Use block_linkage_function.
6195         * dwarf2read.c (process_die): Handle DW_TAG_inlined_subroutine.
6196         (read_func_scope, new_symbol): Likewise.  Handle arguments specially
6197         for inlined functions without call site information.
6198         (inherit_abstract_dies): Allow tag mismatch for inlined subroutines.
6199         (die_specification): Treat DW_AT_abstract_origin as a specification.
6200         (read_type_die): Handle DW_TAG_inlined_subroutine.
6201         * frame-unwind.c (frame_unwind_init): Add inline_frame_unwind.
6202         * frame.c (fprint_frame_id): Print inline depth.
6203         (fprint_frame_type): Handle INLINE_FRAME and SENTINEL_FRAME.
6204         (skip_inlined_frames, get_stack_frame_id): New.
6205         (frame_unwind_caller_id): Use skip_inlined_frames.
6206         (frame_id_inlined_p): New.
6207         (frame_id_eq): Make the logic match the comments.  Add inline_depth
6208         check.
6209         (frame_id_inner): Handle inlined functions.
6210         (frame_unwind_pc): New function, copied from frame_unwind_caller_pc.
6211         (frame_unwind_caller_pc): Use skip_inlined_frames and frame_unwind_pc.
6212         (get_prev_frame_1): Check for inline frames.  Split out frame
6213         allocation to get_prev_frame_raw.
6214         (get_prev_frame_raw): New function.
6215         (get_prev_frame): Handle inline frames.
6216         (get_frame_pc): Use frame_unwind_pc.
6217         (get_frame_address_in_block): Skip inlined frames on both sides.
6218         (pc_notcurrent): Delete.
6219         (find_frame_sal): Rewrite to handle inline call sites.  Use
6220         get_frame_address_in_block.
6221         (deprecated_update_frame_pc_hack): Make static.
6222         * frame.h: Update comments.
6223         (struct frame_id): Add inline_depth.
6224         (enum frame_type): Add INLINE_FRAME.
6225         (frame_id_inlined_p, get_stack_frame_id): New prototypes.
6226         * gdbthread.h (struct thread_info): Add step_stack_frame_id field.
6227         * infcmd.c (set_step_frame): New function.
6228         (step_once): Use set_step_frame.  Handle inlined functions.
6229         (until_next_command): Use set_step_frame.
6230         (finish_backward), finish_forward): Use get_stack_frame_id.
6231         (finish_command): Support inlined functions.
6232         * inferior.h (set_step_info): New prototype.
6233         * infrun.c (RESUME_ALL): Use minus_one_ptid.
6234         (clear_proceed_status): Clear step_stack_frame_id.
6235         (init_wait_for_inferior): Call clear_inline_frame_state.
6236         (init_execution_control_state): Make static.
6237         (set_step_info): New function.
6238         (init_thread_stepping_state): Do not set the symtab or line here.
6239         (stepped_in_from): New function.
6240         (handle_inferior_event): Handle inlined functions.  Use set_step_info.
6241         (insert_step_resume_breakpoint_at_frame): Use get_stack_frame_id.
6242         (struct inferior_status): Add step_stack_frame_id.
6243         (save_inferior_status, restore_inferior_status): Save and restore
6244         step_stack_frame_id.
6245         * inline-frame.c, inline-frame.h: New files.
6246         * minsyms.c (prim_record_minimal_symbol_and_info): Use XCALLOC.
6247         * regcache.c (regcache_write_pc): Call reinit_frame_cache.
6248         * s390-tdep.c (s390_prologue_frame_unwind_cache): Handle INLINE_FRAME.
6249         * stack.c (frame_show_address): New.
6250         (print_frame_info, print_frame): Use it.
6251         (find_frame_funname): Use get_frame_function.  Handle inlined blocks.
6252         (frame_info): Mark inlined functions.
6253         (backtrace_command_1): Use get_current_user_frame.
6254         (print_frame_local_vars, print_frame_label_vars): Update comments.
6255         (return_command): Refuse inlined functions.
6256         * symtab.c (lookup_symbol_aux_local): Stop at inlined function
6257         boundaries.
6258         (find_function_start_sal): Avoid inlined functions.
6259         (completion_list_add_fields): New function.
6260         (default_make_symbol_completion_list): Use it.  Use block_static_block
6261         and block_global_block.  Check for inlined functions.
6262         (skip_prologue_using_sal): Avoid line number comparison across
6263         inlining.
6264         * symtab.h (struct symbol): Add is_inlined.
6265         (SYMBOL_INLINED): New.
6266         * target.c (target_resume): Call clear_inline_frame_state.
6267         * valops.c (value_of_variable): Check block_inlined_p.
6268
6269 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
6270
6271         * frame.c (frame_unwind_id): Renamed to ...
6272         (frame_unwind_caller_id): ... this.  All callers updated.
6273         (frame_pc_unwind): Renamed to ...
6274         (frame_unwind_caller_pc): ... this.  All callers updated.
6275         * frame.h: Document frame_unwind_caller_WHAT functions.
6276         (frame_unwind_id): Renamed to ...
6277         (frame_unwind_caller_id): ... this.
6278         (frame_pc_unwind): Renamed to ...
6279         (frame_unwind_caller_pc): ... this.
6280         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment.
6281         * stack.c (parse_frame_specification_1): Do not rely on
6282         frame_unwind_id.
6283
6284 2009-06-27  Michael Snyder  <msnyder@vmware.com>
6285
6286         * infrun.c (handle_inferior_event): Improve handling of
6287         reverse-stepping into and over shared library functions.
6288
6289 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
6290
6291         * linespec.c (find_method): Add new not_found_ptr parameter to
6292         bring in line with symtab_from_filename, decode_variable.
6293         (decode_compound): Likewise.  Also propagate not_found_ptr to 
6294         find_method.
6295         (decode_line_1): Propagate not_found_ptr to decode_compound.
6296         (cplusplus_error): Now throws NOT_FOUND_ERROR.
6297
6298 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
6299
6300         * MAINTAINERS (Write After Approval): Add self.
6301
6302 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6303
6304         * valops.c (value_one): Reimplement broken decimal-float case.
6305
6306 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6307
6308         * eval.c (evaluate_subexp_standard): Use expression architecture
6309         instead of current_gdbarch.
6310
6311         * infrun.c (handle_inferior_event): Avoid unncessary reference
6312         to current_gdbarch and get_current_frame ().
6313
6314 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6315
6316         * breakpoint.h (set_longjmp_breakpoint): Add THREAD argument.
6317         (enum bptype): Add bp_longjmp_master.
6318
6319         * breakpoint.c (create_longjmp_master_breakpoint): New function.
6320         (update_breakpoints_after_exec): Handle bp_longjmp_master
6321         breakpoints.  Call create_longjmp_master_breakpoint.
6322         (print_it_typical, bpstat_stop_status, bpstat_what,
6323         print_one_breakpoint_location, allocate_bp_location, mention,
6324         delete_command, breakpoint_re_set_one): Handle bp_longjmp_master.
6325         (breakpoint_re_set): Call create_longjmp_master_breakpoint.
6326         (create_longjmp_breakpoint): Delete.
6327         (set_longjmp_breakpoint): Add THREAD argument.  Reimplement
6328         to install momentary clones of bp_longjmp_master breakpoints.
6329
6330         * infcmd.c (step_1): Pass thread to set_longjmp_breakpoint.
6331
6332 2009-06-23  Cary Coutant  <ccoutant@google.com>
6333
6334         * dwarf2read.c (dwarf_decode_lines): Ignore rows where is_stmt is 0.
6335         Set basic_block to 0 after a special opcode.
6336
6337 2009-06-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
6338
6339         Fix a regression by the mmap patch from 2009-06-16.
6340         * symfile.c (reread_symbols): Move sym_finish and clear_objfile_data
6341         calls before deleting the OBJFILE obstack.  Extend the comment.
6342
6343 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6344
6345         * jv-lang.h (JAVA_OBJECT_SIZE): Remove.
6346         (get_java_object_header_size): Add GDBARCH parameter.
6347         * jv-lang.c (get_java_object_header_size): Add GDBARCH parameter.
6348         Use it instead of current_gdbarch.
6349         (evaluate_subexp_java): Replace JAVA_OBJECT_SIZE with call to
6350         get_java_object_header_size.
6351         * jv-valprint.c (java_value_print): Likewise.
6352
6353 2009-06-23  Sami Wagiaalla  <swagiaal@redhat.com>
6354
6355         * dwarf2read.c (process_die): Handle import statements
6356         (DW_TAG_imported_declaration, case DW_TAG_imported_module)
6357         (read_import_statement): New.
6358         (read_func_scope): Update using_directives to point to current context
6359         (read_lexical_block_scope): Ditto.
6360         * cp-support.h: Added prototype for cp_add_using.
6361         * cp-namespace.c: Removed local context_stack.
6362         (cp_initialize_namespace): Deleted.
6363         (cp_finalize_namespace): Deleted.
6364         (cp_add_using_directive): Use using_directives instead of using_list.
6365         (cp_add_using): No longer static.
6366         * buildsym.h: Created global using_direct variable.
6367         Created using_direct variable in context_stack.
6368         * buildsym.c (finish_block): Set using directives for the block under
6369         construction.
6370         (start_symtab): Removed call to cp_initialize_namespace().
6371         (end_symtab): Removed call to cp_finalize_namespace().
6372         (push_context): Save and reset using_directives.
6373         * block.c (block_using): Return using directives for given
6374         block instead of static block.
6375
6376 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
6377
6378         * target-descriptions.h (struct type): Do not declare.
6379         (struct tdesc_type): Declare.
6380         (tdesc_named_type): Change return type to struct tdesc_type *.
6381         (tdesc_record_type): Remove.
6382         (tdesc_create_vector): Add prototype.
6383         (tdesc_create_union): Likewise.
6384         (tdesc_add_field): Likewise.
6385
6386         * target-descriptions.c (struct tdesc_reg): Replace gdb_type
6387         member by tdesc_type member.
6388         (struct tdesc_type_field, tdesc_type_field): Add type and vector def.
6389         (struct tdesc_type, tdesc_type_p): Likewise.
6390         (struct tdesc_arch_reg, tdesc_arch_reg): Likewise.
6391         (struct tdesc_feature): Change type of "types" to VEC(tdesc_type_p).
6392         (struct tdesc_arch_data): Replace registers member by arch_regs.
6393
6394         (tdesc_predefined_types): Change to array of pre-defined
6395         struct tdesc_type structures.  Add "code_ptr" and "data_ptr".
6396         (tdesc_named_type): Return struct tdesc_type * instead of GDB type.
6397         (tdesc_gdb_type): New function.
6398
6399         (target_find_description): Update for data structure changes.
6400         (tdesc_data_cleanup): Likewise.
6401         (tdesc_numbered_register): Likewise.
6402         (tdesc_use_registers): Likewise.
6403         (tdesc_create_reg): Likewise.
6404         
6405         (tdesc_find_arch_register): New function.
6406         (tdesc_find_register): Use it.
6407         (tdesc_register_type): Use tdesc_gdb_type to generate GDB type from
6408         tdesc_type on demand; cache generated types in tdesc_arch_reg.
6409
6410         (tdesc_free_type): New function.
6411         (tdesc_free_feature): Call it.
6412
6413         (tdesc_create_vector): New function.
6414         (tdesc_create_union): Likewise.
6415         (tdesc_add_field): Likewise.
6416         (tdesc_record_type): Remove.
6417
6418         (tdesc_type_id): Remove.
6419         (maint_print_c_tdesc_cmd): Update for data structure changes.  Update
6420         generated code to create tdesc_type structures instead of GDB types.
6421
6422         * xml-tdesc.c: Do not include "gdbtypes.h".
6423         (struct tdesc_parsing_data): Change type of current_union to
6424         struct tdesc_type *.
6425         (tdesc_start_reg): Do not special-case "code_ptr" or "data_ptr".
6426         (tdesc_start_union): Call tdesc_create_union.
6427         (tdesc_start_field): Call tdesc_add_field.
6428         (tdesc_start_vector): Call tdesc_create_vector.
6429         (tdesc_end_union): Remove.
6430         (feature_children): Remove reference to tdesc_end_union.
6431
6432         * features/arm-with-iwmmxt.c: Regenerate.
6433         * features/mips-linux.c: Regenerate.
6434         * features/mips64-linux.c: Regenerate.
6435         * features/rs6000/powerpc-32.c: Regenerate.
6436         * features/rs6000/powerpc-32l.c: Regenerate.
6437         * features/rs6000/powerpc-403.c: Regenerate.
6438         * features/rs6000/powerpc-403gc.c: Regenerate.
6439         * features/rs6000/powerpc-505.c: Regenerate.
6440         * features/rs6000/powerpc-601.c: Regenerate.
6441         * features/rs6000/powerpc-602.c: Regenerate.
6442         * features/rs6000/powerpc-603.c: Regenerate.
6443         * features/rs6000/powerpc-604.c: Regenerate.
6444         * features/rs6000/powerpc-64.c: Regenerate.
6445         * features/rs6000/powerpc-64l.c: Regenerate.
6446         * features/rs6000/powerpc-7400.c: Regenerate.
6447         * features/rs6000/powerpc-750.c: Regenerate.
6448         * features/rs6000/powerpc-860.c: Regenerate.
6449         * features/rs6000/powerpc-altivec32.c: Regenerate.
6450         * features/rs6000/powerpc-altivec32l.c: Regenerate.
6451         * features/rs6000/powerpc-altivec64.c: Regenerate.
6452         * features/rs6000/powerpc-altivec64l.c: Regenerate.
6453         * features/rs6000/powerpc-e500.c: Regenerate.
6454         * features/rs6000/powerpc-e500l.c: Regenerate.
6455         * features/rs6000/powerpc-isa205-32l.c: Regenerate.
6456         * features/rs6000/powerpc-isa205-64l.c: Regenerate.
6457         * features/rs6000/powerpc-isa205-altivec32l.c: Regenerate.
6458         * features/rs6000/powerpc-isa205-altivec64l.c: Regenerate.
6459         * features/rs6000/powerpc-isa205-vsx32l.c: Regenerate.
6460         * features/rs6000/powerpc-isa205-vsx64l.c: Regenerate.
6461         * features/rs6000/powerpc-vsx32.c: Regenerate.
6462         * features/rs6000/powerpc-vsx32l.c: Regenerate.
6463         * features/rs6000/powerpc-vsx64.c: Regenerate.
6464         * features/rs6000/powerpc-vsx64l.c: Regenerate.
6465         * features/rs6000/rs6000.c: Regenerate.
6466
6467 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
6468
6469         * ada-lang.c (decode_packed_array): If the value is a pointer to
6470         an array, then use value_ind to dereference it, not ada_value_ind.
6471         (ada_template_to_fixed_record_type_1): Handle the case where a
6472         dynamic field is an aligner type.
6473         (to_fixed_array_type): Add handling for packed array types.
6474         (ada_get_base_type): Do not follow the XVS type if the type is
6475         an aligner type.
6476         (ada_evaluate_subexp): Split a few statements up for clarity
6477         and debuggability.
6478         <OP_FUNCALL>: Add handling of the case of a packed array that
6479         has already been fixed.
6480
6481 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
6482
6483         * ada-lang.c (evaluate_subexp): Delete.  Use the version from eval.c.
6484         (evaluate_subexp_type): Reimplement using evaluate_subexp.
6485         * value.h (evaluate_subexp): Add declaration.
6486         * eval.c (evaluate_subexp): Make non-static.
6487         * objc-lang.c (print_object_command): Use evaluate_subexp.
6488
6489 2009-06-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
6490
6491         Revert 2009-05-14 breakpoint commit (no longer needed).
6492         * breakpoint.h (breakpoint_re_set_objfile): Remove
6493         * breakpoint.c (breakpoint_re_set_objfile): Likewise
6494         (create_overlay_event_breakpoint): Remove objfile parameter,
6495         iterate over all objfiles.
6496         * objfiles.c (objfile_relocate): Update.
6497         * symfile.c (new_symfile_objfile): Likewise.    
6498         
6499 2009-06-23  Tom Tromey  <tromey@redhat.com>
6500
6501         PR gdb/10309:
6502         * c-lang.c (classify_type): Iterate over typedefs.
6503         * c-valprint.c (textual_element_type): Iterate over typedefs.
6504
6505 2009-06-22  Tristan Gingold  <gingold@adacore.com>
6506
6507         * darwin-nat.c (darwin_xfer_partial): Use host_address_to_string
6508         instead of "%p".
6509
6510 2009-06-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
6511
6512         PR gdb/9988:
6513         * buildsym.c (block_compar): New function.
6514         (end_symtab): Replace the bubble sort by a qsort based code.
6515
6516 2009-06-22  Sami Wagiaalla  <swagiaal@redhat.com>
6517
6518         * MAINTAINERS (Write After Approval): Add self.
6519
6520 2009-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
6521
6522         * spu-tdep.c (spu_get_longjmp_target): New function.
6523         (spu_gdbarch_init): Install it.
6524
6525 2009-06-22  H.J. Lu  <hongjiu.lu@intel.com>
6526
6527         PR server/10306
6528         * remote.c (getpkt_or_notif_sane_1): Initialize val to -1.
6529
6530 2009-06-21  Michael Snyder  <msnyder@vmware.com>
6531
6532         * inferior.h: Update ancient comment.
6533
6534 2009-06-20  Aleksandar Ristovski  <aristovski@qnx.com>
6535             Pedro Alves  <pedro@codesourcery.com>
6536
6537         * solib-svr4.c (IGNORE_FIRST_LINK_MAP_ENTRY): Avoid dereferencing
6538         NULL pointer.
6539         (scan_dyntag): Skip if input bfd isn't elf flavoured.
6540         (locate_base): Call elf_locate_base even without an exec_bfd.
6541
6542 2009-06-19  Samuel Bronson  <naesten@gmail.com>
6543
6544         PR cli/9903:
6545         * cli/cli-decode.c (apropos_cmd): Skip traversing abbreviations
6546         for prefix commands to avoid duplicates in the output.
6547
6548 2009-06-19  Samuel Bronson  <naesten@gmail.com>
6549
6550         PR cli/9903:
6551         * cli/cli-decode.c (apropos_cmd): Fix avoidance of double
6552         printing.
6553
6554 2009-06-19  Jerome Guitton  <guitton@adacore.com>
6555
6556         * breakpoint.c (expand_line_sal_maybe): When explicit_line,
6557         skip prologue on each sals.
6558         (skip_prologue_sal): Return explicit_line and explicit_pc
6559         unmodified.
6560
6561 2009-06-19  Tristan Gingold  <gingold@adacore.com>
6562
6563         * darwin-nat.c (_initialize_darwin_inferior): Remove commented-out
6564         line.
6565
6566 2009-06-19  Tristan Gingold  <gingold@adacore.com>
6567         * machoread.c (macho_symtab_read): Adjust for bfd changes.
6568         * darwin-nat.h (struct darwin_exception_msg): New type to describe
6569         a mach exception.
6570         (struct private_thread_info): New type to describe the state of the
6571         thread.
6572         (DEF_VEC_I thread_t): Removed, replaced by ...
6573         (DEF_VEC_O darwin_thread_t): ... this new type.
6574         (struct darwin_inferior): Renamed to ...
6575         (struct private_inferior): ... this type.  Fields added.
6576         (darwin_not_port): Moved into the private inferior structure.
6577         * darwin-nat.c: Add includes, improve comments.
6578         Rewrite to handle multiple threads and processes.
6579         (darwin_resume_to): New function and protype.
6580         (darwin_resume, darwin_wait_to, darwin_wait): Ditto.
6581         (darwin_kill_inferior): Add ops argument.
6582         (darwin_pid_to_str): New function.
6583         (darwin_thread_alive): Ditto.
6584         (darwin_inf, darwin_not_port): Removed.
6585         (darwin_inf_fake_stop): New variable.
6586         (msgin, msgout, msg_state, exc_msg): Removed.
6587         (mach_check_error): Use warning instead of error.
6588         (darwin_ptrace): Adjust debug level.
6589         (cmp_thread_t): Fix names (typo).
6590         (darwin_check_new_threads): Argument is now an inferior,
6591         adjust for new structures, add no change check, ignore dead ports,
6592         handle first thread case.
6593         (find_inferior_task_it): New function.
6594         (find_inferior_notify_it): Ditto.
6595         (darwin_find_inferior_by_task): Ditto.
6596         (darwin_find_inferior_by_notify): Ditto.
6597         (darwin_find_thread): Ditto.
6598         (darwin_suspend_inferior): Ditto.
6599         (darwin_resume_inferior): Ditto.
6600         (catch_exception_raise_state): Removed.
6601         (catch_exception_raise_state_identity): Removed.
6602         (darwin_suspend_inferior_it): New function.
6603         (darwin_resume_inferior_it): Ditto.
6604         (darwin_dump_message): New function, extracted from darwin_wait.
6605         (darwin_decode_exception_message): New function.
6606         (darwin_encode_reply): New function.
6607         (catch_exception_raise): Removed.
6608         (darwin_send_reply): New function, extracted from darwin_resume.
6609         (darwin_resume_thread): New function, extracted from darwin_resume.
6610         (struct resume_inferior_threads_param): New type.
6611         (darwin_resume_inferior_threads_it): New function.
6612         (darwin_resume_inferior_threads): New function.
6613         (darwin_suspend_inferior_threads): New function.
6614         (darwin_resume): Mostly rewritten to handle multiple threads and
6615         some corner cases.
6616         (darwin_decode_message): New function extracted from darwin_wait.
6617         (cancel_breakpoint): New function.
6618         (darwin_wait): Mostly rewritten.  Handle multiple threads.
6619         (darwin_mourn_inferior): Adjust for per process structures.
6620         (darwin_reply_to_all_pending_messages): New function.
6621         (darwin_stop_inferior): Adjust for per inferior structures.
6622         (darwin_attach_pid): Ditto.
6623         (darwin_init_thread_list): Ditto.
6624         (darwin_attach): Ditto.
6625         (darwin_detach): Ditto.
6626         (darwin_files_info): Now empty.
6627         (darwin_pid_to_str): Adjust returns string to match one expected by
6628         the testsuite.
6629         (darwin_read_write_inferior): Rename err variable to match other uses.
6630         Adjust debug message.  Handle submaps.
6631         (darwin_xfer_memory): Adjust for per inferior structures.
6632         (set_enable_mach_exceptions): Ditto.
6633         (darwin_pid_to_exec_file): New function.
6634         (darwin_get_ada_task_ptid): Ditto.
6635         (darwin_supports_multi_process): Ditto.
6636         (_initialize_darwin_inferior): Remove useless assertion, adjust for
6637         per inferior structures.  Add new target operations.
6638
6639 2009-06-18  Hui Zhu  <teawater@gmail.com>
6640             Michael Snyder  <msnyder@vmware.com>
6641
6642         * infrun.c (handle_inferior_event): Improve reverse stepping
6643         through function epilogue.
6644
6645         * infrun.c (handle_inferior_event): Reverse-next through
6646         trampoline.
6647
6648 2009-06-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
6649
6650         * dwarf2-frame.c (struct comp_unit): Use bfd_size_type for
6651         dwarf_frame_size.
6652
6653 2009-06-17  Tom Tromey  <tromey@redhat.com>
6654
6655         * dwarf2read.c (zlib_decompress_section): Use a cleanup.
6656
6657 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6658
6659         * gdbarch.sh (pointer_to_address): Change to type 'm'.
6660         (address_to_pointer): Likewise.
6661         * gdbarch.c, gdbarch.h: Regenerate.
6662
6663         * inferior.h (unsigned_pointer_to_address): Add GDBARCH argument.
6664         (signed_pointer_to_address): Likewise.
6665         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
6666         * findvar.c (unsigned_pointer_to_address): Likewise.
6667         (signed_pointer_to_address): Likewise.
6668         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
6669
6670         * avr-tdep.c (avr_address_to_pointer): Likewise.
6671         (avr_pointer_to_address): Likewise.
6672         * iq2000-tdep.c (iq2000_pointer_to_address): Likewise.
6673         (iq2000_address_to_pointer): Likewise.
6674         * m32c-tdep.c (m32c_m16c_address_to_pointer): Likewise.
6675         (m32c_m16c_pointer_to_address): Likewise.
6676         * spu-tdep.c (spu_pointer_to_address): Likewise.
6677         * xstormy16-tdep.c (xstormy16_pointer_to_address): Likewise.
6678         (xstormy16_address_to_pointer): Likewise.
6679
6680 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6681
6682         * printcmd.c (print_scalar_formatted): Always truncate
6683         unsigned data types.
6684
6685         * cli-dump.c (struct callback_data): Change type of load_offset
6686         to CORE_ADDR.
6687         (restore_binary_file): Update type casts.
6688         (restore_command): Parse load_offset as address, not long.
6689
6690         * utils.c (string_to_core_addr): Do not sign-extend value.
6691         * varobj.c (find_frame_addr_in_frame_chain): Truncate frame_base
6692         before comparing against requested frame address.
6693
6694 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6695
6696         * gdbarch.sh (gcore_bfd_target): New gdbarch callback.
6697         * gdbarch.h, gdbarch.c: Regenerate.
6698
6699         * gcore.c (default_gcore_target): Make return value const.
6700         Call gdbarch_gcore_bfd_target if present.
6701         (default_gcore_arch, default_gcore_mach): Use target_gdbarch.
6702
6703         * corelow.c (core_read_description): Call gdbarch_core_read_description
6704         on core_gdbarch instead of current_gdbarch.
6705
6706         * ppc-linux-tdep.c (ppc_linux_init_abi): Install gcore_bfd_target.
6707
6708 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6709
6710         * gdbtypes.c (create_string_type): Receive character type as argument.
6711         * gdbtypes.h (create_string_type): Add character type argument.
6712         * dwarf2read.c (read_tag_string_type): Pass character type to
6713         create_string_type.
6714
6715         * value.h (value_string): Add character type argument.
6716         * valops.c (value_string): Add character type argument.  Pass it to
6717         create_string_type.  Do not allocate space in inferior.
6718         * valarith.c (value_concat): Pass character type to value_string.
6719
6720         * value.h (value_typed_string): Rename to ...
6721         (value_cstring): ... this.
6722         * valops.c (value_typed_string): Rename to ...
6723         (value_cstring): ... this.
6724         * c-lang.c (evaluate_subexp_c): Update.
6725
6726         * python/python-value.c (builtin_type_pychar): New define.
6727         (convert_value_from_python): Call value_cstring instead
6728         of value_from_string.
6729         * value.c (value_from_string): Remove.
6730         * value.h (value_from_string): Remove.
6731
6732         * eval.c (evaluate_subexp_standard): Pass character type to
6733         value_string.  Pass expression architecture to value_nsstring
6734         and lookup_child_selector.
6735         * objc-lang.h (lookup_objc_class): Add GDBARCH parameter.
6736         (lookup_child_selector): Likewise.
6737         (value_nsstring): Likewise.
6738         * objc-lang.c (lookup_objc_class): Add GDBARCH parameter.
6739         Pass character type to value_string..
6740         (lookup_child_selector): Likewise.
6741         (value_nsstring): Add GDBARCH parameter, use it instead of
6742         objfile architecture.  Pass architecture to lookup_objc_class
6743         and lookup_child_selector. Pass character type to value_string.
6744         (end_msglist): Pass architecture to lookup_objc_class.
6745         * objc-exp.y: Pass architecture to lookup_objc_class.
6746
6747 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6748
6749         * gdbtypes.h (struct language_defn): Add forward declaration.
6750         (lookup_typename): Add LANGUAGE and GDBARCH parameters.
6751         (lookup_unsigned_typename): Likewise.
6752         (lookup_signed_typename): Likewise.
6753         * gdbtypes.c (lookup_typename): Add LANGUAGE and GDBARCH parameters.
6754         Use them instead of current_language and current_gdbarch.
6755         (lookup_unsigned_typename): Add LANGUAGE and GDBARCH parameters.
6756         Pass them to lookup_typename.
6757         (lookup_signed_typename): Likewise.
6758
6759         * c-exp.y: Pass parse_language and parse_gdbarch to
6760         lookup_unsigned_typename and lookup_signed_typename.
6761         * objc-exp.y: Likewise.
6762         * m2-exp.y: Pass parse_language and parse_gdbarch to lookup_typename.
6763
6764         * c-lang.c (evaluate_subexp_c): Pass expression language and
6765         gdbarch to lookup_typename.
6766         * printcmd.c (printf_command): Pass current language and
6767         gdbarch to lookup_typename.
6768         * python/python-type.c (typy_lookup_typename): Likewise.
6769         Include "language.h".
6770
6771 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6772
6773         * sparc64-nat.c (sparc64_gregset_supplies_p): Add GDBARCH parameter.
6774         Use it instead of current_gdbarch.  Pass architecture to
6775         sparc32_gregset_supplies_p.
6776         (sparc64_fpregset_supplies_p): Add GDBARCH parameter.  Use it instead
6777         of current_gdbarch.  Pass architecture to sparc32_fpregset_supplies_p.
6778         * sparc64nbsd-nat.c (sparc64nbsd_gregset_supplies_p,
6779         sparc64nbsd_fpregset_supplies_p): Likewise.
6780         * sparc-nat.c (sparc_gregset_supplies_p, sparc_fpregset_supplies_p):
6781         Add GDBARCH parameter.
6782         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
6783         (sparc_fetch_inferior_registers): Pass regcache architecture to
6784         sparc_gregset_supplies_p and sparc_fpregset_supplies_p.
6785         (sparc_store_inferior_registers): Likewise.
6786         * sparc-nat.h (sparc_gregset_supplies_p, sparc_fpregset_supplies_p:
6787         Add GDBARCH parameter.
6788         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
6789
6790 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6791
6792         * ada-tasks.c (read_known_tasks_array): Use target_gdbarch instead
6793         of current_gdbarch.
6794         * aix-thread.c (pd_enable): Likewise.
6795         * amd64-linux-nat.c (ps_get_thread_area): Likewise.
6796         * bsd-uthread.c (bsd_uthread_activate): Likewise.
6797         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
6798         * linux-thread-db.c (enable_thread_event): Likewise.
6799         * monitor.c (monitor_write_memory, monitor_read_memory): Likewise.
6800         * nto-procfs.c (procfs_open): Likewise.
6801         * procfs.c (invalidate_cache, procfs_insert_watchpoint,
6802         info_proc_mappings, info_mappings_callback): Likewise.
6803         * record.c (record_open): Likewise.
6804         * rs6000-nat.c (ARCH64): Likewise.
6805         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
6806         (darwin_bfd_open): Likewise.
6807         * memattr.c (mem_info_command): Likewise.
6808
6809         * windows-nat.c (win32_resume): Use current regcache architecture
6810         instead of current_gdbarch.
6811
6812         * dbug-rom.c (dbug_regname): Remove check against number of
6813         registers in current_gdbarch.
6814         * solib-pa64.c (read_dynamic_info): Remove unused variable.
6815
6816 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6817
6818         * dummy-frame.c (deprecated_pc_in_call_dummy): Add GDBARCH parameter,
6819         use it instead of current_gdbarch.
6820         * frame.h (deprecated_pc_in_call_dummy): Add GDBARCH parameter.
6821         * arm-tdep.c (arm_skip_prologue): Pass architecture to
6822         deprecated_pc_in_call_dummy.
6823
6824         * symtab.c (skip_prologue_using_sal): Add GDBARCH parameter.
6825         Use it instead of current_gdbarch.
6826         * symtab.h (skip_prologue_using_sal): Add GDBARCH parameter.
6827         * breakpoint.c (expand_line_sal_maybe): Pass architecture to
6828         skip_prologue_using_sal.
6829         * arm-tdep.c (skip_prologue_using_sal): Likewise.
6830         * lm32-tdep.c (lm32_skip_prologue): Likewise.
6831         * m32-tdep.c (m32c_skip_prologue): Likewise.
6832         * mips-tdep.c (mips_skip_prologue): Likewise.
6833         * moxie-tdep.c (moxie_skip_prologue): Likewise.
6834         * mt-tdep.c (mt_frame_unwind_cache): Likewise.
6835         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
6836         * frv-tdep.c (frv_analyze_prologue): Add GDBARCH parameter, pass
6837         it to skip_prologue_using_sal.  Update call sites ...
6838         (frv_skip_prologue, frv_frame_unwind_cache): ... here.
6839
6840         * mn10300-tdep.c (struct mn10300_prologue): Add GDBARCH member.
6841         (check_for_saved): Use it instead of current_gdbarch.
6842         (mn10300_analyze_prologue): Set it.
6843
6844         * value.c (using_struct_return): Add GDBARCH parameter.  Use it
6845         instead of current_gdbarch.
6846         * value.h (using_struct_return): Add GDBARCH parameter.
6847         * eval.c (evaluate_subexp_standard): Pass architecture to
6848         using_struct_return.
6849         * infcall.c (call_function_by_hand): Likewise.
6850         * stack.c (return_command): Likewise.
6851         * sparc-tdep.c (sparc32_push_dummy_code): Likewise.
6852
6853         * symtab.c (in_prologue): Add GDBARCH parameter.  Use it instead of
6854         current_gdbarch.
6855         * symtab.h (in_prologue): Add GDBARCH parameter.
6856         * infrun.c (handle_inferior_event): Pass architecture to in_prologue.
6857
6858         * eval.c (evaluate_subexp_standard): Use expression architecture
6859         instead of current_gdbarch.
6860
6861         * c-lang.c (evaluate_subexp_c): Use expression architecture and
6862         language instead of current_gdbarch and current_language.
6863
6864         * printcmd.c (do_one_display): Use expression architecture instead
6865         of current_gdbarch.
6866
6867         * infcmd.c (print_return_value): Use architecture of stop_regcache
6868         instead of current_gdbarch.
6869         (print_vector_info, print_float_info): Remove GDBARCH argument,
6870         use frame architecture instead.
6871         (vector_info, float_info): Update calls.
6872
6873         * objc-lang.c (objc_skip_trampoline): Use frame architecture
6874         instead of current_gdbarch.
6875
6876         * parse.c (write_dollar_variable): Use parse architecture instead
6877         of current_gdbarch.
6878
6879         * source.c (line_info): Use objfile architecture instead of
6880         current_gdbarch.
6881
6882         * symtab.c (find_function_start_sal): Use gdbarch instead of
6883         current_gdbarch.
6884         (print_msymbol_info): Use objfile architecture instead of
6885         current_gdbarch.
6886
6887         * valops.c (value_assign): Use frame architecture instead of
6888         current_gdbarch.
6889
6890 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6891
6892         * buildsym.c (record_line): Remove call to gdbarch_addr_bits_remove.
6893
6894         * coffread.c (coff_symtab_read): Call gdbarch_addr_bits_remove before
6895         calling record_line.
6896         (enter_linenos): Likewise.
6897         * dbxread.c (process_one_symbol): Likewise.
6898         * dwarf2read.c (dwarf_decode_lines): Likewise.
6899         * mdebugread.c (psymtab_to_symtab_1): Likewise.
6900         * xcoffread.c (enter_line_range): Likewise.
6901
6902 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6903
6904         * ax-gdb.c (gen_bitfield_ref): Add EXP argument, use expression
6905         architecture instead of current_gdbarch.
6906         (gen_struct_ref): Add EXP argument, pass to get_bitfield_ref.
6907         (gen_expr): Pass expression to get_struct_ref.
6908
6909         * symtab.h (struct symbol_ops): Add GDBARCH parameter to
6910         tracepoint_var_ref callback.
6911         * ax-gdb.c (gen_var_ref): Pass architecture to tracepoint_var_ref
6912         symbol operation callback.
6913         * dwarf2loc.c (dwarf2_tracepoint_var_ref): Add GDBARCH parameter.
6914         Use it instead of current_gdbarch.
6915         (locexpr_tracepoint_var_ref): Add GDBARCH parameter.  Pass it to
6916         dwarf2_tracepoint_var_ref.
6917         (loclist_tracepoint_var_ref): Likewise.
6918
6919 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6920
6921         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
6922         Use it instead of address bits of current_gdbarch.
6923         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
6924         * arm-tdep.c (thumb_analyze_prologue): Pass address bits to
6925         make_pv_area.
6926         (arm_scan_prologue): Likewise.
6927         * m32c-tdep.c (m32c_analyze_prologue): Likewise.
6928         * mep-tdep.c (mep_analyze_prologue): Likewise.
6929         * mn10300-tdep.c (mn10300_analyze_prologue): Likewise.
6930         * s390-tdep.c (s390_analyze_prologue): Likewise.
6931
6932 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6933
6934         * mi/mi-main.c (mi_cmd_data_list_register_names): Use selected
6935         frame architecture instead of current_gdbarch.
6936         (mi_cmd_data_list_changed_registers): Likewise.
6937         (mi_cmd_data_list_register_values): Likewise.  Pass selected
6938         frame to get_register.
6939         (get_register): Add FRAME argument, use it as frame to retrieve
6940         registers from (instead of selected frame).  Use frame architecture
6941         instead of current_gdbarch.
6942         (mi_cmd_data_write_register_values): Use current regcache
6943         architecture instead of current_gdbarch.
6944
6945 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6946
6947         * tui/tui-regs.c (tui_show_register_group): Remove GDBARCH parameter;
6948         use frame architecture instead.  Replace current_gdbarch uses.
6949         (tui_show_registers): Update call.
6950         (tui_get_register): Remove GDBARCH parameter; use frame architecture
6951         instead.
6952         (tui_show_register_group): Update call.
6953         (tui_check_register_values): Likewise.
6954         (tui_register_format): Remove GDBARCH parameter; use frame
6955         architecture instead.  Replace current_gdbarch uses.
6956         (tui_get_register): Update call.
6957
6958 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6959
6960         * gdbarch.sh (construct_inferior_arguments): Remove.
6961         * gdbarch.c, gdbarch.h: Regenerate.
6962         * infcmd.c (get_inferior_args): Call construct_inferior_arguments
6963         directly instead of gdbarch_construct_inferior_arguments.
6964         (construct_inferior_arguments): Remove GDBARCH argument.
6965         * inferior.h (construct_inferior_arguments): Likewise.
6966
6967 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6968
6969         * symfile.c (section_is_mapped): Use objfile architecture instead
6970         of current_gdbarch.
6971         (TARGET_LONG_BYTES): Remove.
6972         (read_target_long_array): Add SIZE argument.  Use it instead of
6973         TARGET_LONG_BYTES.
6974         (simple_read_overlay_table): Retrieve long size from objfile
6975         architecture; pass it to read_target_long_array.
6976         (simple_read_overlay_region_table): Likewise.
6977         (simple_overlay_update_1): Likewise.
6978
6979 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6980
6981         * infrun.c (cleanup_displaced_step_closure): Remove.
6982         (displaced_step_clear_cleanup): Move to before displaced_step_prepare.
6983         (displaced_step_prepare): Use displaced_step_clear_cleanup instead
6984         of cleanup_displaced_step_closure.
6985         (handle_inferior_event, keep_going): Use thread architecture instead
6986         of current_gdbarch.
6987
6988 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
6989
6990         * infrun.c (handle_inferior_event): Use current frame architecture
6991         or thread architecture instead of current_gdbarch.  Pass to
6992         handle_step_into_function and handle_step_into_function_backward.
6993         (handle_step_into_function): Add GDBARCH parameter.  Use it instead
6994         of current_gdbarch.
6995         (handle_step_into_function_backward): Likewise.
6996         (insert_step_resume_breakpoint_at_frame): Use frame architecture
6997         instead of current_gdbarch.
6998         (insert_step_resume_breakpoint_at_caller): Likewise.
6999
7000 2009-06-17  Pierre Muller  <muller@ics.u-strasbg.fr>
7001         Pedro Alves  <pedro@codesourcery.com>
7002         
7003         * infcmd.c (post_create_inferior): Call breakpoint_re_set after target
7004         is pushed for watchpoint promotion to hardware watchpoint.
7005
7006 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
7007
7008         * dwarf2read.c (dwarf_info_section, dwarf_abbrev_section)
7009         (dwarf_line_section, dwarf_pubnames_section, dwarf_aranges_section)
7010         (dwarf_loc_section, dwarf_macinfo_section, dwarf_str_section)
7011         (dwarf_ranges_section, dwarf_frame_section)
7012         (dwarf_eh_frame_section): Removed.
7013         (dwarf2_resize_section): Likewise.
7014         (dwarf2_read_section): Now static, use bfd_mmap() if possible.
7015         (dwarf2_get_section_info): New function.
7016         (munmap_section_buffer): Likewise.
7017         (dwarf2_per_objfile_cleanup): Likewise.
7018         (section_is_p): Signature change.
7019         * dwarf2-frame.c (dwarf2_build_frame_info): Use
7020         dwarf2_get_section_info instead of dwarf2_read_section.
7021         
7022 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
7023
7024         * solib.c (symbol_add_stub): New FLAGS parameter.
7025         (solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub
7026         directly.
7027         (solib_add): Defer breakpoint_re_set until after all solibs.
7028         * bsd-uthread.c (bsd_uthread_solib_loaded): Adjust.
7029         * rs6000-nat.c (objfile_symbol_add): Adjust.
7030         * symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS.
7031         (new_symfile_objfile): Likewise.
7032         (symbol_file_add_with_addrs_or_offsets): Likewise.
7033         (symbol_file_add_from_bfd): Likewise.
7034         (symbol_file_add): Likewise.
7035         * symfile.h (enum symfile_add_flags): New. Adjust prototypes.
7036         * symfile-mem.c (symbol_file_add_from_memory): Adjust.
7037         * windows-nat.c (safe_symbol_file_add_stub): Adjust.
7038         * machoread.c (macho_oso_symfile, macho_symfile_read): Adjust.
7039         
7040 2009-06-16  Keith Seitz  <keiths@redhat.com>
7041
7042         * linespec.c (collect_methods): Delete.
7043         (add_matching_methods): Reove destructor special case.
7044         (find_method): Call find_methods directly instead of
7045         collect_methods.
7046         * valops.c (value_struct_elt): Remove destructor
7047         special cases.
7048         (check_field): Likewise.
7049         (value_struct_elt_for_reference): Likewise.
7050         (destructor_name_p): Remove misleading comment about dtors
7051         being "special cases". 
7052         * gdbtypes.h (get_destructor_fn_field): Remove. No longer needed.
7053         * gdbtypes.c (get_destructor_fn_field): Likewise. 
7054
7055 2009-06-16  Pedro Alves  <pedro@codesourcery.com>
7056
7057         * mi/mi-main.c (mi_cmd_data_read_memory): Dispatch
7058         TARGET_OJECT_MEMORY reads to the topmost target, not to the
7059         flattened current_target.
7060
7061 2009-06-16  Tristan Gingold  <gingold@adacore.com>
7062
7063         * avr-tdep.c (struct gdbarch_tdep): Replace the unused field with
7064         call_length field.
7065         (avr_register_name): Add const to register_names.
7066         (avr_scan_arg_moves): Move inside avr_scan_prologue.
7067         (avr_scan_prologue): Add pc_end argument.
7068         Only read prologue bytes that can be read.
7069         Limit the scan to the known prologue length.
7070         Makes pattern variables static and const.
7071         Fix indentation.
7072         (avr_skip_prologue): Pass func_end argument to avr_scan_prologue.
7073         Fix indentation.
7074         (avr_breakpoint_from_pc): Constify avr_break_insn.
7075         (avr_extract_return_value): Fix function comment.
7076         (avr_frame_unwind_cache): Fix GNU style violations.
7077         Pass current_pc argument to avr_scan_prologue to stop prologue
7078         analysis to the current pc.  This fixes the bug with the 'next'
7079         command.
7080         Correctly set the SP register of the previous frame (use call_length).
7081         (avr_frame_prev_register): Fix indentation.
7082         Correctly read PC from the stack on avr6 architectures.
7083         (avr_push_dummy_call): Fix indentation.
7084         (avr_gdbarch_init): Set call_length according to the architecture.
7085
7086 2009-06-15  Phil Muldoon  <pmuldoon@redhat.com>
7087
7088         * infcall.c (show_unwind_on_terminating_exception_p): New
7089         function.
7090         (call_function_by_hand): Create breakpoint and clean-up call for
7091         std::terminate.breakpoint. Add unwind_on_terminating_exception_p
7092         gate. Pop frame on breakpoint hit.
7093         (_initialize_infcall): Add add_setshow_boolean_cmd for
7094         unwind-on-terminating-exception.
7095
7096 2009-06-12  Kevin Buettner  <kevinb@redhat.com>
7097
7098         * dwarf2read.c (dwarf2_psymtab_to_symtab): Propagate
7099         `has_section_at_zero' flag from stripped objfile to separate,
7100         debug info only, objfile.
7101
7102 2009-06-12  Pedro Alves  <pedro@codesourcery.com>
7103
7104         * exec.h (section_table_xfer_memory_partial): Improve description,
7105         mention SECTION_NAME.
7106         * exec.c (section_table_xfer_memory_partial): Remove stale
7107         description.
7108
7109 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7110
7111         * nto-tdep.h (nto_generic_supply_gpregset)
7112         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
7113         * nto-tdep.c (nto_generic_supply_gpregset)
7114         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
7115
7116 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7117
7118         * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define.
7119         (i386nto_sigcontext_addr): Change the way context address is calculated.
7120         (i386nto_init_abi): Remove usage of deprecated sc_reg_offset and
7121         sc_sp_offset and set sc_reg_offset and sc_num_regs.
7122
7123 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7124
7125         * i386-nto-tdep.c (i386_nto_target): Remove definition.
7126         (init_i386nto_ops): Use macros to set fields to global
7127         current_nto_target directly.
7128         (i386nto_init_abi): Remove unused nto_set_target call.
7129         * nto-tdep.h (nto_set_target): Remove unused declaration.
7130         * nto-tdep.c (nto_set_target): Remove unused function.
7131
7132 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7133
7134         * breakpoint.c (break_command_really): Rename local variable
7135         breakpoint_chain to bkpt_chain.
7136
7137 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
7138
7139         Add support for XMM registers.
7140         * i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set.
7141         (i386nto_register_area): Correctly calculate offsets and sizes for
7142         all supported registers.
7143
7144 2009-06-11  Tom Tromey  <tromey@redhat.com>
7145
7146         * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove
7147         'static' from local variable definitions.
7148
7149 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7150
7151         * symtab.c (append_expanded_sal): Remove unused local variables.
7152
7153 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7154
7155         * infrun.c (sched_multi): New global.
7156         (resume): If sched_multi is set, resume only threads of the
7157         current inferior.
7158         (prepare_to_proceed): Don't switch over to wait_ptid if we're
7159         resuming a different inferior, and sched_multi is off.
7160         (show_schedule_multiple): New.
7161         (_initialize_infrun): Register new "set schedule-multiple" command.
7162         * inferior.h (sched_multi): Declare.
7163         * NEWS: Mention new "schedule-multiple" setting.
7164
7165 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
7166
7167         * varobj.c (varobj_create): Properly restore the selected frame.
7168
7169 2009-06-05  Tom Tromey  <tromey@redhat.com>
7170
7171         * inferior.c (print_inferior): Make a table, not a list.  Emit
7172         table headers.
7173
7174 2009-06-10  Jonas Maebe  <jonas.maebe@elis.ugent.be>
7175
7176         * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to
7177         darwin_wait (blocking wait).
7178         (darwin_kill_inferior): Likewise.
7179
7180 2009-06-10  Pedro Alves  <pedro@codesourcery.com>
7181
7182         * infrun.c (handle_inferior_event): Update comment around trying
7183         to revert back to a stepping thread that has exited.
7184
7185 2009-06-10  Cary Coutant  <ccoutant@google.com>
7186
7187         * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
7188         DW_LNE_set_discriminator.
7189
7190 2009-06-10  Pierre Muller  <muller@ics.u-strasbg.fr>
7191
7192         * breakpoint.c: ARI fixes.
7193         (create_overlay_event_breakpoint): Avoid assignment inside if statement.
7194         (print_one_breakpoint_location): Likewise.
7195         (create_longjmp_breakpoint): Likewise.
7196         (tracepoint_save_command): Likewise
7197         (bpstat_find_step_resume_breakpoint): No operator at end of line.
7198         (bpstat_stop_status): Likewise.
7199         (describe_other_breakpoints): Likewise.
7200         (hw_watchpoint_used_count): Likewise.
7201         (expand_line_sal_maybe): Likewise.
7202         (break_command_really): Likewise.
7203         (delete_command): Likewise.
7204         (do_enable_breakpoint): Likewise.
7205         (delete_trace_command): Likewise.
7206         (catch_exception_command_1): Likewise and remove extra parentheses.
7207
7208 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
7209
7210         * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
7211         "ubreak" command that does not exist.
7212
7213 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
7214
7215         * cli/cli-decode.c (add_alias_cmd): Correct assertion.
7216
7217 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7218
7219         * hppa-tdep.c (_initialize_hppa_tdep): Add declaration.
7220
7221 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7222
7223         * procfs.h: New.
7224         * proc-utils.h (procfs_first_available): Don't declare here.
7225         * sol-thread.c: Include procfs.h instead of sys/procfs.h and
7226         proc-utils.h.
7227         * procfs.c: Include procfs.h.
7228         (procfs_target): Make it public.  Don't register
7229         procfs_can_use_hw_breakpoint here.
7230         (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
7231         defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
7232         (procfs_can_use_hw_breakpoint): Remove check of
7233         TARGET_HAS_HARDWARE_WATCHPOINTS.
7234         (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
7235         here.
7236         (_initialize_procfs): Don't add the procfs target here.
7237
7238         * i386-sol2-nat.c: Include target.h and procfs.h.
7239         (_initialize_amd64_sol2_nat): Install the procfs target here,
7240         customized with watchpoints support.
7241         * irix5-nat.c: Include target.h.
7242         (_initialize_core_irix5): Rename to ...
7243         (_initialize_irix5_nat): ... this.  Install the procfs target
7244         here, customized with watchpoints support.
7245         * alpha-nat.c: Include procfs.h.
7246         (_initialize_core_alpha): Rename to...
7247         (_initialize_alpha_nat): ... this.  Install the procfs target
7248         here, customized with watchpoints support.
7249         * sparc-sol2-nat.c: Include target.h and procfs.h.
7250         (_initialize_sparc_sol2_nat): New.
7251
7252         * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
7253         * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
7254         * config/mips/irix5.mh (NAT_FILE): Delete.
7255         * config/mips/irix6.mh (NAT_FILE): Delete.
7256         * config/mips/nm-irix5.h: Delete.
7257
7258 20009-06-07  Pedro  Alves  <pedro@codesourcery.com>
7259
7260         * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
7261         to enum target_object.  Cleanup comments.
7262         * auxv.h: Include "target.h".  Cleanup comments to not mention
7263         NATIVE_XFER_AUXV anymore.
7264
7265 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7266
7267         * inferior.h (procfs_first_available): Move declaration to...
7268         * proc-utils.h: ... here.
7269         * sol-thread.c: Include procfs.h and proc-utils.h.
7270
7271 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7272
7273         * inferior.h (proc_iterate_over_mappings): Delete declaration.
7274         * nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
7275         * procfs.c (proc_iterate_over_mappings): Delete.
7276
7277 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
7278
7279         * target.h (struct target_ops): Make to_has_all_memory,
7280         to_has_memory, to_has_stack, to_has_registers and to_has_execution
7281         methods instead of variables.
7282         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
7283         (target_has_registers_1, target_has_execution_1): Declare
7284         functions.
7285         (target_has_all_memory): Rewrite to call target_has_all_memory_1.
7286         (target_has_memory): Rewrite to call target_has_memory_1.
7287         (target_has_stack): Rewrite to call target_has_all_stack_1.
7288         (target_has_registers): Rewrite to call target_has_registers_1.
7289         (target_has_execution): Rewrite to call target_has_execution_1.
7290         (default_child_has_all_memory, default_child_has_memory)
7291         (default_child_has_stack, default_child_has_registers)
7292         (default_child_has_execution): Declare.
7293         (target_mark_running, target_mark_exited): Delete declarations.
7294         * target.c (default_child_has_all_memory,
7295         default_child_has_memory, default_child_has_stack,
7296         default_child_has_registers, default_child_has_execution): New.
7297         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
7298         target_has_registers_1, target_has_execution_1): New.
7299         (add_target): Default the to_has_all_memory, to_has_all_memory,
7300         to_has_memory, to_has_stack, to_has_registers and to_has_execution
7301         callbacks to return 0.
7302         (update_current_target): Do not inherit to_has_all_memory,
7303         to_has_memory, to_has_stack, to_has_registers or to_has_execution.
7304         (target_mark_running, target_mark_exited): Delete.
7305         (memory_xfer_partial): Adjust.
7306         (target_read_memory, target_write_memory, target_search_memory):
7307         Dispatch to the the top-most target, not the flattened
7308         current_target.
7309         (target_info): Adjust.
7310         (init_dummy_target): Install return_zero as callback for
7311         to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
7312         to_has_execution.
7313         (set_maintenance_target_async_permitted): Use have_live_inferiors
7314         instead of target_has_execution.
7315         * target-memory.c (target_write_memory_blocks): Dispatch memory
7316         writes to the the top-most target, not the flattened
7317         current_target.
7318
7319         * breakpoint.c (insert_breakpoints): Don't check for
7320         target_has_execution here.
7321         (update_global_location_list): Check if there are live inferiors
7322         to debug instead of target_has_execution.
7323         * infcmd.c (kill_command, detach_command): Check if there are
7324         inferiors instead of target_has_execution.
7325         * inferior.h (have_live_inferiors): Declare.
7326         * inferior.c (have_live_inferiors): New.
7327         * infrun.c (normal_stop): Don't check for target_has_execution to
7328         finish the thread states.
7329         * thread.c (is_thread_state, is_stopped, is_exited, is_running)
7330         (any_running, is_executing): Remove checks for
7331         target_has_execution.
7332         * top.c (kill_or_detach): Don't try to kill core inferiors.
7333         (quit_target): Don't check for target_has_execution.
7334
7335         * corelow.c (core_has_memory, core_has_stack, core_has_registers):
7336         New.
7337         (init_core_ops): Install core_has_memory, core_has_stack and
7338         core_has_registers.
7339         * exec.c (exec_has_memory): New.
7340         (init_exec_ops): Install exec_has_memory.
7341         * remote.c (remote_add_inferior): Don't call target_mark_running.
7342         (remote_start_remote): Don't call target_mark_exited or call
7343         target_mark_running.
7344         (remote_open_1): Use have_inferiors instead of
7345         target_has_execution.  Don't use target_mark_exited.
7346         (init_remote_ops): Install deafult_child_has_all_memory,
7347         default_child_has_memory, default_child_has_stack,
7348         default_child_has_registers, default_child_has_execution.
7349         * bsd-kvm.c (bsd_kvm_return_one): New.
7350         (bsd_kvm_add_target): Register bsd_kvm_return_one as
7351         to_has_memory, to_has_stack and to_has_registers callbacks.
7352         * remote-m32r-sdi.c (m32r_return_one): New.
7353         (init_m32r_ops): Register it.
7354         * inf-child.c (inf_child_target): Adjust to register
7355         default_child_has_all_memory, default_child_has_memory,
7356         default_child_has_stack, default_child_has_registers,
7357         default_child_has_execution callbacks.
7358         * gnu-nat.c (init_gnu_ops): Likewise.
7359         * go32-nat.c (init_go32_ops): Likewise.
7360         * hpux-thread.c (init_hpux_thread_ops): Likewise.
7361         * monitor.c (init_base_monitor_ops): Likewise.
7362         * nto-procfs.c (init_procfs_ops): Likewise.
7363         * remote-mips.c (_initialize_remote_mips): Likewise.
7364         * windows-nat.c (init_windows_ops): Likewise.
7365         * remote-sim.c (gdbsim_create_inferior): Don't use
7366         target_mark_running or target_mark_exited.
7367         (gdbsim_mourn_inferior): Don't call target_mark_exited.
7368         (init_gdbsim_ops): Adjust to register
7369         default_child_has_all_memory, default_child_has_memory,
7370         default_child_has_stack, default_child_has_registers,
7371         default_child_has_execution callbacks.
7372
7373         * linux-nat.c (linux_nat_xfer_partial): If reading memory, and
7374         there's no inferior selected, defer to a lower stratum.
7375
7376 2009-06-05  Tom Tromey  <tromey@redhat.com>
7377
7378         * varobj.c (update_dynamic_varobj_children): Wrap error text in
7379         _().
7380         (install_visualizer): Likewise.
7381         (varobj_set_visualizer): Likewise.
7382
7383 2009-06-05  Marc Khouzam  <marc.khouzam@ericsson.com>
7384
7385         * mi/mi-main.c (mi_cmd_exec_continue)
7386         (mi_cmd_exec_interrupt): Adjust parsing of thread group
7387         ids to current reality, where they don't have any 'p' prefix.
7388
7389 2009-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
7390
7391         * corelow.c (core_open): Check for core_gdbarch before calling
7392         gdbarch_target_signal_from_host.
7393
7394 2009-06-05  Tom Tromey  <tromey@redhat.com>
7395
7396         * c-exp.y (parse_number): Don't use K&R definition.
7397         (yylex): Likewise.
7398         (yyerror): Likewise.
7399
7400 2009-06-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7401
7402         * varobj.c (varobj_update): Fix out of scope varobjs to not to change.
7403
7404 2009-06-04  Ulrich Weigand  <uweigand@de.ibm.com>
7405
7406         * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
7407         * ax-gdb.c (gen_var_ref): Likewise.
7408         * findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
7409         * printcmd.c (address_info): Likewise.
7410         * dwarf2loc.c (dwarf_expr_frame_base): Likewise.
7411         * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
7412         * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
7413         * dwarf2loc.h: Likewise.
7414         * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.
7415
7416         * symtab.h: (struct symbol_register_ops): New struct definition.
7417         (struct symbol): Make "ops" member a union of symbol_computed_ops and
7418         symbol_register_ops callback pointers.
7419         (SYMBOL_REGISTER_OPS): New macro.
7420         * tracepoint.c: Include "objfiles.h".
7421         (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
7422         callback to retrieve register numbers.
7423         * ax-gdb.c (gen_var_ref): Likewise.
7424         * findvar.c (read_var_value): Likewise.
7425         * printcmd.c (address_info): Likewise.
7426
7427         * coffread.c (coff_reg_to_regnum): New function.
7428         (coff_register_funcs): New static variable.
7429         (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
7430         Install SYMBOL_REGISTER_OPS callbacks.
7431         * mdebugread.c (mdebug_reg_to_regnum): New function.
7432         (mdebug_register_funcs): New static variable.
7433         (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
7434         Install SYMBOL_REGISTER_OPS callbacks.
7435         * stabsread.c (stab_reg_to_regnum): New function.
7436         (stab_register_funcs): New static variable.
7437         (define_symbol): Do not call gdbarch_stab_reg_to_regnum.
7438         Install SYMBOL_REGISTER_OPS callbacks.
7439
7440 2009-06-03  Doug Evans  <dje@google.com>
7441
7442         * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
7443         after discarding its contents.
7444
7445 2009-06-03  Pedro Alves  <pedro@codesourcery.com>
7446
7447         * target.c: Include "exec.h".
7448         (update_current_target): Don't inherit to_sections or
7449         to_sections_end.
7450         (target_get_section_table): New.
7451         (target_section_by_addr): Fetch the section table from the passed
7452         in target.
7453         (memory_xfer_partial): Handle unmapped overlay sections before
7454         anything else.  Get the overlay mapped address here.  Adjust to
7455         use section_table_xfer_memory_partial.
7456         (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
7457         instead of TARGET_OBJECT_MEMORY.
7458         (target_resize_to_sections): Delete.
7459         (remove_target_sections): Adjust to remove target sections from
7460         `current_target_sections', and use resize_section_table.
7461         * target.h (struct target_ops) <to_sections, to_sections_end>:
7462         Remove fields.
7463         <to_get_section_table>: New method.
7464         (xfer_memory, print_section_info): Delete declarations.
7465         (struct target_section_table): New type.
7466         (target_get_section_table): Declare.
7467         (target_resize_to_sections): Delete declaration.
7468         (remove_target_sections): Delete declaration.
7469         * bfd-target.c (target_bfd_xfer_partial): Get the section table
7470         from to_data.
7471         (target_bfd_get_section_table): New.
7472         (target_bfd_xclose): Adjust.
7473         (target_bfd_reopen): Store the section table in the to_data field.
7474         * corelow.c (core_data): New.
7475         (core_close): Adjust to release core_data and its sections.
7476         (core_open): Allocate core_data, and build its target sections
7477         table.
7478         (deprecated_core_resize_section_table): New.
7479         (core_files_info): Pass core_data to print_section_info.
7480         (core_xfer_partial): Adjust to use
7481         section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
7482         (init_core_ops): Do not install a deprecated_xfer_memory callback
7483         anymore.
7484         * solib.c (update_solib_list): Add the shared library sections
7485         to the current target sections table.
7486         * exec.c (current_target_sections_1): New global.
7487         (current_target_sections): New global.
7488         (exec_close_1): New function, refactored from exec_close.  Remove
7489         the exec_bfd's sections from the current target sections table.
7490         Adjust to not use to_sections.
7491         (exec_close): Remove all target sections.  Call exec_close_1.
7492         (exec_file_clear): Use exec_close_1 instead of unpushing the
7493         target.
7494         (exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
7495         exec_bfd's sections to the current target sections table.  Don't
7496         push the exec_ops target here.
7497         (resize_section_table): New.
7498         (add_target_sections): New.
7499         (remove_target_sections): Moved here.
7500         (section_table_xfer_memory): Adjust to implement the xfer_partial
7501         interface, and rename to...
7502         (section_table_xfer_memory_partial): ... this, replacing the
7503         current function of that same name.
7504         (exec_get_section_table): New.
7505         (exec_xfer_partial): New.
7506         (xfer_memory): Delete.
7507         (print_section_info): Replace the target_ops parameter by a
7508         target_section_table parameter.
7509         (exec_files_info, set_section_command, exec_set_section_address):
7510         Adjust to use the current sections table.
7511         (init_exec_ops): Do not register a deprecated_xfer_memory
7512         callback.  Register to_xfer_partial and to_get_section_table
7513         callbacks.
7514         * infrun.c (handle_inferior_event): Update comments around
7515         solib_add.
7516         * rs6000-nat.c (xcoff_relocate_core): Adjust to use
7517         deprecated_core_resize_section_table.
7518         * exec.h (resize_section_table): Declare.
7519         (section_table_xfer_memory_partial): Add const char * argument.
7520         (remove_target_sections): Declare here.
7521         (add_target_sections): Declare.
7522         (print_section_info): Declare here.
7523         * gdbcore.h (deprecated_core_resize_section_table): Declare.
7524
7525 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7526
7527         * value.h (struct internalvar): Remove.
7528         (get_internalvar_integer): Add prototype.
7529         (set_internalvar_integer): Add prototype.
7530         (clear_internalvar): Add prototype.
7531
7532         * value.c (struct internalvar): Move here.  Add type member.  Remove
7533         endian member.  Add union_internalvar member instead of value member.
7534         (init_if_undefined_command): Use intvar->type.
7535         (create_internalvar): Do not initialize value/endian, but type.
7536         (create_internalvar_type_lazy): Call create_internalvar.
7537         (value_of_internalvar): Handle host-side internalvar contents.
7538         (set_internalvar_component): Likewise.
7539         (set_internalvar): Likewise.
7540         (get_internalvar_integer): New function.
7541         (clear_internalvar): Likewise.
7542         (set_internalvar_integer): Likewise.
7543         (preserve_values): Handle host-side internalvar contents.
7544
7545         * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
7546         set_internalvar_integer instead of set_internalvar.
7547         * findcmd.c (find_command): Likewise.
7548         * infrun.c (handle_inferior_event): Likewise.
7549         * source.c (forward_search_command, reverse_search_command): Likewise.
7550         * tracepoint.c (set_traceframe_num, set_tracepoint_num,
7551         set_traceframe_context): Likewise.
7552
7553         * printcmd.c (x_command): Call clear_internalvar instead of
7554         set_internalvar.
7555         * tracepoint.c (set_traceframe_context): Likewise.
7556         
7557         * breakpoint.c (get_number_trailer): Call get_internalvar_integer
7558         instead of value_of_internalvar.
7559         * linespec.c (decode_dollar): Likewise.
7560
7561         * expprint.c (dump_subexp_body_standard): Use internalvar_name
7562         instead of accessing internalvar private elements.
7563         * valops.c (value_assign): Copy from original source instead of
7564         accessing internalvar private elements.
7565
7566 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7567
7568         * scm-lang.c (builtin_type_scm): Remove.
7569         (scm_lookup_name): Add GDBARCH parameter.  Use it instead of
7570         objfile architecture.  Use per-architecture builtin_scm_type instead
7571         of builtin_type_scm.
7572         (evaluate_exp): Pass expression architecture to scm_lookup_name.
7573
7574         (scm_get_field): Add SIZE parameter.  Use it instead of 
7575         TYPE_LENGTH (builtin_type_scm).
7576
7577         (build_scm_types): New function.
7578         (scm_type_data): New variable.
7579         (builtin_scm_type): New function.
7580         (_initialize_scheme_language): Do not initialize builtin_type_scm.
7581         Register build_scm_types as post-init function for scm_type_data.
7582
7583         * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
7584         instead of builtin_type_scm.
7585
7586         * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
7587         (scm_get_field): Add SIZE paramter.
7588         (scm_scmval_print): Remove prototype.
7589         (builtin_type_scm): Remove.
7590         (struct builtin_scm_type): Add structure definition.
7591         (builtin_scm_type): Add prototype.
7592
7593         * scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
7594         instead of builtin_core_addr type; do not use objfile architecture.
7595         (scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
7596         Pass type to scm_scmval_print.
7597         (scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
7598         (scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
7599         define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
7600         (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
7601
7602 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7603
7604         * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
7605         mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
7606         mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
7607         mdebug_type_unsigned_char, mdebug_type_unsigned_short,
7608         mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
7609         mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
7610         mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
7611         mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
7612         mdebug_type_complex, mdebug_type_double_complex,
7613         mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
7614         Remove.
7615
7616         (basic_type_data): New global variable.
7617         (basic_type): New function.
7618         (parse_type): Remove static basic type map map_bt.  Call basic_type
7619         to get basic types instead of using mdebug_type_ variables.
7620
7621         (parse_symbol): Use builtin types instead of mdebug_type_ variables.
7622         (upgrade_type): Likewise.
7623         (parse_procedure): Likewise.
7624         (psymtab_to_symtab_1): Likewise.
7625
7626         (_initialize_mdebugread): Do not initialize mdebug_type_ variables.
7627         Initialize basic_type_data.
7628
7629 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
7630
7631         * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
7632         * dfp.c (promote_decimal): Remove.
7633         (decimal_binop): Convert LEN_RESULT to input parameter.
7634         Remove call to decimal_binop.
7635         (decimal_compare): Remove call to decimal_binop.
7636
7637         * valarith.c (value_binop): Pass desired result type length
7638         to decimal_binop.
7639
7640 2009-06-01  Tristan Gingold  <gingold@adacore.com>
7641
7642         * configure.tgt (avr): Set gdb_sim to use the simulator.
7643
7644 2009-05-29  Doug Evans  <dje@google.com>
7645
7646         * infrun.c (prepare_to_proceed): Document.  Assert !non_stop.
7647         If scheduler-locking is enabled, we're not going to be singlestepping
7648         any other previously stopped thread.
7649
7650 2009-05-29  Pedro Alves  <pedro@codesourcery.com>
7651
7652         * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0.
7653
7654 2009-05-29  Eli Zaretskii  <eliz@gnu.org>
7655
7656         * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
7657         for stabs and COFF debug info.
7658
7659 2009-05-28  Pedro Alves  <pedro@codesourcery.com>
7660
7661         * infrun.c (handle_inferior_event): When thread hoping, switch
7662         inferior_ptid to the event thread before removing breakpoints from
7663         the target.  If not stopping, also try to revert back to a thread
7664         that was doing a "next".  Check if that thread still exists before
7665         resuming.
7666         (currently_stepping_thread): Delete and merge with ...
7667         (currently_stepping): ... this.
7668         (currently_stepping_callback): Rename to ...
7669         (currently_stepping_or_nexting_callback): ... this, and also
7670         return true if the thread was stepping over a call (has a
7671         step-resume breakpoint).
7672
7673 2009-05-28  Tom Tromey  <tromey@redhat.com>
7674
7675         * python/python.c (gdbpy_parameter): Rename.  Fix error message.
7676         (GdbMethods): Change "get_parameter" to "parameter".
7677
7678 2009-05-28  Pierre Muller  <muller@ics.u-strasbg.fr>
7679             Paul Pluzhnikov  <ppluzhnikov@google.com>
7680
7681         * configure.ac (!have_libpython): Add python-prettyprint source
7682         and object files.
7683         * configure: Regenerate.
7684         * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
7685         python headers.
7686         
7687 2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
7688             Tom Tromey  <tromey@redhat.com>
7689             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7690
7691         * mi/mi-main.c (mi_cmd_list_features): List "python" feature.
7692         * varobj.h (varobj_set_visualizer): Declare.
7693         (varobj_get_display_hint): Likewise.
7694         (varobj_update_result_t) <children_changed, value_installed>: New
7695         fields.
7696         * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
7697         * mi/mi-cmds.h (mi_cmd_var_set_visualizer,
7698         mi_cmd_var_set_child_range): Declare.
7699         * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
7700         (mi_cmd_var_list_children): Emit display hint.
7701         (varobj_update_one): Emit display hint.  Handle dynamic children.
7702         * python/python.c (GdbMethods): Add "default_visualizer".
7703         * python/python-internal.h (apply_varobj_pretty_printer,
7704         gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
7705         Declare.
7706         (gdbpy_default_visualizer): Likewise.
7707         * varobj.c: Include python.h, python-internal.h.
7708         (PyObject): New typedef.
7709         (struct varobj) <children_requested, pretty_printer>: New fields.
7710         (varobj_create): Call install_default_visualizer.
7711         (instantiate_pretty_printer): New function.
7712         (varobj_set_display_format): Update.
7713         (varobj_get_display_hint): New function.
7714         (update_dynamic_varobj_children): New function.
7715         (varobj_get_num_children): Handle dynamic children.
7716         (varobj_list_children): Likewise.
7717         (install_new_value): Likewise.
7718         (varobj_add_child): New function.
7719         (install_visualizer): Likewise.
7720         (install_default_visualizer): Likewise.
7721         (varobj_set_visualizer): Likewise.
7722         (varobj_update): Handle dynamic children.
7723         (create_child): Use create_child_with_value.
7724         (create_child_with_value): New function.
7725         (value_get_print_value): Call pretty printer.  Add value_formatter
7726         argument.
7727         (c_value_of_variable): Update.
7728         (varobj_invalidate): Always free all_rootvarobj.
7729         * python/python-prettyprint.c (apply_varobj_pretty_printer): New
7730         function.
7731         (gdbpy_get_varobj_pretty_printer): Likewise.
7732         (gdbpy_default_visualizer): Likewise.
7733
7734 2009-05-27  Tom Tromey  <tromey@redhat.com>
7735             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7736             Phil Muldoon  <pmuldoon@redhat.com>
7737             Paul Pluzhnikov  <ppluzhnikov@google.com>
7738             Vladimir Prus  <vladimir@codesourcery.com>
7739
7740         * python/python-value.c (value_object_to_value): New function.
7741         * python/python-internal.h: Include frameobject.h.
7742         (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
7743         Declare.
7744         (value_object_to_value): Declare.
7745         * printcmd.c (struct format_data) <raw>: New field.
7746         (last_format): Default to 0.
7747         (decode_format): Initialize val.raw.  Handle /r flag.
7748         (print_command_1): Initialize fmt.raw and opts.raw.
7749         (output_command): Likewise.
7750         (x_command): Fix initialization of fmt.format.  Initialize
7751         fmt.raw.
7752         (display_command): Initialize fmt.raw.
7753         (do_one_display): Set opts.raw.
7754         * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
7755         gdbpy_display_hint_cst): New globals.
7756         (_initialize_python): Initialize them.  Set gdb.pretty_printers.
7757         * cp-valprint.c: Include python.h.
7758         (cp_print_value): Call apply_val_pretty_printer.
7759         * python/python.h (apply_val_pretty_printer): Declare.
7760         * stack.c (print_this_frame_argument_p): Remove.
7761         (print_frame_args): Compute summary flag.  Don't use
7762         print_this_frame_argument_p.
7763         * valprint.c: Include python.h.
7764         (user_print_options): Initialize new fields.
7765         (scalar_type_p): New function.
7766         (val_print): Handle 'raw' and 'summary' modes.  Call
7767         apply_val_pretty_printer.
7768         (value_print): Handle 'raw' mode.
7769         * valprint.h (struct value_print_options) <raw, summary>: New
7770         fields.
7771         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
7772         (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
7773         (python-prettyprint.o): New target.
7774         * python/python-prettyprint.c: New file.
7775
7776 2009-05-27  Tom Tromey  <tromey@redhat.com>
7777             Paul Pluzhnikov  <ppluzhnikov@google.com>
7778
7779         * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
7780         value_address.
7781         * cli/cli-dump.c (dump_value_to_file): Use value_address.
7782         * valprint.c (common_val_print): Likewise.
7783         * v850-tdep.c (v850_push_dummy_call): Use value_address.
7784         * tracepoint.c (encode_actions): Use value_address.
7785         * printcmd.c (print_formatted): Use value_address.
7786         (x_command): Likewise.
7787         * p-valprint.c (pascal_object_print_static_field): Use
7788         value_address.
7789         * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
7790         * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
7791         * m32r-tdep.c (m32r_push_dummy_call): Use value_address.
7792         * jv-valprint.c (java_value_print): Use value_address.
7793         * infcall.c (find_function_addr): Use value_address.
7794         * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
7795         * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
7796         * frv-tdep.c (frv_push_dummy_call): Use value_address.
7797         * frame.c (frame_register_unwind): Use value_address.
7798         (frame_unwind_register_value): Likewise.
7799         * darwin-nat-info.c (info_mach_region_command): Use
7800         value_address.
7801         * cp-valprint.c (cp_print_static_field): Use value_address.
7802         * c-valprint.c (c_value_print): Use value_address.
7803         * breakpoint.c (update_watchpoint): Use value_address.
7804         (can_use_hardware_watchpoint): Likewise.
7805         * ada-valprint.c (ada_val_print_1): Use value_address.
7806         (ada_value_print): Likewise.
7807         * ada-tasks.c (read_fat_string_value): Use value_address.
7808         * jv-lang.c (java_link_class_type): Use set_value_address.
7809         (java_link_class_type): Likewise.
7810         (get_java_utf8_name): Use value_address.
7811         (type_from_class): Likewise.
7812         (java_link_class_type): Likewise.
7813         * findvar.c (value_of_register): Use set_value_address.
7814         (read_var_value): Likewise.
7815         (read_var_value): Likewise.
7816         * eval.c (evaluate_subexp_standard): Use set_value_address.
7817         (evaluate_subexp_standard): Use value_address.
7818         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
7819         * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
7820         (ada_value_primitive_packed_val): Likewise.
7821         (ensure_lval): Likewise.
7822         (thin_data_pntr): Use value_address.
7823         (desc_bounds): Likewise.
7824         (ada_value_primitive_packed_val): Likewise.
7825         (value_assign_to_component): Likewise.
7826         (ensure_lval): Likewise.
7827         (make_array_descriptor): Likewise.
7828         (ada_to_fixed_value): Likewise.
7829         (unwrap_value): Likewise.
7830         * value.c (deprecated_value_address_hack): Remove.
7831         (value_address): New function.
7832         (value_raw_address): Likewise.
7833         (set_value_address): Likewise.
7834         (value_fn_field): Use set_value_address.
7835         (value_from_contents_and_address): Likewise.
7836         (value_fn_field): Likewise.
7837         (allocate_value_lazy): Don't use VALUE_ADDRESS.
7838         (value_as_address): Use value_address.
7839         (value_static_field): Likewise.
7840         * valops.c (search_struct_field): Use set_value_address.
7841         (value_at): Likewise.
7842         (value_at_lazy): Likewise.
7843         (value_repeat): Likewise.
7844         (value_cast_structs): Use value_address.
7845         (value_cast): Likewise.
7846         (value_fetch_lazy): Likewise.
7847         (value_assign): Likewise.
7848         (value_repeat): Likewise.
7849         (address_of_variable): Likewise.
7850         (value_coerce_array): Likewise.
7851         (value_coerce_function): Likewise.
7852         (value_addr): Likewise.
7853         (search_struct_field): Likewise.
7854         (search_struct_method): Likewise.
7855         (find_method_list): Likewise.
7856         (value_struct_elt_for_reference): Likewise.
7857         (value_full_object): Likewise.
7858         * jv-valprint.c (java_value_print): Use set_value_address.
7859         * value.h (deprecated_value_address_hack): Remove.
7860         (VALUE_ADDRESS): Remove.
7861         (value_address): Declare.
7862         (value_raw_address): Declare.
7863         (set_value_address): Declare.
7864
7865 2009-05-27  Tom Tromey  <tromey@redhat.com>
7866             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7867             Phil Muldoon  <pmuldoon@redhat.com>
7868             Paul Pluzhnikov  <ppluzhnikov@google.com>
7869
7870         * python/python.c (_initialize_python): Call
7871         gdbpy_initialize_types.
7872         (GdbMethods): Add "lookup_type".
7873         * python/python-value.c (value_object) <type>: New field.
7874         (valpy_dealloc): Decref type.
7875         (valpy_new): Initialize type.
7876         (valpy_get_type): New function.
7877         (value_to_value_object): Initialize type.
7878         (valpy_cast): New function.
7879         (value_object_getset): Add "type".
7880         (value_object_methods): Add "cast".
7881         * python/python-internal.h (type_to_type_object): Declare.
7882         (type_object_to_type): Likewise.
7883         (gdbpy_initialize_types): Likewise.
7884         (gdbpy_lookup_type): Declare.
7885         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
7886         (SUBDIR_PYTHON_SRCS): Add python-type.c.
7887         (python-type.o): New target.
7888         * python/python-type.c: New file.
7889
7890 2009-05-27  Tom Tromey  <tromey@redhat.com>
7891             Thiago Jung Bauermann  <bauerman@br.ibm.com>
7892             Phil Muldoon  <pmuldoon@redhat.com>
7893
7894         * python/python.c: Include objfiles.h, observer.h.
7895         (gdbpy_auto_load): New global.
7896         (gdbpy_current_objfile): Likewise.
7897         (GDBPY_AUTO_FILENAME): New define.
7898         (gdbpy_new_objfile): New function.
7899         (gdbpy_get_current_objfile): Likewise.
7900         (gdbpy_objfiles): Likewise.
7901         (_initialize_python): Add "maint set auto-load".  Call
7902         gdbpy_initialize_objfile.  Attach objfile observer.
7903         (GdbMethods): New methods current_objfile, objfiles.
7904         * python/python-objfile.c: New file.
7905         * python/python-internal.h (objfile_to_objfile_object): Declare.
7906         (objfpy_get_printers): Likewise.
7907         (gdbpy_initialize_objfile): Likewise.
7908         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
7909         (SUBDIR_PYTHON_SRCS): Add python-objfile.c.
7910         (python-objfile.o): New target.
7911
7912 2009-05-27  Pedro Alves  <pedro@codesourcery.com>
7913
7914         * infrun.c (follow_exec): Clear the stop_requested flag.
7915         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
7916         Add debug output.
7917
7918 2009-05-27  Aleksandar Ristovski  <aristovski@qnx.com>
7919
7920         * nto-procfs.c (get_regset): Pass correct pointer.
7921
7922 2009-05-26  Doug Evans  <dje@google.com>
7923
7924         * dwarf2read.c (follow_die_ref): Add comment.
7925         (dwarf2_mark_helper): Tweak comment.
7926         (dwarf2_mark): Move description to its proper place.
7927
7928 2009-05-25  Pierre Muller  <muller@ics.u-strasbg.fr>
7929
7930         * procfs.c (procfs_wait): Add options parameter.
7931
7932 2009-05-24  Doug Evans  <dje@google.com>
7933
7934         Global renaming of find_thread_pid to find_thread_ptid.
7935         * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
7936         * thread.c (find_thread_ptid): Renamed from find_thread_pid.
7937         All callers updated.
7938
7939         * infrun.c (follow_fork): Initialize new step_* locals
7940         to avoid "may be used uninitialized" warnings.
7941
7942 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
7943
7944         * inflow.c (copy_terminal_info): Deep copy `run_terminal'.
7945
7946 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
7947
7948         * gdbthread.h (struct thread_info): New `pending_follow' field.
7949         * thread.c (new_thread): New function.
7950         (add_thread_silent): Use it.
7951         * breakpoint.c (internal_breakpoint_number): New global, moved
7952         from inside...
7953         (create_internal_breakpoint): ... this.
7954         (clone_momentary_breakpoint): New.
7955         * breakpoint.h (clone_momentary_breakpoint): Declare.
7956         * infrun.c (nullify_last_target_wait_ptid): Move declaration
7957         higher.
7958         (pending_follow): Delete.
7959         (follow_fork): Handle pending follow fork event here.  Moved the
7960         preserving of thread stepping state here.
7961         (resume): Don't handle pending follow fork events here.  Only
7962         install the inferior's terminal modes if we're about to resume it.
7963         (proceed): Handle possible pending follow fork events here.
7964         (init_wait_for_inferior): No need to clear pending_follow anymore,
7965         it's gone.
7966         (handle_inferior_event): Adjust to per-thread `pending_follow'.
7967         Call `follow_fork' to handle following the fork.  If the
7968         follow-fork is cancelled, stop stepping.
7969         * linux-nat.c (linux_child_follow_fork): Adjust to per-thread
7970         `pending_follow' events.  Remove code that handled preserving the
7971         thread stepping state.
7972         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
7973         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
7974
7975 2009-05-24  Pierre Muller  <muller@ics.u-strasbg.fr>
7976
7977         * symfile.c (add_shared_symbol_files_command): Remove
7978         prototype and function.
7979         (_initialize _symfile): Move "add-shared-symbol-files"
7980         command and "assf" alias.
7981         * windows-nat.c (_initialize_windows_nat): to here.
7982         Change "add-shared-symbol-files" to alias.
7983         
7984         * config/i386/cygwin.mh: Remove NAT_FILE.
7985         * config/i386/mingw.mh: Remove NAT_FILE.
7986         * config/i386/mingw64.mh: Remove NAT_FILE.
7987         * config/i386/nm-cygwin.h: Remove file.
7988         * config/i386/nm-cygwin64.h: Remove file.
7989
7990 2009-05-24  Hui Zhu  <teawater@gmail.com>
7991
7992         * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
7993         I386_LINUX_RECORD_IOCTL_*,
7994         I386_LINUX_RECORD_FCNTL_*) Removed.
7995         (i386_linux_init_abi): Change size of record from macros to
7996         numbers.
7997
7998 2009-05-24  Hui Zhu  <teawater@gmail.com>
7999
8000         * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
8001         * linux-record.c (record_linux_system_call): Ditto.
8002         * linux-record.h (linux_record_tdep): Ditto.
8003
8004 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
8005
8006         Replace the savestring calls by xstrdup calls where possible.
8007         * breakpoint.c (condition_command, set_raw_breakpoint)
8008         (create_catchpoint, update_breakpoint_locations): Replace the
8009         savestring calls by xstrdup calls where possible.
8010         * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
8011         (record_producer): Likewise.
8012         * coffread.c (coff_start_symtab, complete_symtab): Likewise.
8013         * corefile.c (set_gnutarget): Likewise.
8014         * dbxread.c (add_new_header_file): Likewise.
8015         * demangle.c (set_demangling_command, set_demangling_style): Likewise.
8016         * event-top.c (push_prompt, pop_prompt, command_line_handler)
8017         (set_async_prompt): Likewise.
8018         * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
8019         Likewise.
8020         * language.c (set_language_command, _initialize_language): Likewise.
8021         * linespec.c (decode_line_2): Likewise.
8022         * rs6000-nat.c (add_vmap): Likewise.
8023         * top.c (set_prompt, init_history, init_main): Likewise.
8024         * tracepoint.c (stringify_collection_list): Likewise.
8025         * varobj.c (varobj_create): Remove variable expr_len.  Replace the 
8026         savestring calls by xstrdup calls where possible.
8027         (value_of_root, c_name_of_variable, c_describe_child): Replace the
8028         savestring calls by xstrdup calls where possible.
8029         * xcoffread.c (complete_symtab): Likewise.
8030         * cli/cli-script.c (build_command_line, define_command): Likewise.
8031         * cli/cli-setshow.c (do_setshow_command): Likewise.
8032
8033 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
8034
8035         Remove already unreachable code.
8036         * varobj.c (varobj_get_handle): Fix comment when error is called.
8037         All callers updated.
8038
8039 2009-05-23  Eli Zaretskii  <eliz@gnu.org>
8040
8041         * README (`configure' options): Document GDB-specific options to
8042         `configure'.
8043
8044         * symtab.c (skip_prologue_using_lineinfo): New function.
8045         (find_function_start_sal): Use it to get to the first line of
8046         function's body that has an entry in the lineinfo table.
8047
8048         * symmisc.c (dump_symtab): Switch the current language to
8049         the language of the symtab we are dumping only if the symtab's
8050         language is neither language_auto nor language_unknown.
8051
8052         * coffread.c (coff_symtab_read): Set language_minimal as the
8053         language for the "_globals_" pseudo-file.
8054         (process_coff_symbol): Set the symbol's language to the language
8055         of current_subfile.
8056
8057 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8058
8059         * target.h (struct section_table): Rename to ...
8060         (struct target_section): ... this.
8061         * exec.c: Adjust all references.
8062         * exec.h: Adjust all references.
8063         * nto-tdep.c: Adjust all references.
8064         * nto-tdep.h: Adjust all references.
8065         * ppc-linux-tdep.c: Adjust all references.
8066         * rs6000-nat.c: Adjust all references.
8067         * s390-tdep.c: Adjust all references.
8068         * solib-darwin.c: Adjust all references.
8069         * solib-frv.c: Adjust all references.
8070         * solib-irix.c: Adjust all references.
8071         * solib-null.c: Adjust all references.
8072         * solib-osf.c: Adjust all references.
8073         * solib-pa64.c: Adjust all references.
8074         * solib-som.c: Adjust all references.
8075         * solib-sunos.c: Adjust all references.
8076         * solib-svr4.c: Adjust all references.
8077         * solib-target.c: Adjust all references.
8078         * solib.c: Adjust all references.
8079         * solist.h: Adjust all references.
8080         * symfile.c: Adjust all references.
8081         * symfile.h: Adjust all references.
8082         * target.c: Adjust all references.
8083
8084 2009-05-22  Hui Zhu  <teawater@gmail.com>
8085
8086         Add sys_fcntl argument interfaces to linux_record_tdep.
8087
8088         * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
8089         fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
8090         interfaces.
8091         * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
8092         I386_LINUX_RECORD_FCNTL_F_GETLK64,
8093         I386_LINUX_RECORD_FCNTL_F_SETLK64,
8094         I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
8095         of I386 Linux sys_fcntl arguments.
8096         (i386_linux_init_abi): Set macros values to linux_record_tdep.
8097         * linux-record.c (record_linux_system_call): Change to use
8098         the interface in linux_record_tdep in sys_fcntl and
8099         sys_fcntl64.
8100
8101         * linux-record.c (record_linux_system_call): Fix the process
8102         record build error about type in CYGWIN.
8103
8104 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8105
8106         * inflow.c (kill_command): Delete left over static declaration.
8107
8108 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8109
8110         * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
8111         Include exec.h.
8112         (struct section_closure): Delete.
8113         (add_to_section_table): Delete.
8114         (build_target_sections_from_bfd): Delete.
8115         (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
8116         (target_bfd_reopen): Use build_section_table.
8117         * exec.c (xfer_memory): Move most code except for overlay
8118         debugging support from here...
8119         (section_table_xfer_memory): ... to this new function.
8120         (section_table_xfer_memory_partial): New.
8121         * exec.h (section_table_xfer_memory_partial): Declare.
8122         * bfd-target.h (build_target_sections_from_bfd): Delete
8123         declaration.
8124
8125 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
8126
8127         * remote.c (compare_sections_command): Don't declare exec_bfd.
8128         * tracepoint.c: Include "gdbcore.h".
8129         (remote_set_transparent_ranges): Don't declare exec_bfd.
8130
8131 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8132
8133         * aix-thread.c (init_aix_thread_ops): Whitespace.
8134
8135 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8136
8137         * dec-thread.c (dec_thread_wait): Add options parameter.  Use it
8138         to call the to_wait method in the target beneath.
8139         * remote-m32r-sdi.c (m32r_wait): Add options parameter.
8140
8141 2009-05-21  Joel Brobecker  <brobecker@adacore.com>
8142
8143         * aix-thread.c (aix_thread_wait): Add options parameter.  Use it
8144         to call the to_wait method in the target_beneath.
8145
8146 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8147
8148         * linux-nat.c (linux_nat_terminal_inferior)
8149         (linux_nat_terminal_ours): Don't check sync_execution.
8150         * remote.c (remote_terminal_inferior, remote_terminal_ours):
8151         Don't check sync_execution.  Update comments.
8152         * target.c (target_terminal_inferior): New.
8153         * target.h (target_terminal_inferior): Delete macro, and declare
8154         as function.
8155         * event-top.c (async_disable_stdin): Make idempotent.  Don't give
8156         the target the terminal here.
8157         * inflow.c (terminal_ours_1): Don't return early without setting
8158         `terminal_is_ours'.
8159
8160 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8161
8162         * target.h (TARGET_WNOHANG): New.
8163         * target.c (target_wait): Add `options' argument.  Adjust.
8164         (struct target_ops) <to_wait>: Add `options' argument.
8165         (target_wait): Add `options' argument.
8166         * infrun.c (wait_for_inferior): Pass 0 as options to
8167         target_wait (blocking wait).
8168         (fetch_inferior_event): Pass TARGET_WNOHANG as options to
8169         target_wait.
8170         * fork-child.c (startup_inferior): Pass 0 as options to
8171         target_wait (blocking wait).
8172         * linux-nat.c (linux_nat_create_inferior): Remove async masking.
8173         (linux_nat_wait_1): Add `target_options' argument.  Use it instead
8174         of checking on target_can_async_p.
8175         (linux_nat_wait): Add `target_options' argument.  Adjust.
8176         * remote.c (remote_wait_ns): Add `options' argument.  Adjust to
8177         check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
8178         (remote_wait_as): Add `options' argument.  Adjust to check on
8179         TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
8180         a blocking wait, keep waiting until an interesting event comes
8181         out.
8182         (remote_wait): Add `options' argument.  Don't loop here if the
8183         target is in async mode, and a blocking wait has been requested.
8184
8185         * top.c (deprecated_target_wait_hook): Add `options' argument.
8186         * linux-thread-db.c (thread_db_wait): Add `options' argument, and
8187         pass it down to the layer beneath.
8188         * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
8189         * record.c (record_beneath_to_wait): Add `options' argument.
8190         (record_wait): Add `options' argument, and pass it down to the
8191         layer beneath.
8192         * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
8193         * darwin-nat.c (darwin_wait): Likewise.
8194         * defs.h (deprecated_target_wait_hook): Likewise.
8195         * gnu-nat.c (gnu_wait): Add `options' argument.
8196         * go32-nat.c (go32_wait): Likewise.
8197         * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
8198         pass it down to the layer beneath.
8199         * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
8200         * monitor.c (monitor_wait): Likewise.
8201         * nto-procfs.c (procfs_wait): Likewise.
8202         * remote-mips.c (mips_wait): Add `options' argument.
8203         * remote-sim.c (gdbsim_wait): Likewise.
8204         * rs6000-nat.c (rs6000_wait): Add `options' argument.
8205         * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
8206         it down to the layer beneath.
8207         * spu-linux-nat.c (spu_child_wait): Add `options' argument.
8208         * windows-nat.c (windows_wait): Likewise.
8209         * tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
8210
8211 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
8212
8213         * mi/mi-interp.c (mi_on_resume): Account for whole process
8214         resumes.
8215
8216 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8217
8218         * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
8219
8220 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8221
8222         * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
8223
8224 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8225
8226         Fix parsing DW_AT_const_value using DW_FORM_string.
8227         * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
8228
8229 2009-05-20  Joel Brobecker  <brobecker@adacore.com>
8230
8231         * aix-thread.c (giter_count): Do not count the main thread.
8232         (giter_accum): Do not include the main thread.
8233
8234 2009-05-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
8235
8236         Remove the PROT parameter from openp.
8237         * source.c (openp): Remove the parameter PROT.  Assertion check MODE.
8238         defs.h (openp): Update the prototype.
8239         Update all the openp callers.
8240
8241 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
8242
8243         * inflow.c (kill_command): Moved to infcmd.c.
8244         (_initialize_inflow): Don't add the "kill" command or clear
8245         inferior_ptid here.
8246         * infcmd.c (kill_command): Moved here from inflow.c.
8247         (_initialize_infcmd): Add the "kill" command here.
8248
8249 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
8250
8251         * fork-child.c: Don't include frame.h.  Include terminal.h.
8252         (fork_inferior): Call new_tty_postfork after forking adn adding
8253         the child to the inferior list.
8254         * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
8255         here.
8256         * inflow.c (struct terminal_info): Remove const qualifier from
8257         `run_terminal' field.
8258         (inferior_thisrun_terminal): Tweak comment.
8259         (inflow_inferior_exit): Release the `run_terminal' field.
8260         (copy_terminal_info): New function.
8261         (new_tty_postfork): New function.
8262         * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
8263         (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
8264         * inf-ptrace.c: Include terminal.h.
8265         (inf_ptrace_follow_fork): Copy the parent's terminal info to the
8266         child.
8267         * linux-nat.c: Include terminal.h.
8268         (linux_child_follow_fork): Copy the parent's terminal info to the
8269         child.
8270         * inf-ttrace.c: Include terminal.h.
8271         (inf_ttrace_follow_fork): Copy the parent's terminal info to the
8272         child.
8273
8274 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
8275
8276         * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
8277         (update_global_location_list): Use gdbarch_has_global_breakpoints
8278         instead of gdbarch_has_global_solist and
8279         target_supports_multi_process.
8280         * dicos-tdep.c (dicos_init_abi): Set
8281         gdbarch_has_global_breakpoints.
8282         * gdbarch.sh (has_global_solist): Update comment.
8283         (has_global_breakpoints): New.
8284         * remote.c (remote_start_remote): Use
8285         gdbarch_has_global_breakpoints instead of
8286         gdbarch_has_global_solist.
8287         * target.c (target_detach): Use gdbarch_has_global_breakpoints
8288         instead of gdbarch_has_global_solist.
8289         * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
8290         of target_supports_multi_process.
8291
8292 2009-05-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
8293
8294         * objc-lang.c (find_methods): Plug a small memory leak.
8295
8296 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8297
8298         * solib-svr4.c: Include observer.h.
8299         (debug_base, debug_loader_offset_p, debug_loader_offset)
8300         (debug_loader_name, main_lm_addr): Move these globals...
8301         (struct svr4_info): ... into this new structure.
8302         (svr4_info_p): New typedef.
8303         (svr4_info): New global.
8304         (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
8305         functions.
8306         (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
8307         (solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
8308         per-inferior svr4.
8309         (open_symbol_file_object): Adjust to per-inferior svr4.
8310         (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
8311         Ditto.
8312         (enable_break): Add svr4_info argument.  Adjust to per-inferior
8313         svr4.
8314         (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
8315         Adjust to per-inferior svr4.
8316         (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
8317         observer.
8318
8319 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8320
8321         * linux-nat.h (linux_proc_get_tgid): Declare.
8322         * linux-nat.c (linux_proc_get_tgid): New.
8323         * linux-thread-db.c (struct thread_db_info): New field
8324         `need_stale_parent_threads_check'.
8325         (add_thread_db_info): Set it.
8326         (find_new_threads_callback): Ignore stale fork parent threads.
8327         (thread_db_resume): New.
8328         (init_thread_db_ops): Install thread_db_resume.
8329
8330 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8331
8332         * fork-child.c (fork_inferior): Only reset the thread list if this
8333         is the first inferior.
8334         (startup_inferior): If the target support multi-process, tell it
8335         to resume only the new process.
8336         * linux-nat.c (num_lwps): Delete global.
8337         (purge_lwp_list): New function.
8338         (num_lwps): New function.
8339         (add_lwp, delete_lwp): Adjust.
8340         (ptid_match): New.
8341         (iterate_over_lwps): Add filter argument.  Handle it.
8342         (linux_nat_attach): Remove FIXME note.
8343         (linux_nat_detach): Adjust to iterate over threads of the inferior
8344         we're detaching from.  Adjust to num_lwps being a function.  Don't
8345         assume the head of the lwp list is the main thread of the process
8346         we're detaching from.  Don't destroy the LWP list.
8347         (resume_callback): Add debug output.
8348         (linux_nat_resume): Handle resuming a single inferior.  Allow a
8349         wildcard resume in non-stop mode.
8350         (linux_handle_extended_wait): Don't assume inferior_ptid is the
8351         correct inferior of the parent LWP.
8352         (status_callback): Also check lp->waitstatus.
8353         (select_event_lwp): Add new filter parameter.  Handle it.
8354         (linux_nat_filter_event): Adjust to num_lwps being a function.
8355         (linux_nat_wait_1): When adding the first lwp of the inferior, use
8356         an is_lwp check instead of checking for the number of lwps.
8357         (linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
8358         pending process exit statuses.
8359         (linux_nat_mourn_inferior): Don't destroy all the LWP info.
8360         Instead delete LWPs of the inferior that we're mourning.  Don't
8361         unregister from the event loop here.
8362         (linux_nat_pid_to_str): Use `num_lwps'.
8363         (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
8364         single inferior.
8365         (linux_nat_is_async_p): Check if async was masked out.
8366         (linux_multi_process): New global.
8367         (linux_nat_supports_multi_process): New.
8368         (linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
8369         caller.
8370         (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
8371         LWP filtering.
8372         (linux_nat_close): New.
8373         (linux_nat_add_target): Register linux_nat_close and
8374         linux_nat_supports_multi_process.
8375         * linux-nat.h (iterate_over_lwps): Add filter argument.
8376         * linux-thread-db.c (thread_db_handle): Delete.
8377         (proc_handle, thread_agent, td_init_p, td_ta_new_p)
8378         (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
8379         (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
8380         (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
8381         (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
8382         longer globals, moved to...
8383         (struct thread_db_info): ... this new structure.
8384         (thread_db_list): New.
8385         (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
8386         New.
8387         (have_threads_callback): Filter out threads of all inferiors but
8388         the one specified by the ARGS argument.
8389         (have_threads): Add ptid argument specifying the inferior we're
8390         interested in.  Handle it.
8391         (struct thread_get_info_inout): New.
8392         (thread_get_info_callback, thread_from_lwp): Adjust to use it.
8393         (thread_db_attach_lwp): Check that inferior of the passed in
8394         thread is using thread-db.  Adjust.
8395         (enable_thread_event): Remove thread_agent parameter.  Instead,
8396         get it from the per-inferior thread-db info.
8397         (dladdr_to_soname): Move higher up.
8398         (enable_thread_event_reporting): Adjust to use per-inferior
8399         thread-db info.
8400         (try_thread_db_load_1): Replace `handle' parameter by a
8401         thread_db_info parameter.  Adjust to use per-inferior thread-db
8402         info.
8403         (try_thread_db_load): Adjust to use per-inferior thread-db info.
8404         (thread_db_load, disable_thread_event_reporting): Ditto.
8405         (check_for_thread_db): Remove conditional reporting of which
8406         libthread_db is in use.
8407         (thread_db_new_objfile): Add comment about inferior_ptid.
8408         (attach_thread): Adjust to use per-inferior thread-db info.
8409         (thread_db_detach): Adjust to use per-inferior thread-db info.
8410         Remove thread event breakpoints of the current inferior.  Only
8411         unpush the thread-db target if there are no more processes using
8412         it.
8413         (check_event): Adjust to use per-inferior thread-db info.
8414         (thread_db_wait): Adjust to use per-inferior thread-db info.  Only
8415         unpush the thread-db target if there are no more processes using
8416         it.
8417         (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
8418         info.  Mark breakpoints of the current inferior out before
8419         deleting them.  Only unpush the thread-db target if there are no
8420         more processes using it.
8421         (find_new_threads_callback): Adjust to use per-inferior thread_db
8422         info.
8423         (thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
8424         use per-inferior thread-db info.
8425         (thread_db_find_new_threads): Adjust to use per-inferior thread-db
8426         info.
8427         (thread_db_get_thread_local_address): Adjust.
8428         (thread_db_get_ada_task_ptid): Adjust.
8429         * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
8430         if there no more processes left to debug.
8431         * thread.c (set_running, set_executing): Handle resuming all
8432         threads of a single inferior.
8433         * mi/mi-interp.c (mi_output_running_pid): New.
8434         (mi_inferior_count): New.
8435         (mi_on_resume): For backwards compatibility, if resuming all
8436         threads of an inferior, and there is only one inferior, output
8437         "all".
8438
8439 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8440
8441         * ada-lang.c (ada_find_any_type): Move check for primitive types ...
8442         (to_fixed_range_type): ... to here.
8443
8444 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8445
8446         * ada-lang.c (desc_data_type): Remove, replace by ...
8447         (desc_data_target_type): ... this.
8448         (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
8449         (ada_is_array_descriptor_type): Likewise.
8450         (ada_type_of_array): Likewise.
8451         (ada_coerce_to_simple_array_type): Likewise.
8452         (ada_array_element_type): Likewise.
8453
8454 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8455
8456         * ada-valprint.c (ada_val_print_1): Use val_print_string to print
8457         result of ada_vax_float_print_function inferior call.
8458
8459 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8460
8461         * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
8462         avoid creating a dummy value.
8463
8464 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8465
8466         * p-valprint.c (pascal_val_print): Use extract_typed_address
8467         to extract reference value.
8468
8469 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
8470
8471         * doublest.c (NAN): Remove unused define.
8472         (extract_floating_by_length, deprecated_extract_floating): Remove.
8473         (store_floating_by_length, deprecated_store_floating): Remove.
8474         (extract_typed_floating): Do not call extract_floating_by_length.
8475         (store_typed_floating): Do not call store_floating_by_length.
8476         (convert_typed_floating): Remove redundant assertions.
8477         * doublest.h (deprecated_extract_floating): Remove.
8478         (deprecated_store_floating): Remove.
8479         * sh64-tdep.c (sh64_register_convert_to_raw): Call
8480         extract_typed_floating instead of deprecated_extract_floating.
8481
8482 2009-05-18  Jon Beniston <jon@beniston.com>
8483         
8484         * MAINTAINERS: Add lm32 target.        
8485         * Makefile.in: Add lm32 dependencies.        
8486         * NEWS: Indicate lm32 is a new target.
8487         * configure.tgt: Add lm32 targets.
8488         * lm32-tdep.c: New file.
8489
8490 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8491
8492         * corelow.c (core_open): Flush the register cache before doing
8493         anything with registers.
8494
8495 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
8496
8497         * inflow.h (our_process_group): Remove declaration.
8498         (inferior_process_group): Delete global variable declaration.
8499         (inferior_process_group): New function declaration.
8500         * inflow.c: Include observer.h.
8501         (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
8502         Delete.
8503         (struct terminal_info): New struct.
8504         (our_terminal_info): New global.
8505         (inferior_process_group): New function.
8506         (inferior_thisrun_terminal): Extend description comment.
8507         (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
8508         instead of globals.
8509         (terminal_init_inferior_with_pgrp): Adjust to per-inferior
8510         terminal settings.
8511         (terminal_inferior): Ditto.
8512         (terminal_ours_1): Ditto.
8513         (inflow_new_inferior, inflow_inferior_exit): New functions.
8514         (child_terminal_info): Adjust to per-inferior terminal settings.
8515         (osig_set): New global.
8516         (set_sigint_trap): Adjust to per-inferior terminal settings.  Set
8517         or clear `osig_set' accordingly.
8518         (clear_sigint_trap): Check `osig_set' to decide wheater to restore
8519         SIGINT handler, instead of checking the current inferior (which
8520         may be none).
8521         (_initialize_inflow): Attach inflow_new_inferior and
8522         inflow_inferior_exit to the "new_inferior" and "inferior_exit"
8523         notifications, respectively.
8524         * inferior.h (struct terminal_info): Forward declare.
8525         (struct inferior): Add `terminal_info' field.
8526         * inferior.c (delete_inferior_1): Notify the inferior_exit
8527         observers before removing the inferior from the lists and deleting
8528         it.
8529         * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
8530         a function instead of a variable.  Adjust.
8531         * procfs.c (procfs_stop): Ditto.
8532
8533 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
8534
8535         * infrun.c (handle_inferior_event): When handling a
8536         TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
8537         immediatelly.
8538         * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
8539         from the child if vforking.
8540         * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
8541         breakpoints from the child here.
8542
8543 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
8544
8545         * infrun.c (pending_follow): Remove execd_pathname member.
8546         (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
8547         (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
8548         event, don't copy `execd_pathname' to pending_follow, use the
8549         event copy instead.  Release `execd_pathname' once done with
8550         handling the event.
8551
8552         * infrun.c (pending_follow): Remove mention of exec events.
8553
8554 2009-05-17  Hui Zhu  <teawater@gmail.com>
8555
8556         * i386-tdep.c (i386_process_record): Make it extern.
8557         (i386_gdbarch_init): Don't call set_gdbarch_process_record
8558         here.
8559         * i386-tdep.h (i386_process_record): Declare.
8560         * i386-linux-tdep.c (i386_linux_init_abi): Call
8561         set_gdbarch_process_record.
8562
8563 2009-05-17  Vladimir Prus  <vladimir@codesourcery.com>
8564
8565         Always report varobj as changed when in_scope attribute changes.
8566
8567         * varobj.c (install_new_value): If non-NULL-ness of value
8568         changed, return 1.
8569
8570 2009-05-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
8571         
8572         * NEWS: Mention set/show libthread-db-search-path.
8573         * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
8574         (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
8575         * linux-thread-db.c (libthread_db_search_path): New setting.
8576         (thread_db_handle): New variable (replaces using_thread_db).
8577         (try_thread_db_load_1): New function.
8578         (try_thread_db_load, thread_db_load_search): Likewise.
8579         (dladdr_to_soname): Likewise.
8580         (thread_db_load): Iterate over possibly multiple libthread_db's.
8581         (check_for_thread_db): Attempt to load new libthread_db.
8582         (thread_db_detach, thread_db_wait): Unload libthread_db.
8583         (thread_db_mourn_inferior): Likewise.
8584         (_initialize_thread_db): Add new libthread-db-search-path option.
8585         Defer loading of libthread_db to check_for_thread_db.
8586         * solib.c (libpthread_name_p): New function.
8587         (libpthread_solib_p): Call it.
8588         * solib.h (libpthread_name_p): New prototype.
8589         
8590 2009-05-15  Pierre Muller  <muller@ics.u-strasbg.fr>
8591
8592         * MAINTAINERS: Update my email address.
8593         
8594 2009-05-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
8595
8596         * breakpoint.h: Add breakpoint_re_set_objfile prototype.
8597         * breakpoint.c (create_overlay_event_breakpoint): Renamed
8598         from create_overlay_event_breakpoint_1, old
8599         create_overlay_event_breakpoint deleted.
8600         (breakpoint_re_set_objfile): Don't rescan all objfiles
8601         unnecessarily.
8602         (breakpoint_re_set): New function.
8603         * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
8604         instead of breakpoint_re_set.
8605         * objfiles.c (objfile_relocate): Likewise.
8606         
8607 2009-05-14  Joel Brobecker  <brobecker@adacore.com>
8608
8609         * gdbarch.sh: Add comment documenting the target_gdbarch global.
8610         gdbarch.h does NOT need to be regenerated as the corresponding
8611         change has already been made in a previous commit.
8612
8613 2009-05-14  Pierre Muller  <muller@ics.u-strasbg.fr>
8614
8615         Remove all i386 debug register low level macros in config nm files.
8616         (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
8617         (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
8618         (I386_USE_GENERIC_WATCHPOIINTS): Remove.
8619
8620         * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
8621         (struct i386_dr_low_type): New type.
8622         (i386_dr_low): New global variable.
8623         * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
8624         (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
8625         i386_dr_low struct variable fields.
8626         (i386_remove_aligned_watchpoint): Likewise.
8627         (i386_stopped_data_address): Likewise.
8628         (i386_stopped_by_hwbp): Likewise.
8629         (show_debug_regs_command_added): New static variable.
8630         (add_show_debug_regs_command): New static function.
8631         (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
8632         (i386_set_debug_register_length): New function.
8633         (_initialize_i386_nat): Delete.
8634         
8635         * amd64-linux-nat.c: Include "i386-nat.h".
8636         (amd64_linux_dr_set_control):  Change to static.
8637         (amd64_linux_dr_get_status): Change to static.
8638         (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
8639         (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
8640         
8641         * go32-nat.c: Include "i386-nat.h".
8642         (go32_set_addr): Change to static.
8643         (go32_set_dr7): Change to static. Change arg type to unisgned long.
8644         (go32_get_dr6): Change to static. Change return type to unisnged long.
8645         (init_go32_ops):  Set i386_dr_low variable fields.
8646         * i386-linux-nat.c: Include "i386-nat.h".
8647         (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
8648         (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
8649         (_initialize_i386_linux_nat):  Set i386_dr_low variable fields.
8650         * i386bsd-nat.h: Declare functions used for
8651         i386_dr_low fields in i386fbsd-nat.c.
8652         * i386fbsd-nat.c: Include "i386-nat.h".
8653         (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
8654         * windows-nat.c: Include "i386-nat.h".
8655         (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
8656         Change to static.
8657         (cygwin_get_dr6): Change return type to unisnged long.
8658         (cygwin_set_dr7): Change arg type to unisgned long.
8659         (init_windows_ops): Set i386_dr_low function fields.
8660
8661         * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call 
8662         i386_set_debug_register_length.
8663         * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
8664
8665         * config/i386/nm-cygwin.h: Remove all I386_* macros.
8666         * config/i386/nm-cygwin64.h: Likewise.
8667         * config/i386/nm-fbsd.h: Likewise.
8668         * config/i386/nm-linux.h: Likewise.
8669         * config/i386/nm-i386.h: Remove completely.
8670         * config/i386/nm-go32.h: Remove completely.
8671         * config/i386/nm-linux64.h: Remove completely.
8672         * config/i386/go32.mh (NAT_FILE): Remove entry.
8673         * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
8674
8675 2009-05-14  Jon Beniston  <jon@beniston.com>
8676
8677         * MAINTAINERS: Add Jon Beniston to write after approval list.
8678
8679 2009-05-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
8680
8681         * objc-lang.c (objc_objfile_data): New variable.
8682         (find_methods): Skip objfiles without Obj-C methods.
8683         (_initialize_objc_lang): New function.
8684
8685 2009-05-13  Joel Brobecker  <brobecker@adacore.com>
8686
8687         * c-lang.c (print_wchar): Remove unnecessary cast.
8688
8689 2009-05-12  Jim Blandy  <jimb@red-bean.com>
8690
8691         * MAINTAINERS: Remove self as m32c target maintainer.
8692
8693 2009-05-12  Pedro Alves  <pedro@codesourcery.com>
8694
8695         * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
8696         * command.h (deprecated_add_set_cmd): Delete declaration.
8697         * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
8698         'set debug gnu-nat' and 'show debug gnu-nat'.
8699         * i386-nat.c (_initialize_i386_nat): Replace 'maint
8700         show-debug-registers' with 'maint set show-debug-registers' and
8701         'maint show show-debug-registers'.
8702         * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
8703         show-debug-registers' with 'maint set show-debug-registers' and
8704         'maint show show-debug-registers'.
8705
8706 2009-05-12  Joel Brobecker <brobecker@adacore.com>
8707
8708         * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
8709         pushing it on the output obstack.
8710
8711 2009-05-11  Joel Brobecker <brobecker@adacore.com>
8712
8713         Fix internal error on breaking at a multi-locations caller source line.
8714         * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
8715         command with no parameters.
8716
8717 2009-05-11  Pedro Alves  <pedro@codesourcery.com>
8718
8719         * linux-nat.c (enum sigchld_state): Delete.
8720         (linux_nat_async_events_state): Delete.
8721         (struct waitpid_result): Delete.
8722         (waitpid_queue): Delete.
8723         (queued_waitpid_1): Delete.
8724         (async_file_flush): New.
8725         (queued_waitpid, push_waitpid): Delete.
8726         (async_file_mark): New.
8727         (drain_queued_events): Delete.
8728         (my_waitpid): Remove locally queued events handling.
8729         (linux_test_for_tracefork): Upjust.
8730         (linux_child_follow_fork): Ditto.
8731         (sync_sigchld_action): Delete.
8732         (blocked_mask): Reinstate.
8733         (async_sigchld_action): Rename to...
8734         (sigchld_action): ... this.
8735         (block_child_signals): New.
8736         (restore_child_signals_mask): New.
8737         (lin_lwp_attach_lwp): Adjust.
8738         (linux_nat_create_inferior): Ditto.
8739         (linux_nat_attach): Also use lp->status in async mode.
8740         (get_pending_status): Don't use queued_waitpid.
8741         (linux_nat_detach): Don't drain locally queued events.
8742         (linux_nat_resume): Allow pending wait statuses stored lp->status
8743         in async mode.  If returning early due to a pending event,
8744         re-register the event source.
8745         (stop_wait_callback): Allow pending wait statuses stored
8746         lp->status in async mode.
8747         (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
8748         (linux_nat_wait): Rename to ...
8749         (linux_nat_wait_1): ... this.  Allow pending wait statuses stored
8750         lp->status in async mode.  Always add WNOHANG to the waitpid
8751         options in async mode.
8752         (linux_nat_wait): New.
8753         (kill_callback): Don't drain locally queued events.
8754         (sigchld_handler): Rewrite.
8755         (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
8756         refer to "set target-async".
8757         (linux_nat_async_mask): If in non-stop, and re-enabling async
8758         mode, re-register the target event source in the event loop.
8759         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
8760         (get_pending_events, async_sigchld_handler)
8761         (linux_nat_async_events): Delete.
8762         (handle_target_event): New.
8763         (linux_nat_async_file_handler): Delete.
8764         (linux_async_pipe): New.
8765         (linux_nat_async): Only re-register in the event loop if not
8766         registered yet.  Always notify the event-loop once if enabling the
8767         event source.
8768         (linux_nat_stop_lwp): Rewrite to handle pending events stored in
8769         lp->status, not in the locally queued event list.
8770         (linux_nat_stop): Don't mask out async event handling.
8771         (linux_nat_setup_async): Delete.
8772         (_initialize_linux_nat): Adjust.
8773         (lin_thread_get_thread_signals): blocked_mask is global again.
8774         Adjust.
8775
8776 2009-05-11  Pierre Muller  <muller@ics.u-strasbg.fr>
8777
8778         Unify target macros.
8779
8780         * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
8781         (target_stoppped_by_watchpoint): New macro.
8782         (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
8783         (target_have_steppable_watchpoint): New macro.
8784         (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
8785         (target_have_continuable_watchpoint): New macro.
8786         (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
8787         (target_can_use_hardware_watchpoint): New macro.
8788         (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
8789         (target_region_ok_for_hw_watchpoint): New macro.
8790
8791         * breakpoint.c (update_watchpoint): Use new macros.
8792         (bpstat_alloc): Likewise.
8793         (create_breakpoint): Likewise.
8794         (watch_command_1): Likewise.
8795         (can_use_hardware_watchpoint): Likewise.
8796         (do_enable_breakpoint): Likewise.
8797         * infrun.c (handle_inferior_event): Adapt to new macros.
8798         * mips-tdep.c (mips_gdbarch_init): Update comments.
8799         * procfs.c (procfs_set_watchpoint): Update comment.
8800         (procfs_insert_watchpoint): Adapt to new macros.
8801         * remote-m32r-sdi.c (m32r_stop):
8802         * remote-mips.c (mips_remove_breakpoint):
8803         * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
8804         (debug_to_stopped_by_watchpoint): Likewise.
8805
8806
8807 2009-05-10  Pierre Muller  <muller@ics.u-strasbg.fr>
8808
8809         * src/gdb/target.h: Remove all tests for already defined
8810         macros. All macros defined here should not be set in config
8811         headers anymore.
8812
8813 2009-05-08  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
8814
8815         * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
8816         (have_ptrace_getsetfpregs): Likewise.
8817         fetch_all_gp_regs): New function.
8818         (fetch_gp_regs): New function.
8819         (fetch_all_fp_regs): Likewise.
8820         (fetch_fp_regs): New function.
8821         (fetch_ppc_registers): Using the new methods to fetch general-
8822         purpose and floating-pointer registers.
8823         (store_all_gp_regs): New function.
8824         (store_gp_regs): Likewise.
8825         (store_all_fp_regs): New function.
8826         (store_fp_regs): Likewise.
8827         (store_ppc_registers): Using the new methods to store general-
8828         purpose and floating-pointer registers.
8829
8830 2009-05-08  Doug Evans  <dje@google.com>
8831
8832         * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
8833
8834 2009-05-07  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
8835
8836         * MAINTAINERS (Write After Approval): Add self.
8837
8838 2009-05-07  Joel Brobecker  <brobecker@adacore.com>
8839
8840         * gdbarch.h (target_gdbarch): Add comment documenting this global.
8841
8842 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
8843
8844         * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
8845         system iconv.
8846         * configure: Regenerate.
8847
8848 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
8849
8850         * utils.c: Add include of gdb_usleep.h.
8851         (defaulted_query): Detect false EOF conditions that happen
8852         on terminals opened with the O_NONBLOCK flag when there is
8853         nothing to read.
8854
8855 2009-05-06  Pedro Alves  <pedro@codesourcery.com>
8856
8857         * inferior.c (add_inferior): Move observer_notify_new_inferior
8858         call to ...
8859         (add_inferior_silent): ... here.
8860
8861 2009-05-06  Pierre Muller  <muller@ics.u-strasbg.fr>
8862             Pedro Alves  <pedro@codesourcery.com>
8863
8864         * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
8865         (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
8866         functions.
8867         (procfs_stopped_by_watchpoint): Made static, ptid argument
8868         removed.
8869         (_initialize_procfs): Register new watchpoint related target
8870         functions.
8871         * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
8872         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
8873         (HAVE_CONTINUABLE_WATCHPOINT): Delete.
8874         (target_insert_watchpoint, target_remove_watchpoint): Delete.
8875         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
8876         declarations.
8877         * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
8878         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
8879         (target_insert_watchpoint, target_remove_watchpoint): Delete.
8880         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
8881         declarations.
8882         * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
8883         (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
8884         (target_insert_watchpoint, target_remove_watchpoint): Delete.
8885         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
8886         declarations.
8887
8888 2009-05-06  Hui Zhu  <teawater@gmail.com>
8889
8890         * i386-tdep.c (i386_process_record): Change bzero to memset.
8891
8892 2009-05-06  Hui Zhu  <teawater@gmail.com>
8893
8894         * NEWS: Add item for process record and replay.
8895
8896 2009-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
8897
8898         * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
8899
8900 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
8901
8902         * inferior.h (read_pc, write_pc): Remove.
8903         * regcache.c (read_pc, write_pc): Remove.
8904
8905         * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
8906         of read_pc.
8907         (handle_inferior_event): Use regcache_read_pc instead of read_pc
8908         when determining value of stop_pc.  Replace subsequent uses of
8909         read_pc by inspecting already-retrieved stop_pc value.
8910         (keep_going): Use regcache_read_pc instead of read_pc.
8911
8912         * breakpoint.c (watchpoint_check): Use current frame architecture
8913         and PC instead of current_gdbarch and read_pc ().
8914         * tracepoint.c (set_traceframe_context): Replace PC argument
8915         with FRAME argument.
8916         (trace_start_command, finish_tfind_command): Update calls.
8917         (finish_tfind_command): Compare frame IDs to identify transitions
8918         between frames.
8919         (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
8920         * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
8921         of gdbarch.  Use regcache_read_pc and regcache_write_pc instead
8922         of read_pc and write_pc.
8923         (store_register): Make regcache argument non-const.  Update call
8924         to exec_one_dummy_insn.
8925
8926         * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
8927         * infcmd.c (post_create_inferior): Likewise.
8928         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
8929         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
8930         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
8931         * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
8932         * linux-fork.c (fork_load_infrun_state): Likewise.
8933         * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
8934         * record.c (record_wait): Likewise.
8935         * procfs.c (procfs_wait): Likewise.
8936         * remote-mips.c (common_open, mips_wait): Likewise.
8937         * remote-m32r-sdi.c (m32r_resume): Likewise.
8938
8939         * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
8940         * monitor.c (monitor_create_inferior, monitor_load): Likewise.
8941         * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
8942         * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
8943         * remote-mips.c (mips_create_inferior, mips_load): Likewise.
8944
8945         * solib-darwin.c: Include "regcache.h".
8946         * solib-pa64.c: Include "regcache.h".
8947         * solib-svr4.c: Include "regcache.h.".
8948
8949         * symfile.c: Do not mention read_pc or write_pc in comments.
8950         * dink32-rom.c: Likewise.
8951         * m32r-rom.c: Likewise.
8952         * mips-tdep.c: Likewise.
8953
8954 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
8955
8956         * fork-child.c (startup_inferior): Move setting stop_pc ...
8957         * infcmd.c (post_create_inferior): ... to here.
8958
8959 2009-05-04  Michael Snyder  <msnyder@vmware.com>
8960
8961         * NEWS: Add item for reverse debugging commands.
8962
8963 2009-05-04  Pedro Alves  <pedro@codesourcery.com>
8964
8965         * go32-nat.c (go32_stop): Delete.
8966         (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
8967         (go32_create_inferior): Don't call go32_stop or
8968         go32_kill_inferior.
8969         (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
8970         here.
8971         (init_go32_ops): Don't register go32_stop.
8972
8973 2009-05-02  Eli Zaretskii  <eliz@gnu.org>
8974
8975         * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
8976         sym_name.
8977
8978         * infcall.c (find_function_addr): Avoid compiler warnings for
8979         funaddr.
8980
8981 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
8982
8983         * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
8984         (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
8985
8986 2009-05-01  Doug Evans  <dje@google.com>
8987
8988         * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
8989         to thread_info.
8990
8991 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
8992
8993         * record.c (_initialize_record): Reformat and clarify doc strings
8994         for stop-at-limit and insn-number-max.
8995
8996         * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
8997
8998 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
8999
9000         Make specifiable the make_function_type type memory ownership.
9001         * gdbtypes.c (make_function_type): New parameter `objfile', use it
9002         explicitely instead of TYPE-initialized removed local variable
9003         `objfile'.  Describe `objfile' it in the function comment.
9004         (lookup_function_type): Update make_function_type callers.
9005         * gdbtypes.h (make_function_type): Update the prototype.
9006         * jv-lang.c (java_link_class_type): Update make_function_type callers.
9007         * dwarf2read.c (read_subroutine_type): Likewise.
9008         * stabsread.c (read_type): Likewise.
9009
9010 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
9011
9012         * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
9013         printing a bogus "Thread <main>".
9014         (go32_thread_alive): Don't return 1 for null_ptid.
9015
9016         * i386-tdep.c (i386_go32_init_abi): Override the number of
9017         registers due to non-support of SSE.
9018
9019 2009-04-30  Anthony Green  <green@moxielogic.com>
9020
9021         * configure.tgt: Link the moxie simulator in with gdb.
9022
9023 2009-04-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
9024
9025         * elfread.c (elf_symtab_read): Don't assume .data and .rodata
9026         are present.
9027
9028 2009-04-30  Hui Zhu  <teawater@gmail.com>
9029             Michael Snyder  <msnyder@vmware.com>
9030
9031         I386 Linux process record and replay support.
9032
9033         * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
9034         This struct has the argument for the function
9035         "record_linux_system_call".
9036         (i386_linux_intx80_sysenter_record): New function. Parse the
9037         system call instruction and call function
9038         "record_linux_system_call" to record execute log.
9039         (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
9040         Set "i386_linux_intx80_sysenter_record" to
9041         "i386_intx80_record" and "i386_sysenter_record".
9042
9043 2009-04-30  Hui Zhu  <teawater@gmail.com>
9044             Michael Snyder  <msnyder@vmware.com>
9045
9046         I386 architecture process record and replay support.
9047
9048         * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
9049         PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
9050         instruction set.
9051         (aflag, dflag, override, modrm, mod, reg, rm, ot,
9052         i386_record_pc): New variables. Ditto.
9053         (i386_record_modrm, i386_record_lea_modrm_addr,
9054         i386_record_lea_modrm): New functions. Ditto.
9055         (i386_process_record): New function. Parse the instruction in
9056         address "addr" and record the values of registers and memory
9057         that will be changed by this instruction.
9058         (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
9059         "process_record" interface.
9060         * i386-tdep.h (gdbarch_tdep): New function pointers
9061         "i386_intx80_record" and "i386_sysenter_record" that point to
9062         the function that can record "intx80" and "sysenter" execute
9063         log.
9064
9065 2009-04-30  Hui Zhu  <teawater@gmail.com>
9066             Michael Snyder  <msnyder@vmware.com>
9067
9068         * infrun.c (use_displaced_stepping): Return false if process
9069         record and replay target is used.
9070         (proceed): Call function "record_not_record_set" if pocess
9071         record and replay target is used.
9072
9073 2009-04-30  Hui Zhu  <teawater@gmail.com>
9074             Michael Snyder  <msnyder@vmware.com>
9075
9076         Linux process record and replay support.
9077
9078         * Makefile.in (ALLDEPFILES): Add linux-record.c.
9079         (ALL_TARGET_OBS): Add linux-record.o.
9080         * configure.tgt (x86_64-*-linux*): Add linux-record.o.
9081         (i[34567]86-*-linux*): Add linux-record.o.
9082         * linux-record.c, linux-record.h: New file.
9083
9084 2009-04-30  Hui Zhu  <teawater@gmail.com>
9085             Michael Snyder  <msnyder@vmware.com>
9086
9087         Process record and replay target.
9088
9089         * Makefile.in (SFILES): Add record.c.
9090         (COMMON_OBS): Add record.o.
9091         * record.c, record.h: New file.
9092
9093 2009-04-30  Hui Zhu  <teawater@gmail.com>
9094             Michael Snyder  <msnyder@vmware.com>
9095
9096         * target.h (strata): New stratum "record_stratum".
9097
9098 2009-04-30  Hui Zhu  <teawater@gmail.com>
9099             Michael Snyder  <msnyder@vmware.com>
9100
9101         GDBARCH interface for process record and replay.
9102
9103         * gdbarch.sh (process_record): This interface point to the
9104         function that records the inferior execute log.
9105
9106 2009-04-29  Doug Evans  <dje@google.com>
9107
9108         * i386-nat.c (child_post_startup_inferior): Delete, unused.
9109
9110 2009-04-29  Pedro Alves  <pedro@codesourcery.com>
9111
9112         * breakpoint.c (print_exception_catchpoint): Access `b' directly
9113         instead of `b->loc->owner'.
9114         (print_mention_exception_catchpoint): Ditto.
9115
9116 2009-04-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
9117
9118         * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
9119
9120 2009-04-27  Tom Tromey  <tromey@redhat.com>
9121
9122         * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
9123
9124 2009-04-27  Jerome Guitton  <guitton@adacore.com>
9125
9126         * symtab.c (append_exact_match_to_sals): New function, extracted
9127         from expand_line_sal.
9128         (expand_line_sal): Use append_exact_match_to_sals to append exact
9129         matches. If none found, append all best items.
9130
9131 2009-04-27  Jerome Guitton  <guitton@adacore.com>
9132
9133         * main.c (captured_main): Move gdbinit lookups after gdb_init.
9134
9135 2009-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
9136
9137         PR gdb/9675:
9138         * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
9139         (read_func_scope): Call inherit_abstract_dies.
9140
9141 2009-04-25  Eli Zaretskii  <eliz@gnu.org>
9142
9143         * Makefile.in (ALLDEPFILES): Remove duplicate entries for
9144         sparc-sol2-nat.c and sparc-sol2-tdep.c.
9145
9146         * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
9147
9148 2009-04-24  Pierre Muller  <muller@ics.u-strasbg.fr>
9149
9150         ARI change: Use "/* ARI: rule */" pattern.
9151         * utils.c: Update ARI patterns.
9152         * gdb_dirent.h: Likewise.
9153
9154 2009-04-23  Anthony Green  <green@moxielogic.com>
9155
9156         * MAINTAINERS: Add moxie target.
9157         * configure.tgt: Add moxie-*-elf target.
9158         * moxie-tdep.c: New file.
9159         * moxie-tdep.h: New file.
9160
9161 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
9162
9163         * ada-lang.c: Remove an extra empty line. No code change.
9164
9165 2009-04-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
9166
9167         Fix double free on error inserting the breakpoint instruction.
9168         * breakpoint.c (create_breakpoints): Move the
9169         update_global_location_list call to ...
9170         (break_command_really): ... here together with the second local call
9171         both unified after all the cleanups.
9172
9173 2009-04-23  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
9174             Tom Tromey  <tromey@redhat.com>
9175
9176         * configure, config.in: Regenerate.
9177         * configure.ac: Support for relocatable GDB datadir.  Use
9178         GDB_AC_WITH_DIR.  Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
9179         * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
9180         * top.c (init_main): Add "set data-directory".
9181         * defs.h (gdb_datadir): Declare.
9182         * main.c (gdb_datadir): New global.
9183         (captured_main): Initialize gdb_datadir.  Use relocate_directory.
9184         (relocate_path): New function.
9185         (relocate_directory): Likewise.
9186         (get_init_files): Use relocate_path.
9187         (README): Mention --with-gdb-datadir.
9188
9189 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
9190
9191         * ada-tasks (task_command_1): Call target_find_new_threads.
9192
9193 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
9194
9195         * stack.c (do_gdb_disassembly): Print the exception message if an
9196         error was thrown while trying to perform the disassembly.
9197
9198 2009-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
9199
9200         * varobj.c (free_variable): Replace free_current_contents by xfree.
9201
9202 2009-04-22  Kazu Hirata  <kazu@codesourcery.com>
9203
9204         * arm-linux-nat.c (fetch_register, store_register): Use
9205         ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
9206         * arm-linux-tdep.c (arm_linux_supply_gregset,
9207         arm_linux_collect_gregset): Likewise.
9208         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
9209         * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
9210
9211 2009-04-22  Hui Zhu  <teawater@gmail.com>
9212
9213         * stack.c (_initialize_stack): Set the default of
9214         disassemble-next-line to off.
9215
9216 2009-04-21  Tom Tromey  <tromey@redhat.com>
9217
9218         * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
9219         * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
9220
9221 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
9222
9223         * configure.ac: Add quotes to not lose brackets in help text.
9224         * configure: Rebuild.
9225
9226 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
9227
9228         * configure.ac: Don't postprocess Makefile in config.status.
9229         Substitute GDB_NM_FILE.  Don't substitute nm_h.
9230         * Makefile.in (GDB_NM_FILE): Substitute.
9231         (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
9232         * configure: Regenerate.
9233         * gnulib/Makefile.in: Regenerate.
9234
9235 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
9236
9237         * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
9238         --with-htmldir): New.
9239         * configure: Regenerate.
9240
9241 2009-04-21  Tom Tromey  <tromey@redhat.com>
9242
9243         * configure: Rebuild.
9244         * configure.ac: Use lower case for start of help strings.  Clean
9245         up --with-sysroot help.
9246
9247 2009-04-21  Tom Tromey  <tromey@redhat.com>
9248
9249         * configure: Rebuild.
9250         * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
9251         * configure.ac: Use AC_HELP_STRING.  Use upper case for variables
9252         in help.
9253
9254 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
9255
9256         ARI fix: remove "%p".
9257         * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
9258         (ia64_sigtramp_frame_this_id): Ditto.
9259         (ia64_libunwind_frame_this_id): Ditto.
9260         (ia64_libunwind_sigtramp_frame_this_id): Ditto.
9261         * symmisc.c (maintenance_info_psymtabs): Ditto.
9262
9263 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
9264
9265         * configure.ac (--with-relocated-sources): New.
9266         * configure, config.in: Regenerate.
9267         * source.c (add_substitute_path_rule): Remove static.
9268         * source.h (add_substitute_path_rule): Declare.
9269         * main.c: Include "source.h".
9270         (captured_main): Add substitution rule if RELOC_SRCDIR.
9271
9272 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
9273
9274         * gnu-nat.h (proc_debug): Add missing continuation line in macro.
9275
9276 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
9277
9278         * NEWS: Mention MIPS/Linux hardware watchpoint support.
9279
9280 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
9281
9282         * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
9283         (maint_show_dr, super_close): New variables.
9284         (super_fetch_registers, super_store_registers): Make static.
9285         (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
9286         (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
9287         (pt_watch_style): Define new enum.
9288         (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
9289         Define new structs.
9290         (watch_readback_valid, watch_readback, current_watches, watch_mirror):
9291         New variables.
9292         (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
9293         (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
9294         (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
9295         (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
9296         (type_to_irw, fill_mask, try_one_watch)
9297         (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
9298         (mips_linux_new_thread, populate_regs_from_watches)
9299         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9300         (mips_linux_close): New functions.
9301         (_initialize_mips_linux_nat): Register watchpoint functions with
9302         the target_ops.  Add show-debug-regs maintenance command.
9303
9304 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
9305
9306         * infrun.c (handle_inferior_event): Move gegisters_changed call down.
9307
9308 2009-04-19  Pedro Alves  <pedro@codesourcery.com>
9309
9310         * NEWS: Mention gdbserver support for x86 Windows CE.
9311
9312 2009-04-19  Eli Zaretskii  <eliz@gnu.org>
9313
9314         * config/djgpp/fnchange.lst: Fix typos.
9315
9316         Set default host and target charsets in the DJGPP port.
9317
9318         * config/djgpp/config.sed (am_cv_langinfo_codeset)
9319         (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
9320         in all configure scripts that define ac_cv_env_CPP_value.
9321
9322         * go32-nat.c (dos_codepage, nl_langinfo): New functions.
9323         Include langinfo.h.
9324
9325         * config/djgpp/nl_types.h: New file.
9326
9327         * config/djgpp/langinfo.h: New file.
9328
9329         * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
9330
9331 2009-04-18  Carlos O'Donell  <carlos@codesourcery.com>
9332
9333         * Makefile.in (MAKEHTML): Set to makeinfo --html.
9334         (MAKEHTMLFLAGS): Set to empty.
9335
9336 2009-04-18  Eli Zaretskii  <eliz@gnu.org>
9337
9338         * NEWS: Mention all new set/show commands added since GDB 6.8 was
9339         released.
9340
9341         * go32-nat.c (go32_sysinfo): Check if the call to
9342         __dpmi_get_capabilities fills the buffer with information, and
9343         don't use the buffer if not.
9344
9345 2009-04-17  Tom Tromey  <tromey@redhat.com>
9346
9347         * charset.c (_initialize_charset): Add special case for "646".
9348
9349 2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>
9350
9351         * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
9352         * configure: Regenerate.
9353         * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
9354         configure substitutions.
9355         (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
9356
9357 2009-04-17  Pierre Muller  <muller@ics.u-strasbg.fr>
9358
9359         ARI fix: Do not use %p, replace by call to host_address_to_string
9360         for host pointers.
9361         * darwin-nat.c (darwin_xfer_partial): Apply change.
9362         * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
9363         * gnu-nat.h (proc_debug): Ditto.
9364         * symmisc.c (maintenance_info_symtabs): Ditto.
9365         (maintenance_info_psymtabs): Ditto.
9366         * windows-nat.c (handle_load_dll): Ditto.
9367         (handle_unload_dll, info_w32_command, handle_exception): Ditto.
9368         * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
9369
9370 2009-04-17  Joseph Myers  <joseph@codesourcery.com>
9371
9372         * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
9373         --enable-64-bit-bfd.
9374         (sparc-*-linux*): Likewise.
9375
9376 2009-04-17  Eli Zaretskii  <eliz@gnu.org>
9377
9378         * go32-nat.c (go32_sysinfo): Update list of Windows versions of
9379         the NT family.
9380
9381 2009-04-16  Pedro Alves  <pedro@codesourcery.com>
9382
9383         * remote.c (remote_query_attached): Fix pasto in packet_ok result
9384         checking.
9385
9386 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9387
9388         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
9389         Revert the previous change.  Might not be correct, actually.
9390
9391 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9392
9393         * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
9394         (ada_get_current_task, ada_print_exception_breakpoint_nontask)
9395         (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
9396         Remove declaration. These are non-existent functions.
9397
9398 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9399
9400         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
9401         Fix a compilation warning on mips-irix due to casting from
9402         a pointer of different size.
9403
9404 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9405
9406         * ada-lang.c (symtab_for_sym): Delete.
9407         (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
9408
9409 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
9410
9411         * ada-lang.c (extract_string): Delete.
9412         (ada_main_name): Reimplement using target_read_string instead of
9413         extract_string.
9414
9415 2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
9416
9417         * m68klinux-nat.c: Remove obsolete comment.
9418         (fetch_register, store_register): Don't call
9419         gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
9420         which are always nops here.
9421
9422 2009-04-14  Tom Tromey  <tromey@redhat.com>
9423
9424         * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
9425         (c_printstr): Likewise.
9426         * charset.c: Include gdb_wait.h.
9427         (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
9428         (find_charset_names): Use pexecute.  Handle libiconv's output.
9429         Detect errors.
9430         (_initialize_charset): Use xstrdup.
9431         * gdb_wchar.h: Check HAVE_BTOWC.  Split PHONY_ICONV and wchar
9432         cases.
9433         (INTERMEDIATE_ENCODING): New define.
9434         * configure, config.in: Rebuild.
9435         * configure.ac: Check for btowc.
9436
9437 2009-04-15  Tom Tromey  <tromey@redhat.com>
9438
9439         * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
9440
9441 2009-04-15  Eli Zaretskii  <eliz@gnu.org>
9442
9443         * utils.c (parse_escape): Initialize target_char to pacify GCC.
9444
9445 2009-04-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
9446
9447         * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
9448
9449 2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
9450
9451         ARI fix: sprintf rule.
9452         * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
9453         * ada-lang.c (add_angle_brackets): Use xstrprintf.
9454         (ada_decode): Replace sprintf by xsnprintf.
9455         (find_old_style_renaming_symbol): Ditto.
9456         (ada_to_fixed_type_1, ada_enum_name): Ditto.
9457
9458
9459 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
9460
9461         * target.c (target_mourn_inferior): Call bfd_cache_close_all
9462         after having executed the target mourn_inferior routine.
9463
9464 2009-04-14  Eli Zaretskii  <eliz@gnu.org>
9465
9466         * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
9467         undefined.
9468
9469 2009-04-13  David Daney  <ddaney@caviumnetworks.com>
9470
9471         * infrun.c (maybe_software_singlestep): New function.
9472         (resume): Call maybe_software_singlestep.
9473         (handle_inferior_event): Same.
9474
9475 2009-04-13  Tom Tromey  <tromey@redhat.com>
9476
9477         * python/python-frame.c (frapy_richcompare): Return
9478         Py_NotImplemented, not an error.  Handle Py_NE as well.
9479
9480 2009-04-13  Eli Zaretskii  <eliz@gnu.org>
9481
9482         * charset.c (EILSEQ): Define if not defined by system headers.
9483
9484 2009-04-11  Eli Zaretskii  <eliz@gnu.org>
9485
9486         * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
9487         to be consistent with renaming config.intl.in into config_intl.in.
9488
9489         * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
9490         consistent with the change from 2008-11-09.
9491
9492 2009-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
9493
9494         * gdbtypes.c: Remove excessive parentheses at the return keywords.
9495         * varobj.c (varobj_invalidate): Fix indentation.
9496         * varobj.c (varobj_invalidate): Fix formatting text width.
9497
9498 2009-04-08  Vladimir Prus  <vladimir@codesourcery.com>
9499
9500         Implement -exec-jump.
9501
9502         * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
9503         * mi/mi-main.c (mi_cmd_exec_jump): New.
9504         * mi/mi-cmds.c (mi_cmds): Register exec-jump.
9505
9506 2009-04-07  Doug Evans  <dje@google.com>
9507
9508         * symfile.c (symbol_file_clear): Fix indentation.
9509
9510 2009-04-06  Mark Kettenis  <kettenis@gnu.org>
9511
9512         * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
9513
9514 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
9515
9516         * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
9517         (ppc_linux_auxv_parse): New function.
9518         (ppc_linux_read_description): Use ppc_linux_target_wordsize.
9519         (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
9520
9521 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
9522
9523         * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
9524         BFD to contents of SPU name note.
9525         (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
9526         with "from_tty" argument 1 instead of 0.
9527
9528 2009-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
9529
9530         * dwarf2read.c
9531         (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
9532         Create the symbol in local scope.
9533         * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
9534
9535 2009-04-02  Keith Seitz  <keiths@redhat.com>
9536
9537         * stabsread.c (read_member_functions): GCC may emit an extra space
9538         at the end of the names "__base_ctor" and "__base_dtor"; so ignore
9539         whitespace when looking for these functions.
9540
9541 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9542
9543         Change the default value for "set print frame-arguments" to scalars.
9544
9545         * stack.c (print_frame_arguments): Set initial value to "scalars".
9546
9547 2009-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
9548
9549         * mips-tdep.c (mips_numeric_register_alieses): New definition.
9550         (mips_gdbarch_init): Add user registers from
9551         mips_numeric_register_aliases.
9552
9553 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9554
9555         * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
9556
9557 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9558
9559         * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
9560         this is the last one.
9561
9562 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
9563
9564         * remote.c (append_resumption): New.
9565         (remote_vcont_resume): Use it.
9566
9567 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
9568
9569         * windows-nat.c (+windows_get_ada_task_ptid): New function.
9570         (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
9571
9572 2009-03-31  Daniel Jacobowitz  <dan@codesourcery.com>
9573             Keith Seitz  <keiths@redhat.com>
9574             Jan Kratochvil  <jan.kratochvil@redhat.com>
9575
9576         PR gdb/6817
9577         * Makefile.in (dbxread.o): Update.
9578         * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
9579         * dwarf2read.c (GDB_FORM_cached_string): New.
9580         (read_partial_die): Use dwarf2_canonicalize_name.
9581         (dwarf2_linkage_name): Use dwarf2_name.
9582         (dwarf2_canonicalize_name): New.
9583         (dwarf2_name): Use dwarf2_canonicalize_name.
9584         (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
9585         * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
9586         * symtab.c (lookup_symbol_in_language): Canonicalize input before
9587         searching.
9588         * cp-name-parser.y: operator() requires two parameters,
9589         according to libiberty.
9590         * minsyms.c (lookup_minimal_symbol): Canonicalize input
9591         before searching.
9592         * NEWS: Update.
9593
9594 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
9595
9596         Provide support for (Ada) task-specific breakpoints.
9597
9598         * ada-lang.h (ada_get_task_number): Add declaration.
9599         (breakpoint_ada_task_match): Delete declaration.
9600         * ada-tasks.c (ada_get_task_number): Make non-static.
9601         * breakpoint.h (struct breakpoint): Add field "task".
9602         * breakpoint.c (print_one_breakpoint_location): Add handling of
9603         task-specific breakpoints.
9604         (create_breakpoint, create_breakpoints, find_condition_and_thread):
9605         New parameter "task".
9606         (break_command_really): Update calls to find_condition_and_thread
9607         and create_breakpoints.
9608         (breakpoint_re_set_one): Update call to find_condition_and_thread.
9609         Set b->task.
9610
9611 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
9612
9613         * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
9614
9615 2009-03-31  Pedro Alves  <pedro@codesourcery.com>
9616
9617         * remote.c (remote_notice_new_inferior): Use ptid_is_pid.  Check
9618         if the thread's ptid without a thread id field is in the list
9619         before calling thread_change_ptid.
9620         (extended_remote_attach_1): In non-stop mode, do not rely on
9621         querying the current thread, instead, query the thread list, and
9622         select the first thread of the process.
9623         * gdbthread.h (first_thread_of_process): Declare.
9624         * thread.c (first_thread_of_process): Define.
9625
9626 2009-03-30  Stan Shebs  <stan@codesourcery.com>
9627
9628         Make tracepoints into a type of breakpoint.
9629         * breakpoint.h (enum bptype): Add bp_tracepoint.
9630         (struct breakpoint): Add fields step_count, pass_count, actions.
9631         (get_tracepoint, get_tracepoint_by_number): Declare.
9632         (all_tracepoints): Declare.
9633         * breakpoint.c: Include tracepoint.h, readline.h.
9634         (ALL_TRACEPOINTS): Move here from tracepoint.c.
9635         (tracepoint_count): Ditto.
9636         (should_be_inserted): GDB does not insert tracepoints itself.
9637         (print_it_typical): Add tracepoint case.
9638         (bpstat_what): Ditto.
9639         (print_one_breakpoint_location): Ditto, and add printing for
9640         pass count, step count, and action list.
9641         (user_settable_breakpoint): Add tracepoint case.
9642         (allocate_bp_location): Ditto.
9643         (set_breakpoint_location_function): Ditto.
9644         (disable_breakpoints_in_shlibs): Ditto.
9645         (mention): Ditto.
9646         (break_command_really): Add argument traceflag, use to choose
9647         basic breakpoint type.
9648         (break_command_1): Pass extra argument.
9649         (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
9650         (breakpoint_re_set_one): Add tracepoint case.
9651         (disable_command, enable_command): Ditto.
9652         (set_tracepoint_count): Move here from tracepoint.c.
9653         (trace_command): Move here from tracepoint.c and use
9654         break_command_really.
9655         (tracepoints_info): Move here from tracepoint.c and call
9656         breakpoints_info.
9657         (enable_trace_command): Move here from tracepoint.c and call
9658         enable_command.
9659         (disable_trace_command): Move here from tracepoint.c and call
9660         disable_command.
9661         (delete_trace_command): Move here from tracepoint.c and call
9662         delete_breakpoint.
9663         (trace_pass_command): Move here from tracepoint.c.
9664         (get_tracepoint_by_number): Ditto.
9665         (tracepoint_save_command): Ditto.
9666         (get_tracepoint): New function.
9667         (all_tracepoints): New function.
9668         (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
9669         deprecate "enable trace" and "disable trace" commands.
9670         * tracepoint.h (struct tracepoint): Remove.
9671         (tracepoint_chain): Remove decl.
9672         (deprecated_create_tracepoint_hook): Remove decl.
9673         (deprecated_delete_tracepoint_hook): Remove decl.
9674         (deprecated_modify_tracepoint_hook): Remove decl.
9675         (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
9676         (free_actions): Update signature.
9677         (validate_actionline): Update signature.
9678         (end_actions_pseudocommand): Declare.
9679         (while_stepping_pseudocommand): Declare.
9680         * tracepoint.c: Include breakpoint.h.
9681         (tracepoint_chain, tracepoint_count): Remove.
9682         (free_actions, make_cleanup_free_actions): Update signature.
9683         (trace_command, set_raw_tracepoint): Remove.
9684         (trace_mention): Remove.
9685         (tracepoints_info): Remove.
9686         (tracepoint_operation, map_args_over_tracepoints): Remove.
9687         (get_tracepoint_by_number): Remove.
9688         (enable_trace_command, disable_trace_command): Remove.
9689         (delete_trace_command, trace_pass_command): Remove.
9690         (trace_actions_command, read_actions): Update signature.
9691         (validate_actionline): Update signature, use bp loc.
9692         (encode_actions): Ditto.
9693         (download_tracepoint): New function, body of trace_start_command.
9694         (trace_start_command): Call it, use all_tracepoints.
9695         (tracepoint_save_command): Remove.
9696         (tracepoint_dump_command): Use get_tracepoint.
9697         (end_actions_pseudocommand): Make globally visible.
9698         (while_stepping_pseudocommand): Ditto.
9699         (_initialize_tracepoint): Move command definitions to breakpoint.c.
9700
9701 2009-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9702
9703         Expose frames to Python.
9704         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
9705         (SUBDIR_PYTHON_SRCS): Add python-frame.c.
9706         (python-frame.o): New target.
9707         * python/python-frame.c: New file.
9708         * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
9709         gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
9710         gdbpy_initialize_frames): New prototypes.
9711         * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
9712         (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
9713         entries.
9714         * stack.c (find_frame_funname): New function, factored out of
9715         print_frame.
9716         (print_frame): Call find_frame_funname.
9717         * stack.h (find_frame_funname): Add prototype.
9718
9719 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9720
9721         Remove unused value_object attribute `owned_by_gdb'.
9722         * python/python-value.c (value_object): Remove owned_by_gdb
9723         attribute.
9724         (valpy_dealloc): Remove reference to self->owned_by_gdb.
9725         (valpy_new): Likewise.
9726         (value_to_value_object): Likewise.
9727
9728 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9729
9730         Change gdb.Value.address from a method to an attribute.
9731         * python/python-value.c (value_object): Add `address' element.
9732         (valpy_dealloc): Decrement reference to self->address if set.
9733         (valpy_new): Initialize val_obj->address.
9734         (valpy_address): Rename to ...
9735         (valpy_get_address): ... this.  Change signature from method to
9736         attribute.  Update self->address if not set.
9737         (value_to_value_object): Initialize val_obj->address.
9738         (value_object_getset): Add `address' element.
9739         (value_object_methods): Remove `address' element.
9740
9741 2009-03-29  Andreas Schwab  <schwab@linux-m68k.org>
9742
9743         * observer.sh: Set LANG/LC_ALL to C, not c.
9744
9745 2009-03-28  Kevin Buettner  <kevinb@redhat.com>
9746
9747         * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
9748         `char' is unsigned.
9749
9750 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
9751
9752         * remote.c (remote_stop_ns): If multi-process extensions are off,
9753         and GDB is requesting the whole process to stop, sent "vCont;t",
9754         not "vCont;t:-1"
9755
9756 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
9757
9758         * inf-loop.c (inferior_event_handler): Avoid calling is_running on
9759         null inferior_ptid.
9760
9761 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
9762
9763         * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
9764
9765 2009-03-26  Doug Evans  <dje@google.com>
9766
9767         * thread.c (do_restore_current_thread_cleanup): Redo test for
9768         whether to restore old->inferior_ptid.
9769
9770 2009-03-26  Tom Tromey  <tromey@redhat.com>
9771
9772         * breakpoint.c (resolve_sal_pc): Preserve original line number
9773         when skipping prologue.
9774
9775 2009-03-26  Doug Evans  <dje@google.com>
9776
9777         * thread.c (inferior_thread) Remove "extern" in definition.
9778
9779 2009-03-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9780
9781         Add gdb.Value.is_optimized_out attribute.
9782         * python/python-value.c (valpy_get_is_optimized_out): New
9783         function.
9784         (value_object_getset): New variable.
9785         (value_object_type): Initialize tp_getset element.
9786
9787 2009-03-26  Joel Brobecker  <brobecker@adacore.com>
9788
9789         Recognize missing DW_AT_location as <value optimized out>.
9790         * dwarf2read.c
9791         (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
9792         Call add_symbol_to_list.
9793
9794 2009-03-25  Tom Tromey  <tromey@redhat.com>
9795
9796         * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
9797         * stack.c (print_this_frame_argument_p): Use check_typedef.
9798
9799 2009-03-25  Tom Tromey  <tromey@redhat.com>
9800
9801         * configure: Rebuild.
9802         * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
9803         Rearrange flags setting.  Add comments.
9804
9805 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
9806
9807         * config/i386/nm-i386.h: Remove code within
9808         I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
9809         * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
9810         macro.
9811         * config/i386/nm-cygwin64.h: Ditto.
9812         * config/i386/nm-fbsd.h: Ditto.
9813         * config/i386/nm-go32.h: Ditto.
9814         * config/i386/nm-linux.h: Ditto.
9815         * config/i386/nm-linux64.h: Ditto.
9816
9817 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
9818
9819         ARI fix: "xasprintf" rule.
9820         * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
9821
9822 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
9823
9824         * remote.c (remote_start_remote): In non-stop mode, call
9825         init_wait_for_inferior before adding threads and inferiors.
9826
9827 2009-03-25  Joel Brobecker  <brobecker@adacore.com>
9828
9829         * breakpoint.c (breakpoint_thread_match): Split a large condition
9830         into several smaller conditions.  No behavior change.
9831
9832 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
9833
9834         * infrun.c (infrun_thread_thread_exit): New.
9835         (_initialize_infrun): Attach it to the thread_exit observer.
9836         * thread.c (delete_thread_1): Always call the observer, passing it
9837         the silent flag.
9838         * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
9839         SILENT, return immediately.
9840
9841 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
9842
9843         * infrun.c (normal_stop): Use has_stack_frames instead of
9844         target_has_stack.
9845         * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
9846         when there is no thread selected.
9847         (mi_cmd_execute): Don't special case commands that can run without
9848         a valid selected thread.
9849         * top.c (execute_command): Don't special case commands that can
9850         run without a valid selected thread.  Use has_stack_frames.
9851         * infcmd.c (ensure_valid_thread): New.
9852         (continue_1, step_1, jump_command, signal_command): Use it.
9853         (detach_command): Error out if there's no selected thread/inferior.
9854         * thread.c (print_thread_info): Allow having no thread selected.
9855         (switch_to_thread): Don't read the PC if there is no current thread.
9856         (do_restore_current_thread_cleanup): Don't record the current
9857         frame if there is no current thread.
9858         (make_cleanup_restore_current_thread): Don't read frame info if
9859         there is no selected thread.
9860         (_initialize_thread): Don't mark commands as
9861         "no_selected_thread_ok".
9862         * frame.c (get_current_frame): Error out if there is no valid
9863         selected thread.
9864         (has_stack_frames): Return false if there is no valid
9865         selected thread.
9866         * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
9867         "no_selected_thread_ok".
9868         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
9869         (get_cmd_no_selected_thread_ok): Delete.
9870         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
9871         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
9872         Delete declaration.
9873         * stack.c (get_selected_block): Use has_stack_frames.
9874
9875 2009-03-25  Thiago Jung Bauermann  <bauerman@br.ibm.com>
9876
9877         Fix size of FPSCR in Power 7 processors.
9878         * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
9879         (PPC_FEATURE_HAS_DFP): New #define.
9880         (ppc_linux_read_description): Check for DFP feature instead of
9881         ISA 2.05 to decide on size of the FPSCR.
9882
9883 2009-03-25  Kevin Buettner  <kevinb@redhat.com>
9884
9885         * mn10300-tdep.c (trad-frame.h): Don't include.
9886         (prologue-value.h): Include.
9887         (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
9888         (struct mn10300_prologue): Define.
9889         (push_reg, translate_rreg, check_for_saved): New functions.
9890         (mn10300_analyze_prologue): Rewrite, using prologue-value
9891         machinery.  Handle more instructions than before.  Permit
9892         instructions to occur in any order.
9893         (mn10300_skip_prologue): Find the extents of the function
9894         in question; mn10300_analyze_prologue no longer does this.
9895         (mn10300_analyze_frame_prologue): New function.
9896         (mn10300_frame_base): New function.
9897         (mn10300_frame_this_id): Rewrite, no longer using trad-frame
9898         implementation.
9899         (mn10300_frame_prev_register): Likewise.
9900         (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
9901         (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
9902         `this_frame'.
9903         (mn10300_frame_unwind_init): Don't call frame_base_set_default().
9904
9905 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
9906
9907         Fix completer problem for filename completion on the first try.
9908
9909         * gdb/completer.h (gdb_completion_word_break_characters): New function.
9910         * gdb/completer.c: Include gdb_assert.h.
9911         (complete_line_internal_reason): New enum.
9912         (complete_line_internal): Change last argument type to
9913         complete_line_internal_reason.
9914         Modify function to handle the different complete_line_internal_reason
9915         argument values.
9916         (complete_line): Adapt to change in complete_line_internal.
9917         (command_completer): Ditto.
9918         (gdb_completion_word_break_characters): Implement new function.
9919         * top.c (init_main): Set  rl_completion_word_break_hook to
9920         gdb_completion_word_break_characters.
9921
9922
9923 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
9924
9925         ARI fix: "strlen d_name" rule.
9926         * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
9927
9928
9929 2009-03-24  Tom Tromey  <tromey@redhat.com>
9930             Pedro Alves  <pedro@codesourcery.com>
9931
9932         * configure, config.in: Rebuild.
9933         * configure.ac: Check for libiconvlist.
9934         * charset.c: Check HAVE_LIBICONVLIST.
9935         * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
9936         LIBICONV_LIBDIR.  Update CPPFLAGS and LIBS.
9937         * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
9938         Remove.
9939         (INTERNAL_CFLAGS_BASE): Update.
9940         (INTERNAL_LDFLAGS): Update.
9941         (CLIBS): Update.
9942
9943 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9944
9945         * configure.ac: Initialize the variable $PREFER_CURSES.
9946         * configure: Regenerated.
9947
9948 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9949
9950         * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
9951         * configure: Regenerated.
9952
9953 2009-03-24  Pierre Muller  <muller@ics.u-strasbg.fr>
9954
9955         ARI fix: "strerror" rule.
9956         * darwin-nat.c (darwin_ptrace): Use safe_strerror.
9957         (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
9958
9959 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9960
9961         * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
9962         before looking up the fields inside our struct type.
9963
9964 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9965
9966         * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
9967         trying to resolve the type qualification.
9968
9969 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9970
9971         * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
9972         we try to apply the attribute on the real type, rather than
9973         its associated typedef.
9974
9975 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9976
9977         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
9978         to make sure we try to get the modulus of the actual type, not the
9979         associated typedef.
9980
9981 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9982
9983         * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
9984         [OP_ATR_LENGTH]: When using the attribute on a type, make sure
9985         to get the real type, not the associated typedef.
9986
9987 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9988
9989         * ada-lang.c (ada_get_field_index): Add handling of the case
9990         when TYPE is a typedef of a struct.
9991
9992 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
9993
9994         Add gdb_usleep as a portable version of usleep based on gdb_select.
9995         * gdb_usleep.h, gdb_usleep.c: New files.
9996         * Makefile.in (SFILES): Add gdb_usleep.c.
9997         (HFILES_NO_SRCDIR): Add gdb_usleep.h.
9998         (COMMON_OBS): Add gdb_usleep.o.
9999         * ser-unix.c (hardwire_send_break): Replace call to gdb_select
10000         by call to gdb_usleep.
10001
10002 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
10003
10004         * buildsym.c (end_symtab): If we ignore the subfiles, then
10005         unlink the associated symtabs if they were already allocated.
10006
10007 2009-03-23  Jerome Guitton  <guitton@adacore.com>
10008
10009         Provide a way to force building of GDB with libcurses.
10010         * configure.ac: Add --with-curses.
10011         * configure: Regenerated.
10012
10013 2009-03-23  Tom Tromey  <tromey@redhat.com>
10014
10015         * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
10016         error message.
10017
10018 2009-03-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
10019
10020         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
10021         solib_contains_address_p instead of searching.
10022
10023 2009-03-23  Tom Tromey  <tromey@redhat.com>
10024
10025         * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
10026         (iconv): Make 'inbuf' argument const.
10027         (convert_between_encodings): Use ICONV_CONST.
10028         (wchar_iterate): Likewise.
10029
10030 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
10031
10032         * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
10033         dynamically loaded function.
10034         (LookupPrivilegeValueA): Ditto.
10035         (OpenProcessToken): Ditto.
10036         (AdjustTokenPrivileges): Rename and define placeholder for address of
10037         dynamically loaded function.
10038         (LookupPrivilegeValueA): Ditto.
10039         (OpenProcessToken): Ditto.
10040         (set_process_privilege): Remove check for loaded functions.
10041         (bad_OpenProcessToken): Define.
10042         (_initialize_loadable): Load token functions from advapi here, setting
10043         OpenProcessToken function to a dummy static function which always return
10044         error if OS doesn't support this functionality.
10045
10046 2009-03-22   Nicolas Roche  <roche@adacore.com>
10047              Christopher Faylor <me+cygwin@cgf.cx>
10048
10049         * win32-nat.c (ctrl_c_handler): New function.
10050         (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
10051         is run in a separate console.
10052
10053 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
10054
10055         * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
10056         for dynamically loaded function.
10057         (DebugBreakProcess): Ditto.
10058         (DebugSetProcessKillOnExit): Ditto.
10059         (EnumProcessModules): Ditto.
10060         (GetModuleFileNameExA): Ditto.
10061         (GetModuleInformation): Ditto.
10062         (DebugActiveProcessStop): Rename and define placeholder for address of
10063         dynamically loaded function.
10064         (DebugBreakProcess): Ditto.
10065         (DebugSetProcessKillOnExit): Ditto.
10066         (EnumProcessModules): Ditto.
10067         (GetModuleFileNameExA): Ditto.
10068         (GetModuleInformation): Ditto.
10069         (psapi_loaded): Delete.
10070         (get_module_name): Don't check psapi_loaded, just rely on the fact that
10071         dynamically loaded functions will return failure if they weren't
10072         previously found.
10073         (has_detach_ability): Delete.
10074         (windows_attach): Remove call to has_detach_ability ().  Just rely on
10075         functions being callable.
10076         (bad_DebugActiveProcessStop): Define.
10077         (bad_DebugBreakProcess): Ditto.
10078         (bad_DebugSetProcessKillOnExit): Ditto.
10079         (bad_EnumProcessModules): Ditto.
10080         (bad_GetModuleFileNameExA): Ditto.
10081         (bad_GetModuleInformation): Ditto.
10082         (_initialize_loadable): Rename from _initialize_psapi.  Initialize all
10083         dynamic storage here, setting nonexistent functions to dummy static
10084         functions which always return error.
10085
10086 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10087
10088         * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
10089         to the about_to_proceed observer notification.
10090         (mi_about_to_proceed): New.
10091         (mi_on_resume): Only output ^running and the prompt here if the
10092         target was proceeded.
10093         * breakpoint.c (breakpoint_proceeded): New static.
10094         (breakpoint_about_to_proceed): New.
10095         (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
10096         the about_to_proceed observer notification.
10097         * inferior.h (breakpoint_proceeded): Delete declaration.
10098         * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
10099         Notify the about_to_proceed observers.
10100         (struct inferior_status): Delete breakpoint_proceeded member.
10101         (save_inferior_status): Don't save it.
10102         (restore_inferior_status): Don't restore it.
10103         * mi-main.h (mi_proceeded): Declare.
10104         * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
10105         a command.
10106
10107 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10108
10109         * gdbthread.h (struct thread_info): Add in_infcall member.
10110         * infcall.c (run_inferior_call): Save, set and restore in_infcall.
10111         Remove reverences to suppress_resume_observer.  Refresh
10112         `call_thread' after returning from `proceed'.
10113         * infcmd.c (suppress_resume_observer): Delete.
10114         * inferior.h (suppress_resume_observer): Delete declaration.
10115         * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
10116         inferior function.
10117         * thread.c (set_running): Remove references to
10118         suppress_resume_observer.
10119         * infrun.c (struct inferior_status): Add in_infcall member.
10120         (save_inferior_status): Save it.
10121         (restore_inferior_status): Restore it.
10122
10123 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10124
10125         * infcall.c (run_inferior_call): Remove references to
10126         suppress_stop_observer.
10127         * infcmd.c (suppress_stop_observer): Delete.
10128         (finish_command_continuation): Remove NOTE.  Don't clear
10129         suppress_stop_observer anymore.
10130         (finish_command_continuation_free_arg): Likewise.
10131         (finish_forward): Remove references to suppress_stop_observer.
10132         Call normal_stop observer if we haven't already.
10133         * inferior.h (suppress_stop_observer): Delete.
10134         * infrun.c (normal_stop): When deciding to suppress the
10135         normal_stop observer, check for proceed_to_finish instead of
10136         suppress_stop_observer.
10137
10138 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
10139
10140         * symfile.c (symfile_relocate_debug_section): Remove check for
10141         SEC_DEBUGGING.
10142
10143 2009-03-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
10144             Jim Blandy  <jimb@red-bean.com>
10145             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10146             Tom Tromey  <tromey@redhat.com>
10147
10148         Miscellaneous fixes to the Python code.
10149         * python/python-cmd.c (cmdpy_init): Accept keyword
10150         arguments.
10151         * python/python-value.c (valpy_string): Accept keyword
10152         arguments.
10153         (valpy_binop): Use `break' to exit from the TRY_CATCH block.
10154         Do not call value_to_value_object on NULL RES_VAL.
10155         (value_object_methods): Change `string' entry to also accept
10156         keyword arguments.
10157         (convert_value_from_python): Return a copy of the value if obj is
10158         a gdb.Value object.
10159         (value_object_methods): Mark the `string' method as accepting
10160         keywords, and show method "prototype" in the doc string.
10161         * python/python.c (get_parameter): Don't return inside a
10162         TRY_CATCH.
10163
10164 2009-03-20  Tom Tromey  <tromey@redhat.com>
10165
10166         Add support for convenience functions in Python.
10167         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
10168         (SUBDIR_PYTHON_SRCS): Add python-function.c.
10169         (python-function.o): New target.
10170         * eval.c: Include "python/python.h" and <ctype.h>.
10171         (evaluate_subexp_standard): Handle values of type
10172         TYPE_CODE_INTERNAL_FUNCTION.
10173         * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
10174         * parse.c (write_exp_string): Remove duplicate word in comment.
10175         * python/python-function.c: New file.
10176         * python/python-internal.h (gdbpy_initialize_functions): Add
10177         prototype.
10178         * python/python.c (_initialize_python): Call
10179         gdbpy_initialize_functions.
10180         * valprint.c (value_check_printable): Handle values of type
10181         TYPE_CODE_INTERNAL_FUNCTION.
10182         * value.c: Include "cli/cli-decode.h".
10183         (internal_function): New struct.
10184         (functionlist, internal_fn_type): New static variables.
10185         (lookup_only_internalvar,
10186         lookup_internalvar): Add const qualifier to name argument.
10187         (create_internalvar): Likewise.  Initialize new field.
10188         (set_internal_var): Fix typo in comment.  Don't allow assignment
10189         to canonical variable.
10190         (value_create_internal_function, value_internal_function_name,
10191         call_internal_function, function_command, function_destroyer,
10192         add_internal_function): New functions.
10193         (_initialize_values): Create `function' placeholder command.
10194         Initialize internal_fn_type.
10195         * value.h (lookup_only_internalvar, create_internalvar,
10196         lookup_internalvar): Add const qualifier to name argument.
10197         (internal_function_fn, add_internal_function, call_internal_function,
10198         value_internal_function_name): Add prototypes.
10199         (struct internalvar) <canonical>: New field.
10200
10201 2009-03-20  Tom Tromey  <tromey@redhat.com>
10202
10203         * c-lang.c (evaluate_subexp_c): Call check_typedef.
10204
10205 2009-03-20  Tom Tromey  <tromey@redhat.com>
10206             Julian Brown  <julian@codesourcery.com>
10207
10208         PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
10209         PR i18n/9401, PR exp/9613:
10210         * NEWS: Update
10211         * value.h (value_typed_string): Declare.
10212         (val_print_string): Update.
10213         * valprint.h (print_char_chars): Update.
10214         * valprint.c (print_char_chars): Add type argument.  Update.
10215         (val_print_string): Likewise.
10216         * valops.c (value_typed_string): New function.
10217         * utils.c (host_char_to_target): New function.
10218         (parse_escape): Use host_char_to_target, host_hex_value.  Update.
10219         Remove '^' case.
10220         (no_control_char_error): Remove.
10221         * typeprint.c (print_type_scalar): Update.
10222         * scm-valprint.c (scm_scmval_print): Update.
10223         * scm-lang.h (scm_printchar, scm_printstr): Update.
10224         * scm-lang.c (scm_printchar): Add type argument.
10225         (scm_printstr): Likewise.
10226         * printcmd.c (print_formatted): Update.
10227         (print_scalar_formatted): Update.
10228         (printf_command) <wide_string_arg, wide_char_arg>: New constants.
10229         Handle '%lc' and '%ls'.
10230         * parser-defs.h (struct typed_stoken): New type.
10231         (struct stoken_vector): Likewise.
10232         (write_exp_string_vector): Declare.
10233         * parse.c (write_exp_string_vector): New function.
10234         * p-valprint.c (pascal_val_print): Update.
10235         * p-lang.h (is_pascal_string_type, pascal_printchar,
10236         pascal_printstr): Update.
10237         * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
10238         Add 'char_type' argument.
10239         (pascal_emit_char): Add type argument.
10240         (pascal_printchar): Likewise.
10241         (pascal_printstr): Likewise.
10242         * objc-lang.c (objc_emit_char): Add type argument.
10243         (objc_printchar): Likewise.
10244         (objc_printstr): Likewise.
10245         * macroexp.c (get_character_constant): Handle unicode characters.
10246         Use c_parse_escape.
10247         (get_string_literal): Handle unicode strings.  Use
10248         c_parse_escape.
10249         * m2-valprint.c (print_unpacked_pointer): Update.
10250         (m2_print_array_contents): Update.
10251         (m2_val_print): Update.
10252         * m2-lang.c (m2_emit_char): Add type argument.
10253         (m2_printchar): Likewise.
10254         (m2_printstr): Likewise.
10255         * language.h (struct language_defn) <la_printchar>: Add type
10256         argument.
10257         <la_printstr, la_emitchar>: Likewise.
10258         (LA_PRINT_CHAR): Likewise.
10259         (LA_PRINT_STRING): Likewise.
10260         (LA_EMIT_CHAR): Likewise.
10261         * language.c (unk_lang_emit_char): Add type argument.
10262         (unk_lang_printchar): Likewise.
10263         (unk_lang_printstr): Likewise.
10264         * jv-valprint.c (java_val_print): Update.
10265         * jv-lang.c (java_emit_char): Add type argument.
10266         * f-valprint.c (f_val_print): Update.
10267         * f-lang.c (f_emit_char): Add type argument.
10268         (f_printchar): Likewise.
10269         (f_printstr): Likewise.
10270         * expprint.c (print_subexp_standard): Update.
10271         * charset.h (target_wide_charset): Declare.
10272         (c_target_char_has_backslash_escape, c_parse_backslash,
10273         host_char_print_literally, host_char_to_target,
10274         target_char_to_host, target_char_to_control_char): Remove.
10275         (enum transliterations): New type.
10276         (convert_between_encodings): Declare.
10277         (HOST_ESCAPE_CHAR): New define.
10278         (host_letter_to_control_character, host_hex_value): Declare.
10279         (enum wchar_iterate_result): New enum.
10280         (struct wchar_iterator): Declare.
10281         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
10282         wchar_push_back): Declare.
10283         * charset-list.h: New file.
10284         * c-valprint.c (textual_name): New function.
10285         (textual_element_type): Handle wide character types.
10286         (c_val_print): Pass original type to textual_element_type.  Handle
10287         wide character types.
10288         (c_value_print): Use textual_element_type.  Pass original type of
10289         value to val_print.
10290         * c-lang.h (enum c_string_type): New type.
10291         (c_printchar, c_printstr): Update.
10292         * c-lang.c (classify_type): New function.
10293         (print_wchar): Likewise.
10294         (c_emit_char): Add type argument.  Handle wide characters.
10295         (c_printchar): Likewise.
10296         (c_printstr): Add type argument.  Handle wide and multibyte
10297         character sets.
10298         (convert_ucn): New function.
10299         (emit_numeric_character): Likewise.
10300         (convert_octal): Likewise.
10301         (convert_hex): Likewise.
10302         (ADVANCE): New macro.
10303         (convert_escape): New function.
10304         (parse_one_string): Likewise.
10305         (evaluate_subexp_c): Likewise.
10306         (exp_descriptor_c): New global.
10307         (c_language_defn): Use exp_descriptor_c.
10308         (cplus_language_defn): Likewise.
10309         (asm_language_defn): Likewise.
10310         (minimal_language_defn): Likewise.
10311         (charset_for_string_type): New function.
10312         * c-exp.y (%union): Add 'svec' and 'tsval'.
10313         (CHAR): New token.
10314         (exp): Add CHAR production.
10315         (string_exp): Rewrite.
10316         (exp) <string_exp>: Rewrite.
10317         (tempbuf): Now global.
10318         (tempbuf_init): New global.
10319         (parse_string_or_char): New function.
10320         (yylex) <tempbuf>: Now global.
10321         <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
10322         Remove.
10323         Handle 'u', 'U', and 'L' prefixes.  Call parse_string_or_char.
10324         (c_parse_escape): New function.
10325         * auxv.c (fprint_target_auxv): Update.
10326         * ada-valprint.c (ada_emit_char): Add type argument.
10327         (ada_printchar): Likewise.
10328         (ada_print_scalar): Update.
10329         (printstr): Add type argument.  Update calls to ada_emit_char.
10330         (ada_printstr): Add type argument.
10331         (ada_val_print_array): Update.
10332         (ada_val_print_1): Likewise.
10333         * ada-lang.c (emit_char): Add type argument.
10334         * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
10335         type arguments.
10336         * gdb_locale.h: Include langinfo.h.
10337         * charset.c (_initialize_charset): Set default host charset from
10338         the locale.  Don't register charsets.  Add target-wide-charset
10339         commands.  Call find_charset_names.
10340         (struct charset, struct translation): Remove.
10341         (GDB_DEFAULT_HOST_CHARSET): Remove.
10342         (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
10343         (target_wide_charset_name): New global.
10344         (show_host_charset_name): Handle "auto".
10345         (show_target_wide_charset_name): New function.
10346         (host_charset_enum, target_charset_enum): Remove.
10347         (charset_enum): New global.
10348         (all_charsets, register_charset, lookup_charset, all_translations,
10349         register_translation, lookup_translation): Remove.
10350         (simple_charset, ascii_print_literally, ascii_to_control): Remove.
10351         (iso_8859_print_literally, iso_8859_to_control,
10352         iso_8859_family_charset): Remove.
10353         (ebcdic_print_literally, ebcdic_to_control,
10354         ebcdic_family_charset): Remove.
10355         (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
10356         register_iconv_charsets): Remove.
10357         (target_wide_charset_be_name, target_wide_charset_le_name): New
10358         globals.
10359         (identity_either_char_to_other): Remove.
10360         (set_be_le_names, validate): New functions.
10361         (backslashable, backslashed, represented): Remove.
10362         (default_c_target_char_has_backslash_escape): Remove.
10363         (default_c_parse_backslash, iconv_convert): Remove.
10364         (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
10365         ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
10366         iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
10367         ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
10368         ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
10369         ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
10370         (table_convert_char, table_translation, simple_table_translation):
10371         Remove.
10372         (current_host_charset, current_target_charset,
10373         c_target_char_has_backslash_escape_func,
10374         c_target_char_has_backslash_escape_baton): Remove.
10375         (c_parse_backslash_func, c_parse_backslash_baton): Remove.
10376         (host_char_to_target_func, host_char_to_target_baton): Remove.
10377         (target_char_to_host_func, target_char_to_host_baton): Remove.
10378         (cached_iconv_host_to_target, cached_iconv_target_to_host):
10379         Remove.
10380         (lookup_charset_or_error, check_valid_host_charset): Remove.
10381         (set_host_and_target_charsets): Remove.
10382         (set_host_charset, set_target_charset): Remove.
10383         (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
10384         (set_target_wide_charset_sfunc): New function.
10385         (show_charset): Print target wide character set.
10386         (host_charset, target_charset): Rewrite.
10387         (target_wide_charset): New function.
10388         (c_target_char_has_backslash_escape): Remove.
10389         (c_parse_backslash): Remove.
10390         (host_letter_to_control_character): New function.
10391         (host_char_print_literally): Remove.
10392         (host_hex_value): New function.
10393         (target_char_to_control_char): Remove.
10394         (cleanup_iconv): New function.
10395         (convert_between_encodings): New function.
10396         (target_char_to_host): Remove.
10397         (struct wchar_iterator): Define.
10398         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
10399         wchar_push_back): New functions.
10400         (do_cleanup_iterator): New function.
10401         (char_ptr): New typedef.
10402         (charsets): New global.
10403         (add_one, find_charset_names): New functions.
10404         (default_charset_names): New global.
10405         (auto_host_charset_name): Likewise.
10406         * aclocal.m4, config.in, configure: Rebuild.
10407         * configure.ac: Call AM_LANGINFO_CODESET.
10408         (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
10409         (AM_ICONV): Invoke earlier.
10410         * acinclude.m4: Include codeset.m4.  Subst LIBICONV_INCLUDE and
10411         LIBICONV_LIBDIR.  Check for libiconv in build tree.
10412         * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
10413         (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
10414         (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
10415         * gdb_obstack.h (obstack_grow_wstr): New define.
10416         * gdb_wchar.h: New file.
10417         * defs.h: Include it.
10418
10419 2009-03-20  Tom Tromey  <tromey@redhat.com>
10420             Jan Kratochvil  <jan.kratochvil@redhat.com>
10421
10422         * dwarf2read.c (process_die): Handle DW_TAG_typedef.
10423         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
10424         typedef.
10425         * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
10426         SYMBOL_TYPE result.
10427         * ada-typeprint.c (print_array_type): Do the NULL check
10428         unconditionally.
10429
10430 2009-03-19  Tom Tromey  <tromey@redhat.com>
10431
10432         * utils.c (do_obstack_free): New function.
10433         (make_cleanup_obstack_free): Likewise.
10434         * defs.h (make_cleanup_obstack_free): Declare.
10435
10436 2009-03-18  Doug Evans  <dje@google.com>
10437
10438         * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
10439         int, not a long long.
10440         (linux_nat_info_proc_cmd): Store pid in long instead of long long.
10441
10442         * expprint.c (dump_raw_expression): Print note if non-NULL.
10443
10444         * printcmd.c (display_uses_solib_p): Redo loop, scan element list
10445         backwards.
10446
10447 2009-03-18  Nathan Sidwell  <nathan@codesourcery.com>
10448
10449         * Makefile.in: Update license to GPLv3.
10450         * ada-exp.y: Update license to GPLv3.
10451         * ada-lex.l: Update license to GPLv3.
10452         * c-exp.y: Update license to GPLv3.
10453         * cp-name-parser.y: Update license to GPLv3.
10454         * darwin-nat-info.c: Update license to GPLv3.
10455         * f-exp.y: Update license to GPLv3.
10456         * gdb_thread_db.h: Update license to GPLv3.
10457         * hppanbsd-nat.c: Update license to GPLv3.
10458         * hppanbsd-tdep.c: Update license to GPLv3.
10459         * hppaobsd-tdep.c: Update license to GPLv3.
10460         * jv-exp.y: Update license to GPLv3.
10461         * m2-exp.y: Update license to GPLv3.
10462         * objc-exp.y: Update license to GPLv3.
10463         * p-exp.y: Update license to GPLv3.
10464         * reply_mig_hack.awk: Update license to GPLv3.
10465         * reverse.c: Update license to GPLv3.
10466         * xtensa-xtregs.c: Update license to GPLv3.
10467
10468 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
10469
10470         * remote.c (remote_close): Don't call generic_mourn_inferior.
10471         (remote_mourn_1): Call generic_mourn_inferior after closing the
10472         target.
10473
10474 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
10475
10476         * remote.c (remote_start_remote): Add missing call to
10477         init_wait_for_inferior in non-stop mode.
10478
10479 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
10480
10481         * breakpoint.c (bpstat_should_step): Only consider software
10482         watchpoints that have a location.
10483
10484 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
10485
10486         Add a target_ops parameter to the to_kill method in struct target_ops.
10487
10488         * target.h (struct target_ops): Add a "target_ops *" parameter to
10489         method to_kill.
10490         (target_kill): Remove macro. Add declaration.
10491         * target.c (debug_to_kill): Delete, no longer necessary.
10492         (target_kill): New function.
10493         (update_current_target):  Stop inheriting the to_kill method.
10494         Do not de_fault it to no_process either.
10495         (setup_target_debug): Do not set current_target.to_kill.
10496         * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
10497         linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
10498         remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
10499         accordingly.
10500
10501 2009-03-17  Doug Evans  <dje@google.com>
10502
10503         * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
10504         glibc 2.3.2 and earlier.
10505
10506 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
10507
10508         * frame.c (get_prev_frame_1): Do not perform the inner_frame
10509         sanity check if this_frame is not NORMAL.
10510         (frame_id_inner): Update the description of this function.
10511
10512 2009-03-17  Hui Zhu  <teawater@gmail.com>
10513
10514         * stack.c: Change the introduce of "disassemble-next-line".
10515
10516 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
10517
10518         * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
10519         declare as extern.
10520
10521 2009-03-17  Hui Zhu  <teawater@gmail.com>
10522
10523         * stack.c: Include valprint.h.
10524         (disassemble_next_line): New enum.
10525         (show_disassemble_next_line): New function.  Show the current
10526         value of disassemble-next-line.
10527         (gdb_disassembly_stub_args): New struct for argument passing
10528         between function do_gdb_disassembly and function
10529         gdb_disassembly_stub.
10530         (gdb_disassembly_stub): New function.  Helper for
10531         gdb_disassembly.
10532         (do_gdb_disassembly): New function.  Use TRY_CATCH to catch
10533         the exception from the gdb_disassembly because it will be
10534         broken by filter sometime.
10535         (print_frame_info): If disassemble-next-line is set to auto
10536         or on and doesn't have the line debug messages for $pc,
10537         output the next instruction.
10538         If disassemble-next-line is set to on and there is line debug
10539         messages, output assembly codes for next line.
10540         (_initialize_stack): Make the "set disassemble-next-line"
10541         command an auto-boolean command.  Change its class to
10542         class_stack.  Place it in the top level set list.  Extend help
10543         to describe the auto mode.
10544
10545 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
10546
10547         * infrun.c (normal_stop): Don't overwrite old_chain.
10548
10549 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10550
10551         * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
10552         which is undefined, by call to regcache_invalidate, which should
10553         do what the original author wanted to do.
10554
10555 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10556
10557         * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
10558         (mips_create_inferior): Likewise.
10559
10560 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10561
10562         * go32-nat.c (go32_create_inferior): Add missing ops parameter.
10563
10564 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
10565
10566         * darwin-nat.c (darwin_resume): Fix a compiler warning when
10567         building on x86_64-darwin.
10568
10569 2009-03-16  Tristan Gingold  <gingold@adacore.com>
10570
10571         * configure.tgt: Add handling for x86_64-darwin.
10572
10573 2009-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
10574
10575         * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
10576
10577 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
10578
10579         * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
10580         Use the ops parameter to get to the target beneath, rather than
10581         using the current_target global.  Using the current_target global
10582         was an unintended accident.
10583
10584 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
10585
10586         Fix an error happening while loading symbols from a core file
10587         (on AIX).
10588
10589         * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
10590         to detect whether we're debugging a core file or not.
10591
10592 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
10593
10594         Modernize the aix-thread later by getting rid of the base_target
10595         global.  This brings back to life the AIX port which was otherwise
10596         crashing all the time.
10597
10598         * aix-thread.c (base_target): Delete.
10599         (pd_enable): Do not set base_target.
10600         (aix_thread_attach): Use find_target_beneath instead of base_target.
10601         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10602         (aix_thread_fetch_registers, aix_thread_store_registers),
10603         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10604         (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
10605         (aix_thread_kill): Delete. Does not seem necessary.
10606         (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
10607
10608 2009-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
10609
10610         * stack.c (return_command <retval_exp>): New variables retval_expr
10611         and old_chain.  Inline parse_and_eval to initialize retval_expr.  Check
10612         RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
10613         if RETURN_TYPE is NULL.
10614
10615 2009-03-14  Pedro Alves  <pedro@codesourcery.com>
10616
10617         * remote.c (PACKET_qAttached): New.
10618         (remote_query_attached): New.
10619         (remote_add_inferior): Add new `attached' argument.  Handle it.
10620         (remote_notice_new_inferior, remote_start_remote): Adjust to pass
10621         -1 to remote_add_inferior in new parameter.
10622         (extended_remote_attach_1): Adjust to pass 1 to
10623         remote_add_inferior in the new parameter.
10624         (extended_remote_create_inferior_1): Adjust to pass 0 to
10625         remote_add_inferior in the new parameter.
10626         (_initialize_remote): Add "set/show remote query-attached-packet"
10627         commands.
10628
10629 2009-03-13  Tom Tromey  <tromey@redhat.com>
10630
10631         * symtab.c (lookup_symbol_in_language): Use a cleanup.
10632
10633 2009-03-13  Doug Evans  <dje@google.com>
10634
10635         * exceptions.h: Clean up some comments on catch_exceptions usage.
10636         * exceptions.c: Ditto.  Plus mark catch_errors as superseded by
10637         catch_exceptions.
10638
10639 2009-02-17  Joel Brobecker  <brobecker@adacore.com>
10640
10641         The following patch helps getting rid of a warning inside solib-som.c.
10642
10643         * source.c (source_full_path_of): Constify parameter filename.
10644         * defs.h (source_full_path_of): Update declaration accordingly.
10645
10646 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10647
10648         * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
10649         BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
10650         Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
10651
10652 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10653
10654         * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
10655         promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
10656
10657 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10658
10659         * ada-tasks.c (ada_task_is_alive): Move up and make static.
10660         * ada-lang.h (ada_task_is_alive): Remove declaration.
10661
10662 2009-03-12  Jerome Guitton  <guitton@adacore.com>
10663
10664         * ada-lang.c (ada_delta): Change the type of numerators and
10665         denominators to DOUBLEST, as they may not fit into a long.
10666         (scaling_factor): Ditto.
10667
10668 2009-03-12  Jerome Guitton  <guitton@adacore.com>
10669
10670         * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
10671
10672 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10673
10674         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
10675         types, if we are unable to determine the actual symbol type
10676         from its tag, then use the static approximation instead.
10677
10678 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10679
10680         Fix crash printing packed record with packed array.
10681
10682         * ada-lang.c (ada_modulus_from_name): New function.
10683         (ada_modulus): In the case where the type length is bigger than
10684         the size of the type used to hold the bounds, try determining
10685         the modulus from the type name.
10686         (ada_value_primitive_packed_val): Fix bug in the computation of
10687         ntarg causing an out-of-buffer invalid access.
10688
10689 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10690
10691         Fix segfault when printing short_integer'last.
10692
10693         * ada-lang.c (ada_find_any_type): Search in the primitive types
10694         if a symbol could not be found.
10695
10696 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10697
10698         * ada-tasks.c (task_states,long_task_states): Add new states
10699         Activating and Acceptor_Delay_Sleep.  Update the description
10700         of state Acceptor_Sleep.
10701
10702 2009-03-12  Jonas Maebe <jonas.maebe@elis.ugent.be>  (obvious change)
10703
10704         Fix a build failure on Darwin following some changes in
10705         the profile of some target_ops methods.
10706
10707         * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
10708         where missing.
10709         (darwin_stop_inferior, darwin_detach): Likewise.
10710
10711 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
10712
10713         Include token in ^running notification for CLI commands.
10714
10715         * mi/mi-main.c (mi_execute_command): Set current_token here.
10716         (mi_cmd_execute): Do not set current_token here.
10717
10718 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
10719
10720         Fix MI timings.
10721
10722         * mi/mi-main.c (mi_print_timing_maybe): New.
10723         (captured_mi_execute_command): Simplify. Output timings to
10724         CLI commands, too.
10725         (mi_execute_async_cli_command): Do not print timings.
10726         * mi/mi-main.h (mi_print_timing_maybe): Declare.
10727         * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
10728
10729 2009-03-12  Jerome Guitton  <guitton@adacore.com>
10730
10731         * xcoffread.c (process_linenos): Check if the line in the
10732         include table refers to the main source file and, if so,
10733         add them to the main subfile.
10734
10735 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
10736
10737         Fix a build failure on AIX introduced after a change in the profile
10738         of some of the "methods" in the target_ops structure.
10739         * aix-thread.c: Add missing target_ops parameter throughout.
10740
10741         Implement Ada task switching on AIX.
10742         * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
10743         (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
10744
10745 2009-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
10746
10747         * breakpoint.c (bpstat_check_breakpoint_conditions): Use
10748         value_mark and value_free_to_mark.
10749         * objfiles.c (free_objfile): Call objfile_free_data before
10750         freeing the BFD.
10751
10752 2009-03-10  Hui Zhu  <teawater@gmail.com>
10753
10754         * disasm.c (gdb_disassembly): Remove unused argument
10755         "line_num".
10756         * disasm.h (gdb_disassembly): Ditto.
10757         * cli/cli-cmds.c (print_disassembly): Ditto.
10758         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
10759
10760 2009-03-09  Paul Pluzhnikov  <ppluzhnikov@google.com>
10761
10762         * solib.c (solib_contains_address_p): New function.
10763         (solib_name_from_address): Use it.
10764         * printcmd.c (display_uses_solib_p): Use it.
10765         * solib.h (solib_contains_address_p): Declare it.
10766
10767 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
10768
10769         * varobj.c (free_variable): Call value_free.
10770
10771 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
10772
10773         PR gdb/9873:
10774         * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
10775         Move the variable `macinfo_type' out of the loop.  Create a new
10776         processing pass before the current one to pre-create `current_file'.
10777         New complaint on misplaced zero/non-zero definitions/includes.
10778         Skip first DW_MACINFO_start_file with `at_commandline' set.
10779
10780 2008-03-09  Vladimir Prus  <vladimir@codesourcery.com>
10781
10782        * solib.c (reload_shared_libraries): Give
10783        inferior a chance to reset solib breakpoint.
10784        Reinit frame cache.
10785
10786 2009-03-08  Christopher Faylor  <me+cygwin@cgf.cx>
10787
10788         * windows-nat.c (dr): Redefine to use largest possible integer which
10789         holds a pointer.
10790         (cygwin_set_dr): Avoid coercion.
10791
10792 2009-03-08  Oswald Buddenhagen  <oswald.buddenhagen@trolltech.de>
10793
10794         * windows-nat.c (windows_create_inferior): Implement --tty handling on
10795         non-cygwin.
10796
10797 2009-03-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
10798
10799         Rename solib_address to solib_name_from_address.
10800         * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
10801         (disable_breakpoints_in_unloaded_shlib): Update.
10802         * printcmd.c (display_uses_solib_p): Likewise.
10803         * stack.c (print_frame): Likewise.
10804         * solib.c: Rename.
10805         * solib.h: Rename.
10806
10807 2009-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
10808
10809         * printcmd.c (do_one_display): Reparse exp_string.
10810         (display_uses_solib_p): New function.
10811         (clear_dangling_display_expressions): New function.
10812         (_initialize_printcmd): Add observer.
10813         * solib.c (no_shared_libraries): Swap order of calls to
10814         clear_solib and objfile_purge_solibs.
10815
10816 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
10817
10818         Implement the target-specific part of Ada tasking support
10819         on Tru64.
10820
10821         * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
10822         (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
10823
10824 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
10825
10826         Get rid of the global "base_target" and use "find_target_beneath"
10827         to find the underlying target.
10828         * dec-thread.c (base_target): Delete.
10829         (enable_dec_thread): Remove assignement to base_target.
10830         (dec_thread_detach, dec_thread_wait, dec_thread_wait)
10831         (dec_thread_fetch_registers, dec_thread_store_registers)
10832         (dec_thread_mourn_inferior, dec_thread_pid_to_str):
10833         Update the function profile if necessary.
10834         Use find_target_beneath to call the same method but from
10835         the underlying target, removing the need for "base_target".
10836
10837         * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
10838         Fix a copy/paste error in a few debug traces...
10839
10840         * solib-osf.c (init_so): Use a simpler method for computing
10841         the size of lm_info structure. This also gets rid of warning
10842         emitted by the compiler.
10843
10844 2009-03-05  Pedro Alves  <pedro@codesourcery.com>
10845
10846         * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
10847         duplicates of permanent breakpoints.
10848
10849 2009-03-04  Pedro Alves  <pedro@codesourcery.com>
10850
10851         * inferior.h (notice_new_inferior): Declare.
10852         * infcmd.c (notice_new_inferior): New.
10853         * remote.c (remote_add_inferior, remote_add_thread): New.
10854         (notice_new_inferiors): Rename to...
10855         (remote_notice_new_inferior): ... this.  Add RUNNING argument.
10856         Use remote_add_thread instead of add_thread, passing it the
10857         RUNNING argument.  Add an inferior with remote_add_inferior.  If
10858         we just learned about an inferior, call notice_new_inferior.
10859         (record_currthread): Adjust.
10860         (remote_threads_info): Adjust to use remote_notice_new_inferior.
10861         (remote_start_remote, extended_remote_attach_1): Use
10862         remote_add_inferior.
10863         (process_stop_reply): Adjust.  Call remote_notice_new_inferior
10864         after handling expedited registers and watchpoint state.
10865         (extended_remote_create_inferior_1): Use remote_add_inferior.
10866
10867 2009-03-04  Aleksandar Ristovski  <aristovski@qnx.com>
10868
10869         * infcmd.c (registers_info): Remove register number case.
10870
10871 2009-03-03  Pedro Alves  <pedro@codesourcery.com>
10872
10873         * top.c (quit_target): Check for target_has_execution before
10874         killing or detaching from inferiors.
10875
10876 2009-03-02  Joel Brobecker  <brobecker@adacore.com>
10877
10878         Remove some unused routines.
10879
10880         * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
10881         Delete.
10882         * ada-lang.c (ada_task_list_iterator_ftype)
10883         (iterate_over_live_ada_tasks): Delete.
10884         * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
10885         Delete.
10886
10887 2009-03-01  Doug Evans  <dje@google.com>
10888
10889         * symtab.c: Remove trailing whitespace throughout the file.
10890         (expand_line_sal): Fix some typos and whitespace.
10891
10892         * Makefile.in (clean): rm -f $(DEPDIR)/*.
10893
10894         * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
10895         (init.c): signals/ -> common/.
10896         (signals.o): Update.
10897         * target.h (target_signal_to_string,target_signal_to_string)
10898         (target_signal_from_name,target_signal_to_host_p)
10899         (target_signal_from_host,target_signal_to_host): Move to ...
10900         * common/gdb_signals.h: ... here.  New file.
10901         * common/signals.c: Moved here from signals/signals.c.
10902         #include gdb_signals.h, remove #include of target.h in gdb case.
10903         (target_signal_from_command,default_target_signal_to_host)
10904         (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
10905
10906         Include thread ID in target_wait debugging output.
10907         * infrun.c (print_target_wait_results): New function.
10908         (wait_for_inferior,fetch_inferior_event): Call it.
10909
10910 2009-02-27  Pedro Alves  <pedro@codesourcery.com>
10911
10912         * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
10913         with a ptid_t field.
10914         * linux-thread-db.c (thread_get_info_callback): Build the ptid
10915         using the pid stored in proc_handle.ptid.
10916         (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
10917         (check_for_thread_db, thread_db_detach, check_event)
10918         (thread_db_mourn_inferior, find_new_threads_callback)
10919         (thread_db_find_new_threads_1): Adjust.
10920         * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
10921         (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
10922
10923 2009-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10924
10925         * valprint.c (read_string): Rework clean-up logic. Use
10926         free_current_contents to clean-up buffer.
10927
10928 2009-02-27  Andreas Schwab  <schwab@linux-m68k.org>
10929
10930         * MAINTAINERS: Update e-mail address.
10931
10932 2009-02-26  Phil Muldoon  <pmuldoon@redhat.com>
10933
10934         * python/python-utils.c (python_string_to_unicode): Always return
10935         a new reference.
10936         (python_string_to_target_string): Decrement transient python
10937         instance.
10938         (python_string_to_host_string): Likewise.
10939
10940 2007-02-26  Pedro Alves  <pedro@codesourcery.com>
10941
10942         * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
10943         call to super_fetch_registers.
10944         (mips64_linux_store_registers): Pass `ops' to call to
10945         super_store_registers.
10946
10947 2009-02-25  Doug Evans  <dje@google.com>
10948
10949         * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
10950         error message.
10951
10952         * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
10953         disabled_shlib_breaks, unused.
10954
10955         * printcmd.c (build_address_symbolic): Fix comment.
10956
10957 2009-02-25  Hui Zhu  <teawater@gmail.com>
10958
10959         * cli/cli-script.c (define_command): Add _() to query.
10960         * gnu-nat.c (inf_validate_task_sc): Ditto.
10961         * infcmd.c (kill_if_already_running): Ditto.
10962         (jump_command): Ditto.
10963         (attach_command): Ditto.
10964         * inflow.c (kill_command): Ditto.
10965         * infrun.c (handle_command): Ditto.
10966         * maint.c (maintenance_dump_me): Ditto.
10967         * memattr.c (mem_delete_command): Ditto.
10968         * monitor.c (monitor_interrupt_query): Ditto.
10969         * nto-procfs.c (interrupt_query): Ditto.
10970         * printcmd.c (undisplay_command): Ditto.
10971         * remote-mips.c (mips_kill): Ditto.
10972         * remote.c (interrupt_query): Ditto.
10973         * solib-irix.c (irix_open_symbol_file_object): Ditto.
10974         * solib-osf.c (osf_open_symbol_file_object): Ditto.
10975         * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
10976         * solib-som.c (som_open_symbol_file_object): Ditto.
10977         * solib-svr4.c (open_symbol_file_object): Ditto.
10978         * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
10979         * target.c (kill_or_be_killed): Ditto.
10980         * tracepoint.c (delete_trace_command): Ditto.
10981         * top.c (quit_confirm): Add _() to s that will be used
10982         in query.
10983
10984 2009-02-24  Pierre Muller  <muller@ics.u-strasbg.fr>
10985
10986         Fix windows-nat.c compilation failure.
10987
10988         * windows-nat.c (windows_thread_alive): Fix forward declaration.
10989         (get_windows_debug_event): Add ops parameter to call to windows_resume.
10990
10991 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
10992
10993         * remote-sim.c (gdbsim_resume): Add target_ops* argument.
10994
10995 2009-02-23  Jay Krell  <jay.krell@cornell.edu>  (tiny change)
10996
10997         * symtab.c (find_line_symtab): Initialize exact to avoid
10998         a compiler warning.
10999
11000 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
11001
11002         * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
11003         `ops' to recursive call.
11004
11005 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
11006
11007         * corelow.c (get_core_registers): Adjust.
11008         (core_file_thread_alive): Rename to...
11009         (core_thread_alive): ... this.
11010         (core_pid_to_str): Try gdbarch_core_pid_to_str first.
11011         (init_core_ops): Adjust.
11012         (coreops_suppress_target): Delete.
11013         (_initialize_corelow): Unconditionally add core_ops.
11014         * procfs.c: Include "inf-child.h".
11015         (procfs_ops): Delete.
11016         (init_procfs_ops): Delete.  Reimplement as...
11017         (procfs_target): ... this, inheriting from inf-child.
11018         (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
11019         (procfs_prepare_to_store): Delete.
11020         (procfs_store_registers, procfs_resume): Adjust.
11021         (procfs_open): Delete.
11022         (procfs_suppress_run): Delete.
11023         (procfs_can_run): Delete.
11024         (procfs_mourn_inferior): Adjust.
11025         (procfs_init_inferior): Add target_ops parameter.  Adjust.
11026         (procfs_create_inferior): Don't pass procfs_init_inferior to
11027         fork_inferior.  Instead call it after fork_inferior returns.
11028         (procfs_find_new_threads): Adjust.
11029         (_initialize_procfs): Adjust to use procfs_target instead of
11030         init_procfs_ops.
11031         * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
11032         (lwp_to_thread): Use target_thread_alive.
11033         (sol_thread_open): Delete.
11034         (sol_thread_attach): Delete.
11035         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11036         (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
11037         to use find_target_beneath.
11038         (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
11039         (sol_thread_xfer_partial): Adjust to use find_target_beneath.
11040         (sol_thread_files_info, sol_thread_kill_inferior): Delete.
11041         (check_for_thread_db): New.
11042         (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
11043         (sol_thread_new_objfile): Call check_for_thread_db.
11044         (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
11045         (sol_thread_can_run): Delete.
11046         (sol_thread_alive): Adjust to use find_target_beneath.
11047         (sol_thread_stop): Delete.
11048         (rw_common): Use target_write_memory or target_read_memory.
11049         (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
11050         (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
11051         (solaris_pid_to_str): Remove check for libthread_db initialization
11052         failing.
11053         (sol_find_new_threads): Remove check for libthread_db
11054         initialization failing, or for an invalid inferior_ptid.  Adjust
11055         to use find_target_beneath.
11056         (sol_core_open, sol_core_close, sol_core_detach,
11057         sol_core_files_info, sol_find_memory_regions,
11058         sol_make_note_section, ignore): Delete.
11059         (init_sol_thread_ops): Make it a thread_stratum target.  Remove
11060         unneeded callback settings.
11061         (init_sol_core_ops): Delete.
11062         (_initialize_sol_thread): No longer call init_sol_core_ops, set
11063         procfs_suppress_run, or hack with core_ops.
11064
11065         * target.h (struct target_ops): Add a target_ops * parameter to
11066         to_resume, to_fetch_registers, to_store_registers, to_thread_alive
11067         and to_find_new_threads.
11068         (target_fetch_registers, target_store_registers)
11069         (target_thread_alive, target_find_new_threads): Redeclare as
11070         function.
11071
11072         * target.c (update_current_target): Do not inherit or de_fault
11073         to_resume, to_fetch_registers, to_store_registers,
11074         to_thread_alive, to_find_new_threads.
11075         (target_resume): Adjust.
11076         (target_thread_alive, target_find_new_threads): New.
11077         (debug_to_resume, debug_to_fetch_registers): Delete.
11078         (target_fetch_registers): New.
11079         (debug_to_store_registers): Delete.
11080         (target_store_registers): New.
11081         (debug_to_thread_alive, debug_to_find_new_threads): Delete.
11082         (setup_target_debug): Adjust.
11083
11084         * gdbcore.h (core_ops): Delete declaration.
11085
11086         * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
11087         inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
11088         i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
11089         hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
11090         nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
11091         alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
11092         bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
11093         hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
11094         ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
11095         m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
11096         mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
11097         ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
11098         shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
11099         vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
11100
11101         * gdbarch.sh (core_pid_to_str): New gdbarch callback.
11102         * gdbarch.h, gdbarch.c: Regenerate.
11103
11104         * sol2-tdep.c: Include "inferior.h".
11105         (sol2_core_pid_to_str): New.
11106         * sol2-tdep.h (sol2_core_pid_to_str): Declare.
11107
11108         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
11109         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
11110         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
11111         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
11112
11113 2009-02-22  Doug Evans  <dje@google.com>
11114
11115         * exec.c (exec_file_attach): Fix comment.
11116
11117 2009-02-22  Pedro Alves  <pedro@codesourcery.com>
11118
11119         Silence a few -Wmissing-prototypes warnings.
11120
11121         PR build/9877:
11122         * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
11123         it static.
11124         * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
11125         * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
11126         * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
11127         (_initialize_amd64nbsd_tdep): ... this.
11128         * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
11129         (_initialize_arm_linux_tdep): Declare.
11130         * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
11131         * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
11132         * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
11133         * avr-tdep.c (avr_return_value): Make it static.
11134         (avr_frame_unwind_cache): Ditto.
11135         * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
11136         (bsd_uthread_solib_loaded): Ditto.
11137         (bsd_uthread_solib_unloaded): Ditto.
11138         (bsd_uthread_target): Ditto.
11139         (_initialize_bsd_uthread): Declare.
11140         * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
11141         (cris_frame_unwind_cache): Ditto.
11142         * frv-tdep.c (frv_return_value): Ditto.
11143         * h8300-tdep.c (h8300_use_struct_convention): Ditto.
11144         (h8300h_use_struct_convention): Ditto.
11145         * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
11146         Ditto.
11147         * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
11148         declarations.
11149         * hppabsd-tdep.c: Include hppabsd-tdep.h.
11150         (hppabsd_find_global_pointer): Make it static.
11151         * hppabsd-tdep.h: New.
11152         * hppanbsd-tdep.c: Include hppabsd-tdep.h.
11153         (hppabsd_init_abi): Remove declaration.
11154         (_initialize_hppabsd_tdep): Remove declaration.
11155         (_initialize_hppanbsd_tdep): Declare.
11156         * hppaobsd-tdep.c: Include hppabsd-tdep.h.
11157         (hppabsd_init_abi): Delete declaration.
11158         (hppaobsd_init_abi): Make it static.
11159         * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
11160         * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
11161         * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
11162         * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
11163         * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
11164         * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
11165         (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
11166         (_initialize_m32c_tdep): Declare.
11167         * m32r-rom.c (_initialize_m32r_rom): Declare.
11168         * m32r-tdep.c (m32r_skip_prologue): Make it static.
11169         (m32r_return_value): Ditto.
11170         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
11171         (m68hc11_return_value): Ditto.
11172         * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
11173         * m88k-tdep.c (m88k_frame_cache): Make it static.
11174         * mep-tdep.c (mep_gdb_print_insn): Ditto.
11175         (mep_return_value): Ditto.
11176         (_initialize_mep_tdep): Declare.
11177         * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
11178         * mips-linux-tdep.c (supply_64bit_reg): Make it static.
11179         (mips_linux_syscall_next_pc): Ditto.
11180         (_initialize_mips_linux_tdep): Declare.
11181         * mips-tdep.c (mips_single_step_through_delay): Make it static.
11182         * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
11183         * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
11184         * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
11185         * mt-tdep.c (_initialize_mt_tdep): Declare.
11186         * nbsd-tdep.c: Include nbsd-tdep.h.
11187         * nto-tdep.c (find_load_phdr): Make it static.
11188         (_initialize_nto_tdep): Declare.
11189         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
11190         static.
11191         (_initialize_ppc_linux_tdep): Declare.
11192         * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
11193         (m32r_insert_watchpoint, m32r_remove_watchpoint)
11194         (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
11195         static.
11196         * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
11197         * rs6000-nat.c: Include xcoffread.h.
11198         (find_toc_address): Don't extern declare get_toc_offset.  Adjust
11199         to call xcoff_get_to_offset.
11200         * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
11201         (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
11202         (rs6000_skip_trampoline_code): Make static.
11203         * s390-tdep.c (s390_regset_from_core_section): Ditto.
11204         * sh-tdep.c (sh_register_reggroup_p): Ditto.
11205         * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
11206         (_initialize_shnbsd_tdep): Declare.
11207         * solib-frv.c (displacement_from_map): Make static.
11208         (_initialize_frv_solib): Declare.
11209         * solib-irix.c (fetch_lm_info): Make static.
11210         (_initialize_irix_solib): Declare.
11211         * solib-som.c: Include solib-som.h.
11212         (som_solib_select): Line break.
11213         * sparc-tdep.c (sparc_regset_from_core_section): Make static.
11214         * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
11215         (_initialize_sparcnbsd_tdep): ... this.
11216         * spu-tdep.c (spu_software_single_step): Make it static.
11217         (_initialize_spu_tdep): Declare.
11218         * vax-tdep.c (vax_frame_cache): Make it static.
11219         * xcoffread.c: Include xcoffread.h.
11220         (get_toc_offset): Rename to ...
11221         (xcoff_get_toc_offset): ... this.
11222         (_initialize_xcoffread): Declare.
11223         * xcoffread.h: New.
11224         * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
11225         * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
11226         static.
11227         (_initialize_xtensa_tdep): Declare.
11228
11229 2008-02-21  Pedro Alves  <pedro@codesorcery.com>
11230
11231         Silence a few -Wmissing-prototypes warnings.
11232
11233         PR build/9877:
11234         * amd64-nat.c: Include "amd64-nat.h".
11235         * fork-child.c (_initialize_fork_child): Ditto.
11236         * gcore.c (_initialize_gcore): Ditto.
11237         * inf-ptrace.c: Include "inf-ptrace.h".
11238         (inf_ptrace_store_registers): Make it static.
11239         * linux-nat.c (linux_nat_terminal_ours): Make it static.
11240         (_initialize_linux_nat): Declare before definition.
11241         * linux-tdep.c: Include "linux-tdep.h".
11242         * linux-thread-db.c (_initialize_thread_db): Declare before
11243         definition.
11244         * proc-service.c (_initialize_proc_service): Ditto.
11245         * remote.c (remote_send_printf): Make it static.
11246         * solib.c: Include "solib.h".
11247         * symfile-mem.c (_initialize_symfile_mem): Declare before
11248         definition.
11249         * ada-lang.c (ada_la_decode, ada_match_name)
11250         (ada_suppress_symbol_printing, ada_is_array_type)
11251         (ada_value_ptr_subscript, ada_array_length)
11252         (ada_to_static_fixed_value): Make them static.
11253         (_initialize_ada_language): Declare before definition.
11254         * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
11255         (ada_task_list_changed, ada_new_objfile_observer): Make them
11256         static.
11257         (_initialize_tasks): Declare before definition.
11258         * addrmap.c (_initialize_addrmap): Declare before definition.
11259         * auxv.c (default_auxv_parse): Make it static.
11260         * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
11261         them static.
11262         * breakpoint.c (remove_sal): Add line break.
11263         (expand_line_sal_maybe): Make it static.
11264         * cp-name-parser.y: Include "cp-support.h".
11265         * cp-valprint.c (cp_find_class_member): Make it static.
11266         * eval.c (value_f90_subarray): Ditto.
11267         * exceptions.c (print_any_exception): Ditto.
11268         * findcmd.c (_initialize_mem_search): Declare before definition.
11269         * frame.c (frame_observer_target_changed): Make it static.
11270         * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
11271         * inf-child.c: Include "inf-child.h".
11272         * inferior.h (valid_inferior_id): Rename to ...
11273         (valid_gdb_inferior_id): ... this.
11274         * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
11275         Make them static.
11276         * jv-lang.c (java_language_arch_info): Make it static.
11277         * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
11278         * osdata.c (info_osdata_command): Make it static.
11279         * regcache.c (regcache_observer_target_changed): Make it static.
11280         * reverse.c (_initialize_reverse): Declare before definition.
11281         * stabsread.c (cleanup_undefined_types_noname)
11282         (cleanup_undefined_types_1): Make them static.
11283         * symfile.c (place_section): Make it static.
11284         * symtab.c (find_pc_sect_psymtab_closer): Make it static.
11285         * target-descriptions.c (_initialize_target_descriptions): Declare
11286         before definition.
11287         * target.c (default_get_ada_task_ptid, find_default_can_async_p)
11288         (find_default_is_async_p, find_default_supports_non_stop): Make
11289         them static.
11290         (target_supports_non_stop): Add prototype.
11291         (dummy_pid_to_str): Make it static.
11292         * utils.c (_initialize_utils): Declare before definition.
11293         * ada-exp.y (_initialize_ada_exp): Declare before definition.
11294         * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
11295         * target.h (struct target_ops): Add a prototype to the
11296         to_can_execute_reverse callback.
11297         * macroscope.c (_initialize_macroscope): Declare before definition.
11298         * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
11299         * python/python.c (_initialize_python): Declare before definition.
11300         * tui/tui-command.c: Include "tui/tui-command.h".
11301         * tui/tui-data.c (init_content_element, init_win_info): Make them
11302         static.
11303         * tui/tui-disasm.c: Include "tui/tui-disasm.h".
11304         * tui/tui-interp.c (_initialize_tui_interp): Declare before
11305         definition.
11306         * tui/tui-layout.c: Include "tui/tui-layout.h".
11307         (_initialize_tui_layout): Declare before definition.
11308         * tui/tui-regs.c: Include "tui/tui-regs.h".
11309         (tui_display_reg_element_at_line): Make it static.
11310         (_initialize_tui_regs): Declare before definition.
11311         * tui/tui-stack.c (_initialize_tui_stack): Declare before
11312         definition.
11313         * tui/tui-win.c: Include "tui/tui-win.h".
11314         (_initialize_tui_win): Declare before definition.
11315         (tui_sigwinch_handler): Make it static.  Wrap in ifdef SIGWINCH.
11316         * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
11317         (tui_get_cmd_list): Add a prototype.
11318         * tui/tui-windata.c: Include tui-windata.h.
11319         * tui/tui-wingeneral.c (box_win): Make it static.
11320         * cli/cli-logging.c (show_logging_command): Make it static.
11321         (_initialize_cli_logging): Declare before definition.
11322         * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
11323         definition.
11324
11325 2009-02-20  Pierre Muller  <muller@ics.u-strasbg.fr>
11326
11327         Extend use of i386_use_watchpoints to all i386 native files
11328         using hardware watchpoints.
11329         * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
11330         * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
11331         * windows-nat.c (init_windows_ops): Ditto.
11332         * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
11333         * config/i386/nm-cygwin64.h: Ditto.
11334         * config/i386/nm-fbsd.h: Ditto.
11335         * config/i386/nm-go32.h: Ditto.
11336
11337 2009-02-19  Joel Brobecker  <brobecker@adacore.com>
11338
11339         * ada-typeprint.c (ada_typedef_print): Remove.  Unused.
11340
11341 2009-02-18  Vladimir Prus  <vladimir@codesourcery.com>
11342
11343         * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
11344         (mi_interpreter_init): Register the above.
11345         * solib.c (clear_solib): Notify solib unload.
11346         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
11347         disable breakpoints on a.out targets.
11348
11349 2009-02-17  Vladimir Prus  <vladimir@codesourcery.com>
11350
11351         * observer.c (observer_test_first_notification_function)
11352         (observer_test_second_notification_function)
11353         (observer_test_third_notification_function): Adjust prototype.
11354
11355 2009-02-17  Pedro Alves  <pedro@codesourcery.com>
11356
11357         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
11358         (ALL_TARGET_OBS): Add dicos-tdep.o.
11359         (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
11360         * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
11361         gdb_target_obs.
11362         (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
11363         gdb_target_obs.
11364         * dicos-tdep.h, dicos-tdep.c: New.
11365         * amd64-dicos-tdep.c: New.
11366         * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
11367         inferior.h.  Include dicos-tdep.h.
11368         (i386_dicos_init_abi): Call dicos_init_abi.
11369         (i386_dicos_bfd_has_symbol_p): Delete.
11370         (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
11371
11372         * NEWS: Mention x86-64 DICOS target support.
11373
11374 2009-02-16  Doug Evans  <dje@google.com>
11375
11376         * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
11377         All callers updated.
11378         (amd64_get_insn_details): Handle more 3-byte opcode insns.
11379         (amd64_breakpoint_p): Delete.
11380         (amd64_displaced_step_fixup): When fixing up after stepping an int3,
11381         don't back up pc to the start of the int3.
11382         * i386-tdep.c: #include opcode/i386.h.
11383         (i386_skip_prefixes): New function.
11384         (i386_absolute_jmp_p): Constify argument.
11385         (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
11386         (i386_breakpoint_p): Delete.
11387         (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
11388         When fixing up after stepping an int3, don't back up pc to the start
11389         of the int3.
11390
11391 2009-02-16  Pedro Alves  <pedro@codesourcery.com>
11392
11393         * corelow.c (core_close): Don't hardcode the core's pid.
11394         (core_open): Find core threads before calling
11395         post_create_inferior.
11396         (add_to_thread_list, get_core_register_section): Take into account
11397         systems where the regset section names encode the pid of the
11398         inferior.
11399
11400         * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
11401         * gdbarch.h, gdbarch.c: Regenerate.
11402
11403         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
11404         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
11405         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
11406         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
11407
11408 2009-02-14  Vladimir Prus  <vladimir@codesourcery.com>
11409
11410         Include frame information for *stopped due to CLI commands.
11411
11412         * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
11413         * infcmd.c (finish_command_continuation): Pass '1' for
11414         'print_frame' parameter to the observer.
11415         * infrun.c (normal_stop): Don't print mi-specific information
11416         here. Pass 'stop_print_frame' to the 'print_frame' parameter
11417         of the observer.
11418         * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
11419         If we need to print frame, and current uiout is not the MI one,
11420         print frame again.
11421
11422 2009-02-13  Pierre Muller  <muller@ics.u-strasbg.fr>
11423
11424         * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
11425         Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
11426
11427 2009-02-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11428
11429         PR fortran/9806
11430         * dwarf2read.c (process_die <DW_TAG_module>, read_module)
11431         (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
11432
11433 2009-02-11  Pierre Muller  <muller@ics.u-strasbg.fr>
11434
11435         * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
11436         for DW_ATE_signed_char and DW_ATE_unsigned_char
11437         for pascal language.
11438
11439 2009-02-11  Jim Meyering  <meyering@redhat.com>
11440             Jan Kratochvil  <jan.kratochvil@redhat.com>
11441
11442         Avoid NULL dereference.
11443         * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
11444         New variable func_type.
11445
11446 2009-02-11  Pedro Alves  <pedro@codesourcery.com>
11447
11448         * gdbarch.c: Regenerate.
11449
11450 2009-02-10  Pierre Muller  <muller@ics.u-strasbg.fr>
11451
11452         * p-lang.c (is_pascal_string_type): Fix comment.
11453         Determine exact size of char elements for GPC
11454         strings.
11455         (pascal_printstr): Handle char width of 2 or 4.
11456         * p-valprint.c (pascal_val_print): Handle char
11457         of width 2 or 4.
11458
11459 2009-02-07  Daniel Jacobowitz  <dan@codesourcery.com>
11460
11461         * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
11462         inside the loop.  Only call addrmap_set_empty if the compilation unit
11463         had DW_AT_high_pc and DW_AT_low_pc.  Update call to
11464         scan_partial_symbols.
11465         (scan_partial_symbols): Take NEED_PC argument and pass it along with
11466         LOWPC and HIGHPC.
11467         (add_partial_namespace): Take NEED_PC argument and pass it through.
11468         (add_partial_subprogram): Take NEED_PC argument.  Update the addrmap
11469         if necessary.
11470
11471 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
11472
11473         * NEWS: Mention inspecting extra signal information, $_siginfo,
11474         and the qXfer:siginfo:read and qXfer:siginfo:write packets.
11475
11476 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
11477
11478         * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
11479         isn't defined.
11480
11481 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11482
11483         * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
11484         (compat_timer_t, compat_clock_t, struct compat_timeval)
11485         (compat_sigval_t, compat_siginfo_t): New types.
11486         (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
11487         (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
11488         (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
11489         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
11490         (amd64_linux_siginfo_fixup): New.
11491         * linux-nat.c (linux_nat_siginfo_fixup): New.
11492         (siginfo_fixup): New.
11493         (linux_xfer_siginfo): Use siginfo_fixup to convert between the
11494         siginfo layout expected by ptrace and the siginfo layout of the
11495         inferior.
11496         (linux_nat_set_siginfo_fixup): New.
11497         * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
11498
11499 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11500
11501         * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
11502         * infrun.c (siginfo_value_read, siginfo_value_write): New.
11503         (siginfo_value_funcs): New.
11504         (siginfo_make_value): New.
11505         (_initialize_infrun): Create the $_siginfo convenience variable.
11506         * gdbtypes.h (append_composite_type_field_aligned): Declare.
11507         * gdbtypes.c (append_composite_type_field): Rename to...
11508         (append_composite_type_field_aligned): ... this.  Add ALIGNMENT
11509         argument.  Handle it.
11510         (append_composite_type_field): Rewrite on top of
11511         append_composite_type_field_aligned.
11512         * value.h (internalvar_make_value): New typedef.
11513         (struct internalvar) <make_value>: New field.
11514         (create_internalvar_type_lazy): Declare.
11515         * value.c (create_internalvar): Clear make_value.
11516         (create_internalvar_type_lazy): New.
11517         (value_of_internalvar): If make_value is set use it.
11518         (preserve_values): Skip internal variables that don't have a
11519         value.
11520         * gdbarch.sh (get_siginfo_type): New.
11521         * gdbarch.h, gdbarch.c: Regenerate.
11522
11523         * linux-tdep.h, linux-tdep.c: New.
11524         * amd64-linux-tdep.c: Include "linux-tdep.h".
11525         (amd64_linux_init_abi): Register linux_get_siginfo_type and
11526         linux_get_siginfo_mapper.
11527         * i386-linux-tdep.c: Include "linux-tdep.h".
11528         (i386_linux_init_abi): Register linux_get_siginfo_type and
11529         linux_get_siginfo_mapper.
11530         * arm-linux-tdep.c: Include "linux-tdep.h".
11531         (i386_linux_init_abi): Register linux_get_siginfo_type and
11532         linux_get_siginfo_mapper.
11533
11534         * linux-nat.c (linux_xfer_siginfo): New.
11535         (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
11536         * remote.c (PACKET_qXfer_siginfo_read)
11537         (PACKET_qXfer_siginfo_write): New.
11538         (feature remote_protocol_features): Add "qXfer:siginfo:read" and
11539         "qXfer:siginfo:write" features.
11540         (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
11541         (_initialize_remote): Add "set/show remote read-siginfo-object"
11542         and "set/show remote write-siginfo-object" commands.
11543
11544         * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
11545         (HFILES_NO_SRCDIR): Add linux-tdep.h.
11546         (ALLDEPFILES): Add linux-tdep.c.
11547
11548         * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
11549         (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
11550         gdb_target_obs.
11551
11552 2009-02-06  Jim Blandy  <jimb@codesourcery.com>
11553             Daniel Jacobowitz  <dan@codesourcery.com>
11554             Vladimir Prus  <vladimir@codesourcery.com>
11555             Pedro Alves  <pedro@codesourcery.com>
11556
11557         * defs.h (enum lval_type): New value: lval_computed.
11558         * value.h (struct lval_funcs): New type.
11559         (allocate_computed_value, value_computed_funcs)
11560         (value_computed_closure): New declarations.
11561         * value.c (struct value): Add a structure to the location union
11562         for computed lvalues, containing 'funcs' and 'closure' members.
11563         (allocate_computed_value, value_computed_funcs)
11564         (value_computed_closure): New functions.
11565         (value_free): For computed lvalues, call the closure's
11566         'free_closure' function before freeing the value itself.
11567         (value_copy): If we're copying an lval_computed value, call the
11568         closure's 'copy_closure' function.
11569         (set_value_component_location): If the original value is a
11570         computed lvalue, then call the closure's 'copy_closure' function.
11571         (value_of_internalvar): If an internal variable's value is a
11572         computed lvalue, make retrieving its value produce an equivalent
11573         computed lvalue.
11574         * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
11575         their read function.
11576         (value_assign): Assign to computed lvalues by calling their write
11577         function.
11578
11579 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11580
11581         * linux-nat.c (linux_nat_wait): Adjust.
11582         (linux_nat_pid_to_str): Adjust.  Remove call to thread_db_init.
11583         * linux-nat.h (thread_db_init): Delete declaration.
11584         * linux-thread-db.c (target_beneath): Delete.
11585         (thread_db_init): Delete.
11586         (thread_db_detach): Use find_target_beneath.
11587         (thread_db_wait): Adjust interface.  Use find_target_beneath.
11588         (thread_db_mourn_inferior): Use find_target_beneath.
11589         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
11590         (thread_db_async_mask): Delete.
11591         (thread_db_pid_to_str): Adjust interface.  Use
11592         find_target_beneath.
11593         (thread_db_get_thread_local_address): Adjust interface.  Use
11594         find_target_beneath.
11595         (init_thread_db_ops): Delete references to delete functions.
11596         * target.c (update_current_target): Don't inherit or default
11597         to_wait.  Don't inherit to_pid_to_str and
11598         to_get_thread_local_address.
11599         (target_translate_tls_address): Look for a pushed target that
11600         implements to_get_thread_local_address, and use it instead of
11601         checking for target_get_thread_local_address_p.
11602         (target_wait, target_pid_to_str): Reimplement as functions.
11603         (dummy_pid_to_str): New.
11604         (init_dummy_target): Register it.
11605         (debug_to_wait): Delete.
11606         * target.h (struct target_ops): Make to_wait, to_pid_to_str and
11607         to_get_thread_local_address accept a pointer to struct target_ops.
11608         (target_wait): Delete macro, and declare as function.
11609         (target_pid_to_str): Likewise.
11610         (target_get_thread_local_address)
11611         (target_get_thread_local_address_p): Delete.
11612         (noprocess): Add NORETURN and ATTR_NORETURN tags.
11613         * inf-ptrace.c (inf_ptrace_wait): Adjust.
11614         (inf_ptrace_pid_to_str): New.
11615         (inf_ptrace_target): Use inf_ptrace_pid_to_str.
11616         * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
11617         * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
11618         * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
11619         Adjust.
11620         * corelow.c (core_pid_to_str): Adjust.
11621         * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
11622         * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
11623         * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
11624         * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
11625         * hpux-thread.c (hpux_thread_wait): Adjust.
11626         * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
11627         * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
11628         * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
11629         * procfs.c (procfs_pid_to_str): Adjust.
11630         * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
11631         * remote-mips.c (mips_wait): Adjust.
11632         * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
11633         * remote.c (remote_wait, remote_pid_to_str)
11634         (remote_get_thread_local_address): Adjust.
11635         * rs6000-nat.c (rs6000_wait): Adjust.
11636         * sol-thread.c (procfs_pid_to_str): Adjust declaration.
11637         (sol_thread_wait, solaris_pid_to_str): Adjust.
11638         * spu-linux-nat.c (spu_child_wait): Adjust.
11639         * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
11640
11641 2009-02-06  Tom Tromey  <tromey@redhat.com>
11642
11643         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
11644         (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
11645         (python-cmd.o): New target.
11646         * cli/cli-decode.c (set_cmd_completer): Add self parameter to
11647         completer prototype.
11648         (add_cmd): Initialize destroyer member of cmd_list_element. Use
11649         make_symbol_completion_list_fn as completer.
11650         (delete_cmd): Call destroyer if one is set.
11651         * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
11652         completer member.  Add destroyer member.
11653         (set_cmd_completer): Add self parameter to
11654         completer prototype.
11655         * command.h (set_cmd_completer): Add cmd parameter to
11656         completer prototype.
11657         * completer.c (noop_completer, filename_completer,
11658         location_completer, expression_completer, command_completer): Adapt
11659         to new completer prototype.
11660         (complete_line_internal): Pass new parameter to completer function.
11661         * completer.h (noop_completer, filename_completer,
11662         location_completer, expression_completer, command_completer): Adapt
11663         prototypes to new completer prototype.
11664         * interps.c (interpreter_completer): Adapt to new completer
11665         prototype.
11666         * python/python-cmd.c: New file.
11667         * python/python-internal.h (gdbpy_initialize_commands): Add
11668         prototype.
11669         (gdbpy_doc_cst): Add forward declaration.
11670         * python/python.c (gdbpy_doc_cst): Declare.
11671         (_initialize_python): Call gdbpy_initialize_commands.  Initialize
11672         gdbpy_doc_cst.
11673         * symtab.c (make_symbol_completion_list_fn): New function.
11674         * symtab.h (make_symbol_completion_list_fn): Add prototype.
11675
11676 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11677
11678         * target.c (target_get_osdata): Check for equal or higher than
11679         process_stratum, not dummy_stratum.
11680
11681 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11682
11683         * remote.c (extended_remote_can_run): Delete.
11684         (init_remote_ops): Don't register it.
11685         * target.c (target_get_osdata): Don't check for target_can_run.
11686         Instead any target that has already been pushed, otherwise
11687         fallback to the default run target.
11688
11689 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
11690
11691         * target.c (target_create_inferior, target_detach)
11692         (target_mourn_inferior, target_attach, target_close): Do target
11693         debug output.
11694         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
11695         (debug_to_mourn_inferior, debug_to_close): Delete.
11696         (setup_target_debug): Adjust.
11697
11698 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
11699
11700         * target.h (target_stopped_data_address_p): Delete declaration,
11701         and don't define as macro.
11702         * target.c (target_stopped_data_address_p): Delete.
11703
11704 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11705             Tom Tromey  <tromey@redhat.com>
11706
11707         * python/python-utils.c (target_string_to_unicode): New function.
11708         * python/python-internal.h (target_string_to_unicode): New prototype.
11709         * python/python-value.c (valpy_string): New function.
11710         (value_object_methods): Add `string' entry.
11711
11712 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
11713
11714         * target.h (target_tid_to_str): Delete.
11715         * thread.c (print_thread_info, thread_apply_all_command)
11716         (thread_apply_command, thread_command, do_captured_thread_select):
11717         Use target_pid_to_str instead of target_tid_to_str.
11718         * linux-fork.c (delete_fork_command): Likewise.
11719
11720 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
11721
11722         * frame.c (has_stack_frames): Make public.
11723         (get_prev_frame): Don't allow a NULL this_frame anymore.
11724         * frame.h (has_stack_frames): Declare.
11725         * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
11726         to get_prev_frame, instead start at get_current_frame.
11727         (varobj_create): Check has_stack_frames before getting any frame;
11728         eliminate one usage of deprecated_safe_get_selected_frame.
11729
11730 2009-02-05  Tom Tromey  <tromey@redhat.com>
11731             Thiago Jung Bauermann  <bauerman@br.ibm.com>
11732
11733         * python/python.c (GdbMethods): Move to bottom of file.
11734         (get_parameter, execute_gdb_command, gdbpy_write,
11735         gdbpy_flush): Remove forward declarations.
11736         (eval_python_from_control_command): Fix error checking of function
11737         PyRun_SimpleString.  Fix error string.
11738         (python_command): Likewise.
11739         (execute_gdb_command): Added from_tty argument.
11740
11741 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
11742
11743         * language.h (language_dfn): Add la_get_string member.
11744         (LA_GET_STRING): New macro.
11745         (default_get_string): New prototype.
11746         * language.c (default_get_string): New function.
11747         (unknown_language_defn, auto_language_defn, local_language_defn): Use
11748         default_get_string for la_get_string.
11749         * c-lang.c (c_get_string): New function.
11750         (c_language_defn, cplus_language_defn, asm_language_defn): Use
11751         c_get_string for la_get_string.
11752         (minimal_language_defn): Likewise
11753         * ada-lang.c (ada_language_defn): Likewise.
11754         * f-lang.c (f_language_defn): Use default_get_string for
11755         la_get_string.
11756         * jv-lang.c (java_language_defn): Likewise.
11757         * m2-lang.c (m2_language_defn): Likewise.
11758         * objc-lang.c (objc_language_defn): Likewise.
11759         * p-lang.c (p_language_defn): Likewise.
11760         * scm-lang.c (scm_language_defn): Likewise.
11761         * typeprint.c (type_to_string): New function.
11762         * value.h (type_to_string): New prototype.
11763         * valprint.c (val_print_string): Factor out code for reading string
11764         from the inferior into its own function.  Put 2 spaces after period
11765         in comments.
11766         (read_string): New function.
11767         * valprint.h (read_string): New prototype.
11768
11769 2009-01-07  Pierre Muller  <muller@ics.u-strasbg.fr>
11770             Tom Tromey  <tromey@redhat.com>
11771
11772         PR breakpoints/8079:
11773         * breakpoint.c (print_one_breakpoint): Use exp_string field
11774         to display expression of watchpoints.
11775         (mention): Likewise.
11776         (watch_command_1): Remove trailing whitespace from expression.
11777         * printcmd.c (struct display) <exp_string>: New field.
11778         (display_command): Set exp_string.
11779         (free_display): Free exp_string.
11780         (clear_displays): Use free_display.
11781         (do_one_display): Print exp_string.
11782         (display_info): Likewise.
11783
11784 2009-02-04  Tom Tromey  <tromey@redhat.com>
11785             Thiago Jung Bauermann  <bauerman@br.ibm.com>
11786             Phil Muldoon  <pmuldoon@redhat.com>
11787
11788         * python/python-internal.h (gdbpy_get_value_from_history): Rename
11789         prototype to gdbpy_history.
11790         (gdbpy_is_string): Declare.
11791         (python_string_to_host_string): Declare.
11792         * python/python-utils.c (gdbpy_is_string): New function.
11793         (unicode_to_encoded_string): New function.
11794         (unicode_to_target_string): Use it.
11795         (python_string_to_host_string): New function.
11796         * python/python-value.c (valpy_address): New function.
11797         (convert_value_from_python): Use gdbpy_is_string.  Change to throw
11798         Python exception instead of a GDB exception on error.  Properly check
11799         Python booleans.
11800         (valpy_getitem): Convert field name to host string.  Handle array
11801         accesses.  Adapt to new behaviour of convert_value_from_python.
11802         (valpy_new): Adapt to new behaviour of convert_value_from_python.
11803         (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
11804         VALPY_BITXOR, VALPY_BITOR>: New constants.
11805         (valpy_binop): Update.  Adapt to new behaviour of
11806         convert_value_from_python.
11807         (valpy_invert): New function.
11808         (valpy_lsh): Likewise.
11809         (valpy_rsh): Likewise.
11810         (valpy_and): Likewise.
11811         (valpy_or): Likewise.
11812         (valpy_xor): Likewise.
11813         (valpy_richcompare): Call convert_value_from_python instead of doing
11814         conversions itself.
11815         (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
11816         (gdbpy_get_value_from_history): Rename
11817         function to gdbpy_history.
11818         (gdbpy_initialize_values): Don't set tp_new.
11819         (value_object_type): Add valpy_new.
11820         (value_object_methods): Add `address' entry.
11821         (value_object_as_number): Update for new methods.
11822         * python/python.c (GdbMethods): Rename entry from
11823         `get_value_from_history' to `history'.
11824
11825 2009-02-04  Jerome Guitton  <guitton@adacore.com>
11826
11827         * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
11828         of type to guard against a crash.
11829
11830 2009-02-04  Jerome Guitton  <guitton@adacore.com>
11831
11832         * value.c (value_from_contents_and_address): Always return
11833         a lval_memory value, even if address is null.
11834
11835 2009-02-04  Tristan Gingold  <gingold@adacore.com>
11836
11837         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
11838         (amd64_darwin_sigcontext_addr): Ditto.
11839         (darwin_dwarf_signal_frame_p): Ditto.
11840         (i386_darwin_init_abi): Handle signal frames, use the const for
11841         sc_num_regs.
11842         (x86_darwin_init_abi_64): Ditto.
11843
11844 2009-02-04  Tristan Gingold  <gingold@adacore.com>
11845
11846         * i386-tdep.c (i386_sigtramp_p): Make it public.
11847         * i386-tdep.h (i386_sigtramp_p): Declare.
11848
11849 2009-02-04  Tristan Gingold  <gingold@adacore.com>
11850
11851         * machoread.c (macho_symfile_read): Read minsymtab also from
11852         shared libraries.
11853         (macho_symfile_read): Try to read dwarf2 frame info from main
11854         object file, but not from OSO files.
11855         (macho_symfile_offsets): Update section names for latest BFD
11856         changes.
11857         * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
11858         (x86_darwin_init_abi_64): Ditto.
11859         * solib-darwin.c: New file.
11860         * solib-darwin.h: New file.
11861         * configure.tgt: Add solib.o solib-darwin.o for Darwin.
11862
11863 2009-02-04  Tristan Gingold  <gingold@adacore.com>
11864
11865         * solist.h (struct target_so_ops): Comment fallback behavior for
11866         operation same.
11867
11868 2009-02-03  Tom Tromey  <tromey@redhat.com>
11869
11870         * completer.c (add_struct_fields): Check type_name against NULL
11871         before use.
11872
11873 2009-02-03  Joel Brobecker  <brobecker@adacore.com>
11874
11875         * MAINTAINERS: Update Elena's email address.
11876
11877 2009-02-02  Joel Brobecker  <brobecker@adacore.com>
11878
11879         * breakpoint (update_watchpoint): Minor comment adjustment.
11880
11881 2009-02-02  Tom Tromey  <tromey@redhat.com>
11882
11883         PR gdb/9594:
11884         * completer.c (count_struct_fields): Count method names.
11885         (add_struct_fields): Add matching method names.
11886
11887 2009-02-02  Doug Evans  <dje@google.com>
11888
11889         * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
11890         doing any further tcl/tk configury.  Don't configure gdbtk if
11891         tcl or tk check fails.
11892         * aclocal.m4: Regenerate.
11893         * configure: Regenerate.
11894
11895 2009-02-02  Tom Tromey  <tromey@redhat.com>
11896
11897         PR exp/9059:
11898         * valops.c (find_overload_match): Follow typedefs before taking
11899         address of object argument.
11900
11901 2009-02-01  Doug Evans  <dje@google.com>
11902
11903         * target.h (target_waitstatus_to_string): Declare.
11904         * target.c (target_waitstatus_to_string): New function.  Copied from
11905         debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
11906         TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
11907         TARGET_WAITKIND_NO_HISTORY.
11908         (debug_to_wait): Call it.
11909         * infrun.c (wait_for_inferior): If debug_infrun, print result of
11910         target_wait.
11911         (fetch_inferior_event): Ditto.
11912
11913 2009-01-30  Tom Tromey  <tromey@redhat.com>
11914
11915         * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
11916
11917 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
11918
11919         PR 8145.
11920         * thread.c (do_captured_list_thread_ids): Report the current
11921         thread id.
11922
11923 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
11924
11925         * breakpoint.c (create_breakpoint, create_breakpoints)
11926         (break_command_really, set_breakpoint): New parameter enabled.
11927         (create_breakpoint, break_command_really): Make breakpoint
11928         disabled if so requested.
11929         * breakpoint.h (set_breakpoint): New parameter enabled.
11930         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
11931
11932 2009-01-28  Doug Evans  <dje@google.com>
11933
11934         * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
11935         (amd64_displaced_step_fixup): Declare.
11936         * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
11937         (amd64_arch_regmap): Move out of amd64_analyze_stack_align
11938         and make static global.
11939         (amd64_arch_regmap_len): New static global.
11940         (amd64_arch_reg_to_regnum): New function.
11941         (struct amd64_insn): New struct.
11942         (struct displaced_step_closure): New struct.
11943         (onebyte_has_modrm,twobyte_has_modrm): New static globals.
11944         (rex_prefix_p,skip_prefixes)
11945         (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
11946         (amd64_insn_length,amd64_get_unused_input_int_reg)
11947         (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
11948         (amd64_displaced_step_copy_insn)
11949         (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
11950         (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
11951         (amd64_displaced_step_fixup): New functions.
11952         * amd64-linux-tdep.c: #include arch-utils.h.
11953         (amd64_linux_init_abi): Install displaced stepping support.
11954
11955 2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
11956             Jerome Guitton  <guitton@adacore.com>
11957
11958         * configure, config.in: Regenerated.
11959         * configure.ac: Add --with-system-gdbinit.
11960         * main.c (get_init_files): New.
11961         (captured_main): Use get_init_files.  Load system gdbinit before
11962         $HOME/.gdbinit.
11963         (print_gdb_help): Print location of init files.
11964
11965 2009-01-28  Pedro Alves  <pedro@codesourcery.com>
11966
11967         * corefile.c (generic_search): Delete disabled code.
11968         * gdbcore.h (generic_search): Delete declaration.
11969
11970 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
11971
11972         * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
11973         parent to the child.
11974         * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
11975         * inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
11976         remove_breakpoints to remove breakpoints from the parent.
11977
11978 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
11979
11980         PR backtrace/9458, PR backtrace/8864:
11981         * frame.c (create_new_frame): Update the frame's cached PC before
11982         finding its unwinder.  Use frame_id_build to build the new frame's
11983         id.
11984         * stack.c (parse_frame_specification_1): Correct setting ``addrs''
11985         array values from the ``args'' array values.
11986
11987 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
11988
11989         * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
11990         (create_array_type, create_set_type, init_flags_type)
11991         (copy_type_recursive): Replace pairs of calls to XALLOC and memset
11992         with a call to XZALLOC or XCALLOC, and pairs of calls to
11993         obstack_alloc and memset with a call to OBSTACK_ZALLOC.
11994
11995 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
11996
11997         Add "maint set|show internal-error|internal-warning quit|corefile
11998         ask|yes|no" commands.
11999
12000         PR gdb/7580:
12001         * utils.c (internal_problem_ask, internal_problem_yes)
12002         (internal_problem_no, internal_problem_modes): New.
12003         (struct internal_problem): Remove FIXME.  Make should_quit and
12004         should_dump_core types to char *.
12005         (internal_vproblem, internal_error_problem)
12006         (internal_warning_problem): Adjust.
12007         (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
12008         functions.
12009         (add_internal_problem_command): New.
12010         (_initialize_utils): New.
12011
12012 2009-01-25  Pedro Alves  <pedro@codesourcery.com>
12013
12014         * infcmd.c (program_info): Use paddress instead of casting stop_pc
12015         to unsigned long.
12016
12017 2009-01-24  Pedro Alves  <pedro@codesourcery.com>
12018
12019         * infrun.c (normal_stop): Don't call
12020         deprecated_update_frame_pc_hack.
12021         * frame.c (deprecated_update_frame_pc_hack)
12022         (deprecated_update_frame_base_hack): Delete, and ...
12023         (create_new_frame): ... inline here.
12024         * frame.h (deprecated_update_frame_pc_hack)
12025         (deprecated_update_frame_base_hack): Delete declarations.
12026
12027 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
12028
12029         * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
12030         * cli/cli-setshow.c (do_setshow_command): Handle it.
12031         * command.h (enum var_types): Add var_zuinteger.
12032         (add_setshow_zuinteger_cmd): Declare.
12033
12034         * valprint.c (_initialize_valprint): Change the set input-radix
12035         and set output-radix commands to zuinteger type.
12036
12037 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
12038
12039         PR gdb/9664:
12040         * infrun.c (normal_stop): Tag threads as stopped, and run the
12041         hook-stop before printing the stack frame.
12042
12043 2009-01-22  Pedro Alves  <pedro@codesourcery.com>
12044
12045         PR c++/9631:
12046         * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
12047         vbasetype.
12048
12049 2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
12050
12051         * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
12052         unsigned long.
12053
12054 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
12055
12056         PR gdb/9346
12057         * infcmd.c (signal_command): Do not specify a resume PC.
12058
12059 2009-01-19  Doug Evans  <dje@google.com>
12060
12061         * dummy-frame.c (dummy_frame): Replace regcache member with
12062         caller_state.
12063         (dummy_frame_push): Replace caller_regcache arg with caller_state.
12064         All callers updated.
12065         (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
12066         (dummy_frame_pop): Rewrite.  Verify requested frame is in the
12067         dummy frame stack.  Restore program state.
12068         (cleanup_dummy_frames): Rewrite.
12069         (dummy_frame_sniffer): Update.  Make static.
12070         * dummy-frame.h (regcache,frame_info): Delete forward decls.
12071         (inferior_thread_state): New forward decl.
12072         (dummy_frame_push): Update prototype.
12073         * frame.c (frame_pop): dummy_frame_pop now does all the work for
12074         DUMMY_FRAMEs.
12075         * infcall.c (breakpoint_auto_delete_contents): Delete.
12076         (get_function_name,run_inferior_call): New fns.
12077         (call_function_by_hand): Simplify by moving some code to
12078         get_function_name, run_inferior_call.  Inferior function call wrapped
12079         in TRY_CATCH so there's less need for cleanups and all exits from
12080         proceed are handled similarily.  Detect program exit.
12081         Detect program stopping in a different thread.
12082         Make error messages more consistent.
12083         * inferior.h (inferior_thread_state): Declare (opaque type).
12084         (save_inferior_thread_state,restore_inferior_thread_state,
12085         make_cleanup_restore_inferior_thread_state,
12086         discard_inferior_thread_state, get_inferior_thread_state_regcache):
12087         Declare.
12088         (save_inferior_status): Update prototype.
12089         * infrun.c: (normal_stop): When stopped for the completion of an
12090         inferior function call, verify the expected stack frame kind.
12091         (inferior_thread_state): New struct.
12092         (save_inferior_thread_state,restore_inferior_thread_state,
12093         do_restore_inferior_thread_state_cleanup,
12094         make_cleanup_restore_inferior_thread_state,
12095         discard_inferior_thread_state,
12096         get_inferior_thread_state_regcache): New functions.
12097         (inferior_status): Move stop_signal, stop_pc, registers to
12098         inferior_thread_state.  Remove restore_stack_info.
12099         (save_inferior_status): Remove arg restore_stack_info.
12100         All callers updated.  Remove saving of state now saved by
12101         save_inferior_thread_state.
12102         (restore_inferior_status): Remove restoration of state now done by
12103         restore_inferior_thread_state.
12104         (discard_inferior_status): Remove freeing of registers, now done by
12105         discard_inferior_thread_state.
12106
12107 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12108
12109         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
12110         at a time, times NUM_TO_SCROLL.
12111         * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
12112         fetch the selected frame if there is no stack.
12113
12114 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12115
12116         PR gdb/9747:
12117         * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
12118         Declare.
12119         * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
12120         * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
12121         is thrown while handling an event, finish the thread state.
12122         (normal_stop): Use finish_thread_state cleanup.
12123         * infcmd.c (run_command_1): If an error is thrown while starting
12124         the inferior, finish the thread state.
12125
12126 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12127
12128         * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
12129         skip breakpoints without a location (pending breakpoints).
12130
12131 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
12132
12133         PR build/9186:
12134         * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
12135
12136 2009-01-18  Nick Roberts  <nickrob@snap.net.nz>
12137
12138         * thread.c (thread_command): Move call to annotate_thread_changed
12139         to...
12140         (do_captured_thread_select): ... here, to avoid printing an
12141         annotation if the thread change generates an exception.
12142
12143 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
12144
12145         * NEWS: Document x86_64/MinGW as a new native configuration.
12146
12147 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
12148
12149         * NEWS: Move the documentation of "info os processes" to
12150         the appropriate section (documenting the new commands).
12151
12152 2009-01-15  Doug Evans  <dje@google.com>
12153
12154         * target.h (target_signal_to_string): Make return type const char *.
12155         (target_signal_to_name): Ditto.
12156         (target_signal_from_name): Make arg const char *.
12157         * infrun.c (sig_print_info): Update.
12158         * signals/signals.c (signals): Make array and struct members const.
12159         (target_signal_to_string): Make return type const char *.
12160         (target_signal_to_name): Ditto.
12161         (target_signal_from_name): Make arg const char *.
12162
12163 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
12164             Tristan Gingold  <gingold@adacore.com>
12165
12166         * solist.h (struct target_so_ops): New member bfd_open.
12167         (solib_find): Add prototype.
12168         (solib_bfd_fopen): Add prototype.
12169         * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
12170         from solib_bfd_open.
12171         (solib_bfd_open): Use ops->bfd_open override if present.  Call
12172         solib_find and solib_bfd_open otherwise.
12173
12174         * objfiles.h (OBJF_KEEPBFD): New define.
12175         * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
12176         objfile flag is set.
12177         * solib.c (symbol_add_stub): Do not allocate second BFD for
12178         shared library; use OBJF_KEEPBFD flag on solib objfile.
12179
12180 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
12181
12182         * frame.c (get_frame_arch): Abort if called with NULL this_frame.
12183
12184 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
12185
12186         * value.h (address_of_variable): Add prototype.
12187         (locate_var_value): Remove prototype.
12188
12189         * findvar.c (read_var_value): Do not attempt to default frame
12190         to selected frame.
12191         (locate_var_value): Remove function.
12192         * valops.c (value_of_variable): Retrieve selected frame for
12193         symbols that require a frame when called with NULL block.
12194         * valops.c (address_of_variable): New function.
12195
12196         * eval.c (evaluate_subexp_for_address): Call address_of_variable
12197         instead of calling locate_var_value.
12198         (evaluate_subexp_with_coercion): Likewise.
12199
12200 2009-01-14  Daniel Jacobowitz  <dan@codesourcery.com>
12201
12202         * NEWS: Document "define" for prefixed commands.
12203         * cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
12204         show_user_1 for prefix commands.
12205         * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
12206         * cli/cli-script.c (validate_comname): Rewrite to handle prefix
12207         commands.  Return the containing command list.
12208         (define_command, document_command): Update to handle prefix commands.
12209         (show_user_1): Add prefix and name arguments.  Handle prefix
12210         commands.
12211         * cli/cli-script.h (show_user_1): Update prototype.
12212
12213 2009-01-14  Kai Tietz  <kai.tietz@onevision.com>
12214
12215         * ser-mingw.c (console_select_thread): Add return to make
12216         compiler happy.
12217         (pipe_select_thread): Likewise.
12218         (file_select_thread): Likewise.
12219
12220 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
12221
12222         * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
12223         previous change.
12224
12225 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
12226
12227         * remote.c (extended_remote_mourn_1): Invalidate our notion of
12228         current general thread.
12229
12230 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
12231
12232         * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
12233         without a live selected thread.
12234
12235 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
12236
12237         Update the copyright notice of some of the files I missed
12238         in the previous copyright update.
12239
12240 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
12241
12242         * windows-nat.c (handle_unload_dll): Use %p to print the DLL
12243         base address instead of casting it to DWORD.
12244
12245 2009-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
12246
12247         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
12248         for NULL frame pointers.
12249
12250 2009-01-13  Mark Kettenis  <kettenis@gnu.org>
12251
12252         * utils.c (host_address_to_string): Reimplement in a way that
12253         avoids the cast of the address to long.
12254
12255 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
12256
12257         * mdebugread.c (parse_symbol): Save the symbol private data
12258         using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
12259         (psymtab_to_symtab_1): Likewise.
12260         (parse_procedure): Declare variable "e" only in the scope
12261         where it is used. Extract the symbol private data using
12262         SYMBOL_VALUE_BYTES.
12263
12264 2009-01-13  Jim Blandy  <jimb@codesourcery.com>
12265
12266         Abstract out common code for copying value locations.
12267
12268         * value.h (set_value_component_location): New declaration.
12269         * value.c (set_value_component_location): New function.
12270         (value_primitive_field): Use it.
12271         * valarith.c (value_subscript, value_subscripted_rvalue): Same.
12272         * valops.c (search_struct_field, value_slice): Same.
12273         * ada-lang.c (coerce_unspec_val_to_type)
12274         (ada_value_primitive_packed_val): Same.
12275
12276 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
12277
12278         * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
12279
12280 2009-01-12  Christopher Faylor  <me+cygwin@cgf.cx>
12281
12282         * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
12283         throughout.
12284         * i386-cygwin-tdep.c: Ditto.
12285         * i386-windows-nat.c: Ditto.
12286         * windows-nat.h: Ditto.
12287         * windows-tdep.c: Ditto.
12288         * windows-tdep.h: Ditto.
12289         * windows-nat.c: Ditto.
12290         (cygwin_load_start): Redefine as CORE_ADDR.
12291         (cygwin_load_end): Ditto.
12292         (windows_make_so): Coerce result of address arithmetic to uintptr_t
12293         before coercing to CORE_ADDR to avoid a compiler warning.
12294         (handle_exception): Define addr as CORE_ADDR and coerce
12295         ExceptionAddress to uintptr_t before assigining to avoid a compiler
12296         warning.
12297         * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
12298         files.
12299
12300 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
12301
12302         Fix linking with --enable-targets=all:
12303         * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
12304         (HFILES_NO_SRCDIR): Add windows-tdep.h.
12305         (ALLDEPFILES): Add windows-tdep.c.
12306
12307 2009-01-11  Chris Faylor  <me.gdb@cgf.cx>
12308
12309         * win32-nat.h: Delete.
12310         * windows-nat.h: Rename from win32-nat.h.
12311         * win32-nat.c: Delete.
12312         * windows-nat.c: Rename from win32-nat.c.
12313         * win32-termcap.c: Delete.
12314         * windows-termcap.c: Rename from win32-termcap.c.
12315         * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
12316         * configure.ac: Handle rename from win32-termcap.c ->
12317         windows-termcap.c.
12318         * configure: Regenerate.
12319         * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
12320         -> windows-termcap.c.
12321         * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
12322         windows-tdep.h.
12323         * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
12324         * windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
12325         windows-tdep.h.
12326         (win32_make_so): Handle cygwin compiler warning due to change of
12327         load_addr from DWORD to LPVOID.
12328         (handle_load_dll): Use %p in format string to properly print address
12329         and avoid a compiler warning.
12330         (DEBUG_EXCEPTION_SIMPLE): Ditto.
12331         (handle_exception): Ditto.
12332         * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
12333         * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
12334         windows-nat.o.
12335         * config/i386/mingw.mh: Ditto.
12336         * config/i386/mingw64.mh: Ditto.
12337
12338 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
12339
12340         * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
12341         arrayprint_recurse_level to a parameter.  Update all the callers.  New
12342         comment at autovariables.
12343
12344 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
12345
12346         * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
12347         coding style.
12348
12349 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12350
12351         * target.c (target_xfer_partial): Use host_address_to_string to
12352         print the address of readbuf and writebuf. Cast the address of
12353         elements inside the myaddr buffer into intptr_t.
12354         (deprecated_debug_xfer_memory): Use paddress to print memaddr.
12355         Cast the address of elements inside the myaddr buffer into
12356         intptr_t.
12357
12358 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12359
12360         * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
12361         * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
12362         * configure.host, configure.tgt: Add handling for x86_64/windows.
12363         * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
12364         and amd64-windows-tdep.c.
12365
12366 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12367
12368         * win32-tdep.h, win32-tdep.c: New files.
12369         * i386-cygwin-tdep.h: Delete.
12370         * i386-cygwin-tdep.c: Include win32-tdep.h instead of
12371         i386-cygwin-tdep.h.
12372         (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
12373         * win32-nat.c: Likewise.
12374         * configure.tgt: Add win32-tdep.o to the list of target object
12375         files for i386-cygwin and i386-mingw targets.
12376
12377 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
12378
12379         * win32-nat.h: New file.
12380         * win32-nat.c (mappings): Initialize to NULL.
12381         (win32_set_context_register_offsets): New function.
12382         * i386-windows-nat.c: New file.
12383         (mappings): Moved here from win32-nat.c.
12384         (_initialize_i386_windows_nat): New function.
12385         * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
12386         * config/i386/cygwin.mh (NATDEPFILES): Likewise.
12387
12388 2009-01-09  Andreas Schwab  <schwab@suse.de>
12389
12390         * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
12391
12392 2009-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
12393
12394         * gdbtypes.c (append_composite_type_field): Correct the location of
12395         appended fields.
12396
12397 2009-01-09  Pedro Alves  <pedro@codesourcery.com>
12398
12399         * defs.h (deprecated_error_hook): Delete declaration.
12400         * interps.c (clear_interpreter_hooks): Adjust.
12401         * remote-sim.c (gdb_os_error): Don't try to call
12402         deprecated_error_hook.  No need to call exit anymore.
12403         * top.c (deprecated_error_hook): Delete.
12404
12405 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12406
12407         * arch-utils.c (gdbarch_update_p): Use host_address_to_string
12408         to print the address of the gdbarch pointer.
12409
12410 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12411
12412         * gdbarch.sh: Fix all the compilation errors on amd64-windows
12413         due to casting a pointer to a long when printing a function
12414         address. Instead, use host_address_to_string to convert our
12415         address to a string.
12416         * gdbarch.c: Regenerate.
12417
12418 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12419
12420         * event-top.c (async_disconnect, async_stop_sig): use "raise"
12421         instead of "kill" to raise a signal.
12422
12423 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12424
12425         * win32-nat.c (get_module_name): Change the type of parameter
12426         "base_address" to LPVOID.  Remove unnecessary cast.
12427         (struct lm_info): Change type of load_addr to LPVOID.
12428         (win32_make_so): Change the type of parameter "load_addr"
12429         to LPVOID.  Remove some unnecessary casts.
12430         (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
12431         (win32_xfer_shared_libraries): Add missing cast.
12432
12433 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12434
12435         * win32-nat.c (has_detach_ability, set_process_privilege):
12436         Cast the result of GetProcAddress to (void *) to avoid
12437         a compilation warning.
12438
12439 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12440
12441         * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
12442         already defined.
12443
12444 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12445
12446         * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
12447         definition of local variable "done".
12448         (info_w32_command, handle_exception): Remove unnecessary cast.
12449
12450 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12451
12452         * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
12453         DebugSetProcessKillOnExit.  Update all uses in this file.
12454         (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
12455         Update all uses in this file.
12456
12457 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12458
12459         * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
12460         and use it when pushing the target.
12461         (win32_attach, win32_create_inferior): Update call to
12462         do_initial_win32_stuff.
12463         (win32_detach, win32_mourn_inferior): Use our ops parameter
12464         instead of the global win32_ops to unpush the target.
12465
12466 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12467
12468         * ser-mingw.c (ser_windows_open): Use proper type when casting
12469         in call to _open_osfhandle.
12470
12471 2009-01-09  Kai Tietz  <kai.tietz@onevision.com>
12472
12473         * coff-pe-read.c (read_pe_exported_syms): Fix typo.
12474
12475 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
12476
12477         * CONTRIBUTE: Minor reformatting.
12478
12479 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
12480
12481         * MAINTAINERS: Add myself to Write After Approval.
12482         * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
12483         export directory.
12484
12485 2009-01-08  Nathan Froyd  <froydnj@codesourcery.com>
12486
12487         * remote-sim.c (gdb_os_error): Mark as a noreturn function.
12488         Call exit to make it obvious to GCC.
12489
12490 2009-01-08  Tom Tromey  <tromey@redhat.com>
12491
12492         PR breakpoints/9350:
12493         * varobj.c (varobj_invalidate): Unconditionally free
12494         all_rootvarobj.
12495         * symfile.c (syms_from_objfile): Free local_addr when returning
12496         normally.
12497         * exec.c (exec_file_attach): Do cleanups before returning.
12498         (exec_file_command): Likewise.
12499         * corefile.c (reopen_exec_file): Do cleanups before returning.
12500         * breakpoint.c (insert_breakpoint_locations): Do cleanups before
12501         returning.
12502         (do_vec_free): New function.
12503         (update_global_location_list): Make a cleanup for old_locations.
12504         Do cleanups before returning.  Remove unused variable 'e'.
12505         (find_condition_and_thread): Free result of parsing the
12506         expression.
12507         (print_it_typical): Do cleanups before returning.
12508         (breakpoint_re_set_one): Always free sals.sals.
12509
12510 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
12511             Emi Suzuki  <emi-suzuki@tjsys.co.jp>
12512
12513         * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
12514         watchpoints.
12515
12516 2009-01-07  Doug Evans  <dje@google.com>
12517
12518         * top.c (gdb_prompt_string): Delete, unused.
12519
12520 2009-01-07  Pedro Alves  <pedro@codesourcery.com>
12521
12522         Delete ONE_PROCESS_WRITETEXT leftovers.
12523
12524         * breakpoint.c (insert_bp_location): Delete process_warning
12525         argument.  Adjust.
12526         (insert_breakpoint_locations): Adjust.
12527         (reattach_breakpoints): Adjust.
12528         * infrun.c (normal_stop): Drop "It might be running in another
12529         process" notice.
12530
12531 2009-01-07  Stan Shebs  <stan@codesourcery.com>
12532
12533         * config/pa/linux.mh (XDEPFILES): Remove.
12534
12535 2009-01-07  Doug Evans  <dje@google.com>
12536
12537         * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
12538
12539 2009-01-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
12540
12541         * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
12542         spacing, a regression from 2008-04-22.
12543
12544 2009-01-07  Joel Brobecker  <brobecker@adacore.com>
12545
12546         * utils.c (gdb_print_host_address): Adjust implementation to
12547         reuse host_address_to_string. Move comment explaining the conversion
12548         from host address to string from here...
12549         (host_address_to_string): ... to there.
12550
12551 2009-01-07  Emi Suzuki  <emi-suzuki@tjsys.co.jp>
12552
12553         * MAINTAINERS: Add myself for write after approval privileges.
12554
12555 2009-01-06  Tom Tromey  <tromey@redhat.com>
12556
12557         * value.c (set_internalvar): Use value_free, not xfree.
12558
12559 2009-01-06  Jim Blandy  <jimb@red-bean.com>
12560
12561         Check return values of functions declared with warn_unused_result
12562         attribute in GLIBC 2.8.
12563         * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
12564         * inflow.c (check_syscall): New function.
12565         (new_tty): Use check_syscall to check return values from open and dup.
12566         * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
12567         * main.c (captured_main): Call cwd after setting up gdb_stderr;
12568         check for errors from getcwd.
12569         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
12570         * ui-file.c (stdio_file_write): Ignore return value from fwrite.
12571         (stdio_file_fputs): Same.
12572         * utils.c (internal_vproblem): abort if last-ditch error message
12573         write fails.
12574
12575         * top.c (gdb_init): Don't set the current directory here; that's
12576         already been done in captured_main.
12577
12578 2009-01-06  Sandra Loosemore  <sandra@codesourcery.com>
12579
12580         * ser-tcp.c: Adjust includes.
12581         (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
12582         (tcp_auto_retry, tcp_retry_limit): Declare.
12583         (TIMEOUT): Remove, in favor of tcp_retry_limit.
12584         (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
12585         (wait_for_connect): New function.
12586         (net_open): Use it.  Add auto-retry logic.
12587         (set_tcp_cmd, show_tcp_cmd): New functions.
12588         (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
12589         and "set/show tcp connect-timeout" commands.
12590         * NEWS: Document new commands.
12591
12592 2009-01-05  Tom Tromey  <tromey@redhat.com>
12593
12594         * python/python-internal.h (Py_ssize_t): Define as int.
12595
12596 2009-01-05  Jim Blandy  <jimb@red-bean.com>
12597
12598         * MAINTAINERS: Fix my e-mail address as steering committee member.
12599
12600 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
12601
12602         Updated copyright notices for most files.
12603
12604 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
12605
12606         * top.c (print_gdb_version): Update copyright year.
12607
12608 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
12609
12610         * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
12611
12612 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
12613
12614         PR breakpoints/9681:
12615         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
12616         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
12617         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
12618         retrow all other exceptions.
12619
12620 For older changes see ChangeLog-2008.
12621 \f
12622 Local Variables:
12623 mode: change-log
12624 left-margin: 8
12625 fill-column: 74
12626 version-control: never
12627 coding: utf-8
12628 End: