2009-06-23 Sami Wagiaalla <swagiaal@redhat.com>
[platform/upstream/binutils.git] / gdb / ChangeLog
1 2009-06-23  Sami Wagiaalla  <swagiaal@redhat.com>
2
3        * dwarf2read.c (process_die): Handle import statements
4        (DW_TAG_imported_declaration, case DW_TAG_imported_module)
5        (read_import_statement): New.
6        (read_func_scope): Update using_directives to point to current context
7        (read_lexical_block_scope): Ditto.
8        * cp-support.h: Added prototype for cp_add_using.
9        * cp-namespace.c: Removed local context_stack.
10        (cp_initialize_namespace): Deleted.
11        (cp_finalize_namespace): Deleted.
12        (cp_add_using_directive): Use using_directives instead of using_list.
13        (cp_add_using): No longer static.
14        * buildsym.h: Created global using_direct variable.
15        Created using_direct variable in context_stack.
16        * buildsym.c (finish_block): Set using directives for the block under
17        construction.
18        (start_symtab): Removed call to cp_initialize_namespace().
19        (end_symtab): Removed call to cp_finalize_namespace().
20        (push_context): Save and reset using_directives.
21        * block.c (block_using): Return using directives for given
22        block instead of static block.
23
24 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
25
26         * target-descriptions.h (struct type): Do not declare.
27         (struct tdesc_type): Declare.
28         (tdesc_named_type): Change return type to struct tdesc_type *.
29         (tdesc_record_type): Remove.
30         (tdesc_create_vector): Add prototype.
31         (tdesc_create_union): Likewise.
32         (tdesc_add_field): Likewise.
33
34         * target-descriptions.c (struct tdesc_reg): Replace gdb_type
35         member by tdesc_type member.
36         (struct tdesc_type_field, tdesc_type_field): Add type and vector def.
37         (struct tdesc_type, tdesc_type_p): Likewise.
38         (struct tdesc_arch_reg, tdesc_arch_reg): Likewise.
39         (struct tdesc_feature): Change type of "types" to VEC(tdesc_type_p).
40         (struct tdesc_arch_data): Replace registers member by arch_regs.
41
42         (tdesc_predefined_types): Change to array of pre-defined
43         struct tdesc_type structures.  Add "code_ptr" and "data_ptr".
44         (tdesc_named_type): Return struct tdesc_type * instead of GDB type.
45         (tdesc_gdb_type): New function.
46
47         (target_find_description): Update for data structure changes.
48         (tdesc_data_cleanup): Likewise.
49         (tdesc_numbered_register): Likewise.
50         (tdesc_use_registers): Likewise.
51         (tdesc_create_reg): Likewise.
52         
53         (tdesc_find_arch_register): New function.
54         (tdesc_find_register): Use it.
55         (tdesc_register_type): Use tdesc_gdb_type to generate GDB type from
56         tdesc_type on demand; cache generated types in tdesc_arch_reg.
57
58         (tdesc_free_type): New function.
59         (tdesc_free_feature): Call it.
60
61         (tdesc_create_vector): New function.
62         (tdesc_create_union): Likewise.
63         (tdesc_add_field): Likewise.
64         (tdesc_record_type): Remove.
65
66         (tdesc_type_id): Remove.
67         (maint_print_c_tdesc_cmd): Update for data structure changes.  Update
68         generated code to create tdesc_type structures instead of GDB types.
69
70         * xml-tdesc.c: Do not include "gdbtypes.h".
71         (struct tdesc_parsing_data): Change type of current_union to
72         struct tdesc_type *.
73         (tdesc_start_reg): Do not special-case "code_ptr" or "data_ptr".
74         (tdesc_start_union): Call tdesc_create_union.
75         (tdesc_start_field): Call tdesc_add_field.
76         (tdesc_start_vector): Call tdesc_create_vector.
77         (tdesc_end_union): Remove.
78         (feature_children): Remove reference to tdesc_end_union.
79
80         * features/arm-with-iwmmxt.c: Regenerate.
81         * features/mips-linux.c: Regenerate.
82         * features/mips64-linux.c: Regenerate.
83         * features/rs6000/powerpc-32.c: Regenerate.
84         * features/rs6000/powerpc-32l.c: Regenerate.
85         * features/rs6000/powerpc-403.c: Regenerate.
86         * features/rs6000/powerpc-403gc.c: Regenerate.
87         * features/rs6000/powerpc-505.c: Regenerate.
88         * features/rs6000/powerpc-601.c: Regenerate.
89         * features/rs6000/powerpc-602.c: Regenerate.
90         * features/rs6000/powerpc-603.c: Regenerate.
91         * features/rs6000/powerpc-604.c: Regenerate.
92         * features/rs6000/powerpc-64.c: Regenerate.
93         * features/rs6000/powerpc-64l.c: Regenerate.
94         * features/rs6000/powerpc-7400.c: Regenerate.
95         * features/rs6000/powerpc-750.c: Regenerate.
96         * features/rs6000/powerpc-860.c: Regenerate.
97         * features/rs6000/powerpc-altivec32.c: Regenerate.
98         * features/rs6000/powerpc-altivec32l.c: Regenerate.
99         * features/rs6000/powerpc-altivec64.c: Regenerate.
100         * features/rs6000/powerpc-altivec64l.c: Regenerate.
101         * features/rs6000/powerpc-e500.c: Regenerate.
102         * features/rs6000/powerpc-e500l.c: Regenerate.
103         * features/rs6000/powerpc-isa205-32l.c: Regenerate.
104         * features/rs6000/powerpc-isa205-64l.c: Regenerate.
105         * features/rs6000/powerpc-isa205-altivec32l.c: Regenerate.
106         * features/rs6000/powerpc-isa205-altivec64l.c: Regenerate.
107         * features/rs6000/powerpc-isa205-vsx32l.c: Regenerate.
108         * features/rs6000/powerpc-isa205-vsx64l.c: Regenerate.
109         * features/rs6000/powerpc-vsx32.c: Regenerate.
110         * features/rs6000/powerpc-vsx32l.c: Regenerate.
111         * features/rs6000/powerpc-vsx64.c: Regenerate.
112         * features/rs6000/powerpc-vsx64l.c: Regenerate.
113         * features/rs6000/rs6000.c: Regenerate.
114
115 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
116
117         * ada-lang.c (decode_packed_array): If the value is a pointer to
118         an array, then use value_ind to dereference it, not ada_value_ind.
119         (ada_template_to_fixed_record_type_1): Handle the case where a
120         dynamic field is an aligner type.
121         (to_fixed_array_type): Add handling for packed array types.
122         (ada_get_base_type): Do not follow the XVS type if the type is
123         an aligner type.
124         (ada_evaluate_subexp): Split a few statements up for clarity
125         and debuggability.
126         <OP_FUNCALL>: Add handling of the case of a packed array that
127         has already been fixed.
128
129 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
130
131         * ada-lang.c (evaluate_subexp): Delete.  Use the version from eval.c.
132         (evaluate_subexp_type): Reimplement using evaluate_subexp.
133         * value.h (evaluate_subexp): Add declaration.
134         * eval.c (evaluate_subexp): Make non-static.
135         * objc-lang.c (print_object_command): Use evaluate_subexp.
136
137 2009-06-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
138
139         Revert 2009-05-14 breakpoint commit (no longer needed).
140         * breakpoint.h (breakpoint_re_set_objfile): Remove
141         * breakpoint.c (breakpoint_re_set_objfile): Likewise
142         (create_overlay_event_breakpoint): Remove objfile parameter,
143         iterate over all objfiles.
144         * objfiles.c (objfile_relocate): Update.
145         * symfile.c (new_symfile_objfile): Likewise.    
146         
147 2009-06-23  Tom Tromey  <tromey@redhat.com>
148
149         PR gdb/10309:
150         * c-lang.c (classify_type): Iterate over typedefs.
151         * c-valprint.c (textual_element_type): Iterate over typedefs.
152
153 2009-06-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
154
155         PR gdb/9988:
156         * buildsym.c (block_compar): New function.
157         (end_symtab): Replace the bubble sort by a qsort based code.
158
159 2009-06-22  Sami Wagiaalla  <swagiaal@redhat.com>
160
161         * MAINTAINERS (Write After Approval): Add self.
162
163 2009-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
164
165         * spu-tdep.c (spu_get_longjmp_target): New function.
166         (spu_gdbarch_init): Install it.
167
168 2009-06-22  H.J. Lu  <hongjiu.lu@intel.com>
169
170         PR server/10306
171         * remote.c (getpkt_or_notif_sane_1): Initialize val to -1.
172
173 2009-06-21  Michael Snyder  <msnyder@vmware.com>
174
175         * inferior.h: Update ancient comment.
176
177 2009-06-20  Aleksandar Ristovski  <aristovski@qnx.com>
178             Pedro Alves  <pedro@codesourcery.com>
179
180         * solib-svr4.c (IGNORE_FIRST_LINK_MAP_ENTRY): Avoid dereferencing
181         NULL pointer.
182         (scan_dyntag): Skip if input bfd isn't elf flavoured.
183         (locate_base): Call elf_locate_base even without an exec_bfd.
184
185 2009-06-19  Samuel Bronson  <naesten@gmail.com>
186
187         PR cli/9903:
188         * cli/cli-decode.c (apropos_cmd): Skip traversing abbreviations
189         for prefix commands to avoid duplicates in the output.
190
191 2009-06-19  Samuel Bronson  <naesten@gmail.com>
192
193         PR cli/9903:
194         * cli/cli-decode.c (apropos_cmd): Fix avoidance of double
195         printing.
196
197 2009-06-19  Jerome Guitton  <guitton@adacore.com>
198
199         * breakpoint.c (expand_line_sal_maybe): When explicit_line,
200         skip prologue on each sals.
201         (skip_prologue_sal): Return explicit_line and explicit_pc
202         unmodified.
203
204 2009-06-19  Tristan Gingold  <gingold@adacore.com>
205
206         * darwin-nat.c (_initialize_darwin_inferior): Remove commented-out
207         line.
208
209 2009-06-19  Tristan Gingold  <gingold@adacore.com>
210         * machoread.c (macho_symtab_read): Adjust for bfd changes.
211         * darwin-nat.h (struct darwin_exception_msg): New type to describe
212         a mach exception.
213         (struct private_thread_info): New type to describe the state of the
214         thread.
215         (DEF_VEC_I thread_t): Removed, replaced by ...
216         (DEF_VEC_O darwin_thread_t): ... this new type.
217         (struct darwin_inferior): Renamed to ...
218         (struct private_inferior): ... this type.  Fields added.
219         (darwin_not_port): Moved into the private inferior structure.
220         * darwin-nat.c: Add includes, improve comments.
221         Rewrite to handle multiple threads and processes.
222         (darwin_resume_to): New function and protype.
223         (darwin_resume, darwin_wait_to, darwin_wait): Ditto.
224         (darwin_kill_inferior): Add ops argument.
225         (darwin_pid_to_str): New function.
226         (darwin_thread_alive): Ditto.
227         (darwin_inf, darwin_not_port): Removed.
228         (darwin_inf_fake_stop): New variable.
229         (msgin, msgout, msg_state, exc_msg): Removed.
230         (mach_check_error): Use warning instead of error.
231         (darwin_ptrace): Adjust debug level.
232         (cmp_thread_t): Fix names (typo).
233         (darwin_check_new_threads): Argument is now an inferior,
234         adjust for new structures, add no change check, ignore dead ports,
235         handle first thread case.
236         (find_inferior_task_it): New function.
237         (find_inferior_notify_it): Ditto.
238         (darwin_find_inferior_by_task): Ditto.
239         (darwin_find_inferior_by_notify): Ditto.
240         (darwin_find_thread): Ditto.
241         (darwin_suspend_inferior): Ditto.
242         (darwin_resume_inferior): Ditto.
243         (catch_exception_raise_state): Removed.
244         (catch_exception_raise_state_identity): Removed.
245         (darwin_suspend_inferior_it): New function.
246         (darwin_resume_inferior_it): Ditto.
247         (darwin_dump_message): New function, extracted from darwin_wait.
248         (darwin_decode_exception_message): New function.
249         (darwin_encode_reply): New function.
250         (catch_exception_raise): Removed.
251         (darwin_send_reply): New function, extracted from darwin_resume.
252         (darwin_resume_thread): New function, extracted from darwin_resume.
253         (struct resume_inferior_threads_param): New type.
254         (darwin_resume_inferior_threads_it): New function.
255         (darwin_resume_inferior_threads): New function.
256         (darwin_suspend_inferior_threads): New function.
257         (darwin_resume): Mostly rewritten to handle multiple threads and
258         some corner cases.
259         (darwin_decode_message): New function extracted from darwin_wait.
260         (cancel_breakpoint): New function.
261         (darwin_wait): Mostly rewritten.  Handle multiple threads.
262         (darwin_mourn_inferior): Adjust for per process structures.
263         (darwin_reply_to_all_pending_messages): New function.
264         (darwin_stop_inferior): Adjust for per inferior structures.
265         (darwin_attach_pid): Ditto.
266         (darwin_init_thread_list): Ditto.
267         (darwin_attach): Ditto.
268         (darwin_detach): Ditto.
269         (darwin_files_info): Now empty.
270         (darwin_pid_to_str): Adjust returns string to match one expected by
271         the testsuite.
272         (darwin_read_write_inferior): Rename err variable to match other uses.
273         Adjust debug message.  Handle submaps.
274         (darwin_xfer_memory): Adjust for per inferior structures.
275         (set_enable_mach_exceptions): Ditto.
276         (darwin_pid_to_exec_file): New function.
277         (darwin_get_ada_task_ptid): Ditto.
278         (darwin_supports_multi_process): Ditto.
279         (_initialize_darwin_inferior): Remove useless assertion, adjust for
280         per inferior structures.  Add new target operations.
281
282 2009-06-18  Hui Zhu  <teawater@gmail.com>
283             Michael Snyder  <msnyder@vmware.com>
284
285         * infrun.c (handle_inferior_event): Improve reverse stepping
286         through function epilogue.
287
288         * infrun.c (handle_inferior_event): Reverse-next through
289         trampoline.
290
291 2009-06-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
292
293         * dwarf2-frame.c (struct comp_unit): Use bfd_size_type for
294         dwarf_frame_size.
295
296 2009-06-17  Tom Tromey  <tromey@redhat.com>
297
298         * dwarf2read.c (zlib_decompress_section): Use a cleanup.
299
300 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
301
302         * gdbarch.sh (pointer_to_address): Change to type 'm'.
303         (address_to_pointer): Likewise.
304         * gdbarch.c, gdbarch.h: Regenerate.
305
306         * inferior.h (unsigned_pointer_to_address): Add GDBARCH argument.
307         (signed_pointer_to_address): Likewise.
308         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
309         * findvar.c (unsigned_pointer_to_address): Likewise.
310         (signed_pointer_to_address): Likewise.
311         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
312
313         * avr-tdep.c (avr_address_to_pointer): Likewise.
314         (avr_pointer_to_address): Likewise.
315         * iq2000-tdep.c (iq2000_pointer_to_address): Likewise.
316         (iq2000_address_to_pointer): Likewise.
317         * m32c-tdep.c (m32c_m16c_address_to_pointer): Likewise.
318         (m32c_m16c_pointer_to_address): Likewise.
319         * spu-tdep.c (spu_pointer_to_address): Likewise.
320         * xstormy16-tdep.c (xstormy16_pointer_to_address): Likewise.
321         (xstormy16_address_to_pointer): Likewise.
322
323 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
324
325         * printcmd.c (print_scalar_formatted): Always truncate
326         unsigned data types.
327
328         * cli-dump.c (struct callback_data): Change type of load_offset
329         to CORE_ADDR.
330         (restore_binary_file): Update type casts.
331         (restore_command): Parse load_offset as address, not long.
332
333         * utils.c (string_to_core_addr): Do not sign-extend value.
334         * varobj.c (find_frame_addr_in_frame_chain): Truncate frame_base
335         before comparing against requested frame address.
336
337 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
338
339         * gdbarch.sh (gcore_bfd_target): New gdbarch callback.
340         * gdbarch.h, gdbarch.c: Regenerate.
341
342         * gcore.c (default_gcore_target): Make return value const.
343         Call gdbarch_gcore_bfd_target if present.
344         (default_gcore_arch, default_gcore_mach): Use target_gdbarch.
345
346         * corelow.c (core_read_description): Call gdbarch_core_read_description
347         on core_gdbarch instead of current_gdbarch.
348
349         * ppc-linux-tdep.c (ppc_linux_init_abi): Install gcore_bfd_target.
350
351 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
352
353         * gdbtypes.c (create_string_type): Receive character type as argument.
354         * gdbtypes.h (create_string_type): Add character type argument.
355         * dwarf2read.c (read_tag_string_type): Pass character type to
356         create_string_type.
357
358         * value.h (value_string): Add character type argument.
359         * valops.c (value_string): Add character type argument.  Pass it to
360         create_string_type.  Do not allocate space in inferior.
361         * valarith.c (value_concat): Pass character type to value_string.
362
363         * value.h (value_typed_string): Rename to ...
364         (value_cstring): ... this.
365         * valops.c (value_typed_string): Rename to ...
366         (value_cstring): ... this.
367         * c-lang.c (evaluate_subexp_c): Update.
368
369         * python/python-value.c (builtin_type_pychar): New define.
370         (convert_value_from_python): Call value_cstring instead
371         of value_from_string.
372         * value.c (value_from_string): Remove.
373         * value.h (value_from_string): Remove.
374
375         * eval.c (evaluate_subexp_standard): Pass character type to
376         value_string.  Pass expression architecture to value_nsstring
377         and lookup_child_selector.
378         * objc-lang.h (lookup_objc_class): Add GDBARCH parameter.
379         (lookup_child_selector): Likewise.
380         (value_nsstring): Likewise.
381         * objc-lang.c (lookup_objc_class): Add GDBARCH parameter.
382         Pass character type to value_string..
383         (lookup_child_selector): Likewise.
384         (value_nsstring): Add GDBARCH parameter, use it instead of
385         objfile architecture.  Pass architecture to lookup_objc_class
386         and lookup_child_selector. Pass character type to value_string.
387         (end_msglist): Pass architecture to lookup_objc_class.
388         * objc-exp.y: Pass architecture to lookup_objc_class.
389
390 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
391
392         * gdbtypes.h (struct language_defn): Add forward declaration.
393         (lookup_typename): Add LANGUAGE and GDBARCH parameters.
394         (lookup_unsigned_typename): Likewise.
395         (lookup_signed_typename): Likewise.
396         * gdbtypes.c (lookup_typename): Add LANGUAGE and GDBARCH parameters.
397         Use them instead of current_language and current_gdbarch.
398         (lookup_unsigned_typename): Add LANGUAGE and GDBARCH parameters.
399         Pass them to lookup_typename.
400         (lookup_signed_typename): Likewise.
401
402         * c-exp.y: Pass parse_language and parse_gdbarch to
403         lookup_unsigned_typename and lookup_signed_typename.
404         * objc-exp.y: Likewise.
405         * m2-exp.y: Pass parse_language and parse_gdbarch to lookup_typename.
406
407         * c-lang.c (evaluate_subexp_c): Pass expression language and
408         gdbarch to lookup_typename.
409         * printcmd.c (printf_command): Pass current language and
410         gdbarch to lookup_typename.
411         * python/python-type.c (typy_lookup_typename): Likewise.
412         Include "language.h".
413
414 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
415
416         * sparc64-nat.c (sparc64_gregset_supplies_p): Add GDBARCH parameter.
417         Use it instead of current_gdbarch.  Pass architecture to
418         sparc32_gregset_supplies_p.
419         (sparc64_fpregset_supplies_p): Add GDBARCH parameter.  Use it instead
420         of current_gdbarch.  Pass architecture to sparc32_fpregset_supplies_p.
421         * sparc64nbsd-nat.c (sparc64nbsd_gregset_supplies_p,
422         sparc64nbsd_fpregset_supplies_p): Likewise.
423         * sparc-nat.c (sparc_gregset_supplies_p, sparc_fpregset_supplies_p):
424         Add GDBARCH parameter.
425         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
426         (sparc_fetch_inferior_registers): Pass regcache architecture to
427         sparc_gregset_supplies_p and sparc_fpregset_supplies_p.
428         (sparc_store_inferior_registers): Likewise.
429         * sparc-nat.h (sparc_gregset_supplies_p, sparc_fpregset_supplies_p:
430         Add GDBARCH parameter.
431         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
432
433 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
434
435         * ada-tasks.c (read_known_tasks_array): Use target_gdbarch instead
436         of current_gdbarch.
437         * aix-thread.c (pd_enable): Likewise.
438         * amd64-linux-nat.c (ps_get_thread_area): Likewise.
439         * bsd-uthread.c (bsd_uthread_activate): Likewise.
440         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
441         * linux-thread-db.c (enable_thread_event): Likewise.
442         * monitor.c (monitor_write_memory, monitor_read_memory): Likewise.
443         * nto-procfs.c (procfs_open): Likewise.
444         * procfs.c (invalidate_cache, procfs_insert_watchpoint,
445         info_proc_mappings, info_mappings_callback): Likewise.
446         * record.c (record_open): Likewise.
447         * rs6000-nat.c (ARCH64): Likewise.
448         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
449         (darwin_bfd_open): Likewise.
450         * memattr.c (mem_info_command): Likewise.
451
452         * windows-nat.c (win32_resume): Use current regcache architecture
453         instead of current_gdbarch.
454
455         * dbug-rom.c (dbug_regname): Remove check against number of
456         registers in current_gdbarch.
457         * solib-pa64.c (read_dynamic_info): Remove unused variable.
458
459 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
460
461         * dummy-frame.c (deprecated_pc_in_call_dummy): Add GDBARCH parameter,
462         use it instead of current_gdbarch.
463         * frame.h (deprecated_pc_in_call_dummy): Add GDBARCH parameter.
464         * arm-tdep.c (arm_skip_prologue): Pass architecture to
465         deprecated_pc_in_call_dummy.
466
467         * symtab.c (skip_prologue_using_sal): Add GDBARCH parameter.
468         Use it instead of current_gdbarch.
469         * symtab.h (skip_prologue_using_sal): Add GDBARCH parameter.
470         * breakpoint.c (expand_line_sal_maybe): Pass architecture to
471         skip_prologue_using_sal.
472         * arm-tdep.c (skip_prologue_using_sal): Likewise.
473         * lm32-tdep.c (lm32_skip_prologue): Likewise.
474         * m32-tdep.c (m32c_skip_prologue): Likewise.
475         * mips-tdep.c (mips_skip_prologue): Likewise.
476         * moxie-tdep.c (moxie_skip_prologue): Likewise.
477         * mt-tdep.c (mt_frame_unwind_cache): Likewise.
478         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
479         * frv-tdep.c (frv_analyze_prologue): Add GDBARCH parameter, pass
480         it to skip_prologue_using_sal.  Update call sites ...
481         (frv_skip_prologue, frv_frame_unwind_cache): ... here.
482
483         * mn10300-tdep.c (struct mn10300_prologue): Add GDBARCH member.
484         (check_for_saved): Use it instead of current_gdbarch.
485         (mn10300_analyze_prologue): Set it.
486
487         * value.c (using_struct_return): Add GDBARCH parameter.  Use it
488         instead of current_gdbarch.
489         * value.h (using_struct_return): Add GDBARCH parameter.
490         * eval.c (evaluate_subexp_standard): Pass architecture to
491         using_struct_return.
492         * infcall.c (call_function_by_hand): Likewise.
493         * stack.c (return_command): Likewise.
494         * sparc-tdep.c (sparc32_push_dummy_code): Likewise.
495
496         * symtab.c (in_prologue): Add GDBARCH parameter.  Use it instead of
497         current_gdbarch.
498         * symtab.h (in_prologue): Add GDBARCH parameter.
499         * infrun.c (handle_inferior_event): Pass architecture to in_prologue.
500
501         * eval.c (evaluate_subexp_standard): Use expression architecture
502         instead of current_gdbarch.
503
504         * c-lang.c (evaluate_subexp_c): Use expression architecture and
505         language instead of current_gdbarch and current_language.
506
507         * printcmd.c (do_one_display): Use expression architecture instead
508         of current_gdbarch.
509
510         * infcmd.c (print_return_value): Use architecture of stop_regcache
511         instead of current_gdbarch.
512         (print_vector_info, print_float_info): Remove GDBARCH argument,
513         use frame architecture instead.
514         (vector_info, float_info): Update calls.
515
516         * objc-lang.c (objc_skip_trampoline): Use frame architecture
517         instead of current_gdbarch.
518
519         * parse.c (write_dollar_variable): Use parse architecture instead
520         of current_gdbarch.
521
522         * source.c (line_info): Use objfile architecture instead of
523         current_gdbarch.
524
525         * symtab.c (find_function_start_sal): Use gdbarch instead of
526         current_gdbarch.
527         (print_msymbol_info): Use objfile architecture instead of
528         current_gdbarch.
529
530         * valops.c (value_assign): Use frame architecture instead of
531         current_gdbarch.
532
533 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
534
535         * buildsym.c (record_line): Remove call to gdbarch_addr_bits_remove.
536
537         * coffread.c (coff_symtab_read): Call gdbarch_addr_bits_remove before
538         calling record_line.
539         (enter_linenos): Likewise.
540         * dbxread.c (process_one_symbol): Likewise.
541         * dwarf2read.c (dwarf_decode_lines): Likewise.
542         * mdebugread.c (psymtab_to_symtab_1): Likewise.
543         * xcoffread.c (enter_line_range): Likewise.
544
545 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
546
547         * ax-gdb.c (gen_bitfield_ref): Add EXP argument, use expression
548         architecture instead of current_gdbarch.
549         (gen_struct_ref): Add EXP argument, pass to get_bitfield_ref.
550         (gen_expr): Pass expression to get_struct_ref.
551
552         * symtab.h (struct symbol_ops): Add GDBARCH parameter to
553         tracepoint_var_ref callback.
554         * ax-gdb.c (gen_var_ref): Pass architecture to tracepoint_var_ref
555         symbol operation callback.
556         * dwarf2loc.c (dwarf2_tracepoint_var_ref): Add GDBARCH parameter.
557         Use it instead of current_gdbarch.
558         (locexpr_tracepoint_var_ref): Add GDBARCH parameter.  Pass it to
559         dwarf2_tracepoint_var_ref.
560         (loclist_tracepoint_var_ref): Likewise.
561
562 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
563
564         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
565         Use it instead of address bits of current_gdbarch.
566         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
567         * arm-tdep.c (thumb_analyze_prologue): Pass address bits to
568         make_pv_area.
569         (arm_scan_prologue): Likewise.
570         * m32c-tdep.c (m32c_analyze_prologue): Likewise.
571         * mep-tdep.c (mep_analyze_prologue): Likewise.
572         * mn10300-tdep.c (mn10300_analyze_prologue): Likewise.
573         * s390-tdep.c (s390_analyze_prologue): Likewise.
574
575 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
576
577         * mi/mi-main.c (mi_cmd_data_list_register_names): Use selected
578         frame architecture instead of current_gdbarch.
579         (mi_cmd_data_list_changed_registers): Likewise.
580         (mi_cmd_data_list_register_values): Likewise.  Pass selected
581         frame to get_register.
582         (get_register): Add FRAME argument, use it as frame to retrieve
583         registers from (instead of selected frame).  Use frame architecture
584         instead of current_gdbarch.
585         (mi_cmd_data_write_register_values): Use current regcache
586         architecture instead of current_gdbarch.
587
588 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
589
590         * tui/tui-regs.c (tui_show_register_group): Remove GDBARCH parameter;
591         use frame architecture instead.  Replace current_gdbarch uses.
592         (tui_show_registers): Update call.
593         (tui_get_register): Remove GDBARCH parameter; use frame architecture
594         instead.
595         (tui_show_register_group): Update call.
596         (tui_check_register_values): Likewise.
597         (tui_register_format): Remove GDBARCH parameter; use frame
598         architecture instead.  Replace current_gdbarch uses.
599         (tui_get_register): Update call.
600
601 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
602
603         * gdbarch.sh (construct_inferior_arguments): Remove.
604         * gdbarch.c, gdbarch.h: Regenerate.
605         * infcmd.c (get_inferior_args): Call construct_inferior_arguments
606         directly instead of gdbarch_construct_inferior_arguments.
607         (construct_inferior_arguments): Remove GDBARCH argument.
608         * inferior.h (construct_inferior_arguments): Likewise.
609
610 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
611
612         * symfile.c (section_is_mapped): Use objfile architecture instead
613         of current_gdbarch.
614         (TARGET_LONG_BYTES): Remove.
615         (read_target_long_array): Add SIZE argument.  Use it instead of
616         TARGET_LONG_BYTES.
617         (simple_read_overlay_table): Retrieve long size from objfile
618         architecture; pass it to read_target_long_array.
619         (simple_read_overlay_region_table): Likewise.
620         (simple_overlay_update_1): Likewise.
621
622 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
623
624         * infrun.c (cleanup_displaced_step_closure): Remove.
625         (displaced_step_clear_cleanup): Move to before displaced_step_prepare.
626         (displaced_step_prepare): Use displaced_step_clear_cleanup instead
627         of cleanup_displaced_step_closure.
628         (handle_inferior_event, keep_going): Use thread architecture instead
629         of current_gdbarch.
630
631 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
632
633         * infrun.c (handle_inferior_event): Use current frame architecture
634         or thread architecture instead of current_gdbarch.  Pass to
635         handle_step_into_function and handle_step_into_function_backward.
636         (handle_step_into_function): Add GDBARCH parameter.  Use it instead
637         of current_gdbarch.
638         (handle_step_into_function_backward): Likewise.
639         (insert_step_resume_breakpoint_at_frame): Use frame architecture
640         instead of current_gdbarch.
641         (insert_step_resume_breakpoint_at_caller): Likewise.
642
643 2009-06-17  Pierre Muller  <muller@ics.u-strasbg.fr>
644         Pedro Alves  <pedro@codesourcery.com>
645         
646         * infcmd.c (post_create_inferior): Call breakpoint_re_set after target
647         is pushed for watchpoint promotion to hardware watchpoint.
648
649 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
650
651         * dwarf2read.c (dwarf_info_section, dwarf_abbrev_section)
652         (dwarf_line_section, dwarf_pubnames_section, dwarf_aranges_section)
653         (dwarf_loc_section, dwarf_macinfo_section, dwarf_str_section)
654         (dwarf_ranges_section, dwarf_frame_section)
655         (dwarf_eh_frame_section): Removed.
656         (dwarf2_resize_section): Likewise.
657         (dwarf2_read_section): Now static, use bfd_mmap() if possible.
658         (dwarf2_get_section_info): New function.
659         (munmap_section_buffer): Likewise.
660         (dwarf2_per_objfile_cleanup): Likewise.
661         (section_is_p): Signature change.
662         * dwarf2-frame.c (dwarf2_build_frame_info): Use
663         dwarf2_get_section_info instead of dwarf2_read_section.
664         
665 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
666
667         * solib.c (symbol_add_stub): New FLAGS parameter.
668         (solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub
669         directly.
670         (solib_add): Defer breakpoint_re_set until after all solibs.
671         * bsd-uthread.c (bsd_uthread_solib_loaded): Adjust.
672         * rs6000-nat.c (objfile_symbol_add): Adjust.
673         * symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS.
674         (new_symfile_objfile): Likewise.
675         (symbol_file_add_with_addrs_or_offsets): Likewise.
676         (symbol_file_add_from_bfd): Likewise.
677         (symbol_file_add): Likewise.
678         * symfile.h (enum symfile_add_flags): New. Adjust prototypes.
679         * symfile-mem.c (symbol_file_add_from_memory): Adjust.
680         * windows-nat.c (safe_symbol_file_add_stub): Adjust.
681         * machoread.c (macho_oso_symfile, macho_symfile_read): Adjust.
682         
683 2009-06-16  Keith Seitz  <keiths@redhat.com>
684
685         * linespec.c (collect_methods): Delete.
686         (add_matching_methods): Reove destructor special case.
687         (find_method): Call find_methods directly instead of
688         collect_methods.
689         * valops.c (value_struct_elt): Remove destructor
690         special cases.
691         (check_field): Likewise.
692         (value_struct_elt_for_reference): Likewise.
693         (destructor_name_p): Remove misleading comment about dtors
694         being "special cases". 
695         * gdbtypes.h (get_destructor_fn_field): Remove. No longer needed.
696         * gdbtypes.c (get_destructor_fn_field): Likewise. 
697
698 2009-06-16  Pedro Alves  <pedro@codesourcery.com>
699
700         * mi/mi-main.c (mi_cmd_data_read_memory): Dispatch
701         TARGET_OJECT_MEMORY reads to the topmost target, not to the
702         flattened current_target.
703
704 2009-06-16  Tristan Gingold  <gingold@adacore.com>
705
706         * avr-tdep.c (struct gdbarch_tdep): Replace the unused field with
707         call_length field.
708         (avr_register_name): Add const to register_names.
709         (avr_scan_arg_moves): Move inside avr_scan_prologue.
710         (avr_scan_prologue): Add pc_end argument.
711         Only read prologue bytes that can be read.
712         Limit the scan to the known prologue length.
713         Makes pattern variables static and const.
714         Fix indentation.
715         (avr_skip_prologue): Pass func_end argument to avr_scan_prologue.
716         Fix indentation.
717         (avr_breakpoint_from_pc): Constify avr_break_insn.
718         (avr_extract_return_value): Fix function comment.
719         (avr_frame_unwind_cache): Fix GNU style violations.
720         Pass current_pc argument to avr_scan_prologue to stop prologue
721         analysis to the current pc.  This fixes the bug with the 'next'
722         command.
723         Correctly set the SP register of the previous frame (use call_length).
724         (avr_frame_prev_register): Fix indentation.
725         Correctly read PC from the stack on avr6 architectures.
726         (avr_push_dummy_call): Fix indentation.
727         (avr_gdbarch_init): Set call_length according to the architecture.
728
729 2009-06-15  Phil Muldoon  <pmuldoon@redhat.com>
730
731         * infcall.c (show_unwind_on_terminating_exception_p): New
732         function.
733         (call_function_by_hand): Create breakpoint and clean-up call for
734         std::terminate.breakpoint. Add unwind_on_terminating_exception_p
735         gate. Pop frame on breakpoint hit.
736         (_initialize_infcall): Add add_setshow_boolean_cmd for
737         unwind-on-terminating-exception.
738
739 2009-06-12  Kevin Buettner  <kevinb@redhat.com>
740
741         * dwarf2read.c (dwarf2_psymtab_to_symtab): Propagate
742         `has_section_at_zero' flag from stripped objfile to separate,
743         debug info only, objfile.
744
745 2009-06-12  Pedro Alves  <pedro@codesourcery.com>
746
747         * exec.h (section_table_xfer_memory_partial): Improve description,
748         mention SECTION_NAME.
749         * exec.c (section_table_xfer_memory_partial): Remove stale
750         description.
751
752 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
753
754         * nto-tdep.h (nto_generic_supply_gpregset)
755         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
756         * nto-tdep.c (nto_generic_supply_gpregset)
757         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
758
759 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
760
761         * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define.
762         (i386nto_sigcontext_addr): Change the way context address is calculated.
763         (i386nto_init_abi): Remove usage of deprecated sc_reg_offset and
764         sc_sp_offset and set sc_reg_offset and sc_num_regs.
765
766 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
767
768         * i386-nto-tdep.c (i386_nto_target): Remove definition.
769         (init_i386nto_ops): Use macros to set fields to global
770         current_nto_target directly.
771         (i386nto_init_abi): Remove unused nto_set_target call.
772         * nto-tdep.h (nto_set_target): Remove unused declaration.
773         * nto-tdep.c (nto_set_target): Remove unused function.
774
775 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
776
777         * breakpoint.c (break_command_really): Rename local variable
778         breakpoint_chain to bkpt_chain.
779
780 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
781
782         Add support for XMM registers.
783         * i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set.
784         (i386nto_register_area): Correctly calculate offsets and sizes for
785         all supported registers.
786
787 2009-06-11  Tom Tromey  <tromey@redhat.com>
788
789         * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove
790         'static' from local variable definitions.
791
792 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
793
794         * symtab.c (append_expanded_sal): Remove unused local variables.
795
796 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
797
798         * infrun.c (sched_multi): New global.
799         (resume): If sched_multi is set, resume only threads of the
800         current inferior.
801         (prepare_to_proceed): Don't switch over to wait_ptid if we're
802         resuming a different inferior, and sched_multi is off.
803         (show_schedule_multiple): New.
804         (_initialize_infrun): Register new "set schedule-multiple" command.
805         * inferior.h (sched_multi): Declare.
806         * NEWS: Mention new "schedule-multiple" setting.
807
808 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
809
810         * varobj.c (varobj_create): Properly restore the selected frame.
811
812 2009-06-05  Tom Tromey  <tromey@redhat.com>
813
814         * inferior.c (print_inferior): Make a table, not a list.  Emit
815         table headers.
816
817 2009-06-10  Jonas Maebe  <jonas.maebe@elis.ugent.be>
818
819         * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to
820         darwin_wait (blocking wait).
821         (darwin_kill_inferior): Likewise.
822
823 2009-06-10  Pedro Alves  <pedro@codesourcery.com>
824
825         * infrun.c (handle_inferior_event): Update comment around trying
826         to revert back to a stepping thread that has exited.
827
828 2009-06-10  Cary Coutant  <ccoutant@google.com>
829
830         * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
831         DW_LNE_set_discriminator.
832
833 2009-06-10  Pierre Muller  <muller@ics.u-strasbg.fr>
834
835         * breakpoint.c: ARI fixes.
836         (create_overlay_event_breakpoint): Avoid assignment inside if statement.
837         (print_one_breakpoint_location): Likewise.
838         (create_longjmp_breakpoint): Likewise.
839         (tracepoint_save_command): Likewise
840         (bpstat_find_step_resume_breakpoint): No operator at end of line.
841         (bpstat_stop_status): Likewise.
842         (describe_other_breakpoints): Likewise.
843         (hw_watchpoint_used_count): Likewise.
844         (expand_line_sal_maybe): Likewise.
845         (break_command_really): Likewise.
846         (delete_command): Likewise.
847         (do_enable_breakpoint): Likewise.
848         (delete_trace_command): Likewise.
849         (catch_exception_command_1): Likewise and remove extra parentheses.
850
851 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
852
853         * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
854         "ubreak" command that does not exist.
855
856 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
857
858         * cli/cli-decode.c (add_alias_cmd): Correct assertion.
859
860 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
861
862         * hppa-tdep.c (_initialize_hppa_tdep): Add declaration.
863
864 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
865
866         * procfs.h: New.
867         * proc-utils.h (procfs_first_available): Don't declare here.
868         * sol-thread.c: Include procfs.h instead of sys/procfs.h and
869         proc-utils.h.
870         * procfs.c: Include procfs.h.
871         (procfs_target): Make it public.  Don't register
872         procfs_can_use_hw_breakpoint here.
873         (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
874         defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
875         (procfs_can_use_hw_breakpoint): Remove check of
876         TARGET_HAS_HARDWARE_WATCHPOINTS.
877         (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
878         here.
879         (_initialize_procfs): Don't add the procfs target here.
880
881         * i386-sol2-nat.c: Include target.h and procfs.h.
882         (_initialize_amd64_sol2_nat): Install the procfs target here,
883         customized with watchpoints support.
884         * irix5-nat.c: Include target.h.
885         (_initialize_core_irix5): Rename to ...
886         (_initialize_irix5_nat): ... this.  Install the procfs target
887         here, customized with watchpoints support.
888         * alpha-nat.c: Include procfs.h.
889         (_initialize_core_alpha): Rename to...
890         (_initialize_alpha_nat): ... this.  Install the procfs target
891         here, customized with watchpoints support.
892         * sparc-sol2-nat.c: Include target.h and procfs.h.
893         (_initialize_sparc_sol2_nat): New.
894
895         * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
896         * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
897         * config/mips/irix5.mh (NAT_FILE): Delete.
898         * config/mips/irix6.mh (NAT_FILE): Delete.
899         * config/mips/nm-irix5.h: Delete.
900
901 20009-06-07  Pedro  Alves  <pedro@codesourcery.com>
902
903         * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
904         to enum target_object.  Cleanup comments.
905         * auxv.h: Include "target.h".  Cleanup comments to not mention
906         NATIVE_XFER_AUXV anymore.
907
908 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
909
910         * inferior.h (procfs_first_available): Move declaration to...
911         * proc-utils.h: ... here.
912         * sol-thread.c: Include procfs.h and proc-utils.h.
913
914 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
915
916         * inferior.h (proc_iterate_over_mappings): Delete declaration.
917         * nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
918         * procfs.c (proc_iterate_over_mappings): Delete.
919
920 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
921
922         * target.h (struct target_ops): Make to_has_all_memory,
923         to_has_memory, to_has_stack, to_has_registers and to_has_execution
924         methods instead of variables.
925         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
926         (target_has_registers_1, target_has_execution_1): Declare
927         functions.
928         (target_has_all_memory): Rewrite to call target_has_all_memory_1.
929         (target_has_memory): Rewrite to call target_has_memory_1.
930         (target_has_stack): Rewrite to call target_has_all_stack_1.
931         (target_has_registers): Rewrite to call target_has_registers_1.
932         (target_has_execution): Rewrite to call target_has_execution_1.
933         (default_child_has_all_memory, default_child_has_memory)
934         (default_child_has_stack, default_child_has_registers)
935         (default_child_has_execution): Declare.
936         (target_mark_running, target_mark_exited): Delete declarations.
937         * target.c (default_child_has_all_memory,
938         default_child_has_memory, default_child_has_stack,
939         default_child_has_registers, default_child_has_execution): New.
940         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
941         target_has_registers_1, target_has_execution_1): New.
942         (add_target): Default the to_has_all_memory, to_has_all_memory,
943         to_has_memory, to_has_stack, to_has_registers and to_has_execution
944         callbacks to return 0.
945         (update_current_target): Do not inherit to_has_all_memory,
946         to_has_memory, to_has_stack, to_has_registers or to_has_execution.
947         (target_mark_running, target_mark_exited): Delete.
948         (memory_xfer_partial): Adjust.
949         (target_read_memory, target_write_memory, target_search_memory):
950         Dispatch to the the top-most target, not the flattened
951         current_target.
952         (target_info): Adjust.
953         (init_dummy_target): Install return_zero as callback for
954         to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
955         to_has_execution.
956         (set_maintenance_target_async_permitted): Use have_live_inferiors
957         instead of target_has_execution.
958         * target-memory.c (target_write_memory_blocks): Dispatch memory
959         writes to the the top-most target, not the flattened
960         current_target.
961
962         * breakpoint.c (insert_breakpoints): Don't check for
963         target_has_execution here.
964         (update_global_location_list): Check if there are live inferiors
965         to debug instead of target_has_execution.
966         * infcmd.c (kill_command, detach_command): Check if there are
967         inferiors instead of target_has_execution.
968         * inferior.h (have_live_inferiors): Declare.
969         * inferior.c (have_live_inferiors): New.
970         * infrun.c (normal_stop): Don't check for target_has_execution to
971         finish the thread states.
972         * thread.c (is_thread_state, is_stopped, is_exited, is_running)
973         (any_running, is_executing): Remove checks for
974         target_has_execution.
975         * top.c (kill_or_detach): Don't try to kill core inferiors.
976         (quit_target): Don't check for target_has_execution.
977
978         * corelow.c (core_has_memory, core_has_stack, core_has_registers):
979         New.
980         (init_core_ops): Install core_has_memory, core_has_stack and
981         core_has_registers.
982         * exec.c (exec_has_memory): New.
983         (init_exec_ops): Install exec_has_memory.
984         * remote.c (remote_add_inferior): Don't call target_mark_running.
985         (remote_start_remote): Don't call target_mark_exited or call
986         target_mark_running.
987         (remote_open_1): Use have_inferiors instead of
988         target_has_execution.  Don't use target_mark_exited.
989         (init_remote_ops): Install deafult_child_has_all_memory,
990         default_child_has_memory, default_child_has_stack,
991         default_child_has_registers, default_child_has_execution.
992         * bsd-kvm.c (bsd_kvm_return_one): New.
993         (bsd_kvm_add_target): Register bsd_kvm_return_one as
994         to_has_memory, to_has_stack and to_has_registers callbacks.
995         * remote-m32r-sdi.c (m32r_return_one): New.
996         (init_m32r_ops): Register it.
997         * inf-child.c (inf_child_target): Adjust to register
998         default_child_has_all_memory, default_child_has_memory,
999         default_child_has_stack, default_child_has_registers,
1000         default_child_has_execution callbacks.
1001         * gnu-nat.c (init_gnu_ops): Likewise.
1002         * go32-nat.c (init_go32_ops): Likewise.
1003         * hpux-thread.c (init_hpux_thread_ops): Likewise.
1004         * monitor.c (init_base_monitor_ops): Likewise.
1005         * nto-procfs.c (init_procfs_ops): Likewise.
1006         * remote-mips.c (_initialize_remote_mips): Likewise.
1007         * windows-nat.c (init_windows_ops): Likewise.
1008         * remote-sim.c (gdbsim_create_inferior): Don't use
1009         target_mark_running or target_mark_exited.
1010         (gdbsim_mourn_inferior): Don't call target_mark_exited.
1011         (init_gdbsim_ops): Adjust to register
1012         default_child_has_all_memory, default_child_has_memory,
1013         default_child_has_stack, default_child_has_registers,
1014         default_child_has_execution callbacks.
1015
1016         * linux-nat.c (linux_nat_xfer_partial): If reading memory, and
1017         there's no inferior selected, defer to a lower stratum.
1018
1019 2009-06-05  Tom Tromey  <tromey@redhat.com>
1020
1021         * varobj.c (update_dynamic_varobj_children): Wrap error text in
1022         _().
1023         (install_visualizer): Likewise.
1024         (varobj_set_visualizer): Likewise.
1025
1026 2009-06-05  Marc Khouzam  <marc.khouzam@ericsson.com>
1027
1028         * mi/mi-main.c (mi_cmd_exec_continue)
1029         (mi_cmd_exec_interrupt): Adjust parsing of thread group
1030         ids to current reality, where they don't have any 'p' prefix.
1031
1032 2009-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
1033
1034         * corelow.c (core_open): Check for core_gdbarch before calling
1035         gdbarch_target_signal_from_host.
1036
1037 2009-06-05  Tom Tromey  <tromey@redhat.com>
1038
1039         * c-exp.y (parse_number): Don't use K&R definition.
1040         (yylex): Likewise.
1041         (yyerror): Likewise.
1042
1043 2009-06-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
1044
1045         * varobj.c (varobj_update): Fix out of scope varobjs to not to change.
1046
1047 2009-06-04  Ulrich Weigand  <uweigand@de.ibm.com>
1048
1049         * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
1050         * ax-gdb.c (gen_var_ref): Likewise.
1051         * findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
1052         * printcmd.c (address_info): Likewise.
1053         * dwarf2loc.c (dwarf_expr_frame_base): Likewise.
1054         * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
1055         * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
1056         * dwarf2loc.h: Likewise.
1057         * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.
1058
1059         * symtab.h: (struct symbol_register_ops): New struct definition.
1060         (struct symbol): Make "ops" member a union of symbol_computed_ops and
1061         symbol_register_ops callback pointers.
1062         (SYMBOL_REGISTER_OPS): New macro.
1063         * tracepoint.c: Include "objfiles.h".
1064         (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
1065         callback to retrieve register numbers.
1066         * ax-gdb.c (gen_var_ref): Likewise.
1067         * findvar.c (read_var_value): Likewise.
1068         * printcmd.c (address_info): Likewise.
1069
1070         * coffread.c (coff_reg_to_regnum): New function.
1071         (coff_register_funcs): New static variable.
1072         (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
1073         Install SYMBOL_REGISTER_OPS callbacks.
1074         * mdebugread.c (mdebug_reg_to_regnum): New function.
1075         (mdebug_register_funcs): New static variable.
1076         (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
1077         Install SYMBOL_REGISTER_OPS callbacks.
1078         * stabsread.c (stab_reg_to_regnum): New function.
1079         (stab_register_funcs): New static variable.
1080         (define_symbol): Do not call gdbarch_stab_reg_to_regnum.
1081         Install SYMBOL_REGISTER_OPS callbacks.
1082
1083 2009-06-03  Doug Evans  <dje@google.com>
1084
1085         * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
1086         after discarding its contents.
1087
1088 2009-06-03  Pedro Alves  <pedro@codesourcery.com>
1089
1090         * target.c: Include "exec.h".
1091         (update_current_target): Don't inherit to_sections or
1092         to_sections_end.
1093         (target_get_section_table): New.
1094         (target_section_by_addr): Fetch the section table from the passed
1095         in target.
1096         (memory_xfer_partial): Handle unmapped overlay sections before
1097         anything else.  Get the overlay mapped address here.  Adjust to
1098         use section_table_xfer_memory_partial.
1099         (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
1100         instead of TARGET_OBJECT_MEMORY.
1101         (target_resize_to_sections): Delete.
1102         (remove_target_sections): Adjust to remove target sections from
1103         `current_target_sections', and use resize_section_table.
1104         * target.h (struct target_ops) <to_sections, to_sections_end>:
1105         Remove fields.
1106         <to_get_section_table>: New method.
1107         (xfer_memory, print_section_info): Delete declarations.
1108         (struct target_section_table): New type.
1109         (target_get_section_table): Declare.
1110         (target_resize_to_sections): Delete declaration.
1111         (remove_target_sections): Delete declaration.
1112         * bfd-target.c (target_bfd_xfer_partial): Get the section table
1113         from to_data.
1114         (target_bfd_get_section_table): New.
1115         (target_bfd_xclose): Adjust.
1116         (target_bfd_reopen): Store the section table in the to_data field.
1117         * corelow.c (core_data): New.
1118         (core_close): Adjust to release core_data and its sections.
1119         (core_open): Allocate core_data, and build its target sections
1120         table.
1121         (deprecated_core_resize_section_table): New.
1122         (core_files_info): Pass core_data to print_section_info.
1123         (core_xfer_partial): Adjust to use
1124         section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
1125         (init_core_ops): Do not install a deprecated_xfer_memory callback
1126         anymore.
1127         * solib.c (update_solib_list): Add the shared library sections
1128         to the current target sections table.
1129         * exec.c (current_target_sections_1): New global.
1130         (current_target_sections): New global.
1131         (exec_close_1): New function, refactored from exec_close.  Remove
1132         the exec_bfd's sections from the current target sections table.
1133         Adjust to not use to_sections.
1134         (exec_close): Remove all target sections.  Call exec_close_1.
1135         (exec_file_clear): Use exec_close_1 instead of unpushing the
1136         target.
1137         (exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
1138         exec_bfd's sections to the current target sections table.  Don't
1139         push the exec_ops target here.
1140         (resize_section_table): New.
1141         (add_target_sections): New.
1142         (remove_target_sections): Moved here.
1143         (section_table_xfer_memory): Adjust to implement the xfer_partial
1144         interface, and rename to...
1145         (section_table_xfer_memory_partial): ... this, replacing the
1146         current function of that same name.
1147         (exec_get_section_table): New.
1148         (exec_xfer_partial): New.
1149         (xfer_memory): Delete.
1150         (print_section_info): Replace the target_ops parameter by a
1151         target_section_table parameter.
1152         (exec_files_info, set_section_command, exec_set_section_address):
1153         Adjust to use the current sections table.
1154         (init_exec_ops): Do not register a deprecated_xfer_memory
1155         callback.  Register to_xfer_partial and to_get_section_table
1156         callbacks.
1157         * infrun.c (handle_inferior_event): Update comments around
1158         solib_add.
1159         * rs6000-nat.c (xcoff_relocate_core): Adjust to use
1160         deprecated_core_resize_section_table.
1161         * exec.h (resize_section_table): Declare.
1162         (section_table_xfer_memory_partial): Add const char * argument.
1163         (remove_target_sections): Declare here.
1164         (add_target_sections): Declare.
1165         (print_section_info): Declare here.
1166         * gdbcore.h (deprecated_core_resize_section_table): Declare.
1167
1168 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
1169
1170         * value.h (struct internalvar): Remove.
1171         (get_internalvar_integer): Add prototype.
1172         (set_internalvar_integer): Add prototype.
1173         (clear_internalvar): Add prototype.
1174
1175         * value.c (struct internalvar): Move here.  Add type member.  Remove
1176         endian member.  Add union_internalvar member instead of value member.
1177         (init_if_undefined_command): Use intvar->type.
1178         (create_internalvar): Do not initialize value/endian, but type.
1179         (create_internalvar_type_lazy): Call create_internalvar.
1180         (value_of_internalvar): Handle host-side internalvar contents.
1181         (set_internalvar_component): Likewise.
1182         (set_internalvar): Likewise.
1183         (get_internalvar_integer): New function.
1184         (clear_internalvar): Likewise.
1185         (set_internalvar_integer): Likewise.
1186         (preserve_values): Handle host-side internalvar contents.
1187
1188         * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
1189         set_internalvar_integer instead of set_internalvar.
1190         * findcmd.c (find_command): Likewise.
1191         * infrun.c (handle_inferior_event): Likewise.
1192         * source.c (forward_search_command, reverse_search_command): Likewise.
1193         * tracepoint.c (set_traceframe_num, set_tracepoint_num,
1194         set_traceframe_context): Likewise.
1195
1196         * printcmd.c (x_command): Call clear_internalvar instead of
1197         set_internalvar.
1198         * tracepoint.c (set_traceframe_context): Likewise.
1199         
1200         * breakpoint.c (get_number_trailer): Call get_internalvar_integer
1201         instead of value_of_internalvar.
1202         * linespec.c (decode_dollar): Likewise.
1203
1204         * expprint.c (dump_subexp_body_standard): Use internalvar_name
1205         instead of accessing internalvar private elements.
1206         * valops.c (value_assign): Copy from original source instead of
1207         accessing internalvar private elements.
1208
1209 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
1210
1211         * scm-lang.c (builtin_type_scm): Remove.
1212         (scm_lookup_name): Add GDBARCH parameter.  Use it instead of
1213         objfile architecture.  Use per-architecture builtin_scm_type instead
1214         of builtin_type_scm.
1215         (evaluate_exp): Pass expression architecture to scm_lookup_name.
1216
1217         (scm_get_field): Add SIZE parameter.  Use it instead of 
1218         TYPE_LENGTH (builtin_type_scm).
1219
1220         (build_scm_types): New function.
1221         (scm_type_data): New variable.
1222         (builtin_scm_type): New function.
1223         (_initialize_scheme_language): Do not initialize builtin_type_scm.
1224         Register build_scm_types as post-init function for scm_type_data.
1225
1226         * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
1227         instead of builtin_type_scm.
1228
1229         * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
1230         (scm_get_field): Add SIZE paramter.
1231         (scm_scmval_print): Remove prototype.
1232         (builtin_type_scm): Remove.
1233         (struct builtin_scm_type): Add structure definition.
1234         (builtin_scm_type): Add prototype.
1235
1236         * scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
1237         instead of builtin_core_addr type; do not use objfile architecture.
1238         (scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
1239         Pass type to scm_scmval_print.
1240         (scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
1241         (scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
1242         define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
1243         (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
1244
1245 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
1246
1247         * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
1248         mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
1249         mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
1250         mdebug_type_unsigned_char, mdebug_type_unsigned_short,
1251         mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
1252         mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
1253         mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
1254         mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
1255         mdebug_type_complex, mdebug_type_double_complex,
1256         mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
1257         Remove.
1258
1259         (basic_type_data): New global variable.
1260         (basic_type): New function.
1261         (parse_type): Remove static basic type map map_bt.  Call basic_type
1262         to get basic types instead of using mdebug_type_ variables.
1263
1264         (parse_symbol): Use builtin types instead of mdebug_type_ variables.
1265         (upgrade_type): Likewise.
1266         (parse_procedure): Likewise.
1267         (psymtab_to_symtab_1): Likewise.
1268
1269         (_initialize_mdebugread): Do not initialize mdebug_type_ variables.
1270         Initialize basic_type_data.
1271
1272 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
1273
1274         * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
1275         * dfp.c (promote_decimal): Remove.
1276         (decimal_binop): Convert LEN_RESULT to input parameter.
1277         Remove call to decimal_binop.
1278         (decimal_compare): Remove call to decimal_binop.
1279
1280         * valarith.c (value_binop): Pass desired result type length
1281         to decimal_binop.
1282
1283 2009-06-01  Tristan Gingold  <gingold@adacore.com>
1284
1285         * configure.tgt (avr): Set gdb_sim to use the simulator.
1286
1287 2009-05-29  Doug Evans  <dje@google.com>
1288
1289         * infrun.c (prepare_to_proceed): Document.  Assert !non_stop.
1290         If scheduler-locking is enabled, we're not going to be singlestepping
1291         any other previously stopped thread.
1292
1293 2009-05-29  Pedro Alves  <pedro@codesourcery.com>
1294
1295         * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0.
1296
1297 2009-05-29  Eli Zaretskii  <eliz@gnu.org>
1298
1299         * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
1300         for stabs and COFF debug info.
1301
1302 2009-05-28  Pedro Alves  <pedro@codesourcery.com>
1303
1304         * infrun.c (handle_inferior_event): When thread hoping, switch
1305         inferior_ptid to the event thread before removing breakpoints from
1306         the target.  If not stopping, also try to revert back to a thread
1307         that was doing a "next".  Check if that thread still exists before
1308         resuming.
1309         (currently_stepping_thread): Delete and merge with ...
1310         (currently_stepping): ... this.
1311         (currently_stepping_callback): Rename to ...
1312         (currently_stepping_or_nexting_callback): ... this, and also
1313         return true if the thread was stepping over a call (has a
1314         step-resume breakpoint).
1315
1316 2009-05-28  Tom Tromey  <tromey@redhat.com>
1317
1318         * python/python.c (gdbpy_parameter): Rename.  Fix error message.
1319         (GdbMethods): Change "get_parameter" to "parameter".
1320
1321 2009-05-28  Pierre Muller  <muller@ics.u-strasbg.fr>
1322             Paul Pluzhnikov  <ppluzhnikov@google.com>
1323
1324         * configure.ac (!have_libpython): Add python-prettyprint source
1325         and object files.
1326         * configure: Regenerate.
1327         * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
1328         python headers.
1329         
1330 2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
1331             Tom Tromey  <tromey@redhat.com>
1332             Thiago Jung Bauermann  <bauerman@br.ibm.com>
1333
1334         * mi/mi-main.c (mi_cmd_list_features): List "python" feature.
1335         * varobj.h (varobj_set_visualizer): Declare.
1336         (varobj_get_display_hint): Likewise.
1337         (varobj_update_result_t) <children_changed, value_installed>: New
1338         fields.
1339         * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
1340         * mi/mi-cmds.h (mi_cmd_var_set_visualizer,
1341         mi_cmd_var_set_child_range): Declare.
1342         * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
1343         (mi_cmd_var_list_children): Emit display hint.
1344         (varobj_update_one): Emit display hint.  Handle dynamic children.
1345         * python/python.c (GdbMethods): Add "default_visualizer".
1346         * python/python-internal.h (apply_varobj_pretty_printer,
1347         gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
1348         Declare.
1349         (gdbpy_default_visualizer): Likewise.
1350         * varobj.c: Include python.h, python-internal.h.
1351         (PyObject): New typedef.
1352         (struct varobj) <children_requested, pretty_printer>: New fields.
1353         (varobj_create): Call install_default_visualizer.
1354         (instantiate_pretty_printer): New function.
1355         (varobj_set_display_format): Update.
1356         (varobj_get_display_hint): New function.
1357         (update_dynamic_varobj_children): New function.
1358         (varobj_get_num_children): Handle dynamic children.
1359         (varobj_list_children): Likewise.
1360         (install_new_value): Likewise.
1361         (varobj_add_child): New function.
1362         (install_visualizer): Likewise.
1363         (install_default_visualizer): Likewise.
1364         (varobj_set_visualizer): Likewise.
1365         (varobj_update): Handle dynamic children.
1366         (create_child): Use create_child_with_value.
1367         (create_child_with_value): New function.
1368         (value_get_print_value): Call pretty printer.  Add value_formatter
1369         argument.
1370         (c_value_of_variable): Update.
1371         (varobj_invalidate): Always free all_rootvarobj.
1372         * python/python-prettyprint.c (apply_varobj_pretty_printer): New
1373         function.
1374         (gdbpy_get_varobj_pretty_printer): Likewise.
1375         (gdbpy_default_visualizer): Likewise.
1376
1377 2009-05-27  Tom Tromey  <tromey@redhat.com>
1378             Thiago Jung Bauermann  <bauerman@br.ibm.com>
1379             Phil Muldoon  <pmuldoon@redhat.com>
1380             Paul Pluzhnikov  <ppluzhnikov@google.com>
1381             Vladimir Prus  <vladimir@codesourcery.com>
1382
1383         * python/python-value.c (value_object_to_value): New function.
1384         * python/python-internal.h: Include frameobject.h.
1385         (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
1386         Declare.
1387         (value_object_to_value): Declare.
1388         * printcmd.c (struct format_data) <raw>: New field.
1389         (last_format): Default to 0.
1390         (decode_format): Initialize val.raw.  Handle /r flag.
1391         (print_command_1): Initialize fmt.raw and opts.raw.
1392         (output_command): Likewise.
1393         (x_command): Fix initialization of fmt.format.  Initialize
1394         fmt.raw.
1395         (display_command): Initialize fmt.raw.
1396         (do_one_display): Set opts.raw.
1397         * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
1398         gdbpy_display_hint_cst): New globals.
1399         (_initialize_python): Initialize them.  Set gdb.pretty_printers.
1400         * cp-valprint.c: Include python.h.
1401         (cp_print_value): Call apply_val_pretty_printer.
1402         * python/python.h (apply_val_pretty_printer): Declare.
1403         * stack.c (print_this_frame_argument_p): Remove.
1404         (print_frame_args): Compute summary flag.  Don't use
1405         print_this_frame_argument_p.
1406         * valprint.c: Include python.h.
1407         (user_print_options): Initialize new fields.
1408         (scalar_type_p): New function.
1409         (val_print): Handle 'raw' and 'summary' modes.  Call
1410         apply_val_pretty_printer.
1411         (value_print): Handle 'raw' mode.
1412         * valprint.h (struct value_print_options) <raw, summary>: New
1413         fields.
1414         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
1415         (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
1416         (python-prettyprint.o): New target.
1417         * python/python-prettyprint.c: New file.
1418
1419 2009-05-27  Tom Tromey  <tromey@redhat.com>
1420             Paul Pluzhnikov  <ppluzhnikov@google.com>
1421
1422         * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
1423         value_address.
1424         * cli/cli-dump.c (dump_value_to_file): Use value_address.
1425         * valprint.c (common_val_print): Likewise.
1426         * v850-tdep.c (v850_push_dummy_call): Use value_address.
1427         * tracepoint.c (encode_actions): Use value_address.
1428         * printcmd.c (print_formatted): Use value_address.
1429         (x_command): Likewise.
1430         * p-valprint.c (pascal_object_print_static_field): Use
1431         value_address.
1432         * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
1433         * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
1434         * m32r-tdep.c (m32r_push_dummy_call): Use value_address.
1435         * jv-valprint.c (java_value_print): Use value_address.
1436         * infcall.c (find_function_addr): Use value_address.
1437         * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
1438         * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
1439         * frv-tdep.c (frv_push_dummy_call): Use value_address.
1440         * frame.c (frame_register_unwind): Use value_address.
1441         (frame_unwind_register_value): Likewise.
1442         * darwin-nat-info.c (info_mach_region_command): Use
1443         value_address.
1444         * cp-valprint.c (cp_print_static_field): Use value_address.
1445         * c-valprint.c (c_value_print): Use value_address.
1446         * breakpoint.c (update_watchpoint): Use value_address.
1447         (can_use_hardware_watchpoint): Likewise.
1448         * ada-valprint.c (ada_val_print_1): Use value_address.
1449         (ada_value_print): Likewise.
1450         * ada-tasks.c (read_fat_string_value): Use value_address.
1451         * jv-lang.c (java_link_class_type): Use set_value_address.
1452         (java_link_class_type): Likewise.
1453         (get_java_utf8_name): Use value_address.
1454         (type_from_class): Likewise.
1455         (java_link_class_type): Likewise.
1456         * findvar.c (value_of_register): Use set_value_address.
1457         (read_var_value): Likewise.
1458         (read_var_value): Likewise.
1459         * eval.c (evaluate_subexp_standard): Use set_value_address.
1460         (evaluate_subexp_standard): Use value_address.
1461         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
1462         * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
1463         (ada_value_primitive_packed_val): Likewise.
1464         (ensure_lval): Likewise.
1465         (thin_data_pntr): Use value_address.
1466         (desc_bounds): Likewise.
1467         (ada_value_primitive_packed_val): Likewise.
1468         (value_assign_to_component): Likewise.
1469         (ensure_lval): Likewise.
1470         (make_array_descriptor): Likewise.
1471         (ada_to_fixed_value): Likewise.
1472         (unwrap_value): Likewise.
1473         * value.c (deprecated_value_address_hack): Remove.
1474         (value_address): New function.
1475         (value_raw_address): Likewise.
1476         (set_value_address): Likewise.
1477         (value_fn_field): Use set_value_address.
1478         (value_from_contents_and_address): Likewise.
1479         (value_fn_field): Likewise.
1480         (allocate_value_lazy): Don't use VALUE_ADDRESS.
1481         (value_as_address): Use value_address.
1482         (value_static_field): Likewise.
1483         * valops.c (search_struct_field): Use set_value_address.
1484         (value_at): Likewise.
1485         (value_at_lazy): Likewise.
1486         (value_repeat): Likewise.
1487         (value_cast_structs): Use value_address.
1488         (value_cast): Likewise.
1489         (value_fetch_lazy): Likewise.
1490         (value_assign): Likewise.
1491         (value_repeat): Likewise.
1492         (address_of_variable): Likewise.
1493         (value_coerce_array): Likewise.
1494         (value_coerce_function): Likewise.
1495         (value_addr): Likewise.
1496         (search_struct_field): Likewise.
1497         (search_struct_method): Likewise.
1498         (find_method_list): Likewise.
1499         (value_struct_elt_for_reference): Likewise.
1500         (value_full_object): Likewise.
1501         * jv-valprint.c (java_value_print): Use set_value_address.
1502         * value.h (deprecated_value_address_hack): Remove.
1503         (VALUE_ADDRESS): Remove.
1504         (value_address): Declare.
1505         (value_raw_address): Declare.
1506         (set_value_address): Declare.
1507
1508 2009-05-27  Tom Tromey  <tromey@redhat.com>
1509             Thiago Jung Bauermann  <bauerman@br.ibm.com>
1510             Phil Muldoon  <pmuldoon@redhat.com>
1511             Paul Pluzhnikov  <ppluzhnikov@google.com>
1512
1513         * python/python.c (_initialize_python): Call
1514         gdbpy_initialize_types.
1515         (GdbMethods): Add "lookup_type".
1516         * python/python-value.c (value_object) <type>: New field.
1517         (valpy_dealloc): Decref type.
1518         (valpy_new): Initialize type.
1519         (valpy_get_type): New function.
1520         (value_to_value_object): Initialize type.
1521         (valpy_cast): New function.
1522         (value_object_getset): Add "type".
1523         (value_object_methods): Add "cast".
1524         * python/python-internal.h (type_to_type_object): Declare.
1525         (type_object_to_type): Likewise.
1526         (gdbpy_initialize_types): Likewise.
1527         (gdbpy_lookup_type): Declare.
1528         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
1529         (SUBDIR_PYTHON_SRCS): Add python-type.c.
1530         (python-type.o): New target.
1531         * python/python-type.c: New file.
1532
1533 2009-05-27  Tom Tromey  <tromey@redhat.com>
1534             Thiago Jung Bauermann  <bauerman@br.ibm.com>
1535             Phil Muldoon  <pmuldoon@redhat.com>
1536
1537         * python/python.c: Include objfiles.h, observer.h.
1538         (gdbpy_auto_load): New global.
1539         (gdbpy_current_objfile): Likewise.
1540         (GDBPY_AUTO_FILENAME): New define.
1541         (gdbpy_new_objfile): New function.
1542         (gdbpy_get_current_objfile): Likewise.
1543         (gdbpy_objfiles): Likewise.
1544         (_initialize_python): Add "maint set auto-load".  Call
1545         gdbpy_initialize_objfile.  Attach objfile observer.
1546         (GdbMethods): New methods current_objfile, objfiles.
1547         * python/python-objfile.c: New file.
1548         * python/python-internal.h (objfile_to_objfile_object): Declare.
1549         (objfpy_get_printers): Likewise.
1550         (gdbpy_initialize_objfile): Likewise.
1551         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
1552         (SUBDIR_PYTHON_SRCS): Add python-objfile.c.
1553         (python-objfile.o): New target.
1554
1555 2009-05-27  Pedro Alves  <pedro@codesourcery.com>
1556
1557         * infrun.c (follow_exec): Clear the stop_requested flag.
1558         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
1559         Add debug output.
1560
1561 2009-05-27  Aleksandar Ristovski  <aristovski@qnx.com>
1562
1563         * nto-procfs.c (get_regset): Pass correct pointer.
1564
1565 2009-05-26  Doug Evans  <dje@google.com>
1566
1567         * dwarf2read.c (follow_die_ref): Add comment.
1568         (dwarf2_mark_helper): Tweak comment.
1569         (dwarf2_mark): Move description to its proper place.
1570
1571 2009-05-25  Pierre Muller  <muller@ics.u-strasbg.fr>
1572
1573         * procfs.c (procfs_wait): Add options parameter.
1574
1575 2009-05-24  Doug Evans  <dje@google.com>
1576
1577         Global renaming of find_thread_pid to find_thread_ptid.
1578         * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
1579         * thread.c (find_thread_ptid): Renamed from find_thread_pid.
1580         All callers updated.
1581
1582         * infrun.c (follow_fork): Initialize new step_* locals
1583         to avoid "may be used uninitialized" warnings.
1584
1585 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
1586
1587         * inflow.c (copy_terminal_info): Deep copy `run_terminal'.
1588
1589 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
1590
1591         * gdbthread.h (struct thread_info): New `pending_follow' field.
1592         * thread.c (new_thread): New function.
1593         (add_thread_silent): Use it.
1594         * breakpoint.c (internal_breakpoint_number): New global, moved
1595         from inside...
1596         (create_internal_breakpoint): ... this.
1597         (clone_momentary_breakpoint): New.
1598         * breakpoint.h (clone_momentary_breakpoint): Declare.
1599         * infrun.c (nullify_last_target_wait_ptid): Move declaration
1600         higher.
1601         (pending_follow): Delete.
1602         (follow_fork): Handle pending follow fork event here.  Moved the
1603         preserving of thread stepping state here.
1604         (resume): Don't handle pending follow fork events here.  Only
1605         install the inferior's terminal modes if we're about to resume it.
1606         (proceed): Handle possible pending follow fork events here.
1607         (init_wait_for_inferior): No need to clear pending_follow anymore,
1608         it's gone.
1609         (handle_inferior_event): Adjust to per-thread `pending_follow'.
1610         Call `follow_fork' to handle following the fork.  If the
1611         follow-fork is cancelled, stop stepping.
1612         * linux-nat.c (linux_child_follow_fork): Adjust to per-thread
1613         `pending_follow' events.  Remove code that handled preserving the
1614         thread stepping state.
1615         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
1616         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
1617
1618 2009-05-24  Pierre Muller  <muller@ics.u-strasbg.fr>
1619
1620         * symfile.c (add_shared_symbol_files_command): Remove
1621         prototype and function.
1622         (_initialize _symfile): Move "add-shared-symbol-files"
1623         command and "assf" alias.
1624         * windows-nat.c (_initialize_windows_nat): to here.
1625         Change "add-shared-symbol-files" to alias.
1626         
1627         * config/i386/cygwin.mh: Remove NAT_FILE.
1628         * config/i386/mingw.mh: Remove NAT_FILE.
1629         * config/i386/mingw64.mh: Remove NAT_FILE.
1630         * config/i386/nm-cygwin.h: Remove file.
1631         * config/i386/nm-cygwin64.h: Remove file.
1632
1633 2009-05-24  Hui Zhu  <teawater@gmail.com>
1634
1635         * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
1636         I386_LINUX_RECORD_IOCTL_*,
1637         I386_LINUX_RECORD_FCNTL_*) Removed.
1638         (i386_linux_init_abi): Change size of record from macros to
1639         numbers.
1640
1641 2009-05-24  Hui Zhu  <teawater@gmail.com>
1642
1643         * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
1644         * linux-record.c (record_linux_system_call): Ditto.
1645         * linux-record.h (linux_record_tdep): Ditto.
1646
1647 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1648
1649         Replace the savestring calls by xstrdup calls where possible.
1650         * breakpoint.c (condition_command, set_raw_breakpoint)
1651         (create_catchpoint, update_breakpoint_locations): Replace the
1652         savestring calls by xstrdup calls where possible.
1653         * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
1654         (record_producer): Likewise.
1655         * coffread.c (coff_start_symtab, complete_symtab): Likewise.
1656         * corefile.c (set_gnutarget): Likewise.
1657         * dbxread.c (add_new_header_file): Likewise.
1658         * demangle.c (set_demangling_command, set_demangling_style): Likewise.
1659         * event-top.c (push_prompt, pop_prompt, command_line_handler)
1660         (set_async_prompt): Likewise.
1661         * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
1662         Likewise.
1663         * language.c (set_language_command, _initialize_language): Likewise.
1664         * linespec.c (decode_line_2): Likewise.
1665         * rs6000-nat.c (add_vmap): Likewise.
1666         * top.c (set_prompt, init_history, init_main): Likewise.
1667         * tracepoint.c (stringify_collection_list): Likewise.
1668         * varobj.c (varobj_create): Remove variable expr_len.  Replace the 
1669         savestring calls by xstrdup calls where possible.
1670         (value_of_root, c_name_of_variable, c_describe_child): Replace the
1671         savestring calls by xstrdup calls where possible.
1672         * xcoffread.c (complete_symtab): Likewise.
1673         * cli/cli-script.c (build_command_line, define_command): Likewise.
1674         * cli/cli-setshow.c (do_setshow_command): Likewise.
1675
1676 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1677
1678         Remove already unreachable code.
1679         * varobj.c (varobj_get_handle): Fix comment when error is called.
1680         All callers updated.
1681
1682 2009-05-23  Eli Zaretskii  <eliz@gnu.org>
1683
1684         * README (`configure' options): Document GDB-specific options to
1685         `configure'.
1686
1687         * symtab.c (skip_prologue_using_lineinfo): New function.
1688         (find_function_start_sal): Use it to get to the first line of
1689         function's body that has an entry in the lineinfo table.
1690
1691         * symmisc.c (dump_symtab): Switch the current language to
1692         the language of the symtab we are dumping only if the symtab's
1693         language is neither language_auto nor language_unknown.
1694
1695         * coffread.c (coff_symtab_read): Set language_minimal as the
1696         language for the "_globals_" pseudo-file.
1697         (process_coff_symbol): Set the symbol's language to the language
1698         of current_subfile.
1699
1700 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
1701
1702         * target.h (struct section_table): Rename to ...
1703         (struct target_section): ... this.
1704         * exec.c: Adjust all references.
1705         * exec.h: Adjust all references.
1706         * nto-tdep.c: Adjust all references.
1707         * nto-tdep.h: Adjust all references.
1708         * ppc-linux-tdep.c: Adjust all references.
1709         * rs6000-nat.c: Adjust all references.
1710         * s390-tdep.c: Adjust all references.
1711         * solib-darwin.c: Adjust all references.
1712         * solib-frv.c: Adjust all references.
1713         * solib-irix.c: Adjust all references.
1714         * solib-null.c: Adjust all references.
1715         * solib-osf.c: Adjust all references.
1716         * solib-pa64.c: Adjust all references.
1717         * solib-som.c: Adjust all references.
1718         * solib-sunos.c: Adjust all references.
1719         * solib-svr4.c: Adjust all references.
1720         * solib-target.c: Adjust all references.
1721         * solib.c: Adjust all references.
1722         * solist.h: Adjust all references.
1723         * symfile.c: Adjust all references.
1724         * symfile.h: Adjust all references.
1725         * target.c: Adjust all references.
1726
1727 2009-05-22  Hui Zhu  <teawater@gmail.com>
1728
1729         Add sys_fcntl argument interfaces to linux_record_tdep.
1730
1731         * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
1732         fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
1733         interfaces.
1734         * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
1735         I386_LINUX_RECORD_FCNTL_F_GETLK64,
1736         I386_LINUX_RECORD_FCNTL_F_SETLK64,
1737         I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
1738         of I386 Linux sys_fcntl arguments.
1739         (i386_linux_init_abi): Set macros values to linux_record_tdep.
1740         * linux-record.c (record_linux_system_call): Change to use
1741         the interface in linux_record_tdep in sys_fcntl and
1742         sys_fcntl64.
1743
1744         * linux-record.c (record_linux_system_call): Fix the process
1745         record build error about type in CYGWIN.
1746
1747 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
1748
1749         * inflow.c (kill_command): Delete left over static declaration.
1750
1751 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
1752
1753         * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
1754         Include exec.h.
1755         (struct section_closure): Delete.
1756         (add_to_section_table): Delete.
1757         (build_target_sections_from_bfd): Delete.
1758         (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
1759         (target_bfd_reopen): Use build_section_table.
1760         * exec.c (xfer_memory): Move most code except for overlay
1761         debugging support from here...
1762         (section_table_xfer_memory): ... to this new function.
1763         (section_table_xfer_memory_partial): New.
1764         * exec.h (section_table_xfer_memory_partial): Declare.
1765         * bfd-target.h (build_target_sections_from_bfd): Delete
1766         declaration.
1767
1768 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
1769
1770         * remote.c (compare_sections_command): Don't declare exec_bfd.
1771         * tracepoint.c: Include "gdbcore.h".
1772         (remote_set_transparent_ranges): Don't declare exec_bfd.
1773
1774 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
1775
1776         * aix-thread.c (init_aix_thread_ops): Whitespace.
1777
1778 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
1779
1780         * dec-thread.c (dec_thread_wait): Add options parameter.  Use it
1781         to call the to_wait method in the target beneath.
1782         * remote-m32r-sdi.c (m32r_wait): Add options parameter.
1783
1784 2009-05-21  Joel Brobecker  <brobecker@adacore.com>
1785
1786         * aix-thread.c (aix_thread_wait): Add options parameter.  Use it
1787         to call the to_wait method in the target_beneath.
1788
1789 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
1790
1791         * linux-nat.c (linux_nat_terminal_inferior)
1792         (linux_nat_terminal_ours): Don't check sync_execution.
1793         * remote.c (remote_terminal_inferior, remote_terminal_ours):
1794         Don't check sync_execution.  Update comments.
1795         * target.c (target_terminal_inferior): New.
1796         * target.h (target_terminal_inferior): Delete macro, and declare
1797         as function.
1798         * event-top.c (async_disable_stdin): Make idempotent.  Don't give
1799         the target the terminal here.
1800         * inflow.c (terminal_ours_1): Don't return early without setting
1801         `terminal_is_ours'.
1802
1803 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
1804
1805         * target.h (TARGET_WNOHANG): New.
1806         * target.c (target_wait): Add `options' argument.  Adjust.
1807         (struct target_ops) <to_wait>: Add `options' argument.
1808         (target_wait): Add `options' argument.
1809         * infrun.c (wait_for_inferior): Pass 0 as options to
1810         target_wait (blocking wait).
1811         (fetch_inferior_event): Pass TARGET_WNOHANG as options to
1812         target_wait.
1813         * fork-child.c (startup_inferior): Pass 0 as options to
1814         target_wait (blocking wait).
1815         * linux-nat.c (linux_nat_create_inferior): Remove async masking.
1816         (linux_nat_wait_1): Add `target_options' argument.  Use it instead
1817         of checking on target_can_async_p.
1818         (linux_nat_wait): Add `target_options' argument.  Adjust.
1819         * remote.c (remote_wait_ns): Add `options' argument.  Adjust to
1820         check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
1821         (remote_wait_as): Add `options' argument.  Adjust to check on
1822         TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
1823         a blocking wait, keep waiting until an interesting event comes
1824         out.
1825         (remote_wait): Add `options' argument.  Don't loop here if the
1826         target is in async mode, and a blocking wait has been requested.
1827
1828         * top.c (deprecated_target_wait_hook): Add `options' argument.
1829         * linux-thread-db.c (thread_db_wait): Add `options' argument, and
1830         pass it down to the layer beneath.
1831         * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
1832         * record.c (record_beneath_to_wait): Add `options' argument.
1833         (record_wait): Add `options' argument, and pass it down to the
1834         layer beneath.
1835         * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
1836         * darwin-nat.c (darwin_wait): Likewise.
1837         * defs.h (deprecated_target_wait_hook): Likewise.
1838         * gnu-nat.c (gnu_wait): Add `options' argument.
1839         * go32-nat.c (go32_wait): Likewise.
1840         * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
1841         pass it down to the layer beneath.
1842         * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
1843         * monitor.c (monitor_wait): Likewise.
1844         * nto-procfs.c (procfs_wait): Likewise.
1845         * remote-mips.c (mips_wait): Add `options' argument.
1846         * remote-sim.c (gdbsim_wait): Likewise.
1847         * rs6000-nat.c (rs6000_wait): Add `options' argument.
1848         * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
1849         it down to the layer beneath.
1850         * spu-linux-nat.c (spu_child_wait): Add `options' argument.
1851         * windows-nat.c (windows_wait): Likewise.
1852         * tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
1853
1854 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
1855
1856         * mi/mi-interp.c (mi_on_resume): Account for whole process
1857         resumes.
1858
1859 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1860
1861         * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
1862
1863 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1864
1865         * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
1866
1867 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1868
1869         Fix parsing DW_AT_const_value using DW_FORM_string.
1870         * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
1871
1872 2009-05-20  Joel Brobecker  <brobecker@adacore.com>
1873
1874         * aix-thread.c (giter_count): Do not count the main thread.
1875         (giter_accum): Do not include the main thread.
1876
1877 2009-05-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
1878
1879         Remove the PROT parameter from openp.
1880         * source.c (openp): Remove the parameter PROT.  Assertion check MODE.
1881         defs.h (openp): Update the prototype.
1882         Update all the openp callers.
1883
1884 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
1885
1886         * inflow.c (kill_command): Moved to infcmd.c.
1887         (_initialize_inflow): Don't add the "kill" command or clear
1888         inferior_ptid here.
1889         * infcmd.c (kill_command): Moved here from inflow.c.
1890         (_initialize_infcmd): Add the "kill" command here.
1891
1892 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
1893
1894         * fork-child.c: Don't include frame.h.  Include terminal.h.
1895         (fork_inferior): Call new_tty_postfork after forking adn adding
1896         the child to the inferior list.
1897         * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
1898         here.
1899         * inflow.c (struct terminal_info): Remove const qualifier from
1900         `run_terminal' field.
1901         (inferior_thisrun_terminal): Tweak comment.
1902         (inflow_inferior_exit): Release the `run_terminal' field.
1903         (copy_terminal_info): New function.
1904         (new_tty_postfork): New function.
1905         * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
1906         (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
1907         * inf-ptrace.c: Include terminal.h.
1908         (inf_ptrace_follow_fork): Copy the parent's terminal info to the
1909         child.
1910         * linux-nat.c: Include terminal.h.
1911         (linux_child_follow_fork): Copy the parent's terminal info to the
1912         child.
1913         * inf-ttrace.c: Include terminal.h.
1914         (inf_ttrace_follow_fork): Copy the parent's terminal info to the
1915         child.
1916
1917 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
1918
1919         * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
1920         (update_global_location_list): Use gdbarch_has_global_breakpoints
1921         instead of gdbarch_has_global_solist and
1922         target_supports_multi_process.
1923         * dicos-tdep.c (dicos_init_abi): Set
1924         gdbarch_has_global_breakpoints.
1925         * gdbarch.sh (has_global_solist): Update comment.
1926         (has_global_breakpoints): New.
1927         * remote.c (remote_start_remote): Use
1928         gdbarch_has_global_breakpoints instead of
1929         gdbarch_has_global_solist.
1930         * target.c (target_detach): Use gdbarch_has_global_breakpoints
1931         instead of gdbarch_has_global_solist.
1932         * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
1933         of target_supports_multi_process.
1934
1935 2009-05-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
1936
1937         * objc-lang.c (find_methods): Plug a small memory leak.
1938
1939 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1940
1941         * solib-svr4.c: Include observer.h.
1942         (debug_base, debug_loader_offset_p, debug_loader_offset)
1943         (debug_loader_name, main_lm_addr): Move these globals...
1944         (struct svr4_info): ... into this new structure.
1945         (svr4_info_p): New typedef.
1946         (svr4_info): New global.
1947         (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
1948         functions.
1949         (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
1950         (solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
1951         per-inferior svr4.
1952         (open_symbol_file_object): Adjust to per-inferior svr4.
1953         (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
1954         Ditto.
1955         (enable_break): Add svr4_info argument.  Adjust to per-inferior
1956         svr4.
1957         (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
1958         Adjust to per-inferior svr4.
1959         (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
1960         observer.
1961
1962 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1963
1964         * linux-nat.h (linux_proc_get_tgid): Declare.
1965         * linux-nat.c (linux_proc_get_tgid): New.
1966         * linux-thread-db.c (struct thread_db_info): New field
1967         `need_stale_parent_threads_check'.
1968         (add_thread_db_info): Set it.
1969         (find_new_threads_callback): Ignore stale fork parent threads.
1970         (thread_db_resume): New.
1971         (init_thread_db_ops): Install thread_db_resume.
1972
1973 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1974
1975         * fork-child.c (fork_inferior): Only reset the thread list if this
1976         is the first inferior.
1977         (startup_inferior): If the target support multi-process, tell it
1978         to resume only the new process.
1979         * linux-nat.c (num_lwps): Delete global.
1980         (purge_lwp_list): New function.
1981         (num_lwps): New function.
1982         (add_lwp, delete_lwp): Adjust.
1983         (ptid_match): New.
1984         (iterate_over_lwps): Add filter argument.  Handle it.
1985         (linux_nat_attach): Remove FIXME note.
1986         (linux_nat_detach): Adjust to iterate over threads of the inferior
1987         we're detaching from.  Adjust to num_lwps being a function.  Don't
1988         assume the head of the lwp list is the main thread of the process
1989         we're detaching from.  Don't destroy the LWP list.
1990         (resume_callback): Add debug output.
1991         (linux_nat_resume): Handle resuming a single inferior.  Allow a
1992         wildcard resume in non-stop mode.
1993         (linux_handle_extended_wait): Don't assume inferior_ptid is the
1994         correct inferior of the parent LWP.
1995         (status_callback): Also check lp->waitstatus.
1996         (select_event_lwp): Add new filter parameter.  Handle it.
1997         (linux_nat_filter_event): Adjust to num_lwps being a function.
1998         (linux_nat_wait_1): When adding the first lwp of the inferior, use
1999         an is_lwp check instead of checking for the number of lwps.
2000         (linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
2001         pending process exit statuses.
2002         (linux_nat_mourn_inferior): Don't destroy all the LWP info.
2003         Instead delete LWPs of the inferior that we're mourning.  Don't
2004         unregister from the event loop here.
2005         (linux_nat_pid_to_str): Use `num_lwps'.
2006         (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
2007         single inferior.
2008         (linux_nat_is_async_p): Check if async was masked out.
2009         (linux_multi_process): New global.
2010         (linux_nat_supports_multi_process): New.
2011         (linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
2012         caller.
2013         (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
2014         LWP filtering.
2015         (linux_nat_close): New.
2016         (linux_nat_add_target): Register linux_nat_close and
2017         linux_nat_supports_multi_process.
2018         * linux-nat.h (iterate_over_lwps): Add filter argument.
2019         * linux-thread-db.c (thread_db_handle): Delete.
2020         (proc_handle, thread_agent, td_init_p, td_ta_new_p)
2021         (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
2022         (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
2023         (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
2024         (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
2025         longer globals, moved to...
2026         (struct thread_db_info): ... this new structure.
2027         (thread_db_list): New.
2028         (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
2029         New.
2030         (have_threads_callback): Filter out threads of all inferiors but
2031         the one specified by the ARGS argument.
2032         (have_threads): Add ptid argument specifying the inferior we're
2033         interested in.  Handle it.
2034         (struct thread_get_info_inout): New.
2035         (thread_get_info_callback, thread_from_lwp): Adjust to use it.
2036         (thread_db_attach_lwp): Check that inferior of the passed in
2037         thread is using thread-db.  Adjust.
2038         (enable_thread_event): Remove thread_agent parameter.  Instead,
2039         get it from the per-inferior thread-db info.
2040         (dladdr_to_soname): Move higher up.
2041         (enable_thread_event_reporting): Adjust to use per-inferior
2042         thread-db info.
2043         (try_thread_db_load_1): Replace `handle' parameter by a
2044         thread_db_info parameter.  Adjust to use per-inferior thread-db
2045         info.
2046         (try_thread_db_load): Adjust to use per-inferior thread-db info.
2047         (thread_db_load, disable_thread_event_reporting): Ditto.
2048         (check_for_thread_db): Remove conditional reporting of which
2049         libthread_db is in use.
2050         (thread_db_new_objfile): Add comment about inferior_ptid.
2051         (attach_thread): Adjust to use per-inferior thread-db info.
2052         (thread_db_detach): Adjust to use per-inferior thread-db info.
2053         Remove thread event breakpoints of the current inferior.  Only
2054         unpush the thread-db target if there are no more processes using
2055         it.
2056         (check_event): Adjust to use per-inferior thread-db info.
2057         (thread_db_wait): Adjust to use per-inferior thread-db info.  Only
2058         unpush the thread-db target if there are no more processes using
2059         it.
2060         (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
2061         info.  Mark breakpoints of the current inferior out before
2062         deleting them.  Only unpush the thread-db target if there are no
2063         more processes using it.
2064         (find_new_threads_callback): Adjust to use per-inferior thread_db
2065         info.
2066         (thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
2067         use per-inferior thread-db info.
2068         (thread_db_find_new_threads): Adjust to use per-inferior thread-db
2069         info.
2070         (thread_db_get_thread_local_address): Adjust.
2071         (thread_db_get_ada_task_ptid): Adjust.
2072         * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
2073         if there no more processes left to debug.
2074         * thread.c (set_running, set_executing): Handle resuming all
2075         threads of a single inferior.
2076         * mi/mi-interp.c (mi_output_running_pid): New.
2077         (mi_inferior_count): New.
2078         (mi_on_resume): For backwards compatibility, if resuming all
2079         threads of an inferior, and there is only one inferior, output
2080         "all".
2081
2082 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
2083
2084         * ada-lang.c (ada_find_any_type): Move check for primitive types ...
2085         (to_fixed_range_type): ... to here.
2086
2087 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
2088
2089         * ada-lang.c (desc_data_type): Remove, replace by ...
2090         (desc_data_target_type): ... this.
2091         (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
2092         (ada_is_array_descriptor_type): Likewise.
2093         (ada_type_of_array): Likewise.
2094         (ada_coerce_to_simple_array_type): Likewise.
2095         (ada_array_element_type): Likewise.
2096
2097 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
2098
2099         * ada-valprint.c (ada_val_print_1): Use val_print_string to print
2100         result of ada_vax_float_print_function inferior call.
2101
2102 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
2103
2104         * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
2105         avoid creating a dummy value.
2106
2107 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
2108
2109         * p-valprint.c (pascal_val_print): Use extract_typed_address
2110         to extract reference value.
2111
2112 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
2113
2114         * doublest.c (NAN): Remove unused define.
2115         (extract_floating_by_length, deprecated_extract_floating): Remove.
2116         (store_floating_by_length, deprecated_store_floating): Remove.
2117         (extract_typed_floating): Do not call extract_floating_by_length.
2118         (store_typed_floating): Do not call store_floating_by_length.
2119         (convert_typed_floating): Remove redundant assertions.
2120         * doublest.h (deprecated_extract_floating): Remove.
2121         (deprecated_store_floating): Remove.
2122         * sh64-tdep.c (sh64_register_convert_to_raw): Call
2123         extract_typed_floating instead of deprecated_extract_floating.
2124
2125 2009-05-18  Jon Beniston <jon@beniston.com>
2126         
2127         * MAINTAINERS: Add lm32 target.        
2128         * Makefile.in: Add lm32 dependencies.        
2129         * NEWS: Indicate lm32 is a new target.
2130         * configure.tgt: Add lm32 targets.
2131         * lm32-tdep.c: New file.
2132
2133 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
2134
2135         * corelow.c (core_open): Flush the register cache before doing
2136         anything with registers.
2137
2138 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
2139
2140         * inflow.h (our_process_group): Remove declaration.
2141         (inferior_process_group): Delete global variable declaration.
2142         (inferior_process_group): New function declaration.
2143         * inflow.c: Include observer.h.
2144         (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
2145         Delete.
2146         (struct terminal_info): New struct.
2147         (our_terminal_info): New global.
2148         (inferior_process_group): New function.
2149         (inferior_thisrun_terminal): Extend description comment.
2150         (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
2151         instead of globals.
2152         (terminal_init_inferior_with_pgrp): Adjust to per-inferior
2153         terminal settings.
2154         (terminal_inferior): Ditto.
2155         (terminal_ours_1): Ditto.
2156         (inflow_new_inferior, inflow_inferior_exit): New functions.
2157         (child_terminal_info): Adjust to per-inferior terminal settings.
2158         (osig_set): New global.
2159         (set_sigint_trap): Adjust to per-inferior terminal settings.  Set
2160         or clear `osig_set' accordingly.
2161         (clear_sigint_trap): Check `osig_set' to decide wheater to restore
2162         SIGINT handler, instead of checking the current inferior (which
2163         may be none).
2164         (_initialize_inflow): Attach inflow_new_inferior and
2165         inflow_inferior_exit to the "new_inferior" and "inferior_exit"
2166         notifications, respectively.
2167         * inferior.h (struct terminal_info): Forward declare.
2168         (struct inferior): Add `terminal_info' field.
2169         * inferior.c (delete_inferior_1): Notify the inferior_exit
2170         observers before removing the inferior from the lists and deleting
2171         it.
2172         * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
2173         a function instead of a variable.  Adjust.
2174         * procfs.c (procfs_stop): Ditto.
2175
2176 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
2177
2178         * infrun.c (handle_inferior_event): When handling a
2179         TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
2180         immediatelly.
2181         * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
2182         from the child if vforking.
2183         * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
2184         breakpoints from the child here.
2185
2186 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
2187
2188         * infrun.c (pending_follow): Remove execd_pathname member.
2189         (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
2190         (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
2191         event, don't copy `execd_pathname' to pending_follow, use the
2192         event copy instead.  Release `execd_pathname' once done with
2193         handling the event.
2194
2195         * infrun.c (pending_follow): Remove mention of exec events.
2196
2197 2009-05-17  Hui Zhu  <teawater@gmail.com>
2198
2199         * i386-tdep.c (i386_process_record): Make it extern.
2200         (i386_gdbarch_init): Don't call set_gdbarch_process_record
2201         here.
2202         * i386-tdep.h (i386_process_record): Declare.
2203         * i386-linux-tdep.c (i386_linux_init_abi): Call
2204         set_gdbarch_process_record.
2205
2206 2009-05-17  Vladimir Prus  <vladimir@codesourcery.com>
2207
2208         Always report varobj as changed when in_scope attribute changes.
2209
2210         * varobj.c (install_new_value): If non-NULL-ness of value
2211         changed, return 1.
2212
2213 2009-05-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
2214         
2215         * NEWS: Mention set/show libthread-db-search-path.
2216         * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
2217         (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
2218         * linux-thread-db.c (libthread_db_search_path): New setting.
2219         (thread_db_handle): New variable (replaces using_thread_db).
2220         (try_thread_db_load_1): New function.
2221         (try_thread_db_load, thread_db_load_search): Likewise.
2222         (dladdr_to_soname): Likewise.
2223         (thread_db_load): Iterate over possibly multiple libthread_db's.
2224         (check_for_thread_db): Attempt to load new libthread_db.
2225         (thread_db_detach, thread_db_wait): Unload libthread_db.
2226         (thread_db_mourn_inferior): Likewise.
2227         (_initialize_thread_db): Add new libthread-db-search-path option.
2228         Defer loading of libthread_db to check_for_thread_db.
2229         * solib.c (libpthread_name_p): New function.
2230         (libpthread_solib_p): Call it.
2231         * solib.h (libpthread_name_p): New prototype.
2232         
2233 2009-05-15  Pierre Muller  <muller@ics.u-strasbg.fr>
2234
2235         * MAINTAINERS: Update my email address.
2236         
2237 2009-05-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
2238
2239         * breakpoint.h: Add breakpoint_re_set_objfile prototype.
2240         * breakpoint.c (create_overlay_event_breakpoint): Renamed
2241         from create_overlay_event_breakpoint_1, old
2242         create_overlay_event_breakpoint deleted.
2243         (breakpoint_re_set_objfile): Don't rescan all objfiles
2244         unnecessarily.
2245         (breakpoint_re_set): New function.
2246         * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
2247         instead of breakpoint_re_set.
2248         * objfiles.c (objfile_relocate): Likewise.
2249         
2250 2009-05-14  Joel Brobecker  <brobecker@adacore.com>
2251
2252         * gdbarch.sh: Add comment documenting the target_gdbarch global.
2253         gdbarch.h does NOT need to be regenerated as the corresponding
2254         change has already been made in a previous commit.
2255
2256 2009-05-14  Pierre Muller  <muller@ics.u-strasbg.fr>
2257
2258         Remove all i386 debug register low level macros in config nm files.
2259         (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
2260         (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
2261         (I386_USE_GENERIC_WATCHPOIINTS): Remove.
2262
2263         * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
2264         (struct i386_dr_low_type): New type.
2265         (i386_dr_low): New global variable.
2266         * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
2267         (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
2268         i386_dr_low struct variable fields.
2269         (i386_remove_aligned_watchpoint): Likewise.
2270         (i386_stopped_data_address): Likewise.
2271         (i386_stopped_by_hwbp): Likewise.
2272         (show_debug_regs_command_added): New static variable.
2273         (add_show_debug_regs_command): New static function.
2274         (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
2275         (i386_set_debug_register_length): New function.
2276         (_initialize_i386_nat): Delete.
2277         
2278         * amd64-linux-nat.c: Include "i386-nat.h".
2279         (amd64_linux_dr_set_control):  Change to static.
2280         (amd64_linux_dr_get_status): Change to static.
2281         (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
2282         (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
2283         
2284         * go32-nat.c: Include "i386-nat.h".
2285         (go32_set_addr): Change to static.
2286         (go32_set_dr7): Change to static. Change arg type to unisgned long.
2287         (go32_get_dr6): Change to static. Change return type to unisnged long.
2288         (init_go32_ops):  Set i386_dr_low variable fields.
2289         * i386-linux-nat.c: Include "i386-nat.h".
2290         (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
2291         (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
2292         (_initialize_i386_linux_nat):  Set i386_dr_low variable fields.
2293         * i386bsd-nat.h: Declare functions used for
2294         i386_dr_low fields in i386fbsd-nat.c.
2295         * i386fbsd-nat.c: Include "i386-nat.h".
2296         (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
2297         * windows-nat.c: Include "i386-nat.h".
2298         (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
2299         Change to static.
2300         (cygwin_get_dr6): Change return type to unisnged long.
2301         (cygwin_set_dr7): Change arg type to unisgned long.
2302         (init_windows_ops): Set i386_dr_low function fields.
2303
2304         * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call 
2305         i386_set_debug_register_length.
2306         * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
2307
2308         * config/i386/nm-cygwin.h: Remove all I386_* macros.
2309         * config/i386/nm-cygwin64.h: Likewise.
2310         * config/i386/nm-fbsd.h: Likewise.
2311         * config/i386/nm-linux.h: Likewise.
2312         * config/i386/nm-i386.h: Remove completely.
2313         * config/i386/nm-go32.h: Remove completely.
2314         * config/i386/nm-linux64.h: Remove completely.
2315         * config/i386/go32.mh (NAT_FILE): Remove entry.
2316         * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
2317
2318 2009-05-14  Jon Beniston  <jon@beniston.com>
2319
2320         * MAINTAINERS: Add Jon Beniston to write after approval list.
2321
2322 2009-05-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
2323
2324         * objc-lang.c (objc_objfile_data): New variable.
2325         (find_methods): Skip objfiles without Obj-C methods.
2326         (_initialize_objc_lang): New function.
2327
2328 2009-05-13  Joel Brobecker  <brobecker@adacore.com>
2329
2330         * c-lang.c (print_wchar): Remove unnecessary cast.
2331
2332 2009-05-12  Jim Blandy  <jimb@red-bean.com>
2333
2334         * MAINTAINERS: Remove self as m32c target maintainer.
2335
2336 2009-05-12  Pedro Alves  <pedro@codesourcery.com>
2337
2338         * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
2339         * command.h (deprecated_add_set_cmd): Delete declaration.
2340         * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
2341         'set debug gnu-nat' and 'show debug gnu-nat'.
2342         * i386-nat.c (_initialize_i386_nat): Replace 'maint
2343         show-debug-registers' with 'maint set show-debug-registers' and
2344         'maint show show-debug-registers'.
2345         * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
2346         show-debug-registers' with 'maint set show-debug-registers' and
2347         'maint show show-debug-registers'.
2348
2349 2009-05-12  Joel Brobecker <brobecker@adacore.com>
2350
2351         * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
2352         pushing it on the output obstack.
2353
2354 2009-05-11  Joel Brobecker <brobecker@adacore.com>
2355
2356         Fix internal error on breaking at a multi-locations caller source line.
2357         * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
2358         command with no parameters.
2359
2360 2009-05-11  Pedro Alves  <pedro@codesourcery.com>
2361
2362         * linux-nat.c (enum sigchld_state): Delete.
2363         (linux_nat_async_events_state): Delete.
2364         (struct waitpid_result): Delete.
2365         (waitpid_queue): Delete.
2366         (queued_waitpid_1): Delete.
2367         (async_file_flush): New.
2368         (queued_waitpid, push_waitpid): Delete.
2369         (async_file_mark): New.
2370         (drain_queued_events): Delete.
2371         (my_waitpid): Remove locally queued events handling.
2372         (linux_test_for_tracefork): Upjust.
2373         (linux_child_follow_fork): Ditto.
2374         (sync_sigchld_action): Delete.
2375         (blocked_mask): Reinstate.
2376         (async_sigchld_action): Rename to...
2377         (sigchld_action): ... this.
2378         (block_child_signals): New.
2379         (restore_child_signals_mask): New.
2380         (lin_lwp_attach_lwp): Adjust.
2381         (linux_nat_create_inferior): Ditto.
2382         (linux_nat_attach): Also use lp->status in async mode.
2383         (get_pending_status): Don't use queued_waitpid.
2384         (linux_nat_detach): Don't drain locally queued events.
2385         (linux_nat_resume): Allow pending wait statuses stored lp->status
2386         in async mode.  If returning early due to a pending event,
2387         re-register the event source.
2388         (stop_wait_callback): Allow pending wait statuses stored
2389         lp->status in async mode.
2390         (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
2391         (linux_nat_wait): Rename to ...
2392         (linux_nat_wait_1): ... this.  Allow pending wait statuses stored
2393         lp->status in async mode.  Always add WNOHANG to the waitpid
2394         options in async mode.
2395         (linux_nat_wait): New.
2396         (kill_callback): Don't drain locally queued events.
2397         (sigchld_handler): Rewrite.
2398         (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
2399         refer to "set target-async".
2400         (linux_nat_async_mask): If in non-stop, and re-enabling async
2401         mode, re-register the target event source in the event loop.
2402         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
2403         (get_pending_events, async_sigchld_handler)
2404         (linux_nat_async_events): Delete.
2405         (handle_target_event): New.
2406         (linux_nat_async_file_handler): Delete.
2407         (linux_async_pipe): New.
2408         (linux_nat_async): Only re-register in the event loop if not
2409         registered yet.  Always notify the event-loop once if enabling the
2410         event source.
2411         (linux_nat_stop_lwp): Rewrite to handle pending events stored in
2412         lp->status, not in the locally queued event list.
2413         (linux_nat_stop): Don't mask out async event handling.
2414         (linux_nat_setup_async): Delete.
2415         (_initialize_linux_nat): Adjust.
2416         (lin_thread_get_thread_signals): blocked_mask is global again.
2417         Adjust.
2418
2419 2009-05-11  Pierre Muller  <muller@ics.u-strasbg.fr>
2420
2421         Unify target macros.
2422
2423         * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
2424         (target_stoppped_by_watchpoint): New macro.
2425         (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
2426         (target_have_steppable_watchpoint): New macro.
2427         (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
2428         (target_have_continuable_watchpoint): New macro.
2429         (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
2430         (target_can_use_hardware_watchpoint): New macro.
2431         (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
2432         (target_region_ok_for_hw_watchpoint): New macro.
2433
2434         * breakpoint.c (update_watchpoint): Use new macros.
2435         (bpstat_alloc): Likewise.
2436         (create_breakpoint): Likewise.
2437         (watch_command_1): Likewise.
2438         (can_use_hardware_watchpoint): Likewise.
2439         (do_enable_breakpoint): Likewise.
2440         * infrun.c (handle_inferior_event): Adapt to new macros.
2441         * mips-tdep.c (mips_gdbarch_init): Update comments.
2442         * procfs.c (procfs_set_watchpoint): Update comment.
2443         (procfs_insert_watchpoint): Adapt to new macros.
2444         * remote-m32r-sdi.c (m32r_stop):
2445         * remote-mips.c (mips_remove_breakpoint):
2446         * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
2447         (debug_to_stopped_by_watchpoint): Likewise.
2448
2449
2450 2009-05-10  Pierre Muller  <muller@ics.u-strasbg.fr>
2451
2452         * src/gdb/target.h: Remove all tests for already defined
2453         macros. All macros defined here should not be set in config
2454         headers anymore.
2455
2456 2009-05-08  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
2457
2458         * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
2459         (have_ptrace_getsetfpregs): Likewise.
2460         fetch_all_gp_regs): New function.
2461         (fetch_gp_regs): New function.
2462         (fetch_all_fp_regs): Likewise.
2463         (fetch_fp_regs): New function.
2464         (fetch_ppc_registers): Using the new methods to fetch general-
2465         purpose and floating-pointer registers.
2466         (store_all_gp_regs): New function.
2467         (store_gp_regs): Likewise.
2468         (store_all_fp_regs): New function.
2469         (store_fp_regs): Likewise.
2470         (store_ppc_registers): Using the new methods to store general-
2471         purpose and floating-pointer registers.
2472
2473 2009-05-08  Doug Evans  <dje@google.com>
2474
2475         * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
2476
2477 2009-05-07  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
2478
2479         * MAINTAINERS (Write After Approval): Add self.
2480
2481 2009-05-07  Joel Brobecker  <brobecker@adacore.com>
2482
2483         * gdbarch.h (target_gdbarch): Add comment documenting this global.
2484
2485 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
2486
2487         * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
2488         system iconv.
2489         * configure: Regenerate.
2490
2491 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
2492
2493         * utils.c: Add include of gdb_usleep.h.
2494         (defaulted_query): Detect false EOF conditions that happen
2495         on terminals opened with the O_NONBLOCK flag when there is
2496         nothing to read.
2497
2498 2009-05-06  Pedro Alves  <pedro@codesourcery.com>
2499
2500         * inferior.c (add_inferior): Move observer_notify_new_inferior
2501         call to ...
2502         (add_inferior_silent): ... here.
2503
2504 2009-05-06  Pierre Muller  <muller@ics.u-strasbg.fr>
2505             Pedro Alves  <pedro@codesourcery.com>
2506
2507         * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
2508         (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
2509         functions.
2510         (procfs_stopped_by_watchpoint): Made static, ptid argument
2511         removed.
2512         (_initialize_procfs): Register new watchpoint related target
2513         functions.
2514         * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
2515         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
2516         (HAVE_CONTINUABLE_WATCHPOINT): Delete.
2517         (target_insert_watchpoint, target_remove_watchpoint): Delete.
2518         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
2519         declarations.
2520         * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
2521         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
2522         (target_insert_watchpoint, target_remove_watchpoint): Delete.
2523         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
2524         declarations.
2525         * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
2526         (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
2527         (target_insert_watchpoint, target_remove_watchpoint): Delete.
2528         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
2529         declarations.
2530
2531 2009-05-06  Hui Zhu  <teawater@gmail.com>
2532
2533         * i386-tdep.c (i386_process_record): Change bzero to memset.
2534
2535 2009-05-06  Hui Zhu  <teawater@gmail.com>
2536
2537         * NEWS: Add item for process record and replay.
2538
2539 2009-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
2540
2541         * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
2542
2543 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
2544
2545         * inferior.h (read_pc, write_pc): Remove.
2546         * regcache.c (read_pc, write_pc): Remove.
2547
2548         * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
2549         of read_pc.
2550         (handle_inferior_event): Use regcache_read_pc instead of read_pc
2551         when determining value of stop_pc.  Replace subsequent uses of
2552         read_pc by inspecting already-retrieved stop_pc value.
2553         (keep_going): Use regcache_read_pc instead of read_pc.
2554
2555         * breakpoint.c (watchpoint_check): Use current frame architecture
2556         and PC instead of current_gdbarch and read_pc ().
2557         * tracepoint.c (set_traceframe_context): Replace PC argument
2558         with FRAME argument.
2559         (trace_start_command, finish_tfind_command): Update calls.
2560         (finish_tfind_command): Compare frame IDs to identify transitions
2561         between frames.
2562         (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
2563         * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
2564         of gdbarch.  Use regcache_read_pc and regcache_write_pc instead
2565         of read_pc and write_pc.
2566         (store_register): Make regcache argument non-const.  Update call
2567         to exec_one_dummy_insn.
2568
2569         * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
2570         * infcmd.c (post_create_inferior): Likewise.
2571         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
2572         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
2573         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
2574         * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
2575         * linux-fork.c (fork_load_infrun_state): Likewise.
2576         * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
2577         * record.c (record_wait): Likewise.
2578         * procfs.c (procfs_wait): Likewise.
2579         * remote-mips.c (common_open, mips_wait): Likewise.
2580         * remote-m32r-sdi.c (m32r_resume): Likewise.
2581
2582         * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
2583         * monitor.c (monitor_create_inferior, monitor_load): Likewise.
2584         * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
2585         * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
2586         * remote-mips.c (mips_create_inferior, mips_load): Likewise.
2587
2588         * solib-darwin.c: Include "regcache.h".
2589         * solib-pa64.c: Include "regcache.h".
2590         * solib-svr4.c: Include "regcache.h.".
2591
2592         * symfile.c: Do not mention read_pc or write_pc in comments.
2593         * dink32-rom.c: Likewise.
2594         * m32r-rom.c: Likewise.
2595         * mips-tdep.c: Likewise.
2596
2597 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
2598
2599         * fork-child.c (startup_inferior): Move setting stop_pc ...
2600         * infcmd.c (post_create_inferior): ... to here.
2601
2602 2009-05-04  Michael Snyder  <msnyder@vmware.com>
2603
2604         * NEWS: Add item for reverse debugging commands.
2605
2606 2009-05-04  Pedro Alves  <pedro@codesourcery.com>
2607
2608         * go32-nat.c (go32_stop): Delete.
2609         (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
2610         (go32_create_inferior): Don't call go32_stop or
2611         go32_kill_inferior.
2612         (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
2613         here.
2614         (init_go32_ops): Don't register go32_stop.
2615
2616 2009-05-02  Eli Zaretskii  <eliz@gnu.org>
2617
2618         * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
2619         sym_name.
2620
2621         * infcall.c (find_function_addr): Avoid compiler warnings for
2622         funaddr.
2623
2624 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
2625
2626         * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
2627         (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
2628
2629 2009-05-01  Doug Evans  <dje@google.com>
2630
2631         * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
2632         to thread_info.
2633
2634 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
2635
2636         * record.c (_initialize_record): Reformat and clarify doc strings
2637         for stop-at-limit and insn-number-max.
2638
2639         * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
2640
2641 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
2642
2643         Make specifiable the make_function_type type memory ownership.
2644         * gdbtypes.c (make_function_type): New parameter `objfile', use it
2645         explicitely instead of TYPE-initialized removed local variable
2646         `objfile'.  Describe `objfile' it in the function comment.
2647         (lookup_function_type): Update make_function_type callers.
2648         * gdbtypes.h (make_function_type): Update the prototype.
2649         * jv-lang.c (java_link_class_type): Update make_function_type callers.
2650         * dwarf2read.c (read_subroutine_type): Likewise.
2651         * stabsread.c (read_type): Likewise.
2652
2653 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
2654
2655         * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
2656         printing a bogus "Thread <main>".
2657         (go32_thread_alive): Don't return 1 for null_ptid.
2658
2659         * i386-tdep.c (i386_go32_init_abi): Override the number of
2660         registers due to non-support of SSE.
2661
2662 2009-04-30  Anthony Green  <green@moxielogic.com>
2663
2664         * configure.tgt: Link the moxie simulator in with gdb.
2665
2666 2009-04-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
2667
2668         * elfread.c (elf_symtab_read): Don't assume .data and .rodata
2669         are present.
2670
2671 2009-04-30  Hui Zhu  <teawater@gmail.com>
2672             Michael Snyder  <msnyder@vmware.com>
2673
2674         I386 Linux process record and replay support.
2675
2676         * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
2677         This struct has the argument for the function
2678         "record_linux_system_call".
2679         (i386_linux_intx80_sysenter_record): New function. Parse the
2680         system call instruction and call function
2681         "record_linux_system_call" to record execute log.
2682         (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
2683         Set "i386_linux_intx80_sysenter_record" to
2684         "i386_intx80_record" and "i386_sysenter_record".
2685
2686 2009-04-30  Hui Zhu  <teawater@gmail.com>
2687             Michael Snyder  <msnyder@vmware.com>
2688
2689         I386 architecture process record and replay support.
2690
2691         * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
2692         PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
2693         instruction set.
2694         (aflag, dflag, override, modrm, mod, reg, rm, ot,
2695         i386_record_pc): New variables. Ditto.
2696         (i386_record_modrm, i386_record_lea_modrm_addr,
2697         i386_record_lea_modrm): New functions. Ditto.
2698         (i386_process_record): New function. Parse the instruction in
2699         address "addr" and record the values of registers and memory
2700         that will be changed by this instruction.
2701         (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
2702         "process_record" interface.
2703         * i386-tdep.h (gdbarch_tdep): New function pointers
2704         "i386_intx80_record" and "i386_sysenter_record" that point to
2705         the function that can record "intx80" and "sysenter" execute
2706         log.
2707
2708 2009-04-30  Hui Zhu  <teawater@gmail.com>
2709             Michael Snyder  <msnyder@vmware.com>
2710
2711         * infrun.c (use_displaced_stepping): Return false if process
2712         record and replay target is used.
2713         (proceed): Call function "record_not_record_set" if pocess
2714         record and replay target is used.
2715
2716 2009-04-30  Hui Zhu  <teawater@gmail.com>
2717             Michael Snyder  <msnyder@vmware.com>
2718
2719         Linux process record and replay support.
2720
2721         * Makefile.in (ALLDEPFILES): Add linux-record.c.
2722         (ALL_TARGET_OBS): Add linux-record.o.
2723         * configure.tgt (x86_64-*-linux*): Add linux-record.o.
2724         (i[34567]86-*-linux*): Add linux-record.o.
2725         * linux-record.c, linux-record.h: New file.
2726
2727 2009-04-30  Hui Zhu  <teawater@gmail.com>
2728             Michael Snyder  <msnyder@vmware.com>
2729
2730         Process record and replay target.
2731
2732         * Makefile.in (SFILES): Add record.c.
2733         (COMMON_OBS): Add record.o.
2734         * record.c, record.h: New file.
2735
2736 2009-04-30  Hui Zhu  <teawater@gmail.com>
2737             Michael Snyder  <msnyder@vmware.com>
2738
2739         * target.h (strata): New stratum "record_stratum".
2740
2741 2009-04-30  Hui Zhu  <teawater@gmail.com>
2742             Michael Snyder  <msnyder@vmware.com>
2743
2744         GDBARCH interface for process record and replay.
2745
2746         * gdbarch.sh (process_record): This interface point to the
2747         function that records the inferior execute log.
2748
2749 2009-04-29  Doug Evans  <dje@google.com>
2750
2751         * i386-nat.c (child_post_startup_inferior): Delete, unused.
2752
2753 2009-04-29  Pedro Alves  <pedro@codesourcery.com>
2754
2755         * breakpoint.c (print_exception_catchpoint): Access `b' directly
2756         instead of `b->loc->owner'.
2757         (print_mention_exception_catchpoint): Ditto.
2758
2759 2009-04-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
2760
2761         * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
2762
2763 2009-04-27  Tom Tromey  <tromey@redhat.com>
2764
2765         * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
2766
2767 2009-04-27  Jerome Guitton  <guitton@adacore.com>
2768
2769         * symtab.c (append_exact_match_to_sals): New function, extracted
2770         from expand_line_sal.
2771         (expand_line_sal): Use append_exact_match_to_sals to append exact
2772         matches. If none found, append all best items.
2773
2774 2009-04-27  Jerome Guitton  <guitton@adacore.com>
2775
2776         * main.c (captured_main): Move gdbinit lookups after gdb_init.
2777
2778 2009-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
2779
2780         PR gdb/9675:
2781         * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
2782         (read_func_scope): Call inherit_abstract_dies.
2783
2784 2009-04-25  Eli Zaretskii  <eliz@gnu.org>
2785
2786         * Makefile.in (ALLDEPFILES): Remove duplicate entries for
2787         sparc-sol2-nat.c and sparc-sol2-tdep.c.
2788
2789         * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
2790
2791 2009-04-24  Pierre Muller  <muller@ics.u-strasbg.fr>
2792
2793         ARI change: Use "/* ARI: rule */" pattern.
2794         * utils.c: Update ARI patterns.
2795         * gdb_dirent.h: Likewise.
2796
2797 2009-04-23  Anthony Green  <green@moxielogic.com>
2798
2799         * MAINTAINERS: Add moxie target.
2800         * configure.tgt: Add moxie-*-elf target.
2801         * moxie-tdep.c: New file.
2802         * moxie-tdep.h: New file.
2803
2804 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
2805
2806         * ada-lang.c: Remove an extra empty line. No code change.
2807
2808 2009-04-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
2809
2810         Fix double free on error inserting the breakpoint instruction.
2811         * breakpoint.c (create_breakpoints): Move the
2812         update_global_location_list call to ...
2813         (break_command_really): ... here together with the second local call
2814         both unified after all the cleanups.
2815
2816 2009-04-23  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
2817             Tom Tromey  <tromey@redhat.com>
2818
2819         * configure, config.in: Regenerate.
2820         * configure.ac: Support for relocatable GDB datadir.  Use
2821         GDB_AC_WITH_DIR.  Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
2822         * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
2823         * top.c (init_main): Add "set data-directory".
2824         * defs.h (gdb_datadir): Declare.
2825         * main.c (gdb_datadir): New global.
2826         (captured_main): Initialize gdb_datadir.  Use relocate_directory.
2827         (relocate_path): New function.
2828         (relocate_directory): Likewise.
2829         (get_init_files): Use relocate_path.
2830         (README): Mention --with-gdb-datadir.
2831
2832 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
2833
2834         * ada-tasks (task_command_1): Call target_find_new_threads.
2835
2836 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
2837
2838         * stack.c (do_gdb_disassembly): Print the exception message if an
2839         error was thrown while trying to perform the disassembly.
2840
2841 2009-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
2842
2843         * varobj.c (free_variable): Replace free_current_contents by xfree.
2844
2845 2009-04-22  Kazu Hirata  <kazu@codesourcery.com>
2846
2847         * arm-linux-nat.c (fetch_register, store_register): Use
2848         ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
2849         * arm-linux-tdep.c (arm_linux_supply_gregset,
2850         arm_linux_collect_gregset): Likewise.
2851         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
2852         * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
2853
2854 2009-04-22  Hui Zhu  <teawater@gmail.com>
2855
2856         * stack.c (_initialize_stack): Set the default of
2857         disassemble-next-line to off.
2858
2859 2009-04-21  Tom Tromey  <tromey@redhat.com>
2860
2861         * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
2862         * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
2863
2864 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
2865
2866         * configure.ac: Add quotes to not lose brackets in help text.
2867         * configure: Rebuild.
2868
2869 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
2870
2871         * configure.ac: Don't postprocess Makefile in config.status.
2872         Substitute GDB_NM_FILE.  Don't substitute nm_h.
2873         * Makefile.in (GDB_NM_FILE): Substitute.
2874         (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
2875         * configure: Regenerate.
2876         * gnulib/Makefile.in: Regenerate.
2877
2878 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
2879
2880         * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
2881         --with-htmldir): New.
2882         * configure: Regenerate.
2883
2884 2009-04-21  Tom Tromey  <tromey@redhat.com>
2885
2886         * configure: Rebuild.
2887         * configure.ac: Use lower case for start of help strings.  Clean
2888         up --with-sysroot help.
2889
2890 2009-04-21  Tom Tromey  <tromey@redhat.com>
2891
2892         * configure: Rebuild.
2893         * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
2894         * configure.ac: Use AC_HELP_STRING.  Use upper case for variables
2895         in help.
2896
2897 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
2898
2899         ARI fix: remove "%p".
2900         * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
2901         (ia64_sigtramp_frame_this_id): Ditto.
2902         (ia64_libunwind_frame_this_id): Ditto.
2903         (ia64_libunwind_sigtramp_frame_this_id): Ditto.
2904         * symmisc.c (maintenance_info_psymtabs): Ditto.
2905
2906 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
2907
2908         * configure.ac (--with-relocated-sources): New.
2909         * configure, config.in: Regenerate.
2910         * source.c (add_substitute_path_rule): Remove static.
2911         * source.h (add_substitute_path_rule): Declare.
2912         * main.c: Include "source.h".
2913         (captured_main): Add substitution rule if RELOC_SRCDIR.
2914
2915 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
2916
2917         * gnu-nat.h (proc_debug): Add missing continuation line in macro.
2918
2919 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
2920
2921         * NEWS: Mention MIPS/Linux hardware watchpoint support.
2922
2923 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
2924
2925         * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
2926         (maint_show_dr, super_close): New variables.
2927         (super_fetch_registers, super_store_registers): Make static.
2928         (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
2929         (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
2930         (pt_watch_style): Define new enum.
2931         (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
2932         Define new structs.
2933         (watch_readback_valid, watch_readback, current_watches, watch_mirror):
2934         New variables.
2935         (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
2936         (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
2937         (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
2938         (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
2939         (type_to_irw, fill_mask, try_one_watch)
2940         (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
2941         (mips_linux_new_thread, populate_regs_from_watches)
2942         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
2943         (mips_linux_close): New functions.
2944         (_initialize_mips_linux_nat): Register watchpoint functions with
2945         the target_ops.  Add show-debug-regs maintenance command.
2946
2947 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
2948
2949         * infrun.c (handle_inferior_event): Move gegisters_changed call down.
2950
2951 2009-04-19  Pedro Alves  <pedro@codesourcery.com>
2952
2953         * NEWS: Mention gdbserver support for x86 Windows CE.
2954
2955 2009-04-19  Eli Zaretskii  <eliz@gnu.org>
2956
2957         * config/djgpp/fnchange.lst: Fix typos.
2958
2959         Set default host and target charsets in the DJGPP port.
2960
2961         * config/djgpp/config.sed (am_cv_langinfo_codeset)
2962         (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
2963         in all configure scripts that define ac_cv_env_CPP_value.
2964
2965         * go32-nat.c (dos_codepage, nl_langinfo): New functions.
2966         Include langinfo.h.
2967
2968         * config/djgpp/nl_types.h: New file.
2969
2970         * config/djgpp/langinfo.h: New file.
2971
2972         * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
2973
2974 2009-04-18  Carlos O'Donell  <carlos@codesourcery.com>
2975
2976         * Makefile.in (MAKEHTML): Set to makeinfo --html.
2977         (MAKEHTMLFLAGS): Set to empty.
2978
2979 2009-04-18  Eli Zaretskii  <eliz@gnu.org>
2980
2981         * NEWS: Mention all new set/show commands added since GDB 6.8 was
2982         released.
2983
2984         * go32-nat.c (go32_sysinfo): Check if the call to
2985         __dpmi_get_capabilities fills the buffer with information, and
2986         don't use the buffer if not.
2987
2988 2009-04-17  Tom Tromey  <tromey@redhat.com>
2989
2990         * charset.c (_initialize_charset): Add special case for "646".
2991
2992 2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>
2993
2994         * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
2995         * configure: Regenerate.
2996         * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
2997         configure substitutions.
2998         (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
2999
3000 2009-04-17  Pierre Muller  <muller@ics.u-strasbg.fr>
3001
3002         ARI fix: Do not use %p, replace by call to host_address_to_string
3003         for host pointers.
3004         * darwin-nat.c (darwin_xfer_partial): Apply change.
3005         * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
3006         * gnu-nat.h (proc_debug): Ditto.
3007         * symmisc.c (maintenance_info_symtabs): Ditto.
3008         (maintenance_info_psymtabs): Ditto.
3009         * windows-nat.c (handle_load_dll): Ditto.
3010         (handle_unload_dll, info_w32_command, handle_exception): Ditto.
3011         * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
3012
3013 2009-04-17  Joseph Myers  <joseph@codesourcery.com>
3014
3015         * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
3016         --enable-64-bit-bfd.
3017         (sparc-*-linux*): Likewise.
3018
3019 2009-04-17  Eli Zaretskii  <eliz@gnu.org>
3020
3021         * go32-nat.c (go32_sysinfo): Update list of Windows versions of
3022         the NT family.
3023
3024 2009-04-16  Pedro Alves  <pedro@codesourcery.com>
3025
3026         * remote.c (remote_query_attached): Fix pasto in packet_ok result
3027         checking.
3028
3029 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
3030
3031         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
3032         Revert the previous change.  Might not be correct, actually.
3033
3034 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
3035
3036         * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
3037         (ada_get_current_task, ada_print_exception_breakpoint_nontask)
3038         (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
3039         Remove declaration. These are non-existent functions.
3040
3041 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
3042
3043         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
3044         Fix a compilation warning on mips-irix due to casting from
3045         a pointer of different size.
3046
3047 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
3048
3049         * ada-lang.c (symtab_for_sym): Delete.
3050         (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
3051
3052 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
3053
3054         * ada-lang.c (extract_string): Delete.
3055         (ada_main_name): Reimplement using target_read_string instead of
3056         extract_string.
3057
3058 2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
3059
3060         * m68klinux-nat.c: Remove obsolete comment.
3061         (fetch_register, store_register): Don't call
3062         gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
3063         which are always nops here.
3064
3065 2009-04-14  Tom Tromey  <tromey@redhat.com>
3066
3067         * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
3068         (c_printstr): Likewise.
3069         * charset.c: Include gdb_wait.h.
3070         (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
3071         (find_charset_names): Use pexecute.  Handle libiconv's output.
3072         Detect errors.
3073         (_initialize_charset): Use xstrdup.
3074         * gdb_wchar.h: Check HAVE_BTOWC.  Split PHONY_ICONV and wchar
3075         cases.
3076         (INTERMEDIATE_ENCODING): New define.
3077         * configure, config.in: Rebuild.
3078         * configure.ac: Check for btowc.
3079
3080 2009-04-15  Tom Tromey  <tromey@redhat.com>
3081
3082         * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
3083
3084 2009-04-15  Eli Zaretskii  <eliz@gnu.org>
3085
3086         * utils.c (parse_escape): Initialize target_char to pacify GCC.
3087
3088 2009-04-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
3089
3090         * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
3091
3092 2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
3093
3094         ARI fix: sprintf rule.
3095         * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
3096         * ada-lang.c (add_angle_brackets): Use xstrprintf.
3097         (ada_decode): Replace sprintf by xsnprintf.
3098         (find_old_style_renaming_symbol): Ditto.
3099         (ada_to_fixed_type_1, ada_enum_name): Ditto.
3100
3101
3102 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
3103
3104         * target.c (target_mourn_inferior): Call bfd_cache_close_all
3105         after having executed the target mourn_inferior routine.
3106
3107 2009-04-14  Eli Zaretskii  <eliz@gnu.org>
3108
3109         * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
3110         undefined.
3111
3112 2009-04-13  David Daney  <ddaney@caviumnetworks.com>
3113
3114         * infrun.c (maybe_software_singlestep): New function.
3115         (resume): Call maybe_software_singlestep.
3116         (handle_inferior_event): Same.
3117
3118 2009-04-13  Tom Tromey  <tromey@redhat.com>
3119
3120         * python/python-frame.c (frapy_richcompare): Return
3121         Py_NotImplemented, not an error.  Handle Py_NE as well.
3122
3123 2009-04-13  Eli Zaretskii  <eliz@gnu.org>
3124
3125         * charset.c (EILSEQ): Define if not defined by system headers.
3126
3127 2009-04-11  Eli Zaretskii  <eliz@gnu.org>
3128
3129         * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
3130         to be consistent with renaming config.intl.in into config_intl.in.
3131
3132         * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
3133         consistent with the change from 2008-11-09.
3134
3135 2009-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
3136
3137         * gdbtypes.c: Remove excessive parentheses at the return keywords.
3138         * varobj.c (varobj_invalidate): Fix indentation.
3139         * varobj.c (varobj_invalidate): Fix formatting text width.
3140
3141 2009-04-08  Vladimir Prus  <vladimir@codesourcery.com>
3142
3143         Implement -exec-jump.
3144
3145         * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
3146         * mi/mi-main.c (mi_cmd_exec_jump): New.
3147         * mi/mi-cmds.c (mi_cmds): Register exec-jump.
3148
3149 2009-04-07  Doug Evans  <dje@google.com>
3150
3151         * symfile.c (symbol_file_clear): Fix indentation.
3152
3153 2009-04-06  Mark Kettenis  <kettenis@gnu.org>
3154
3155         * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
3156
3157 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
3158
3159         * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
3160         (ppc_linux_auxv_parse): New function.
3161         (ppc_linux_read_description): Use ppc_linux_target_wordsize.
3162         (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
3163
3164 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
3165
3166         * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
3167         BFD to contents of SPU name note.
3168         (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
3169         with "from_tty" argument 1 instead of 0.
3170
3171 2009-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
3172
3173         * dwarf2read.c
3174         (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
3175         Create the symbol in local scope.
3176         * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
3177
3178 2009-04-02  Keith Seitz  <keiths@redhat.com>
3179
3180         * stabsread.c (read_member_functions): GCC may emit an extra space
3181         at the end of the names "__base_ctor" and "__base_dtor"; so ignore
3182         whitespace when looking for these functions.
3183
3184 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
3185
3186         Change the default value for "set print frame-arguments" to scalars.
3187
3188         * stack.c (print_frame_arguments): Set initial value to "scalars".
3189
3190 2009-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
3191
3192         * mips-tdep.c (mips_numeric_register_alieses): New definition.
3193         (mips_gdbarch_init): Add user registers from
3194         mips_numeric_register_aliases.
3195
3196 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
3197
3198         * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
3199
3200 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
3201
3202         * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
3203         this is the last one.
3204
3205 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
3206
3207         * remote.c (append_resumption): New.
3208         (remote_vcont_resume): Use it.
3209
3210 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
3211
3212         * windows-nat.c (+windows_get_ada_task_ptid): New function.
3213         (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
3214
3215 2009-03-31  Daniel Jacobowitz  <dan@codesourcery.com>
3216             Keith Seitz  <keiths@redhat.com>
3217             Jan Kratochvil  <jan.kratochvil@redhat.com>
3218
3219         PR gdb/6817
3220         * Makefile.in (dbxread.o): Update.
3221         * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
3222         * dwarf2read.c (GDB_FORM_cached_string): New.
3223         (read_partial_die): Use dwarf2_canonicalize_name.
3224         (dwarf2_linkage_name): Use dwarf2_name.
3225         (dwarf2_canonicalize_name): New.
3226         (dwarf2_name): Use dwarf2_canonicalize_name.
3227         (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
3228         * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
3229         * symtab.c (lookup_symbol_in_language): Canonicalize input before
3230         searching.
3231         * cp-name-parser.y: operator() requires two parameters,
3232         according to libiberty.
3233         * minsyms.c (lookup_minimal_symbol): Canonicalize input
3234         before searching.
3235         * NEWS: Update.
3236
3237 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
3238
3239         Provide support for (Ada) task-specific breakpoints.
3240
3241         * ada-lang.h (ada_get_task_number): Add declaration.
3242         (breakpoint_ada_task_match): Delete declaration.
3243         * ada-tasks.c (ada_get_task_number): Make non-static.
3244         * breakpoint.h (struct breakpoint): Add field "task".
3245         * breakpoint.c (print_one_breakpoint_location): Add handling of
3246         task-specific breakpoints.
3247         (create_breakpoint, create_breakpoints, find_condition_and_thread):
3248         New parameter "task".
3249         (break_command_really): Update calls to find_condition_and_thread
3250         and create_breakpoints.
3251         (breakpoint_re_set_one): Update call to find_condition_and_thread.
3252         Set b->task.
3253
3254 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
3255
3256         * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
3257
3258 2009-03-31  Pedro Alves  <pedro@codesourcery.com>
3259
3260         * remote.c (remote_notice_new_inferior): Use ptid_is_pid.  Check
3261         if the thread's ptid without a thread id field is in the list
3262         before calling thread_change_ptid.
3263         (extended_remote_attach_1): In non-stop mode, do not rely on
3264         querying the current thread, instead, query the thread list, and
3265         select the first thread of the process.
3266         * gdbthread.h (first_thread_of_process): Declare.
3267         * thread.c (first_thread_of_process): Define.
3268
3269 2009-03-30  Stan Shebs  <stan@codesourcery.com>
3270
3271         Make tracepoints into a type of breakpoint.
3272         * breakpoint.h (enum bptype): Add bp_tracepoint.
3273         (struct breakpoint): Add fields step_count, pass_count, actions.
3274         (get_tracepoint, get_tracepoint_by_number): Declare.
3275         (all_tracepoints): Declare.
3276         * breakpoint.c: Include tracepoint.h, readline.h.
3277         (ALL_TRACEPOINTS): Move here from tracepoint.c.
3278         (tracepoint_count): Ditto.
3279         (should_be_inserted): GDB does not insert tracepoints itself.
3280         (print_it_typical): Add tracepoint case.
3281         (bpstat_what): Ditto.
3282         (print_one_breakpoint_location): Ditto, and add printing for
3283         pass count, step count, and action list.
3284         (user_settable_breakpoint): Add tracepoint case.
3285         (allocate_bp_location): Ditto.
3286         (set_breakpoint_location_function): Ditto.
3287         (disable_breakpoints_in_shlibs): Ditto.
3288         (mention): Ditto.
3289         (break_command_really): Add argument traceflag, use to choose
3290         basic breakpoint type.
3291         (break_command_1): Pass extra argument.
3292         (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
3293         (breakpoint_re_set_one): Add tracepoint case.
3294         (disable_command, enable_command): Ditto.
3295         (set_tracepoint_count): Move here from tracepoint.c.
3296         (trace_command): Move here from tracepoint.c and use
3297         break_command_really.
3298         (tracepoints_info): Move here from tracepoint.c and call
3299         breakpoints_info.
3300         (enable_trace_command): Move here from tracepoint.c and call
3301         enable_command.
3302         (disable_trace_command): Move here from tracepoint.c and call
3303         disable_command.
3304         (delete_trace_command): Move here from tracepoint.c and call
3305         delete_breakpoint.
3306         (trace_pass_command): Move here from tracepoint.c.
3307         (get_tracepoint_by_number): Ditto.
3308         (tracepoint_save_command): Ditto.
3309         (get_tracepoint): New function.
3310         (all_tracepoints): New function.
3311         (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
3312         deprecate "enable trace" and "disable trace" commands.
3313         * tracepoint.h (struct tracepoint): Remove.
3314         (tracepoint_chain): Remove decl.
3315         (deprecated_create_tracepoint_hook): Remove decl.
3316         (deprecated_delete_tracepoint_hook): Remove decl.
3317         (deprecated_modify_tracepoint_hook): Remove decl.
3318         (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
3319         (free_actions): Update signature.
3320         (validate_actionline): Update signature.
3321         (end_actions_pseudocommand): Declare.
3322         (while_stepping_pseudocommand): Declare.
3323         * tracepoint.c: Include breakpoint.h.
3324         (tracepoint_chain, tracepoint_count): Remove.
3325         (free_actions, make_cleanup_free_actions): Update signature.
3326         (trace_command, set_raw_tracepoint): Remove.
3327         (trace_mention): Remove.
3328         (tracepoints_info): Remove.
3329         (tracepoint_operation, map_args_over_tracepoints): Remove.
3330         (get_tracepoint_by_number): Remove.
3331         (enable_trace_command, disable_trace_command): Remove.
3332         (delete_trace_command, trace_pass_command): Remove.
3333         (trace_actions_command, read_actions): Update signature.
3334         (validate_actionline): Update signature, use bp loc.
3335         (encode_actions): Ditto.
3336         (download_tracepoint): New function, body of trace_start_command.
3337         (trace_start_command): Call it, use all_tracepoints.
3338         (tracepoint_save_command): Remove.
3339         (tracepoint_dump_command): Use get_tracepoint.
3340         (end_actions_pseudocommand): Make globally visible.
3341         (while_stepping_pseudocommand): Ditto.
3342         (_initialize_tracepoint): Move command definitions to breakpoint.c.
3343
3344 2009-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3345
3346         Expose frames to Python.
3347         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
3348         (SUBDIR_PYTHON_SRCS): Add python-frame.c.
3349         (python-frame.o): New target.
3350         * python/python-frame.c: New file.
3351         * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
3352         gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
3353         gdbpy_initialize_frames): New prototypes.
3354         * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
3355         (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
3356         entries.
3357         * stack.c (find_frame_funname): New function, factored out of
3358         print_frame.
3359         (print_frame): Call find_frame_funname.
3360         * stack.h (find_frame_funname): Add prototype.
3361
3362 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3363
3364         Remove unused value_object attribute `owned_by_gdb'.
3365         * python/python-value.c (value_object): Remove owned_by_gdb
3366         attribute.
3367         (valpy_dealloc): Remove reference to self->owned_by_gdb.
3368         (valpy_new): Likewise.
3369         (value_to_value_object): Likewise.
3370
3371 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3372
3373         Change gdb.Value.address from a method to an attribute.
3374         * python/python-value.c (value_object): Add `address' element.
3375         (valpy_dealloc): Decrement reference to self->address if set.
3376         (valpy_new): Initialize val_obj->address.
3377         (valpy_address): Rename to ...
3378         (valpy_get_address): ... this.  Change signature from method to
3379         attribute.  Update self->address if not set.
3380         (value_to_value_object): Initialize val_obj->address.
3381         (value_object_getset): Add `address' element.
3382         (value_object_methods): Remove `address' element.
3383
3384 2009-03-29  Andreas Schwab  <schwab@linux-m68k.org>
3385
3386         * observer.sh: Set LANG/LC_ALL to C, not c.
3387
3388 2009-03-28  Kevin Buettner  <kevinb@redhat.com>
3389
3390         * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
3391         `char' is unsigned.
3392
3393 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
3394
3395         * remote.c (remote_stop_ns): If multi-process extensions are off,
3396         and GDB is requesting the whole process to stop, sent "vCont;t",
3397         not "vCont;t:-1"
3398
3399 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
3400
3401         * inf-loop.c (inferior_event_handler): Avoid calling is_running on
3402         null inferior_ptid.
3403
3404 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
3405
3406         * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
3407
3408 2009-03-26  Doug Evans  <dje@google.com>
3409
3410         * thread.c (do_restore_current_thread_cleanup): Redo test for
3411         whether to restore old->inferior_ptid.
3412
3413 2009-03-26  Tom Tromey  <tromey@redhat.com>
3414
3415         * breakpoint.c (resolve_sal_pc): Preserve original line number
3416         when skipping prologue.
3417
3418 2009-03-26  Doug Evans  <dje@google.com>
3419
3420         * thread.c (inferior_thread) Remove "extern" in definition.
3421
3422 2009-03-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3423
3424         Add gdb.Value.is_optimized_out attribute.
3425         * python/python-value.c (valpy_get_is_optimized_out): New
3426         function.
3427         (value_object_getset): New variable.
3428         (value_object_type): Initialize tp_getset element.
3429
3430 2009-03-26  Joel Brobecker  <brobecker@adacore.com>
3431
3432         Recognize missing DW_AT_location as <value optimized out>.
3433         * dwarf2read.c
3434         (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
3435         Call add_symbol_to_list.
3436
3437 2009-03-25  Tom Tromey  <tromey@redhat.com>
3438
3439         * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
3440         * stack.c (print_this_frame_argument_p): Use check_typedef.
3441
3442 2009-03-25  Tom Tromey  <tromey@redhat.com>
3443
3444         * configure: Rebuild.
3445         * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
3446         Rearrange flags setting.  Add comments.
3447
3448 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
3449
3450         * config/i386/nm-i386.h: Remove code within
3451         I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
3452         * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
3453         macro.
3454         * config/i386/nm-cygwin64.h: Ditto.
3455         * config/i386/nm-fbsd.h: Ditto.
3456         * config/i386/nm-go32.h: Ditto.
3457         * config/i386/nm-linux.h: Ditto.
3458         * config/i386/nm-linux64.h: Ditto.
3459
3460 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
3461
3462         ARI fix: "xasprintf" rule.
3463         * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
3464
3465 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
3466
3467         * remote.c (remote_start_remote): In non-stop mode, call
3468         init_wait_for_inferior before adding threads and inferiors.
3469
3470 2009-03-25  Joel Brobecker  <brobecker@adacore.com>
3471
3472         * breakpoint.c (breakpoint_thread_match): Split a large condition
3473         into several smaller conditions.  No behavior change.
3474
3475 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
3476
3477         * infrun.c (infrun_thread_thread_exit): New.
3478         (_initialize_infrun): Attach it to the thread_exit observer.
3479         * thread.c (delete_thread_1): Always call the observer, passing it
3480         the silent flag.
3481         * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
3482         SILENT, return immediately.
3483
3484 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
3485
3486         * infrun.c (normal_stop): Use has_stack_frames instead of
3487         target_has_stack.
3488         * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
3489         when there is no thread selected.
3490         (mi_cmd_execute): Don't special case commands that can run without
3491         a valid selected thread.
3492         * top.c (execute_command): Don't special case commands that can
3493         run without a valid selected thread.  Use has_stack_frames.
3494         * infcmd.c (ensure_valid_thread): New.
3495         (continue_1, step_1, jump_command, signal_command): Use it.
3496         (detach_command): Error out if there's no selected thread/inferior.
3497         * thread.c (print_thread_info): Allow having no thread selected.
3498         (switch_to_thread): Don't read the PC if there is no current thread.
3499         (do_restore_current_thread_cleanup): Don't record the current
3500         frame if there is no current thread.
3501         (make_cleanup_restore_current_thread): Don't read frame info if
3502         there is no selected thread.
3503         (_initialize_thread): Don't mark commands as
3504         "no_selected_thread_ok".
3505         * frame.c (get_current_frame): Error out if there is no valid
3506         selected thread.
3507         (has_stack_frames): Return false if there is no valid
3508         selected thread.
3509         * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
3510         "no_selected_thread_ok".
3511         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
3512         (get_cmd_no_selected_thread_ok): Delete.
3513         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
3514         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
3515         Delete declaration.
3516         * stack.c (get_selected_block): Use has_stack_frames.
3517
3518 2009-03-25  Thiago Jung Bauermann  <bauerman@br.ibm.com>
3519
3520         Fix size of FPSCR in Power 7 processors.
3521         * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
3522         (PPC_FEATURE_HAS_DFP): New #define.
3523         (ppc_linux_read_description): Check for DFP feature instead of
3524         ISA 2.05 to decide on size of the FPSCR.
3525
3526 2009-03-25  Kevin Buettner  <kevinb@redhat.com>
3527
3528         * mn10300-tdep.c (trad-frame.h): Don't include.
3529         (prologue-value.h): Include.
3530         (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
3531         (struct mn10300_prologue): Define.
3532         (push_reg, translate_rreg, check_for_saved): New functions.
3533         (mn10300_analyze_prologue): Rewrite, using prologue-value
3534         machinery.  Handle more instructions than before.  Permit
3535         instructions to occur in any order.
3536         (mn10300_skip_prologue): Find the extents of the function
3537         in question; mn10300_analyze_prologue no longer does this.
3538         (mn10300_analyze_frame_prologue): New function.
3539         (mn10300_frame_base): New function.
3540         (mn10300_frame_this_id): Rewrite, no longer using trad-frame
3541         implementation.
3542         (mn10300_frame_prev_register): Likewise.
3543         (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
3544         (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
3545         `this_frame'.
3546         (mn10300_frame_unwind_init): Don't call frame_base_set_default().
3547
3548 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
3549
3550         Fix completer problem for filename completion on the first try.
3551
3552         * gdb/completer.h (gdb_completion_word_break_characters): New function.
3553         * gdb/completer.c: Include gdb_assert.h.
3554         (complete_line_internal_reason): New enum.
3555         (complete_line_internal): Change last argument type to
3556         complete_line_internal_reason.
3557         Modify function to handle the different complete_line_internal_reason
3558         argument values.
3559         (complete_line): Adapt to change in complete_line_internal.
3560         (command_completer): Ditto.
3561         (gdb_completion_word_break_characters): Implement new function.
3562         * top.c (init_main): Set  rl_completion_word_break_hook to
3563         gdb_completion_word_break_characters.
3564
3565
3566 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
3567
3568         ARI fix: "strlen d_name" rule.
3569         * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
3570
3571
3572 2009-03-24  Tom Tromey  <tromey@redhat.com>
3573             Pedro Alves  <pedro@codesourcery.com>
3574
3575         * configure, config.in: Rebuild.
3576         * configure.ac: Check for libiconvlist.
3577         * charset.c: Check HAVE_LIBICONVLIST.
3578         * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
3579         LIBICONV_LIBDIR.  Update CPPFLAGS and LIBS.
3580         * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
3581         Remove.
3582         (INTERNAL_CFLAGS_BASE): Update.
3583         (INTERNAL_LDFLAGS): Update.
3584         (CLIBS): Update.
3585
3586 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
3587
3588         * configure.ac: Initialize the variable $PREFER_CURSES.
3589         * configure: Regenerated.
3590
3591 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
3592
3593         * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
3594         * configure: Regenerated.
3595
3596 2009-03-24  Pierre Muller  <muller@ics.u-strasbg.fr>
3597
3598         ARI fix: "strerror" rule.
3599         * darwin-nat.c (darwin_ptrace): Use safe_strerror.
3600         (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
3601
3602 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3603
3604         * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
3605         before looking up the fields inside our struct type.
3606
3607 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3608
3609         * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
3610         trying to resolve the type qualification.
3611
3612 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3613
3614         * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
3615         we try to apply the attribute on the real type, rather than
3616         its associated typedef.
3617
3618 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3619
3620         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
3621         to make sure we try to get the modulus of the actual type, not the
3622         associated typedef.
3623
3624 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3625
3626         * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
3627         [OP_ATR_LENGTH]: When using the attribute on a type, make sure
3628         to get the real type, not the associated typedef.
3629
3630 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3631
3632         * ada-lang.c (ada_get_field_index): Add handling of the case
3633         when TYPE is a typedef of a struct.
3634
3635 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3636
3637         Add gdb_usleep as a portable version of usleep based on gdb_select.
3638         * gdb_usleep.h, gdb_usleep.c: New files.
3639         * Makefile.in (SFILES): Add gdb_usleep.c.
3640         (HFILES_NO_SRCDIR): Add gdb_usleep.h.
3641         (COMMON_OBS): Add gdb_usleep.o.
3642         * ser-unix.c (hardwire_send_break): Replace call to gdb_select
3643         by call to gdb_usleep.
3644
3645 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
3646
3647         * buildsym.c (end_symtab): If we ignore the subfiles, then
3648         unlink the associated symtabs if they were already allocated.
3649
3650 2009-03-23  Jerome Guitton  <guitton@adacore.com>
3651
3652         Provide a way to force building of GDB with libcurses.
3653         * configure.ac: Add --with-curses.
3654         * configure: Regenerated.
3655
3656 2009-03-23  Tom Tromey  <tromey@redhat.com>
3657
3658         * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
3659         error message.
3660
3661 2009-03-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
3662
3663         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
3664         solib_contains_address_p instead of searching.
3665
3666 2009-03-23  Tom Tromey  <tromey@redhat.com>
3667
3668         * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
3669         (iconv): Make 'inbuf' argument const.
3670         (convert_between_encodings): Use ICONV_CONST.
3671         (wchar_iterate): Likewise.
3672
3673 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
3674
3675         * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
3676         dynamically loaded function.
3677         (LookupPrivilegeValueA): Ditto.
3678         (OpenProcessToken): Ditto.
3679         (AdjustTokenPrivileges): Rename and define placeholder for address of
3680         dynamically loaded function.
3681         (LookupPrivilegeValueA): Ditto.
3682         (OpenProcessToken): Ditto.
3683         (set_process_privilege): Remove check for loaded functions.
3684         (bad_OpenProcessToken): Define.
3685         (_initialize_loadable): Load token functions from advapi here, setting
3686         OpenProcessToken function to a dummy static function which always return
3687         error if OS doesn't support this functionality.
3688
3689 2009-03-22   Nicolas Roche  <roche@adacore.com>
3690              Christopher Faylor <me+cygwin@cgf.cx>
3691
3692         * win32-nat.c (ctrl_c_handler): New function.
3693         (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
3694         is run in a separate console.
3695
3696 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
3697
3698         * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
3699         for dynamically loaded function.
3700         (DebugBreakProcess): Ditto.
3701         (DebugSetProcessKillOnExit): Ditto.
3702         (EnumProcessModules): Ditto.
3703         (GetModuleFileNameExA): Ditto.
3704         (GetModuleInformation): Ditto.
3705         (DebugActiveProcessStop): Rename and define placeholder for address of
3706         dynamically loaded function.
3707         (DebugBreakProcess): Ditto.
3708         (DebugSetProcessKillOnExit): Ditto.
3709         (EnumProcessModules): Ditto.
3710         (GetModuleFileNameExA): Ditto.
3711         (GetModuleInformation): Ditto.
3712         (psapi_loaded): Delete.
3713         (get_module_name): Don't check psapi_loaded, just rely on the fact that
3714         dynamically loaded functions will return failure if they weren't
3715         previously found.
3716         (has_detach_ability): Delete.
3717         (windows_attach): Remove call to has_detach_ability ().  Just rely on
3718         functions being callable.
3719         (bad_DebugActiveProcessStop): Define.
3720         (bad_DebugBreakProcess): Ditto.
3721         (bad_DebugSetProcessKillOnExit): Ditto.
3722         (bad_EnumProcessModules): Ditto.
3723         (bad_GetModuleFileNameExA): Ditto.
3724         (bad_GetModuleInformation): Ditto.
3725         (_initialize_loadable): Rename from _initialize_psapi.  Initialize all
3726         dynamic storage here, setting nonexistent functions to dummy static
3727         functions which always return error.
3728
3729 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
3730
3731         * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
3732         to the about_to_proceed observer notification.
3733         (mi_about_to_proceed): New.
3734         (mi_on_resume): Only output ^running and the prompt here if the
3735         target was proceeded.
3736         * breakpoint.c (breakpoint_proceeded): New static.
3737         (breakpoint_about_to_proceed): New.
3738         (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
3739         the about_to_proceed observer notification.
3740         * inferior.h (breakpoint_proceeded): Delete declaration.
3741         * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
3742         Notify the about_to_proceed observers.
3743         (struct inferior_status): Delete breakpoint_proceeded member.
3744         (save_inferior_status): Don't save it.
3745         (restore_inferior_status): Don't restore it.
3746         * mi-main.h (mi_proceeded): Declare.
3747         * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
3748         a command.
3749
3750 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
3751
3752         * gdbthread.h (struct thread_info): Add in_infcall member.
3753         * infcall.c (run_inferior_call): Save, set and restore in_infcall.
3754         Remove reverences to suppress_resume_observer.  Refresh
3755         `call_thread' after returning from `proceed'.
3756         * infcmd.c (suppress_resume_observer): Delete.
3757         * inferior.h (suppress_resume_observer): Delete declaration.
3758         * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
3759         inferior function.
3760         * thread.c (set_running): Remove references to
3761         suppress_resume_observer.
3762         * infrun.c (struct inferior_status): Add in_infcall member.
3763         (save_inferior_status): Save it.
3764         (restore_inferior_status): Restore it.
3765
3766 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
3767
3768         * infcall.c (run_inferior_call): Remove references to
3769         suppress_stop_observer.
3770         * infcmd.c (suppress_stop_observer): Delete.
3771         (finish_command_continuation): Remove NOTE.  Don't clear
3772         suppress_stop_observer anymore.
3773         (finish_command_continuation_free_arg): Likewise.
3774         (finish_forward): Remove references to suppress_stop_observer.
3775         Call normal_stop observer if we haven't already.
3776         * inferior.h (suppress_stop_observer): Delete.
3777         * infrun.c (normal_stop): When deciding to suppress the
3778         normal_stop observer, check for proceed_to_finish instead of
3779         suppress_stop_observer.
3780
3781 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
3782
3783         * symfile.c (symfile_relocate_debug_section): Remove check for
3784         SEC_DEBUGGING.
3785
3786 2009-03-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
3787             Jim Blandy  <jimb@red-bean.com>
3788             Thiago Jung Bauermann  <bauerman@br.ibm.com>
3789             Tom Tromey  <tromey@redhat.com>
3790
3791         Miscellaneous fixes to the Python code.
3792         * python/python-cmd.c (cmdpy_init): Accept keyword
3793         arguments.
3794         * python/python-value.c (valpy_string): Accept keyword
3795         arguments.
3796         (valpy_binop): Use `break' to exit from the TRY_CATCH block.
3797         Do not call value_to_value_object on NULL RES_VAL.
3798         (value_object_methods): Change `string' entry to also accept
3799         keyword arguments.
3800         (convert_value_from_python): Return a copy of the value if obj is
3801         a gdb.Value object.
3802         (value_object_methods): Mark the `string' method as accepting
3803         keywords, and show method "prototype" in the doc string.
3804         * python/python.c (get_parameter): Don't return inside a
3805         TRY_CATCH.
3806
3807 2009-03-20  Tom Tromey  <tromey@redhat.com>
3808
3809         Add support for convenience functions in Python.
3810         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
3811         (SUBDIR_PYTHON_SRCS): Add python-function.c.
3812         (python-function.o): New target.
3813         * eval.c: Include "python/python.h" and <ctype.h>.
3814         (evaluate_subexp_standard): Handle values of type
3815         TYPE_CODE_INTERNAL_FUNCTION.
3816         * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
3817         * parse.c (write_exp_string): Remove duplicate word in comment.
3818         * python/python-function.c: New file.
3819         * python/python-internal.h (gdbpy_initialize_functions): Add
3820         prototype.
3821         * python/python.c (_initialize_python): Call
3822         gdbpy_initialize_functions.
3823         * valprint.c (value_check_printable): Handle values of type
3824         TYPE_CODE_INTERNAL_FUNCTION.
3825         * value.c: Include "cli/cli-decode.h".
3826         (internal_function): New struct.
3827         (functionlist, internal_fn_type): New static variables.
3828         (lookup_only_internalvar,
3829         lookup_internalvar): Add const qualifier to name argument.
3830         (create_internalvar): Likewise.  Initialize new field.
3831         (set_internal_var): Fix typo in comment.  Don't allow assignment
3832         to canonical variable.
3833         (value_create_internal_function, value_internal_function_name,
3834         call_internal_function, function_command, function_destroyer,
3835         add_internal_function): New functions.
3836         (_initialize_values): Create `function' placeholder command.
3837         Initialize internal_fn_type.
3838         * value.h (lookup_only_internalvar, create_internalvar,
3839         lookup_internalvar): Add const qualifier to name argument.
3840         (internal_function_fn, add_internal_function, call_internal_function,
3841         value_internal_function_name): Add prototypes.
3842         (struct internalvar) <canonical>: New field.
3843
3844 2009-03-20  Tom Tromey  <tromey@redhat.com>
3845
3846         * c-lang.c (evaluate_subexp_c): Call check_typedef.
3847
3848 2009-03-20  Tom Tromey  <tromey@redhat.com>
3849             Julian Brown  <julian@codesourcery.com>
3850
3851         PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
3852         PR i18n/9401, PR exp/9613:
3853         * NEWS: Update
3854         * value.h (value_typed_string): Declare.
3855         (val_print_string): Update.
3856         * valprint.h (print_char_chars): Update.
3857         * valprint.c (print_char_chars): Add type argument.  Update.
3858         (val_print_string): Likewise.
3859         * valops.c (value_typed_string): New function.
3860         * utils.c (host_char_to_target): New function.
3861         (parse_escape): Use host_char_to_target, host_hex_value.  Update.
3862         Remove '^' case.
3863         (no_control_char_error): Remove.
3864         * typeprint.c (print_type_scalar): Update.
3865         * scm-valprint.c (scm_scmval_print): Update.
3866         * scm-lang.h (scm_printchar, scm_printstr): Update.
3867         * scm-lang.c (scm_printchar): Add type argument.
3868         (scm_printstr): Likewise.
3869         * printcmd.c (print_formatted): Update.
3870         (print_scalar_formatted): Update.
3871         (printf_command) <wide_string_arg, wide_char_arg>: New constants.
3872         Handle '%lc' and '%ls'.
3873         * parser-defs.h (struct typed_stoken): New type.
3874         (struct stoken_vector): Likewise.
3875         (write_exp_string_vector): Declare.
3876         * parse.c (write_exp_string_vector): New function.
3877         * p-valprint.c (pascal_val_print): Update.
3878         * p-lang.h (is_pascal_string_type, pascal_printchar,
3879         pascal_printstr): Update.
3880         * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
3881         Add 'char_type' argument.
3882         (pascal_emit_char): Add type argument.
3883         (pascal_printchar): Likewise.
3884         (pascal_printstr): Likewise.
3885         * objc-lang.c (objc_emit_char): Add type argument.
3886         (objc_printchar): Likewise.
3887         (objc_printstr): Likewise.
3888         * macroexp.c (get_character_constant): Handle unicode characters.
3889         Use c_parse_escape.
3890         (get_string_literal): Handle unicode strings.  Use
3891         c_parse_escape.
3892         * m2-valprint.c (print_unpacked_pointer): Update.
3893         (m2_print_array_contents): Update.
3894         (m2_val_print): Update.
3895         * m2-lang.c (m2_emit_char): Add type argument.
3896         (m2_printchar): Likewise.
3897         (m2_printstr): Likewise.
3898         * language.h (struct language_defn) <la_printchar>: Add type
3899         argument.
3900         <la_printstr, la_emitchar>: Likewise.
3901         (LA_PRINT_CHAR): Likewise.
3902         (LA_PRINT_STRING): Likewise.
3903         (LA_EMIT_CHAR): Likewise.
3904         * language.c (unk_lang_emit_char): Add type argument.
3905         (unk_lang_printchar): Likewise.
3906         (unk_lang_printstr): Likewise.
3907         * jv-valprint.c (java_val_print): Update.
3908         * jv-lang.c (java_emit_char): Add type argument.
3909         * f-valprint.c (f_val_print): Update.
3910         * f-lang.c (f_emit_char): Add type argument.
3911         (f_printchar): Likewise.
3912         (f_printstr): Likewise.
3913         * expprint.c (print_subexp_standard): Update.
3914         * charset.h (target_wide_charset): Declare.
3915         (c_target_char_has_backslash_escape, c_parse_backslash,
3916         host_char_print_literally, host_char_to_target,
3917         target_char_to_host, target_char_to_control_char): Remove.
3918         (enum transliterations): New type.
3919         (convert_between_encodings): Declare.
3920         (HOST_ESCAPE_CHAR): New define.
3921         (host_letter_to_control_character, host_hex_value): Declare.
3922         (enum wchar_iterate_result): New enum.
3923         (struct wchar_iterator): Declare.
3924         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
3925         wchar_push_back): Declare.
3926         * charset-list.h: New file.
3927         * c-valprint.c (textual_name): New function.
3928         (textual_element_type): Handle wide character types.
3929         (c_val_print): Pass original type to textual_element_type.  Handle
3930         wide character types.
3931         (c_value_print): Use textual_element_type.  Pass original type of
3932         value to val_print.
3933         * c-lang.h (enum c_string_type): New type.
3934         (c_printchar, c_printstr): Update.
3935         * c-lang.c (classify_type): New function.
3936         (print_wchar): Likewise.
3937         (c_emit_char): Add type argument.  Handle wide characters.
3938         (c_printchar): Likewise.
3939         (c_printstr): Add type argument.  Handle wide and multibyte
3940         character sets.
3941         (convert_ucn): New function.
3942         (emit_numeric_character): Likewise.
3943         (convert_octal): Likewise.
3944         (convert_hex): Likewise.
3945         (ADVANCE): New macro.
3946         (convert_escape): New function.
3947         (parse_one_string): Likewise.
3948         (evaluate_subexp_c): Likewise.
3949         (exp_descriptor_c): New global.
3950         (c_language_defn): Use exp_descriptor_c.
3951         (cplus_language_defn): Likewise.
3952         (asm_language_defn): Likewise.
3953         (minimal_language_defn): Likewise.
3954         (charset_for_string_type): New function.
3955         * c-exp.y (%union): Add 'svec' and 'tsval'.
3956         (CHAR): New token.
3957         (exp): Add CHAR production.
3958         (string_exp): Rewrite.
3959         (exp) <string_exp>: Rewrite.
3960         (tempbuf): Now global.
3961         (tempbuf_init): New global.
3962         (parse_string_or_char): New function.
3963         (yylex) <tempbuf>: Now global.
3964         <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
3965         Remove.
3966         Handle 'u', 'U', and 'L' prefixes.  Call parse_string_or_char.
3967         (c_parse_escape): New function.
3968         * auxv.c (fprint_target_auxv): Update.
3969         * ada-valprint.c (ada_emit_char): Add type argument.
3970         (ada_printchar): Likewise.
3971         (ada_print_scalar): Update.
3972         (printstr): Add type argument.  Update calls to ada_emit_char.
3973         (ada_printstr): Add type argument.
3974         (ada_val_print_array): Update.
3975         (ada_val_print_1): Likewise.
3976         * ada-lang.c (emit_char): Add type argument.
3977         * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
3978         type arguments.
3979         * gdb_locale.h: Include langinfo.h.
3980         * charset.c (_initialize_charset): Set default host charset from
3981         the locale.  Don't register charsets.  Add target-wide-charset
3982         commands.  Call find_charset_names.
3983         (struct charset, struct translation): Remove.
3984         (GDB_DEFAULT_HOST_CHARSET): Remove.
3985         (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
3986         (target_wide_charset_name): New global.
3987         (show_host_charset_name): Handle "auto".
3988         (show_target_wide_charset_name): New function.
3989         (host_charset_enum, target_charset_enum): Remove.
3990         (charset_enum): New global.
3991         (all_charsets, register_charset, lookup_charset, all_translations,
3992         register_translation, lookup_translation): Remove.
3993         (simple_charset, ascii_print_literally, ascii_to_control): Remove.
3994         (iso_8859_print_literally, iso_8859_to_control,
3995         iso_8859_family_charset): Remove.
3996         (ebcdic_print_literally, ebcdic_to_control,
3997         ebcdic_family_charset): Remove.
3998         (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
3999         register_iconv_charsets): Remove.
4000         (target_wide_charset_be_name, target_wide_charset_le_name): New
4001         globals.
4002         (identity_either_char_to_other): Remove.
4003         (set_be_le_names, validate): New functions.
4004         (backslashable, backslashed, represented): Remove.
4005         (default_c_target_char_has_backslash_escape): Remove.
4006         (default_c_parse_backslash, iconv_convert): Remove.
4007         (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
4008         ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
4009         iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
4010         ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
4011         ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
4012         ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
4013         (table_convert_char, table_translation, simple_table_translation):
4014         Remove.
4015         (current_host_charset, current_target_charset,
4016         c_target_char_has_backslash_escape_func,
4017         c_target_char_has_backslash_escape_baton): Remove.
4018         (c_parse_backslash_func, c_parse_backslash_baton): Remove.
4019         (host_char_to_target_func, host_char_to_target_baton): Remove.
4020         (target_char_to_host_func, target_char_to_host_baton): Remove.
4021         (cached_iconv_host_to_target, cached_iconv_target_to_host):
4022         Remove.
4023         (lookup_charset_or_error, check_valid_host_charset): Remove.
4024         (set_host_and_target_charsets): Remove.
4025         (set_host_charset, set_target_charset): Remove.
4026         (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
4027         (set_target_wide_charset_sfunc): New function.
4028         (show_charset): Print target wide character set.
4029         (host_charset, target_charset): Rewrite.
4030         (target_wide_charset): New function.
4031         (c_target_char_has_backslash_escape): Remove.
4032         (c_parse_backslash): Remove.
4033         (host_letter_to_control_character): New function.
4034         (host_char_print_literally): Remove.
4035         (host_hex_value): New function.
4036         (target_char_to_control_char): Remove.
4037         (cleanup_iconv): New function.
4038         (convert_between_encodings): New function.
4039         (target_char_to_host): Remove.
4040         (struct wchar_iterator): Define.
4041         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
4042         wchar_push_back): New functions.
4043         (do_cleanup_iterator): New function.
4044         (char_ptr): New typedef.
4045         (charsets): New global.
4046         (add_one, find_charset_names): New functions.
4047         (default_charset_names): New global.
4048         (auto_host_charset_name): Likewise.
4049         * aclocal.m4, config.in, configure: Rebuild.
4050         * configure.ac: Call AM_LANGINFO_CODESET.
4051         (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
4052         (AM_ICONV): Invoke earlier.
4053         * acinclude.m4: Include codeset.m4.  Subst LIBICONV_INCLUDE and
4054         LIBICONV_LIBDIR.  Check for libiconv in build tree.
4055         * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
4056         (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
4057         (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
4058         * gdb_obstack.h (obstack_grow_wstr): New define.
4059         * gdb_wchar.h: New file.
4060         * defs.h: Include it.
4061
4062 2009-03-20  Tom Tromey  <tromey@redhat.com>
4063             Jan Kratochvil  <jan.kratochvil@redhat.com>
4064
4065         * dwarf2read.c (process_die): Handle DW_TAG_typedef.
4066         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
4067         typedef.
4068         * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
4069         SYMBOL_TYPE result.
4070         * ada-typeprint.c (print_array_type): Do the NULL check
4071         unconditionally.
4072
4073 2009-03-19  Tom Tromey  <tromey@redhat.com>
4074
4075         * utils.c (do_obstack_free): New function.
4076         (make_cleanup_obstack_free): Likewise.
4077         * defs.h (make_cleanup_obstack_free): Declare.
4078
4079 2009-03-18  Doug Evans  <dje@google.com>
4080
4081         * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
4082         int, not a long long.
4083         (linux_nat_info_proc_cmd): Store pid in long instead of long long.
4084
4085         * expprint.c (dump_raw_expression): Print note if non-NULL.
4086
4087         * printcmd.c (display_uses_solib_p): Redo loop, scan element list
4088         backwards.
4089
4090 2009-03-18  Nathan Sidwell  <nathan@codesourcery.com>
4091
4092         * Makefile.in: Update license to GPLv3.
4093         * ada-exp.y: Update license to GPLv3.
4094         * ada-lex.l: Update license to GPLv3.
4095         * c-exp.y: Update license to GPLv3.
4096         * cp-name-parser.y: Update license to GPLv3.
4097         * darwin-nat-info.c: Update license to GPLv3.
4098         * f-exp.y: Update license to GPLv3.
4099         * gdb_thread_db.h: Update license to GPLv3.
4100         * hppanbsd-nat.c: Update license to GPLv3.
4101         * hppanbsd-tdep.c: Update license to GPLv3.
4102         * hppaobsd-tdep.c: Update license to GPLv3.
4103         * jv-exp.y: Update license to GPLv3.
4104         * m2-exp.y: Update license to GPLv3.
4105         * objc-exp.y: Update license to GPLv3.
4106         * p-exp.y: Update license to GPLv3.
4107         * reply_mig_hack.awk: Update license to GPLv3.
4108         * reverse.c: Update license to GPLv3.
4109         * xtensa-xtregs.c: Update license to GPLv3.
4110
4111 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
4112
4113         * remote.c (remote_close): Don't call generic_mourn_inferior.
4114         (remote_mourn_1): Call generic_mourn_inferior after closing the
4115         target.
4116
4117 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
4118
4119         * remote.c (remote_start_remote): Add missing call to
4120         init_wait_for_inferior in non-stop mode.
4121
4122 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
4123
4124         * breakpoint.c (bpstat_should_step): Only consider software
4125         watchpoints that have a location.
4126
4127 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
4128
4129         Add a target_ops parameter to the to_kill method in struct target_ops.
4130
4131         * target.h (struct target_ops): Add a "target_ops *" parameter to
4132         method to_kill.
4133         (target_kill): Remove macro. Add declaration.
4134         * target.c (debug_to_kill): Delete, no longer necessary.
4135         (target_kill): New function.
4136         (update_current_target):  Stop inheriting the to_kill method.
4137         Do not de_fault it to no_process either.
4138         (setup_target_debug): Do not set current_target.to_kill.
4139         * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
4140         linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
4141         remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
4142         accordingly.
4143
4144 2009-03-17  Doug Evans  <dje@google.com>
4145
4146         * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
4147         glibc 2.3.2 and earlier.
4148
4149 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
4150
4151         * frame.c (get_prev_frame_1): Do not perform the inner_frame
4152         sanity check if this_frame is not NORMAL.
4153         (frame_id_inner): Update the description of this function.
4154
4155 2009-03-17  Hui Zhu  <teawater@gmail.com>
4156
4157         * stack.c: Change the introduce of "disassemble-next-line".
4158
4159 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
4160
4161         * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
4162         declare as extern.
4163
4164 2009-03-17  Hui Zhu  <teawater@gmail.com>
4165
4166         * stack.c: Include valprint.h.
4167         (disassemble_next_line): New enum.
4168         (show_disassemble_next_line): New function.  Show the current
4169         value of disassemble-next-line.
4170         (gdb_disassembly_stub_args): New struct for argument passing
4171         between function do_gdb_disassembly and function
4172         gdb_disassembly_stub.
4173         (gdb_disassembly_stub): New function.  Helper for
4174         gdb_disassembly.
4175         (do_gdb_disassembly): New function.  Use TRY_CATCH to catch
4176         the exception from the gdb_disassembly because it will be
4177         broken by filter sometime.
4178         (print_frame_info): If disassemble-next-line is set to auto
4179         or on and doesn't have the line debug messages for $pc,
4180         output the next instruction.
4181         If disassemble-next-line is set to on and there is line debug
4182         messages, output assembly codes for next line.
4183         (_initialize_stack): Make the "set disassemble-next-line"
4184         command an auto-boolean command.  Change its class to
4185         class_stack.  Place it in the top level set list.  Extend help
4186         to describe the auto mode.
4187
4188 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
4189
4190         * infrun.c (normal_stop): Don't overwrite old_chain.
4191
4192 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
4193
4194         * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
4195         which is undefined, by call to regcache_invalidate, which should
4196         do what the original author wanted to do.
4197
4198 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
4199
4200         * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
4201         (mips_create_inferior): Likewise.
4202
4203 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
4204
4205         * go32-nat.c (go32_create_inferior): Add missing ops parameter.
4206
4207 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
4208
4209         * darwin-nat.c (darwin_resume): Fix a compiler warning when
4210         building on x86_64-darwin.
4211
4212 2009-03-16  Tristan Gingold  <gingold@adacore.com>
4213
4214         * configure.tgt: Add handling for x86_64-darwin.
4215
4216 2009-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
4217
4218         * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
4219
4220 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
4221
4222         * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
4223         Use the ops parameter to get to the target beneath, rather than
4224         using the current_target global.  Using the current_target global
4225         was an unintended accident.
4226
4227 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
4228
4229         Fix an error happening while loading symbols from a core file
4230         (on AIX).
4231
4232         * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
4233         to detect whether we're debugging a core file or not.
4234
4235 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
4236
4237         Modernize the aix-thread later by getting rid of the base_target
4238         global.  This brings back to life the AIX port which was otherwise
4239         crashing all the time.
4240
4241         * aix-thread.c (base_target): Delete.
4242         (pd_enable): Do not set base_target.
4243         (aix_thread_attach): Use find_target_beneath instead of base_target.
4244         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
4245         (aix_thread_fetch_registers, aix_thread_store_registers),
4246         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
4247         (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
4248         (aix_thread_kill): Delete. Does not seem necessary.
4249         (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
4250
4251 2009-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
4252
4253         * stack.c (return_command <retval_exp>): New variables retval_expr
4254         and old_chain.  Inline parse_and_eval to initialize retval_expr.  Check
4255         RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
4256         if RETURN_TYPE is NULL.
4257
4258 2009-03-14  Pedro Alves  <pedro@codesourcery.com>
4259
4260         * remote.c (PACKET_qAttached): New.
4261         (remote_query_attached): New.
4262         (remote_add_inferior): Add new `attached' argument.  Handle it.
4263         (remote_notice_new_inferior, remote_start_remote): Adjust to pass
4264         -1 to remote_add_inferior in new parameter.
4265         (extended_remote_attach_1): Adjust to pass 1 to
4266         remote_add_inferior in the new parameter.
4267         (extended_remote_create_inferior_1): Adjust to pass 0 to
4268         remote_add_inferior in the new parameter.
4269         (_initialize_remote): Add "set/show remote query-attached-packet"
4270         commands.
4271
4272 2009-03-13  Tom Tromey  <tromey@redhat.com>
4273
4274         * symtab.c (lookup_symbol_in_language): Use a cleanup.
4275
4276 2009-03-13  Doug Evans  <dje@google.com>
4277
4278         * exceptions.h: Clean up some comments on catch_exceptions usage.
4279         * exceptions.c: Ditto.  Plus mark catch_errors as superseded by
4280         catch_exceptions.
4281
4282 2009-02-17  Joel Brobecker  <brobecker@adacore.com>
4283
4284         The following patch helps getting rid of a warning inside solib-som.c.
4285
4286         * source.c (source_full_path_of): Constify parameter filename.
4287         * defs.h (source_full_path_of): Update declaration accordingly.
4288
4289 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4290
4291         * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
4292         BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
4293         Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
4294
4295 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4296
4297         * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
4298         promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
4299
4300 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4301
4302         * ada-tasks.c (ada_task_is_alive): Move up and make static.
4303         * ada-lang.h (ada_task_is_alive): Remove declaration.
4304
4305 2009-03-12  Jerome Guitton  <guitton@adacore.com>
4306
4307         * ada-lang.c (ada_delta): Change the type of numerators and
4308         denominators to DOUBLEST, as they may not fit into a long.
4309         (scaling_factor): Ditto.
4310
4311 2009-03-12  Jerome Guitton  <guitton@adacore.com>
4312
4313         * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
4314
4315 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4316
4317         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
4318         types, if we are unable to determine the actual symbol type
4319         from its tag, then use the static approximation instead.
4320
4321 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4322
4323         Fix crash printing packed record with packed array.
4324
4325         * ada-lang.c (ada_modulus_from_name): New function.
4326         (ada_modulus): In the case where the type length is bigger than
4327         the size of the type used to hold the bounds, try determining
4328         the modulus from the type name.
4329         (ada_value_primitive_packed_val): Fix bug in the computation of
4330         ntarg causing an out-of-buffer invalid access.
4331
4332 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4333
4334         Fix segfault when printing short_integer'last.
4335
4336         * ada-lang.c (ada_find_any_type): Search in the primitive types
4337         if a symbol could not be found.
4338
4339 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4340
4341         * ada-tasks.c (task_states,long_task_states): Add new states
4342         Activating and Acceptor_Delay_Sleep.  Update the description
4343         of state Acceptor_Sleep.
4344
4345 2009-03-12  Jonas Maebe <jonas.maebe@elis.ugent.be>  (obvious change)
4346
4347         Fix a build failure on Darwin following some changes in
4348         the profile of some target_ops methods.
4349
4350         * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
4351         where missing.
4352         (darwin_stop_inferior, darwin_detach): Likewise.
4353
4354 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
4355
4356         Include token in ^running notification for CLI commands.
4357
4358         * mi/mi-main.c (mi_execute_command): Set current_token here.
4359         (mi_cmd_execute): Do not set current_token here.
4360
4361 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
4362
4363         Fix MI timings.
4364
4365         * mi/mi-main.c (mi_print_timing_maybe): New.
4366         (captured_mi_execute_command): Simplify. Output timings to
4367         CLI commands, too.
4368         (mi_execute_async_cli_command): Do not print timings.
4369         * mi/mi-main.h (mi_print_timing_maybe): Declare.
4370         * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
4371
4372 2009-03-12  Jerome Guitton  <guitton@adacore.com>
4373
4374         * xcoffread.c (process_linenos): Check if the line in the
4375         include table refers to the main source file and, if so,
4376         add them to the main subfile.
4377
4378 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
4379
4380         Fix a build failure on AIX introduced after a change in the profile
4381         of some of the "methods" in the target_ops structure.
4382         * aix-thread.c: Add missing target_ops parameter throughout.
4383
4384         Implement Ada task switching on AIX.
4385         * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
4386         (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
4387
4388 2009-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
4389
4390         * breakpoint.c (bpstat_check_breakpoint_conditions): Use
4391         value_mark and value_free_to_mark.
4392         * objfiles.c (free_objfile): Call objfile_free_data before
4393         freeing the BFD.
4394
4395 2009-03-10  Hui Zhu  <teawater@gmail.com>
4396
4397         * disasm.c (gdb_disassembly): Remove unused argument
4398         "line_num".
4399         * disasm.h (gdb_disassembly): Ditto.
4400         * cli/cli-cmds.c (print_disassembly): Ditto.
4401         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
4402
4403 2009-03-09  Paul Pluzhnikov  <ppluzhnikov@google.com>
4404
4405         * solib.c (solib_contains_address_p): New function.
4406         (solib_name_from_address): Use it.
4407         * printcmd.c (display_uses_solib_p): Use it.
4408         * solib.h (solib_contains_address_p): Declare it.
4409
4410 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
4411
4412         * varobj.c (free_variable): Call value_free.
4413
4414 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
4415
4416         PR gdb/9873:
4417         * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
4418         Move the variable `macinfo_type' out of the loop.  Create a new
4419         processing pass before the current one to pre-create `current_file'.
4420         New complaint on misplaced zero/non-zero definitions/includes.
4421         Skip first DW_MACINFO_start_file with `at_commandline' set.
4422
4423 2008-03-09  Vladimir Prus  <vladimir@codesourcery.com>
4424
4425        * solib.c (reload_shared_libraries): Give
4426        inferior a chance to reset solib breakpoint.
4427        Reinit frame cache.
4428
4429 2009-03-08  Christopher Faylor  <me+cygwin@cgf.cx>
4430
4431         * windows-nat.c (dr): Redefine to use largest possible integer which
4432         holds a pointer.
4433         (cygwin_set_dr): Avoid coercion.
4434
4435 2009-03-08  Oswald Buddenhagen  <oswald.buddenhagen@trolltech.de>
4436
4437         * windows-nat.c (windows_create_inferior): Implement --tty handling on
4438         non-cygwin.
4439
4440 2009-03-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
4441
4442         Rename solib_address to solib_name_from_address.
4443         * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
4444         (disable_breakpoints_in_unloaded_shlib): Update.
4445         * printcmd.c (display_uses_solib_p): Likewise.
4446         * stack.c (print_frame): Likewise.
4447         * solib.c: Rename.
4448         * solib.h: Rename.
4449
4450 2009-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
4451
4452         * printcmd.c (do_one_display): Reparse exp_string.
4453         (display_uses_solib_p): New function.
4454         (clear_dangling_display_expressions): New function.
4455         (_initialize_printcmd): Add observer.
4456         * solib.c (no_shared_libraries): Swap order of calls to
4457         clear_solib and objfile_purge_solibs.
4458
4459 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
4460
4461         Implement the target-specific part of Ada tasking support
4462         on Tru64.
4463
4464         * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
4465         (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
4466
4467 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
4468
4469         Get rid of the global "base_target" and use "find_target_beneath"
4470         to find the underlying target.
4471         * dec-thread.c (base_target): Delete.
4472         (enable_dec_thread): Remove assignement to base_target.
4473         (dec_thread_detach, dec_thread_wait, dec_thread_wait)
4474         (dec_thread_fetch_registers, dec_thread_store_registers)
4475         (dec_thread_mourn_inferior, dec_thread_pid_to_str):
4476         Update the function profile if necessary.
4477         Use find_target_beneath to call the same method but from
4478         the underlying target, removing the need for "base_target".
4479
4480         * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
4481         Fix a copy/paste error in a few debug traces...
4482
4483         * solib-osf.c (init_so): Use a simpler method for computing
4484         the size of lm_info structure. This also gets rid of warning
4485         emitted by the compiler.
4486
4487 2009-03-05  Pedro Alves  <pedro@codesourcery.com>
4488
4489         * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
4490         duplicates of permanent breakpoints.
4491
4492 2009-03-04  Pedro Alves  <pedro@codesourcery.com>
4493
4494         * inferior.h (notice_new_inferior): Declare.
4495         * infcmd.c (notice_new_inferior): New.
4496         * remote.c (remote_add_inferior, remote_add_thread): New.
4497         (notice_new_inferiors): Rename to...
4498         (remote_notice_new_inferior): ... this.  Add RUNNING argument.
4499         Use remote_add_thread instead of add_thread, passing it the
4500         RUNNING argument.  Add an inferior with remote_add_inferior.  If
4501         we just learned about an inferior, call notice_new_inferior.
4502         (record_currthread): Adjust.
4503         (remote_threads_info): Adjust to use remote_notice_new_inferior.
4504         (remote_start_remote, extended_remote_attach_1): Use
4505         remote_add_inferior.
4506         (process_stop_reply): Adjust.  Call remote_notice_new_inferior
4507         after handling expedited registers and watchpoint state.
4508         (extended_remote_create_inferior_1): Use remote_add_inferior.
4509
4510 2009-03-04  Aleksandar Ristovski  <aristovski@qnx.com>
4511
4512         * infcmd.c (registers_info): Remove register number case.
4513
4514 2009-03-03  Pedro Alves  <pedro@codesourcery.com>
4515
4516         * top.c (quit_target): Check for target_has_execution before
4517         killing or detaching from inferiors.
4518
4519 2009-03-02  Joel Brobecker  <brobecker@adacore.com>
4520
4521         Remove some unused routines.
4522
4523         * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
4524         Delete.
4525         * ada-lang.c (ada_task_list_iterator_ftype)
4526         (iterate_over_live_ada_tasks): Delete.
4527         * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
4528         Delete.
4529
4530 2009-03-01  Doug Evans  <dje@google.com>
4531
4532         * symtab.c: Remove trailing whitespace throughout the file.
4533         (expand_line_sal): Fix some typos and whitespace.
4534
4535         * Makefile.in (clean): rm -f $(DEPDIR)/*.
4536
4537         * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
4538         (init.c): signals/ -> common/.
4539         (signals.o): Update.
4540         * target.h (target_signal_to_string,target_signal_to_string)
4541         (target_signal_from_name,target_signal_to_host_p)
4542         (target_signal_from_host,target_signal_to_host): Move to ...
4543         * common/gdb_signals.h: ... here.  New file.
4544         * common/signals.c: Moved here from signals/signals.c.
4545         #include gdb_signals.h, remove #include of target.h in gdb case.
4546         (target_signal_from_command,default_target_signal_to_host)
4547         (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
4548
4549         Include thread ID in target_wait debugging output.
4550         * infrun.c (print_target_wait_results): New function.
4551         (wait_for_inferior,fetch_inferior_event): Call it.
4552
4553 2009-02-27  Pedro Alves  <pedro@codesourcery.com>
4554
4555         * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
4556         with a ptid_t field.
4557         * linux-thread-db.c (thread_get_info_callback): Build the ptid
4558         using the pid stored in proc_handle.ptid.
4559         (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
4560         (check_for_thread_db, thread_db_detach, check_event)
4561         (thread_db_mourn_inferior, find_new_threads_callback)
4562         (thread_db_find_new_threads_1): Adjust.
4563         * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
4564         (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
4565
4566 2009-02-27  Phil Muldoon  <pmuldoon@redhat.com>
4567
4568         * valprint.c (read_string): Rework clean-up logic. Use
4569         free_current_contents to clean-up buffer.
4570
4571 2009-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4572
4573         * MAINTAINERS: Update e-mail address.
4574
4575 2009-02-26  Phil Muldoon  <pmuldoon@redhat.com>
4576
4577         * python/python-utils.c (python_string_to_unicode): Always return
4578         a new reference.
4579         (python_string_to_target_string): Decrement transient python
4580         instance.
4581         (python_string_to_host_string): Likewise.
4582
4583 2007-02-26  Pedro Alves  <pedro@codesourcery.com>
4584
4585         * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
4586         call to super_fetch_registers.
4587         (mips64_linux_store_registers): Pass `ops' to call to
4588         super_store_registers.
4589
4590 2009-02-25  Doug Evans  <dje@google.com>
4591
4592         * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
4593         error message.
4594
4595         * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
4596         disabled_shlib_breaks, unused.
4597
4598         * printcmd.c (build_address_symbolic): Fix comment.
4599
4600 2009-02-25  Hui Zhu  <teawater@gmail.com>
4601
4602         * cli/cli-script.c (define_command): Add _() to query.
4603         * gnu-nat.c (inf_validate_task_sc): Ditto.
4604         * infcmd.c (kill_if_already_running): Ditto.
4605         (jump_command): Ditto.
4606         (attach_command): Ditto.
4607         * inflow.c (kill_command): Ditto.
4608         * infrun.c (handle_command): Ditto.
4609         * maint.c (maintenance_dump_me): Ditto.
4610         * memattr.c (mem_delete_command): Ditto.
4611         * monitor.c (monitor_interrupt_query): Ditto.
4612         * nto-procfs.c (interrupt_query): Ditto.
4613         * printcmd.c (undisplay_command): Ditto.
4614         * remote-mips.c (mips_kill): Ditto.
4615         * remote.c (interrupt_query): Ditto.
4616         * solib-irix.c (irix_open_symbol_file_object): Ditto.
4617         * solib-osf.c (osf_open_symbol_file_object): Ditto.
4618         * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
4619         * solib-som.c (som_open_symbol_file_object): Ditto.
4620         * solib-svr4.c (open_symbol_file_object): Ditto.
4621         * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
4622         * target.c (kill_or_be_killed): Ditto.
4623         * tracepoint.c (delete_trace_command): Ditto.
4624         * top.c (quit_confirm): Add _() to s that will be used
4625         in query.
4626
4627 2009-02-24  Pierre Muller  <muller@ics.u-strasbg.fr>
4628
4629         Fix windows-nat.c compilation failure.
4630
4631         * windows-nat.c (windows_thread_alive): Fix forward declaration.
4632         (get_windows_debug_event): Add ops parameter to call to windows_resume.
4633
4634 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
4635
4636         * remote-sim.c (gdbsim_resume): Add target_ops* argument.
4637
4638 2009-02-23  Jay Krell  <jay.krell@cornell.edu>  (tiny change)
4639
4640         * symtab.c (find_line_symtab): Initialize exact to avoid
4641         a compiler warning.
4642
4643 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
4644
4645         * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
4646         `ops' to recursive call.
4647
4648 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
4649
4650         * corelow.c (get_core_registers): Adjust.
4651         (core_file_thread_alive): Rename to...
4652         (core_thread_alive): ... this.
4653         (core_pid_to_str): Try gdbarch_core_pid_to_str first.
4654         (init_core_ops): Adjust.
4655         (coreops_suppress_target): Delete.
4656         (_initialize_corelow): Unconditionally add core_ops.
4657         * procfs.c: Include "inf-child.h".
4658         (procfs_ops): Delete.
4659         (init_procfs_ops): Delete.  Reimplement as...
4660         (procfs_target): ... this, inheriting from inf-child.
4661         (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
4662         (procfs_prepare_to_store): Delete.
4663         (procfs_store_registers, procfs_resume): Adjust.
4664         (procfs_open): Delete.
4665         (procfs_suppress_run): Delete.
4666         (procfs_can_run): Delete.
4667         (procfs_mourn_inferior): Adjust.
4668         (procfs_init_inferior): Add target_ops parameter.  Adjust.
4669         (procfs_create_inferior): Don't pass procfs_init_inferior to
4670         fork_inferior.  Instead call it after fork_inferior returns.
4671         (procfs_find_new_threads): Adjust.
4672         (_initialize_procfs): Adjust to use procfs_target instead of
4673         init_procfs_ops.
4674         * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
4675         (lwp_to_thread): Use target_thread_alive.
4676         (sol_thread_open): Delete.
4677         (sol_thread_attach): Delete.
4678         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
4679         (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
4680         to use find_target_beneath.
4681         (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
4682         (sol_thread_xfer_partial): Adjust to use find_target_beneath.
4683         (sol_thread_files_info, sol_thread_kill_inferior): Delete.
4684         (check_for_thread_db): New.
4685         (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
4686         (sol_thread_new_objfile): Call check_for_thread_db.
4687         (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
4688         (sol_thread_can_run): Delete.
4689         (sol_thread_alive): Adjust to use find_target_beneath.
4690         (sol_thread_stop): Delete.
4691         (rw_common): Use target_write_memory or target_read_memory.
4692         (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
4693         (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
4694         (solaris_pid_to_str): Remove check for libthread_db initialization
4695         failing.
4696         (sol_find_new_threads): Remove check for libthread_db
4697         initialization failing, or for an invalid inferior_ptid.  Adjust
4698         to use find_target_beneath.
4699         (sol_core_open, sol_core_close, sol_core_detach,
4700         sol_core_files_info, sol_find_memory_regions,
4701         sol_make_note_section, ignore): Delete.
4702         (init_sol_thread_ops): Make it a thread_stratum target.  Remove
4703         unneeded callback settings.
4704         (init_sol_core_ops): Delete.
4705         (_initialize_sol_thread): No longer call init_sol_core_ops, set
4706         procfs_suppress_run, or hack with core_ops.
4707
4708         * target.h (struct target_ops): Add a target_ops * parameter to
4709         to_resume, to_fetch_registers, to_store_registers, to_thread_alive
4710         and to_find_new_threads.
4711         (target_fetch_registers, target_store_registers)
4712         (target_thread_alive, target_find_new_threads): Redeclare as
4713         function.
4714
4715         * target.c (update_current_target): Do not inherit or de_fault
4716         to_resume, to_fetch_registers, to_store_registers,
4717         to_thread_alive, to_find_new_threads.
4718         (target_resume): Adjust.
4719         (target_thread_alive, target_find_new_threads): New.
4720         (debug_to_resume, debug_to_fetch_registers): Delete.
4721         (target_fetch_registers): New.
4722         (debug_to_store_registers): Delete.
4723         (target_store_registers): New.
4724         (debug_to_thread_alive, debug_to_find_new_threads): Delete.
4725         (setup_target_debug): Adjust.
4726
4727         * gdbcore.h (core_ops): Delete declaration.
4728
4729         * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
4730         inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
4731         i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
4732         hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
4733         nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
4734         alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
4735         bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
4736         hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
4737         ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
4738         m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
4739         mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
4740         ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
4741         shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
4742         vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
4743
4744         * gdbarch.sh (core_pid_to_str): New gdbarch callback.
4745         * gdbarch.h, gdbarch.c: Regenerate.
4746
4747         * sol2-tdep.c: Include "inferior.h".
4748         (sol2_core_pid_to_str): New.
4749         * sol2-tdep.h (sol2_core_pid_to_str): Declare.
4750
4751         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
4752         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
4753         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
4754         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
4755
4756 2009-02-22  Doug Evans  <dje@google.com>
4757
4758         * exec.c (exec_file_attach): Fix comment.
4759
4760 2009-02-22  Pedro Alves  <pedro@codesourcery.com>
4761
4762         Silence a few -Wmissing-prototypes warnings.
4763
4764         PR build/9877:
4765         * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
4766         it static.
4767         * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
4768         * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
4769         * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
4770         (_initialize_amd64nbsd_tdep): ... this.
4771         * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
4772         (_initialize_arm_linux_tdep): Declare.
4773         * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
4774         * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
4775         * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
4776         * avr-tdep.c (avr_return_value): Make it static.
4777         (avr_frame_unwind_cache): Ditto.
4778         * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
4779         (bsd_uthread_solib_loaded): Ditto.
4780         (bsd_uthread_solib_unloaded): Ditto.
4781         (bsd_uthread_target): Ditto.
4782         (_initialize_bsd_uthread): Declare.
4783         * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
4784         (cris_frame_unwind_cache): Ditto.
4785         * frv-tdep.c (frv_return_value): Ditto.
4786         * h8300-tdep.c (h8300_use_struct_convention): Ditto.
4787         (h8300h_use_struct_convention): Ditto.
4788         * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
4789         Ditto.
4790         * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
4791         declarations.
4792         * hppabsd-tdep.c: Include hppabsd-tdep.h.
4793         (hppabsd_find_global_pointer): Make it static.
4794         * hppabsd-tdep.h: New.
4795         * hppanbsd-tdep.c: Include hppabsd-tdep.h.
4796         (hppabsd_init_abi): Remove declaration.
4797         (_initialize_hppabsd_tdep): Remove declaration.
4798         (_initialize_hppanbsd_tdep): Declare.
4799         * hppaobsd-tdep.c: Include hppabsd-tdep.h.
4800         (hppabsd_init_abi): Delete declaration.
4801         (hppaobsd_init_abi): Make it static.
4802         * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
4803         * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
4804         * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
4805         * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
4806         * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
4807         * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
4808         (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
4809         (_initialize_m32c_tdep): Declare.
4810         * m32r-rom.c (_initialize_m32r_rom): Declare.
4811         * m32r-tdep.c (m32r_skip_prologue): Make it static.
4812         (m32r_return_value): Ditto.
4813         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
4814         (m68hc11_return_value): Ditto.
4815         * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
4816         * m88k-tdep.c (m88k_frame_cache): Make it static.
4817         * mep-tdep.c (mep_gdb_print_insn): Ditto.
4818         (mep_return_value): Ditto.
4819         (_initialize_mep_tdep): Declare.
4820         * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
4821         * mips-linux-tdep.c (supply_64bit_reg): Make it static.
4822         (mips_linux_syscall_next_pc): Ditto.
4823         (_initialize_mips_linux_tdep): Declare.
4824         * mips-tdep.c (mips_single_step_through_delay): Make it static.
4825         * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
4826         * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
4827         * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
4828         * mt-tdep.c (_initialize_mt_tdep): Declare.
4829         * nbsd-tdep.c: Include nbsd-tdep.h.
4830         * nto-tdep.c (find_load_phdr): Make it static.
4831         (_initialize_nto_tdep): Declare.
4832         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
4833         static.
4834         (_initialize_ppc_linux_tdep): Declare.
4835         * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
4836         (m32r_insert_watchpoint, m32r_remove_watchpoint)
4837         (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
4838         static.
4839         * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
4840         * rs6000-nat.c: Include xcoffread.h.
4841         (find_toc_address): Don't extern declare get_toc_offset.  Adjust
4842         to call xcoff_get_to_offset.
4843         * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
4844         (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
4845         (rs6000_skip_trampoline_code): Make static.
4846         * s390-tdep.c (s390_regset_from_core_section): Ditto.
4847         * sh-tdep.c (sh_register_reggroup_p): Ditto.
4848         * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
4849         (_initialize_shnbsd_tdep): Declare.
4850         * solib-frv.c (displacement_from_map): Make static.
4851         (_initialize_frv_solib): Declare.
4852         * solib-irix.c (fetch_lm_info): Make static.
4853         (_initialize_irix_solib): Declare.
4854         * solib-som.c: Include solib-som.h.
4855         (som_solib_select): Line break.
4856         * sparc-tdep.c (sparc_regset_from_core_section): Make static.
4857         * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
4858         (_initialize_sparcnbsd_tdep): ... this.
4859         * spu-tdep.c (spu_software_single_step): Make it static.
4860         (_initialize_spu_tdep): Declare.
4861         * vax-tdep.c (vax_frame_cache): Make it static.
4862         * xcoffread.c: Include xcoffread.h.
4863         (get_toc_offset): Rename to ...
4864         (xcoff_get_toc_offset): ... this.
4865         (_initialize_xcoffread): Declare.
4866         * xcoffread.h: New.
4867         * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
4868         * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
4869         static.
4870         (_initialize_xtensa_tdep): Declare.
4871
4872 2008-02-21  Pedro Alves  <pedro@codesorcery.com>
4873
4874         Silence a few -Wmissing-prototypes warnings.
4875
4876         PR build/9877:
4877         * amd64-nat.c: Include "amd64-nat.h".
4878         * fork-child.c (_initialize_fork_child): Ditto.
4879         * gcore.c (_initialize_gcore): Ditto.
4880         * inf-ptrace.c: Include "inf-ptrace.h".
4881         (inf_ptrace_store_registers): Make it static.
4882         * linux-nat.c (linux_nat_terminal_ours): Make it static.
4883         (_initialize_linux_nat): Declare before definition.
4884         * linux-tdep.c: Include "linux-tdep.h".
4885         * linux-thread-db.c (_initialize_thread_db): Declare before
4886         definition.
4887         * proc-service.c (_initialize_proc_service): Ditto.
4888         * remote.c (remote_send_printf): Make it static.
4889         * solib.c: Include "solib.h".
4890         * symfile-mem.c (_initialize_symfile_mem): Declare before
4891         definition.
4892         * ada-lang.c (ada_la_decode, ada_match_name)
4893         (ada_suppress_symbol_printing, ada_is_array_type)
4894         (ada_value_ptr_subscript, ada_array_length)
4895         (ada_to_static_fixed_value): Make them static.
4896         (_initialize_ada_language): Declare before definition.
4897         * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
4898         (ada_task_list_changed, ada_new_objfile_observer): Make them
4899         static.
4900         (_initialize_tasks): Declare before definition.
4901         * addrmap.c (_initialize_addrmap): Declare before definition.
4902         * auxv.c (default_auxv_parse): Make it static.
4903         * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
4904         them static.
4905         * breakpoint.c (remove_sal): Add line break.
4906         (expand_line_sal_maybe): Make it static.
4907         * cp-name-parser.y: Include "cp-support.h".
4908         * cp-valprint.c (cp_find_class_member): Make it static.
4909         * eval.c (value_f90_subarray): Ditto.
4910         * exceptions.c (print_any_exception): Ditto.
4911         * findcmd.c (_initialize_mem_search): Declare before definition.
4912         * frame.c (frame_observer_target_changed): Make it static.
4913         * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
4914         * inf-child.c: Include "inf-child.h".
4915         * inferior.h (valid_inferior_id): Rename to ...
4916         (valid_gdb_inferior_id): ... this.
4917         * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
4918         Make them static.
4919         * jv-lang.c (java_language_arch_info): Make it static.
4920         * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
4921         * osdata.c (info_osdata_command): Make it static.
4922         * regcache.c (regcache_observer_target_changed): Make it static.
4923         * reverse.c (_initialize_reverse): Declare before definition.
4924         * stabsread.c (cleanup_undefined_types_noname)
4925         (cleanup_undefined_types_1): Make them static.
4926         * symfile.c (place_section): Make it static.
4927         * symtab.c (find_pc_sect_psymtab_closer): Make it static.
4928         * target-descriptions.c (_initialize_target_descriptions): Declare
4929         before definition.
4930         * target.c (default_get_ada_task_ptid, find_default_can_async_p)
4931         (find_default_is_async_p, find_default_supports_non_stop): Make
4932         them static.
4933         (target_supports_non_stop): Add prototype.
4934         (dummy_pid_to_str): Make it static.
4935         * utils.c (_initialize_utils): Declare before definition.
4936         * ada-exp.y (_initialize_ada_exp): Declare before definition.
4937         * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
4938         * target.h (struct target_ops): Add a prototype to the
4939         to_can_execute_reverse callback.
4940         * macroscope.c (_initialize_macroscope): Declare before definition.
4941         * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
4942         * python/python.c (_initialize_python): Declare before definition.
4943         * tui/tui-command.c: Include "tui/tui-command.h".
4944         * tui/tui-data.c (init_content_element, init_win_info): Make them
4945         static.
4946         * tui/tui-disasm.c: Include "tui/tui-disasm.h".
4947         * tui/tui-interp.c (_initialize_tui_interp): Declare before
4948         definition.
4949         * tui/tui-layout.c: Include "tui/tui-layout.h".
4950         (_initialize_tui_layout): Declare before definition.
4951         * tui/tui-regs.c: Include "tui/tui-regs.h".
4952         (tui_display_reg_element_at_line): Make it static.
4953         (_initialize_tui_regs): Declare before definition.
4954         * tui/tui-stack.c (_initialize_tui_stack): Declare before
4955         definition.
4956         * tui/tui-win.c: Include "tui/tui-win.h".
4957         (_initialize_tui_win): Declare before definition.
4958         (tui_sigwinch_handler): Make it static.  Wrap in ifdef SIGWINCH.
4959         * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
4960         (tui_get_cmd_list): Add a prototype.
4961         * tui/tui-windata.c: Include tui-windata.h.
4962         * tui/tui-wingeneral.c (box_win): Make it static.
4963         * cli/cli-logging.c (show_logging_command): Make it static.
4964         (_initialize_cli_logging): Declare before definition.
4965         * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
4966         definition.
4967
4968 2009-02-20  Pierre Muller  <muller@ics.u-strasbg.fr>
4969
4970         Extend use of i386_use_watchpoints to all i386 native files
4971         using hardware watchpoints.
4972         * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
4973         * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
4974         * windows-nat.c (init_windows_ops): Ditto.
4975         * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
4976         * config/i386/nm-cygwin64.h: Ditto.
4977         * config/i386/nm-fbsd.h: Ditto.
4978         * config/i386/nm-go32.h: Ditto.
4979
4980 2009-02-19  Joel Brobecker  <brobecker@adacore.com>
4981
4982         * ada-typeprint.c (ada_typedef_print): Remove.  Unused.
4983
4984 2009-02-18  Vladimir Prus  <vladimir@codesourcery.com>
4985
4986         * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
4987         (mi_interpreter_init): Register the above.
4988         * solib.c (clear_solib): Notify solib unload.
4989         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
4990         disable breakpoints on a.out targets.
4991
4992 2009-02-17  Vladimir Prus  <vladimir@codesourcery.com>
4993
4994         * observer.c (observer_test_first_notification_function)
4995         (observer_test_second_notification_function)
4996         (observer_test_third_notification_function): Adjust prototype.
4997
4998 2009-02-17  Pedro Alves  <pedro@codesourcery.com>
4999
5000         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
5001         (ALL_TARGET_OBS): Add dicos-tdep.o.
5002         (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
5003         * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
5004         gdb_target_obs.
5005         (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
5006         gdb_target_obs.
5007         * dicos-tdep.h, dicos-tdep.c: New.
5008         * amd64-dicos-tdep.c: New.
5009         * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
5010         inferior.h.  Include dicos-tdep.h.
5011         (i386_dicos_init_abi): Call dicos_init_abi.
5012         (i386_dicos_bfd_has_symbol_p): Delete.
5013         (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
5014
5015         * NEWS: Mention x86-64 DICOS target support.
5016
5017 2009-02-16  Doug Evans  <dje@google.com>
5018
5019         * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
5020         All callers updated.
5021         (amd64_get_insn_details): Handle more 3-byte opcode insns.
5022         (amd64_breakpoint_p): Delete.
5023         (amd64_displaced_step_fixup): When fixing up after stepping an int3,
5024         don't back up pc to the start of the int3.
5025         * i386-tdep.c: #include opcode/i386.h.
5026         (i386_skip_prefixes): New function.
5027         (i386_absolute_jmp_p): Constify argument.
5028         (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
5029         (i386_breakpoint_p): Delete.
5030         (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
5031         When fixing up after stepping an int3, don't back up pc to the start
5032         of the int3.
5033
5034 2009-02-16  Pedro Alves  <pedro@codesourcery.com>
5035
5036         * corelow.c (core_close): Don't hardcode the core's pid.
5037         (core_open): Find core threads before calling
5038         post_create_inferior.
5039         (add_to_thread_list, get_core_register_section): Take into account
5040         systems where the regset section names encode the pid of the
5041         inferior.
5042
5043         * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
5044         * gdbarch.h, gdbarch.c: Regenerate.
5045
5046         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
5047         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
5048         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
5049         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
5050
5051 2009-02-14  Vladimir Prus  <vladimir@codesourcery.com>
5052
5053         Include frame information for *stopped due to CLI commands.
5054
5055         * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
5056         * infcmd.c (finish_command_continuation): Pass '1' for
5057         'print_frame' parameter to the observer.
5058         * infrun.c (normal_stop): Don't print mi-specific information
5059         here. Pass 'stop_print_frame' to the 'print_frame' parameter
5060         of the observer.
5061         * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
5062         If we need to print frame, and current uiout is not the MI one,
5063         print frame again.
5064
5065 2009-02-13  Pierre Muller  <muller@ics.u-strasbg.fr>
5066
5067         * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
5068         Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
5069
5070 2009-02-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
5071
5072         PR fortran/9806
5073         * dwarf2read.c (process_die <DW_TAG_module>, read_module)
5074         (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
5075
5076 2009-02-11  Pierre Muller  <muller@ics.u-strasbg.fr>
5077
5078         * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
5079         for DW_ATE_signed_char and DW_ATE_unsigned_char
5080         for pascal language.
5081
5082 2009-02-11  Jim Meyering  <meyering@redhat.com>
5083             Jan Kratochvil  <jan.kratochvil@redhat.com>
5084
5085         Avoid NULL dereference.
5086         * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
5087         New variable func_type.
5088
5089 2009-02-11  Pedro Alves  <pedro@codesourcery.com>
5090
5091         * gdbarch.c: Regenerate.
5092
5093 2009-02-10  Pierre Muller  <muller@ics.u-strasbg.fr>
5094
5095         * p-lang.c (is_pascal_string_type): Fix comment.
5096         Determine exact size of char elements for GPC
5097         strings.
5098         (pascal_printstr): Handle char width of 2 or 4.
5099         * p-valprint.c (pascal_val_print): Handle char
5100         of width 2 or 4.
5101
5102 2009-02-07  Daniel Jacobowitz  <dan@codesourcery.com>
5103
5104         * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
5105         inside the loop.  Only call addrmap_set_empty if the compilation unit
5106         had DW_AT_high_pc and DW_AT_low_pc.  Update call to
5107         scan_partial_symbols.
5108         (scan_partial_symbols): Take NEED_PC argument and pass it along with
5109         LOWPC and HIGHPC.
5110         (add_partial_namespace): Take NEED_PC argument and pass it through.
5111         (add_partial_subprogram): Take NEED_PC argument.  Update the addrmap
5112         if necessary.
5113
5114 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
5115
5116         * NEWS: Mention inspecting extra signal information, $_siginfo,
5117         and the qXfer:siginfo:read and qXfer:siginfo:write packets.
5118
5119 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
5120
5121         * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
5122         isn't defined.
5123
5124 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
5125
5126         * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
5127         (compat_timer_t, compat_clock_t, struct compat_timeval)
5128         (compat_sigval_t, compat_siginfo_t): New types.
5129         (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
5130         (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
5131         (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
5132         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
5133         (amd64_linux_siginfo_fixup): New.
5134         * linux-nat.c (linux_nat_siginfo_fixup): New.
5135         (siginfo_fixup): New.
5136         (linux_xfer_siginfo): Use siginfo_fixup to convert between the
5137         siginfo layout expected by ptrace and the siginfo layout of the
5138         inferior.
5139         (linux_nat_set_siginfo_fixup): New.
5140         * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
5141
5142 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
5143
5144         * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
5145         * infrun.c (siginfo_value_read, siginfo_value_write): New.
5146         (siginfo_value_funcs): New.
5147         (siginfo_make_value): New.
5148         (_initialize_infrun): Create the $_siginfo convenience variable.
5149         * gdbtypes.h (append_composite_type_field_aligned): Declare.
5150         * gdbtypes.c (append_composite_type_field): Rename to...
5151         (append_composite_type_field_aligned): ... this.  Add ALIGNMENT
5152         argument.  Handle it.
5153         (append_composite_type_field): Rewrite on top of
5154         append_composite_type_field_aligned.
5155         * value.h (internalvar_make_value): New typedef.
5156         (struct internalvar) <make_value>: New field.
5157         (create_internalvar_type_lazy): Declare.
5158         * value.c (create_internalvar): Clear make_value.
5159         (create_internalvar_type_lazy): New.
5160         (value_of_internalvar): If make_value is set use it.
5161         (preserve_values): Skip internal variables that don't have a
5162         value.
5163         * gdbarch.sh (get_siginfo_type): New.
5164         * gdbarch.h, gdbarch.c: Regenerate.
5165
5166         * linux-tdep.h, linux-tdep.c: New.
5167         * amd64-linux-tdep.c: Include "linux-tdep.h".
5168         (amd64_linux_init_abi): Register linux_get_siginfo_type and
5169         linux_get_siginfo_mapper.
5170         * i386-linux-tdep.c: Include "linux-tdep.h".
5171         (i386_linux_init_abi): Register linux_get_siginfo_type and
5172         linux_get_siginfo_mapper.
5173         * arm-linux-tdep.c: Include "linux-tdep.h".
5174         (i386_linux_init_abi): Register linux_get_siginfo_type and
5175         linux_get_siginfo_mapper.
5176
5177         * linux-nat.c (linux_xfer_siginfo): New.
5178         (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
5179         * remote.c (PACKET_qXfer_siginfo_read)
5180         (PACKET_qXfer_siginfo_write): New.
5181         (feature remote_protocol_features): Add "qXfer:siginfo:read" and
5182         "qXfer:siginfo:write" features.
5183         (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
5184         (_initialize_remote): Add "set/show remote read-siginfo-object"
5185         and "set/show remote write-siginfo-object" commands.
5186
5187         * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
5188         (HFILES_NO_SRCDIR): Add linux-tdep.h.
5189         (ALLDEPFILES): Add linux-tdep.c.
5190
5191         * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
5192         (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
5193         gdb_target_obs.
5194
5195 2009-02-06  Jim Blandy  <jimb@codesourcery.com>
5196             Daniel Jacobowitz  <dan@codesourcery.com>
5197             Vladimir Prus  <vladimir@codesourcery.com>
5198             Pedro Alves  <pedro@codesourcery.com>
5199
5200         * defs.h (enum lval_type): New value: lval_computed.
5201         * value.h (struct lval_funcs): New type.
5202         (allocate_computed_value, value_computed_funcs)
5203         (value_computed_closure): New declarations.
5204         * value.c (struct value): Add a structure to the location union
5205         for computed lvalues, containing 'funcs' and 'closure' members.
5206         (allocate_computed_value, value_computed_funcs)
5207         (value_computed_closure): New functions.
5208         (value_free): For computed lvalues, call the closure's
5209         'free_closure' function before freeing the value itself.
5210         (value_copy): If we're copying an lval_computed value, call the
5211         closure's 'copy_closure' function.
5212         (set_value_component_location): If the original value is a
5213         computed lvalue, then call the closure's 'copy_closure' function.
5214         (value_of_internalvar): If an internal variable's value is a
5215         computed lvalue, make retrieving its value produce an equivalent
5216         computed lvalue.
5217         * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
5218         their read function.
5219         (value_assign): Assign to computed lvalues by calling their write
5220         function.
5221
5222 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
5223
5224         * linux-nat.c (linux_nat_wait): Adjust.
5225         (linux_nat_pid_to_str): Adjust.  Remove call to thread_db_init.
5226         * linux-nat.h (thread_db_init): Delete declaration.
5227         * linux-thread-db.c (target_beneath): Delete.
5228         (thread_db_init): Delete.
5229         (thread_db_detach): Use find_target_beneath.
5230         (thread_db_wait): Adjust interface.  Use find_target_beneath.
5231         (thread_db_mourn_inferior): Use find_target_beneath.
5232         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
5233         (thread_db_async_mask): Delete.
5234         (thread_db_pid_to_str): Adjust interface.  Use
5235         find_target_beneath.
5236         (thread_db_get_thread_local_address): Adjust interface.  Use
5237         find_target_beneath.
5238         (init_thread_db_ops): Delete references to delete functions.
5239         * target.c (update_current_target): Don't inherit or default
5240         to_wait.  Don't inherit to_pid_to_str and
5241         to_get_thread_local_address.
5242         (target_translate_tls_address): Look for a pushed target that
5243         implements to_get_thread_local_address, and use it instead of
5244         checking for target_get_thread_local_address_p.
5245         (target_wait, target_pid_to_str): Reimplement as functions.
5246         (dummy_pid_to_str): New.
5247         (init_dummy_target): Register it.
5248         (debug_to_wait): Delete.
5249         * target.h (struct target_ops): Make to_wait, to_pid_to_str and
5250         to_get_thread_local_address accept a pointer to struct target_ops.
5251         (target_wait): Delete macro, and declare as function.
5252         (target_pid_to_str): Likewise.
5253         (target_get_thread_local_address)
5254         (target_get_thread_local_address_p): Delete.
5255         (noprocess): Add NORETURN and ATTR_NORETURN tags.
5256         * inf-ptrace.c (inf_ptrace_wait): Adjust.
5257         (inf_ptrace_pid_to_str): New.
5258         (inf_ptrace_target): Use inf_ptrace_pid_to_str.
5259         * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
5260         * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
5261         * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
5262         Adjust.
5263         * corelow.c (core_pid_to_str): Adjust.
5264         * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
5265         * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
5266         * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
5267         * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
5268         * hpux-thread.c (hpux_thread_wait): Adjust.
5269         * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
5270         * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
5271         * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
5272         * procfs.c (procfs_pid_to_str): Adjust.
5273         * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
5274         * remote-mips.c (mips_wait): Adjust.
5275         * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
5276         * remote.c (remote_wait, remote_pid_to_str)
5277         (remote_get_thread_local_address): Adjust.
5278         * rs6000-nat.c (rs6000_wait): Adjust.
5279         * sol-thread.c (procfs_pid_to_str): Adjust declaration.
5280         (sol_thread_wait, solaris_pid_to_str): Adjust.
5281         * spu-linux-nat.c (spu_child_wait): Adjust.
5282         * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
5283
5284 2009-02-06  Tom Tromey  <tromey@redhat.com>
5285
5286         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
5287         (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
5288         (python-cmd.o): New target.
5289         * cli/cli-decode.c (set_cmd_completer): Add self parameter to
5290         completer prototype.
5291         (add_cmd): Initialize destroyer member of cmd_list_element. Use
5292         make_symbol_completion_list_fn as completer.
5293         (delete_cmd): Call destroyer if one is set.
5294         * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
5295         completer member.  Add destroyer member.
5296         (set_cmd_completer): Add self parameter to
5297         completer prototype.
5298         * command.h (set_cmd_completer): Add cmd parameter to
5299         completer prototype.
5300         * completer.c (noop_completer, filename_completer,
5301         location_completer, expression_completer, command_completer): Adapt
5302         to new completer prototype.
5303         (complete_line_internal): Pass new parameter to completer function.
5304         * completer.h (noop_completer, filename_completer,
5305         location_completer, expression_completer, command_completer): Adapt
5306         prototypes to new completer prototype.
5307         * interps.c (interpreter_completer): Adapt to new completer
5308         prototype.
5309         * python/python-cmd.c: New file.
5310         * python/python-internal.h (gdbpy_initialize_commands): Add
5311         prototype.
5312         (gdbpy_doc_cst): Add forward declaration.
5313         * python/python.c (gdbpy_doc_cst): Declare.
5314         (_initialize_python): Call gdbpy_initialize_commands.  Initialize
5315         gdbpy_doc_cst.
5316         * symtab.c (make_symbol_completion_list_fn): New function.
5317         * symtab.h (make_symbol_completion_list_fn): Add prototype.
5318
5319 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
5320
5321         * target.c (target_get_osdata): Check for equal or higher than
5322         process_stratum, not dummy_stratum.
5323
5324 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
5325
5326         * remote.c (extended_remote_can_run): Delete.
5327         (init_remote_ops): Don't register it.
5328         * target.c (target_get_osdata): Don't check for target_can_run.
5329         Instead any target that has already been pushed, otherwise
5330         fallback to the default run target.
5331
5332 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
5333
5334         * target.c (target_create_inferior, target_detach)
5335         (target_mourn_inferior, target_attach, target_close): Do target
5336         debug output.
5337         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
5338         (debug_to_mourn_inferior, debug_to_close): Delete.
5339         (setup_target_debug): Adjust.
5340
5341 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
5342
5343         * target.h (target_stopped_data_address_p): Delete declaration,
5344         and don't define as macro.
5345         * target.c (target_stopped_data_address_p): Delete.
5346
5347 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5348             Tom Tromey  <tromey@redhat.com>
5349
5350         * python/python-utils.c (target_string_to_unicode): New function.
5351         * python/python-internal.h (target_string_to_unicode): New prototype.
5352         * python/python-value.c (valpy_string): New function.
5353         (value_object_methods): Add `string' entry.
5354
5355 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
5356
5357         * target.h (target_tid_to_str): Delete.
5358         * thread.c (print_thread_info, thread_apply_all_command)
5359         (thread_apply_command, thread_command, do_captured_thread_select):
5360         Use target_pid_to_str instead of target_tid_to_str.
5361         * linux-fork.c (delete_fork_command): Likewise.
5362
5363 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
5364
5365         * frame.c (has_stack_frames): Make public.
5366         (get_prev_frame): Don't allow a NULL this_frame anymore.
5367         * frame.h (has_stack_frames): Declare.
5368         * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
5369         to get_prev_frame, instead start at get_current_frame.
5370         (varobj_create): Check has_stack_frames before getting any frame;
5371         eliminate one usage of deprecated_safe_get_selected_frame.
5372
5373 2009-02-05  Tom Tromey  <tromey@redhat.com>
5374             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5375
5376         * python/python.c (GdbMethods): Move to bottom of file.
5377         (get_parameter, execute_gdb_command, gdbpy_write,
5378         gdbpy_flush): Remove forward declarations.
5379         (eval_python_from_control_command): Fix error checking of function
5380         PyRun_SimpleString.  Fix error string.
5381         (python_command): Likewise.
5382         (execute_gdb_command): Added from_tty argument.
5383
5384 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
5385
5386         * language.h (language_dfn): Add la_get_string member.
5387         (LA_GET_STRING): New macro.
5388         (default_get_string): New prototype.
5389         * language.c (default_get_string): New function.
5390         (unknown_language_defn, auto_language_defn, local_language_defn): Use
5391         default_get_string for la_get_string.
5392         * c-lang.c (c_get_string): New function.
5393         (c_language_defn, cplus_language_defn, asm_language_defn): Use
5394         c_get_string for la_get_string.
5395         (minimal_language_defn): Likewise
5396         * ada-lang.c (ada_language_defn): Likewise.
5397         * f-lang.c (f_language_defn): Use default_get_string for
5398         la_get_string.
5399         * jv-lang.c (java_language_defn): Likewise.
5400         * m2-lang.c (m2_language_defn): Likewise.
5401         * objc-lang.c (objc_language_defn): Likewise.
5402         * p-lang.c (p_language_defn): Likewise.
5403         * scm-lang.c (scm_language_defn): Likewise.
5404         * typeprint.c (type_to_string): New function.
5405         * value.h (type_to_string): New prototype.
5406         * valprint.c (val_print_string): Factor out code for reading string
5407         from the inferior into its own function.  Put 2 spaces after period
5408         in comments.
5409         (read_string): New function.
5410         * valprint.h (read_string): New prototype.
5411
5412 2009-01-07  Pierre Muller  <muller@ics.u-strasbg.fr>
5413             Tom Tromey  <tromey@redhat.com>
5414
5415         PR breakpoints/8079:
5416         * breakpoint.c (print_one_breakpoint): Use exp_string field
5417         to display expression of watchpoints.
5418         (mention): Likewise.
5419         (watch_command_1): Remove trailing whitespace from expression.
5420         * printcmd.c (struct display) <exp_string>: New field.
5421         (display_command): Set exp_string.
5422         (free_display): Free exp_string.
5423         (clear_displays): Use free_display.
5424         (do_one_display): Print exp_string.
5425         (display_info): Likewise.
5426
5427 2009-02-04  Tom Tromey  <tromey@redhat.com>
5428             Thiago Jung Bauermann  <bauerman@br.ibm.com>
5429             Phil Muldoon  <pmuldoon@redhat.com>
5430
5431         * python/python-internal.h (gdbpy_get_value_from_history): Rename
5432         prototype to gdbpy_history.
5433         (gdbpy_is_string): Declare.
5434         (python_string_to_host_string): Declare.
5435         * python/python-utils.c (gdbpy_is_string): New function.
5436         (unicode_to_encoded_string): New function.
5437         (unicode_to_target_string): Use it.
5438         (python_string_to_host_string): New function.
5439         * python/python-value.c (valpy_address): New function.
5440         (convert_value_from_python): Use gdbpy_is_string.  Change to throw
5441         Python exception instead of a GDB exception on error.  Properly check
5442         Python booleans.
5443         (valpy_getitem): Convert field name to host string.  Handle array
5444         accesses.  Adapt to new behaviour of convert_value_from_python.
5445         (valpy_new): Adapt to new behaviour of convert_value_from_python.
5446         (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
5447         VALPY_BITXOR, VALPY_BITOR>: New constants.
5448         (valpy_binop): Update.  Adapt to new behaviour of
5449         convert_value_from_python.
5450         (valpy_invert): New function.
5451         (valpy_lsh): Likewise.
5452         (valpy_rsh): Likewise.
5453         (valpy_and): Likewise.
5454         (valpy_or): Likewise.
5455         (valpy_xor): Likewise.
5456         (valpy_richcompare): Call convert_value_from_python instead of doing
5457         conversions itself.
5458         (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
5459         (gdbpy_get_value_from_history): Rename
5460         function to gdbpy_history.
5461         (gdbpy_initialize_values): Don't set tp_new.
5462         (value_object_type): Add valpy_new.
5463         (value_object_methods): Add `address' entry.
5464         (value_object_as_number): Update for new methods.
5465         * python/python.c (GdbMethods): Rename entry from
5466         `get_value_from_history' to `history'.
5467
5468 2009-02-04  Jerome Guitton  <guitton@adacore.com>
5469
5470         * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
5471         of type to guard against a crash.
5472
5473 2009-02-04  Jerome Guitton  <guitton@adacore.com>
5474
5475         * value.c (value_from_contents_and_address): Always return
5476         a lval_memory value, even if address is null.
5477
5478 2009-02-04  Tristan Gingold  <gingold@adacore.com>
5479
5480         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
5481         (amd64_darwin_sigcontext_addr): Ditto.
5482         (darwin_dwarf_signal_frame_p): Ditto.
5483         (i386_darwin_init_abi): Handle signal frames, use the const for
5484         sc_num_regs.
5485         (x86_darwin_init_abi_64): Ditto.
5486
5487 2009-02-04  Tristan Gingold  <gingold@adacore.com>
5488
5489         * i386-tdep.c (i386_sigtramp_p): Make it public.
5490         * i386-tdep.h (i386_sigtramp_p): Declare.
5491
5492 2009-02-04  Tristan Gingold  <gingold@adacore.com>
5493
5494         * machoread.c (macho_symfile_read): Read minsymtab also from
5495         shared libraries.
5496         (macho_symfile_read): Try to read dwarf2 frame info from main
5497         object file, but not from OSO files.
5498         (macho_symfile_offsets): Update section names for latest BFD
5499         changes.
5500         * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
5501         (x86_darwin_init_abi_64): Ditto.
5502         * solib-darwin.c: New file.
5503         * solib-darwin.h: New file.
5504         * configure.tgt: Add solib.o solib-darwin.o for Darwin.
5505
5506 2009-02-04  Tristan Gingold  <gingold@adacore.com>
5507
5508         * solist.h (struct target_so_ops): Comment fallback behavior for
5509         operation same.
5510
5511 2009-02-03  Tom Tromey  <tromey@redhat.com>
5512
5513         * completer.c (add_struct_fields): Check type_name against NULL
5514         before use.
5515
5516 2009-02-03  Joel Brobecker  <brobecker@adacore.com>
5517
5518         * MAINTAINERS: Update Elena's email address.
5519
5520 2009-02-02  Joel Brobecker  <brobecker@adacore.com>
5521
5522         * breakpoint (update_watchpoint): Minor comment adjustment.
5523
5524 2009-02-02  Tom Tromey  <tromey@redhat.com>
5525
5526         PR gdb/9594:
5527         * completer.c (count_struct_fields): Count method names.
5528         (add_struct_fields): Add matching method names.
5529
5530 2009-02-02  Doug Evans  <dje@google.com>
5531
5532         * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
5533         doing any further tcl/tk configury.  Don't configure gdbtk if
5534         tcl or tk check fails.
5535         * aclocal.m4: Regenerate.
5536         * configure: Regenerate.
5537
5538 2009-02-02  Tom Tromey  <tromey@redhat.com>
5539
5540         PR exp/9059:
5541         * valops.c (find_overload_match): Follow typedefs before taking
5542         address of object argument.
5543
5544 2009-02-01  Doug Evans  <dje@google.com>
5545
5546         * target.h (target_waitstatus_to_string): Declare.
5547         * target.c (target_waitstatus_to_string): New function.  Copied from
5548         debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
5549         TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
5550         TARGET_WAITKIND_NO_HISTORY.
5551         (debug_to_wait): Call it.
5552         * infrun.c (wait_for_inferior): If debug_infrun, print result of
5553         target_wait.
5554         (fetch_inferior_event): Ditto.
5555
5556 2009-01-30  Tom Tromey  <tromey@redhat.com>
5557
5558         * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
5559
5560 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
5561
5562         PR 8145.
5563         * thread.c (do_captured_list_thread_ids): Report the current
5564         thread id.
5565
5566 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
5567
5568         * breakpoint.c (create_breakpoint, create_breakpoints)
5569         (break_command_really, set_breakpoint): New parameter enabled.
5570         (create_breakpoint, break_command_really): Make breakpoint
5571         disabled if so requested.
5572         * breakpoint.h (set_breakpoint): New parameter enabled.
5573         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
5574
5575 2009-01-28  Doug Evans  <dje@google.com>
5576
5577         * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
5578         (amd64_displaced_step_fixup): Declare.
5579         * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
5580         (amd64_arch_regmap): Move out of amd64_analyze_stack_align
5581         and make static global.
5582         (amd64_arch_regmap_len): New static global.
5583         (amd64_arch_reg_to_regnum): New function.
5584         (struct amd64_insn): New struct.
5585         (struct displaced_step_closure): New struct.
5586         (onebyte_has_modrm,twobyte_has_modrm): New static globals.
5587         (rex_prefix_p,skip_prefixes)
5588         (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
5589         (amd64_insn_length,amd64_get_unused_input_int_reg)
5590         (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
5591         (amd64_displaced_step_copy_insn)
5592         (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
5593         (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
5594         (amd64_displaced_step_fixup): New functions.
5595         * amd64-linux-tdep.c: #include arch-utils.h.
5596         (amd64_linux_init_abi): Install displaced stepping support.
5597
5598 2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
5599             Jerome Guitton  <guitton@adacore.com>
5600
5601         * configure, config.in: Regenerated.
5602         * configure.ac: Add --with-system-gdbinit.
5603         * main.c (get_init_files): New.
5604         (captured_main): Use get_init_files.  Load system gdbinit before
5605         $HOME/.gdbinit.
5606         (print_gdb_help): Print location of init files.
5607
5608 2009-01-28  Pedro Alves  <pedro@codesourcery.com>
5609
5610         * corefile.c (generic_search): Delete disabled code.
5611         * gdbcore.h (generic_search): Delete declaration.
5612
5613 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
5614
5615         * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
5616         parent to the child.
5617         * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
5618         * inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
5619         remove_breakpoints to remove breakpoints from the parent.
5620
5621 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
5622
5623         PR backtrace/9458, PR backtrace/8864:
5624         * frame.c (create_new_frame): Update the frame's cached PC before
5625         finding its unwinder.  Use frame_id_build to build the new frame's
5626         id.
5627         * stack.c (parse_frame_specification_1): Correct setting ``addrs''
5628         array values from the ``args'' array values.
5629
5630 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
5631
5632         * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
5633         (create_array_type, create_set_type, init_flags_type)
5634         (copy_type_recursive): Replace pairs of calls to XALLOC and memset
5635         with a call to XZALLOC or XCALLOC, and pairs of calls to
5636         obstack_alloc and memset with a call to OBSTACK_ZALLOC.
5637
5638 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
5639
5640         Add "maint set|show internal-error|internal-warning quit|corefile
5641         ask|yes|no" commands.
5642
5643         PR gdb/7580:
5644         * utils.c (internal_problem_ask, internal_problem_yes)
5645         (internal_problem_no, internal_problem_modes): New.
5646         (struct internal_problem): Remove FIXME.  Make should_quit and
5647         should_dump_core types to char *.
5648         (internal_vproblem, internal_error_problem)
5649         (internal_warning_problem): Adjust.
5650         (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
5651         functions.
5652         (add_internal_problem_command): New.
5653         (_initialize_utils): New.
5654
5655 2009-01-25  Pedro Alves  <pedro@codesourcery.com>
5656
5657         * infcmd.c (program_info): Use paddress instead of casting stop_pc
5658         to unsigned long.
5659
5660 2009-01-24  Pedro Alves  <pedro@codesourcery.com>
5661
5662         * infrun.c (normal_stop): Don't call
5663         deprecated_update_frame_pc_hack.
5664         * frame.c (deprecated_update_frame_pc_hack)
5665         (deprecated_update_frame_base_hack): Delete, and ...
5666         (create_new_frame): ... inline here.
5667         * frame.h (deprecated_update_frame_pc_hack)
5668         (deprecated_update_frame_base_hack): Delete declarations.
5669
5670 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
5671
5672         * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
5673         * cli/cli-setshow.c (do_setshow_command): Handle it.
5674         * command.h (enum var_types): Add var_zuinteger.
5675         (add_setshow_zuinteger_cmd): Declare.
5676
5677         * valprint.c (_initialize_valprint): Change the set input-radix
5678         and set output-radix commands to zuinteger type.
5679
5680 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
5681
5682         PR gdb/9664:
5683         * infrun.c (normal_stop): Tag threads as stopped, and run the
5684         hook-stop before printing the stack frame.
5685
5686 2009-01-22  Pedro Alves  <pedro@codesourcery.com>
5687
5688         PR c++/9631:
5689         * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
5690         vbasetype.
5691
5692 2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
5693
5694         * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
5695         unsigned long.
5696
5697 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
5698
5699         PR gdb/9346
5700         * infcmd.c (signal_command): Do not specify a resume PC.
5701
5702 2009-01-19  Doug Evans  <dje@google.com>
5703
5704         * dummy-frame.c (dummy_frame): Replace regcache member with
5705         caller_state.
5706         (dummy_frame_push): Replace caller_regcache arg with caller_state.
5707         All callers updated.
5708         (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
5709         (dummy_frame_pop): Rewrite.  Verify requested frame is in the
5710         dummy frame stack.  Restore program state.
5711         (cleanup_dummy_frames): Rewrite.
5712         (dummy_frame_sniffer): Update.  Make static.
5713         * dummy-frame.h (regcache,frame_info): Delete forward decls.
5714         (inferior_thread_state): New forward decl.
5715         (dummy_frame_push): Update prototype.
5716         * frame.c (frame_pop): dummy_frame_pop now does all the work for
5717         DUMMY_FRAMEs.
5718         * infcall.c (breakpoint_auto_delete_contents): Delete.
5719         (get_function_name,run_inferior_call): New fns.
5720         (call_function_by_hand): Simplify by moving some code to
5721         get_function_name, run_inferior_call.  Inferior function call wrapped
5722         in TRY_CATCH so there's less need for cleanups and all exits from
5723         proceed are handled similarily.  Detect program exit.
5724         Detect program stopping in a different thread.
5725         Make error messages more consistent.
5726         * inferior.h (inferior_thread_state): Declare (opaque type).
5727         (save_inferior_thread_state,restore_inferior_thread_state,
5728         make_cleanup_restore_inferior_thread_state,
5729         discard_inferior_thread_state, get_inferior_thread_state_regcache):
5730         Declare.
5731         (save_inferior_status): Update prototype.
5732         * infrun.c: (normal_stop): When stopped for the completion of an
5733         inferior function call, verify the expected stack frame kind.
5734         (inferior_thread_state): New struct.
5735         (save_inferior_thread_state,restore_inferior_thread_state,
5736         do_restore_inferior_thread_state_cleanup,
5737         make_cleanup_restore_inferior_thread_state,
5738         discard_inferior_thread_state,
5739         get_inferior_thread_state_regcache): New functions.
5740         (inferior_status): Move stop_signal, stop_pc, registers to
5741         inferior_thread_state.  Remove restore_stack_info.
5742         (save_inferior_status): Remove arg restore_stack_info.
5743         All callers updated.  Remove saving of state now saved by
5744         save_inferior_thread_state.
5745         (restore_inferior_status): Remove restoration of state now done by
5746         restore_inferior_thread_state.
5747         (discard_inferior_status): Remove freeing of registers, now done by
5748         discard_inferior_thread_state.
5749
5750 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
5751
5752         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
5753         at a time, times NUM_TO_SCROLL.
5754         * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
5755         fetch the selected frame if there is no stack.
5756
5757 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
5758
5759         PR gdb/9747:
5760         * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
5761         Declare.
5762         * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
5763         * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
5764         is thrown while handling an event, finish the thread state.
5765         (normal_stop): Use finish_thread_state cleanup.
5766         * infcmd.c (run_command_1): If an error is thrown while starting
5767         the inferior, finish the thread state.
5768
5769 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
5770
5771         * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
5772         skip breakpoints without a location (pending breakpoints).
5773
5774 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
5775
5776         PR build/9186:
5777         * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
5778
5779 2009-01-18  Nick Roberts  <nickrob@snap.net.nz>
5780
5781         * thread.c (thread_command): Move call to annotate_thread_changed
5782         to...
5783         (do_captured_thread_select): ... here, to avoid printing an
5784         annotation if the thread change generates an exception.
5785
5786 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
5787
5788         * NEWS: Document x86_64/MinGW as a new native configuration.
5789
5790 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
5791
5792         * NEWS: Move the documentation of "info os processes" to
5793         the appropriate section (documenting the new commands).
5794
5795 2009-01-15  Doug Evans  <dje@google.com>
5796
5797         * target.h (target_signal_to_string): Make return type const char *.
5798         (target_signal_to_name): Ditto.
5799         (target_signal_from_name): Make arg const char *.
5800         * infrun.c (sig_print_info): Update.
5801         * signals/signals.c (signals): Make array and struct members const.
5802         (target_signal_to_string): Make return type const char *.
5803         (target_signal_to_name): Ditto.
5804         (target_signal_from_name): Make arg const char *.
5805
5806 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
5807             Tristan Gingold  <gingold@adacore.com>
5808
5809         * solist.h (struct target_so_ops): New member bfd_open.
5810         (solib_find): Add prototype.
5811         (solib_bfd_fopen): Add prototype.
5812         * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
5813         from solib_bfd_open.
5814         (solib_bfd_open): Use ops->bfd_open override if present.  Call
5815         solib_find and solib_bfd_open otherwise.
5816
5817         * objfiles.h (OBJF_KEEPBFD): New define.
5818         * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
5819         objfile flag is set.
5820         * solib.c (symbol_add_stub): Do not allocate second BFD for
5821         shared library; use OBJF_KEEPBFD flag on solib objfile.
5822
5823 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
5824
5825         * frame.c (get_frame_arch): Abort if called with NULL this_frame.
5826
5827 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
5828
5829         * value.h (address_of_variable): Add prototype.
5830         (locate_var_value): Remove prototype.
5831
5832         * findvar.c (read_var_value): Do not attempt to default frame
5833         to selected frame.
5834         (locate_var_value): Remove function.
5835         * valops.c (value_of_variable): Retrieve selected frame for
5836         symbols that require a frame when called with NULL block.
5837         * valops.c (address_of_variable): New function.
5838
5839         * eval.c (evaluate_subexp_for_address): Call address_of_variable
5840         instead of calling locate_var_value.
5841         (evaluate_subexp_with_coercion): Likewise.
5842
5843 2009-01-14  Daniel Jacobowitz  <dan@codesourcery.com>
5844
5845         * NEWS: Document "define" for prefixed commands.
5846         * cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
5847         show_user_1 for prefix commands.
5848         * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
5849         * cli/cli-script.c (validate_comname): Rewrite to handle prefix
5850         commands.  Return the containing command list.
5851         (define_command, document_command): Update to handle prefix commands.
5852         (show_user_1): Add prefix and name arguments.  Handle prefix
5853         commands.
5854         * cli/cli-script.h (show_user_1): Update prototype.
5855
5856 2009-01-14  Kai Tietz  <kai.tietz@onevision.com>
5857
5858         * ser-mingw.c (console_select_thread): Add return to make
5859         compiler happy.
5860         (pipe_select_thread): Likewise.
5861         (file_select_thread): Likewise.
5862
5863 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
5864
5865         * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
5866         previous change.
5867
5868 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
5869
5870         * remote.c (extended_remote_mourn_1): Invalidate our notion of
5871         current general thread.
5872
5873 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
5874
5875         * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
5876         without a live selected thread.
5877
5878 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
5879
5880         Update the copyright notice of some of the files I missed
5881         in the previous copyright update.
5882
5883 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
5884
5885         * windows-nat.c (handle_unload_dll): Use %p to print the DLL
5886         base address instead of casting it to DWORD.
5887
5888 2009-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
5889
5890         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
5891         for NULL frame pointers.
5892
5893 2009-01-13  Mark Kettenis  <kettenis@gnu.org>
5894
5895         * utils.c (host_address_to_string): Reimplement in a way that
5896         avoids the cast of the address to long.
5897
5898 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
5899
5900         * mdebugread.c (parse_symbol): Save the symbol private data
5901         using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
5902         (psymtab_to_symtab_1): Likewise.
5903         (parse_procedure): Declare variable "e" only in the scope
5904         where it is used. Extract the symbol private data using
5905         SYMBOL_VALUE_BYTES.
5906
5907 2009-01-13  Jim Blandy  <jimb@codesourcery.com>
5908
5909         Abstract out common code for copying value locations.
5910
5911         * value.h (set_value_component_location): New declaration.
5912         * value.c (set_value_component_location): New function.
5913         (value_primitive_field): Use it.
5914         * valarith.c (value_subscript, value_subscripted_rvalue): Same.
5915         * valops.c (search_struct_field, value_slice): Same.
5916         * ada-lang.c (coerce_unspec_val_to_type)
5917         (ada_value_primitive_packed_val): Same.
5918
5919 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
5920
5921         * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
5922
5923 2009-01-12  Christopher Faylor  <me+cygwin@cgf.cx>
5924
5925         * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
5926         throughout.
5927         * i386-cygwin-tdep.c: Ditto.
5928         * i386-windows-nat.c: Ditto.
5929         * windows-nat.h: Ditto.
5930         * windows-tdep.c: Ditto.
5931         * windows-tdep.h: Ditto.
5932         * windows-nat.c: Ditto.
5933         (cygwin_load_start): Redefine as CORE_ADDR.
5934         (cygwin_load_end): Ditto.
5935         (windows_make_so): Coerce result of address arithmetic to uintptr_t
5936         before coercing to CORE_ADDR to avoid a compiler warning.
5937         (handle_exception): Define addr as CORE_ADDR and coerce
5938         ExceptionAddress to uintptr_t before assigining to avoid a compiler
5939         warning.
5940         * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
5941         files.
5942
5943 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
5944
5945         Fix linking with --enable-targets=all:
5946         * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
5947         (HFILES_NO_SRCDIR): Add windows-tdep.h.
5948         (ALLDEPFILES): Add windows-tdep.c.
5949
5950 2009-01-11  Chris Faylor  <me.gdb@cgf.cx>
5951
5952         * win32-nat.h: Delete.
5953         * windows-nat.h: Rename from win32-nat.h.
5954         * win32-nat.c: Delete.
5955         * windows-nat.c: Rename from win32-nat.c.
5956         * win32-termcap.c: Delete.
5957         * windows-termcap.c: Rename from win32-termcap.c.
5958         * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
5959         * configure.ac: Handle rename from win32-termcap.c ->
5960         windows-termcap.c.
5961         * configure: Regenerate.
5962         * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
5963         -> windows-termcap.c.
5964         * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
5965         windows-tdep.h.
5966         * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
5967         * windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
5968         windows-tdep.h.
5969         (win32_make_so): Handle cygwin compiler warning due to change of
5970         load_addr from DWORD to LPVOID.
5971         (handle_load_dll): Use %p in format string to properly print address
5972         and avoid a compiler warning.
5973         (DEBUG_EXCEPTION_SIMPLE): Ditto.
5974         (handle_exception): Ditto.
5975         * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
5976         * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
5977         windows-nat.o.
5978         * config/i386/mingw.mh: Ditto.
5979         * config/i386/mingw64.mh: Ditto.
5980
5981 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
5982
5983         * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
5984         arrayprint_recurse_level to a parameter.  Update all the callers.  New
5985         comment at autovariables.
5986
5987 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
5988
5989         * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
5990         coding style.
5991
5992 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
5993
5994         * target.c (target_xfer_partial): Use host_address_to_string to
5995         print the address of readbuf and writebuf. Cast the address of
5996         elements inside the myaddr buffer into intptr_t.
5997         (deprecated_debug_xfer_memory): Use paddress to print memaddr.
5998         Cast the address of elements inside the myaddr buffer into
5999         intptr_t.
6000
6001 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
6002
6003         * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
6004         * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
6005         * configure.host, configure.tgt: Add handling for x86_64/windows.
6006         * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
6007         and amd64-windows-tdep.c.
6008
6009 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
6010
6011         * win32-tdep.h, win32-tdep.c: New files.
6012         * i386-cygwin-tdep.h: Delete.
6013         * i386-cygwin-tdep.c: Include win32-tdep.h instead of
6014         i386-cygwin-tdep.h.
6015         (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
6016         * win32-nat.c: Likewise.
6017         * configure.tgt: Add win32-tdep.o to the list of target object
6018         files for i386-cygwin and i386-mingw targets.
6019
6020 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
6021
6022         * win32-nat.h: New file.
6023         * win32-nat.c (mappings): Initialize to NULL.
6024         (win32_set_context_register_offsets): New function.
6025         * i386-windows-nat.c: New file.
6026         (mappings): Moved here from win32-nat.c.
6027         (_initialize_i386_windows_nat): New function.
6028         * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
6029         * config/i386/cygwin.mh (NATDEPFILES): Likewise.
6030
6031 2009-01-09  Andreas Schwab  <schwab@suse.de>
6032
6033         * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
6034
6035 2009-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
6036
6037         * gdbtypes.c (append_composite_type_field): Correct the location of
6038         appended fields.
6039
6040 2009-01-09  Pedro Alves  <pedro@codesourcery.com>
6041
6042         * defs.h (deprecated_error_hook): Delete declaration.
6043         * interps.c (clear_interpreter_hooks): Adjust.
6044         * remote-sim.c (gdb_os_error): Don't try to call
6045         deprecated_error_hook.  No need to call exit anymore.
6046         * top.c (deprecated_error_hook): Delete.
6047
6048 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6049
6050         * arch-utils.c (gdbarch_update_p): Use host_address_to_string
6051         to print the address of the gdbarch pointer.
6052
6053 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6054
6055         * gdbarch.sh: Fix all the compilation errors on amd64-windows
6056         due to casting a pointer to a long when printing a function
6057         address. Instead, use host_address_to_string to convert our
6058         address to a string.
6059         * gdbarch.c: Regenerate.
6060
6061 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6062
6063         * event-top.c (async_disconnect, async_stop_sig): use "raise"
6064         instead of "kill" to raise a signal.
6065
6066 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6067
6068         * win32-nat.c (get_module_name): Change the type of parameter
6069         "base_address" to LPVOID.  Remove unnecessary cast.
6070         (struct lm_info): Change type of load_addr to LPVOID.
6071         (win32_make_so): Change the type of parameter "load_addr"
6072         to LPVOID.  Remove some unnecessary casts.
6073         (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
6074         (win32_xfer_shared_libraries): Add missing cast.
6075
6076 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6077
6078         * win32-nat.c (has_detach_ability, set_process_privilege):
6079         Cast the result of GetProcAddress to (void *) to avoid
6080         a compilation warning.
6081
6082 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6083
6084         * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
6085         already defined.
6086
6087 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6088
6089         * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
6090         definition of local variable "done".
6091         (info_w32_command, handle_exception): Remove unnecessary cast.
6092
6093 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6094
6095         * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
6096         DebugSetProcessKillOnExit.  Update all uses in this file.
6097         (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
6098         Update all uses in this file.
6099
6100 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6101
6102         * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
6103         and use it when pushing the target.
6104         (win32_attach, win32_create_inferior): Update call to
6105         do_initial_win32_stuff.
6106         (win32_detach, win32_mourn_inferior): Use our ops parameter
6107         instead of the global win32_ops to unpush the target.
6108
6109 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6110
6111         * ser-mingw.c (ser_windows_open): Use proper type when casting
6112         in call to _open_osfhandle.
6113
6114 2009-01-09  Kai Tietz  <kai.tietz@onevision.com>
6115
6116         * coff-pe-read.c (read_pe_exported_syms): Fix typo.
6117
6118 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
6119
6120         * CONTRIBUTE: Minor reformatting.
6121
6122 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
6123
6124         * MAINTAINERS: Add myself to Write After Approval.
6125         * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
6126         export directory.
6127
6128 2009-01-08  Nathan Froyd  <froydnj@codesourcery.com>
6129
6130         * remote-sim.c (gdb_os_error): Mark as a noreturn function.
6131         Call exit to make it obvious to GCC.
6132
6133 2009-01-08  Tom Tromey  <tromey@redhat.com>
6134
6135         PR breakpoints/9350:
6136         * varobj.c (varobj_invalidate): Unconditionally free
6137         all_rootvarobj.
6138         * symfile.c (syms_from_objfile): Free local_addr when returning
6139         normally.
6140         * exec.c (exec_file_attach): Do cleanups before returning.
6141         (exec_file_command): Likewise.
6142         * corefile.c (reopen_exec_file): Do cleanups before returning.
6143         * breakpoint.c (insert_breakpoint_locations): Do cleanups before
6144         returning.
6145         (do_vec_free): New function.
6146         (update_global_location_list): Make a cleanup for old_locations.
6147         Do cleanups before returning.  Remove unused variable 'e'.
6148         (find_condition_and_thread): Free result of parsing the
6149         expression.
6150         (print_it_typical): Do cleanups before returning.
6151         (breakpoint_re_set_one): Always free sals.sals.
6152
6153 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
6154             Emi Suzuki  <emi-suzuki@tjsys.co.jp>
6155
6156         * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
6157         watchpoints.
6158
6159 2009-01-07  Doug Evans  <dje@google.com>
6160
6161         * top.c (gdb_prompt_string): Delete, unused.
6162
6163 2009-01-07  Pedro Alves  <pedro@codesourcery.com>
6164
6165         Delete ONE_PROCESS_WRITETEXT leftovers.
6166
6167         * breakpoint.c (insert_bp_location): Delete process_warning
6168         argument.  Adjust.
6169         (insert_breakpoint_locations): Adjust.
6170         (reattach_breakpoints): Adjust.
6171         * infrun.c (normal_stop): Drop "It might be running in another
6172         process" notice.
6173
6174 2009-01-07  Stan Shebs  <stan@codesourcery.com>
6175
6176         * config/pa/linux.mh (XDEPFILES): Remove.
6177
6178 2009-01-07  Doug Evans  <dje@google.com>
6179
6180         * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
6181
6182 2009-01-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6183
6184         * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
6185         spacing, a regression from 2008-04-22.
6186
6187 2009-01-07  Joel Brobecker  <brobecker@adacore.com>
6188
6189         * utils.c (gdb_print_host_address): Adjust implementation to
6190         reuse host_address_to_string. Move comment explaining the conversion
6191         from host address to string from here...
6192         (host_address_to_string): ... to there.
6193
6194 2009-01-07  Emi Suzuki  <emi-suzuki@tjsys.co.jp>
6195
6196         * MAINTAINERS: Add myself for write after approval privileges.
6197
6198 2009-01-06  Tom Tromey  <tromey@redhat.com>
6199
6200         * value.c (set_internalvar): Use value_free, not xfree.
6201
6202 2009-01-06  Jim Blandy  <jimb@red-bean.com>
6203
6204         Check return values of functions declared with warn_unused_result
6205         attribute in GLIBC 2.8.
6206         * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
6207         * inflow.c (check_syscall): New function.
6208         (new_tty): Use check_syscall to check return values from open and dup.
6209         * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
6210         * main.c (captured_main): Call cwd after setting up gdb_stderr;
6211         check for errors from getcwd.
6212         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
6213         * ui-file.c (stdio_file_write): Ignore return value from fwrite.
6214         (stdio_file_fputs): Same.
6215         * utils.c (internal_vproblem): abort if last-ditch error message
6216         write fails.
6217
6218         * top.c (gdb_init): Don't set the current directory here; that's
6219         already been done in captured_main.
6220
6221 2009-01-06  Sandra Loosemore  <sandra@codesourcery.com>
6222
6223         * ser-tcp.c: Adjust includes.
6224         (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
6225         (tcp_auto_retry, tcp_retry_limit): Declare.
6226         (TIMEOUT): Remove, in favor of tcp_retry_limit.
6227         (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
6228         (wait_for_connect): New function.
6229         (net_open): Use it.  Add auto-retry logic.
6230         (set_tcp_cmd, show_tcp_cmd): New functions.
6231         (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
6232         and "set/show tcp connect-timeout" commands.
6233         * NEWS: Document new commands.
6234
6235 2009-01-05  Tom Tromey  <tromey@redhat.com>
6236
6237         * python/python-internal.h (Py_ssize_t): Define as int.
6238
6239 2009-01-05  Jim Blandy  <jimb@red-bean.com>
6240
6241         * MAINTAINERS: Fix my e-mail address as steering committee member.
6242
6243 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
6244
6245         Updated copyright notices for most files.
6246
6247 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
6248
6249         * top.c (print_gdb_version): Update copyright year.
6250
6251 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
6252
6253         * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
6254
6255 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
6256
6257         PR breakpoints/9681:
6258         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
6259         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
6260         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
6261         retrow all other exceptions.
6262
6263 For older changes see ChangeLog-2008.
6264 \f
6265 Local Variables:
6266 mode: change-log
6267 left-margin: 8
6268 fill-column: 74
6269 version-control: never
6270 coding: utf-8
6271 End: