* s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST
[external/binutils.git] / gdb / ChangeLog
1 2009-09-29  Ulrich Weigand  <uweigand@de.ibm.com>
2
3         * s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST
4         instead of CORE_ADDR for "amode".
5
6 2009-09-29  Joel Brobecker  <brobecker@adacore.com>
7
8         * ia64-tdep.c: Update the comments on how we insert/remove
9         breakpoints for L-X instructions.
10         (ia64_memory_insert_breakpoint, ia64_memory_remove_breakpoint):
11         Update the comments inside these functions.
12
13 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
14
15         * gdbarch.sh (displaced_step_hw_singlestep): New callback.
16         * gdbarch.c, gdbarch.h: Regenerate.
17         * arch-utils.c (default_displaced_step_hw_singlestep): New function.
18         * arch-utils.h (default_displaced_step_hw_singlestep): Add prototype.
19
20         * ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function.
21         (rs6000_gdbarch_init): Install it.
22
23         * infrun.c (displaced_step_fixup): Use new callback to determine
24         whether to "step" or "continue" displaced copy.
25         (resume): Likewise.  Do not call maybe_software_singlestep
26         for displaced stepping.
27         (maybe_software_singlestep): Do not handle displaced stepping.
28
29 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
30
31         * eval.c (evaluate_subexp_standard) [OP_OBJC_MSGCALL]: Support
32         platforms that use function descriptors.  Prefer to use function
33         pointer types instead of function types.
34         * linespec.c (decode_objc): Support function descriptors.  Fully
35         initialize SAL result.
36         * objc-lang.c (find_methods): Support function descriptors.
37         Do not require function symbol to point to text section.
38
39         * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): When calling
40         via a function pointer, use the descriptor it points to.
41
42 2009-09-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
43
44         Fix ia64 breakpoints in the L-X slot.
45         * ia64-tdep.c (ia64_memory_insert_breakpoint): Extend the comment.
46         New variable shadow_slotnum, use it appropriately instead of slotnum.
47         Move shadow_len initialization before SLOTNUM adjustment, cover now the
48         whole remaining bundle.  Error now on breakpoints requested for the
49         slot 2 of L-X bundles.  Better sanity check the requested slot 1 of L-X
50         bundles.
51         (ia64_memory_remove_breakpoint): New variable shadow_slotnum, use it
52         appropriately instead of slotnum.  Warn now on breakpoints requested
53         for the slot 2 of L-X bundles.  Better sanity check the requested slot
54         1 of L-X bundles.  Update the assertio check of PLACED_SIZE.
55         (ia64_breakpoint_from_pc): New variable shadow_slotnum, use it
56         appropriately instead of slotnum.  Move *lenptr initialization before
57         SLOTNUM adjustment, cover now the whole remaining bundle.  Error now
58         on breakpoints requested for the slot 2 of L-X bundles.  Better sanity
59         check the requested slot 1 of L-X bundles.  Simplify the returned
60         expression.
61
62 2009-09-28  Joel Brobecker  <brobecker@adacore.com>
63
64         * ia64-tdep.c (ia64_memory_insert_breakpoint): Check the slotnum
65         and the type of instruction before deciding which slot to save
66         in the breakpoint shadown contents.
67
68 2009-09-28  Doug Evans  <dje@google.com>
69
70         * linux-nat.c (status_to_str): Handle TRAP_IS_SYSCALL.
71         (TRAP_REMOVE_SYSCALL_FLAG): New macro.
72         (linux_nat_wait_1): Mask off is-syscall bit in wait status for
73         TRAP_IS_SYSCALL before passing value to caller.
74
75 2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
76
77         * valops.c (value_assign): Respect parent offset when
78         assigning to a bitfield.
79
80 2009-09-28  Hui Zhu  <teawater@gmail.com>
81
82         * i386-tdep.c (i386_process_record): Remove "0x" that
83         don't need.
84
85 2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
86
87         * s390-tdep.c (op_bctr, op_bctgr, op_bct, op1_bctg, op2_bctg,
88         op_bxh, op1_bxhg, op2_bxhg, op_bxle, op1_bxleg, op2_bxleg,
89         op1_brct, op2_brct, op1_brctg, op2_brctg, op_brxh, op1_brxhg,
90         op2_brxhg, op_brxle, op1_brxlg, op2_brxlg): New enum values.
91         (is_rsi, is_rie): New insn format decoder routines.
92         (s390_displaced_step_fixup): New function.
93         (s390_gdbarch_init): Install displaced stepping routines.
94
95 2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
96
97         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*):
98         Add linux-tdep.o to gdb_target_obs.
99         (s390*-*-*): Likewise.
100
101 2009-09-27  Don Lee  <don.lee@sunplusct.com>
102
103         * score-tdep.c: Comment out some simulator dependent codes.
104         * score-tdep.h: Delete some simulator dependent macro definitions.
105
106 2009-09-27  Hui Zhu  <teawater@gmail.com>
107
108         * record.c (record_open): Change "query" to "error".
109         (cmd_record_stop): Change "query" to "printf_unfiltered".
110
111 2009-09-26  Pierre Muller  <muller@ics.u-strasbg.fr>
112
113         * i386-nat.c (i386_stopped_data_address): Also check that
114         hitted watch register is not vacant.
115
116 2009-09-25  Tom Tromey  <tromey@redhat.com>
117
118         PR python/10664:
119         * language.h (struct language_defn) <la_get_string>: Add
120         'char_type' argument.
121         (LA_GET_STRING): Likewise.
122         (default_get_string, c_get_string): Update.
123         * language.c (default_get_string): Add 'char_type' argument.
124         * c-valprint.c (c_textual_element_type): Rename from
125         textual_element_type.  No longer static.  Update callers.
126         * c-lang.h (c_textual_element_type): Declare.
127         * c-lang.c (c_get_string): Add 'char_type' argument.
128
129 2009-09-25  Tom Tromey  <tromey@redhat.com>
130
131         * charset.c (iconv_open): Use UTF-16 and UTF-32, not UCS-2 and
132         UCS-4.
133         (iconv): Rename 'ucs_flag'.
134         (GDB_DEFAULT_TARGET_WIDE_CHARSET): Use UTF-32.
135         * c-lang.c (charset_for_string_type): Use UTF-16 and UTF-32, not
136         UCS-2 and UCS-4.
137         (convert_ucn): Use UTF-32.
138
139 2009-09-25  Nick Roberts  <nickrob@snap.net.nz>
140
141         * mi/gdb-mi.el: Remove file.
142
143 2009-09-23  Joel Brobecker  <brobecker@adacore.com>
144
145         * record.c (record_open, record_store_registers, record_xfer_partial):
146         Replace calls to nquery by calls to query.
147
148 2009-09-23  John Wright  <john.wright@hp.com>
149
150         PR gdb/10684:
151         * event-top.c (command_line_handler): Terminate linebuffer before
152         xstrdup.
153
154 2009-09-22  Joel Brobecker  <brobecker@adacore.com>
155
156         * solib.c (solib_bfd_open): Relax a bit the compatibility check.
157
158 2009-09-22  Daniel Jacobowitz  <dan@codesourcery.com>
159
160         * source.c (forget_cached_source_info): Clear last_source_visited.
161         (init_last_source_visited): Delete.
162         (directory_command): Do not clear last_source_visited.  Call
163         forget_cached_source_info only if required.
164         (unset_substitute_path_command, set_substitute_path_command): Call
165         forget_cached_source_info.
166         * mi/mi-cmd-env.c (mi_cmd_env_dir): Do not call
167         init_last_source_visited.
168         * defs.h (init_last_source_visited): Delete declaration.
169
170 2009-09-22  Tom Tromey  <tromey@redhat.com>
171
172         PR gdb/10583:
173         * python/py-value.c (valpy_int): Use PyLong_FromLongLong.
174         (valpy_long): Likewise.
175
176 2009-09-22  Tom Tromey  <tromey@redhat.com>
177
178         PR python/10680:
179         * eval.c (evaluate_subexp_standard) <do_call_it>: Handle internal
180         functions in EVAL_AVOID_SIDE_EFFECTS case.
181
182 2009-09-22  Jie Zhang  <jie.zhang@analog.com>
183
184         * MAINTAINERS: Add myself under Write After Approval.
185
186 2009-09-22  Pierre Muller  <muller@ics.u-strasbg.fr>
187
188         * windows-nat.c (ctrl_c_handler): Also handle CTRL_BREAK_EVENT.
189
190 2009-09-18  Keith Seitz  <keiths@redhat.com>
191
192         * cp-support.h (cp_validate_operator): Declare new function.
193         * cp-support.c (cp_validate_operator): New function.
194         * linespec.c (decode_compound): For C++ check for a valid operator.
195
196 2009-09-21  Keith Seitz  <keiths@redhat.com>
197
198         * c-exp.y (qualified_name): Call CHECK_TYPEDEF before deciding
199         that a type is not an aggregate type.
200
201 2009-09-21  Jason Orendorff  <jason.orendorff@gmail.com>
202
203         PR python/10666:
204         * python/py-function.c (fnpy_init): Use xstrdup.
205
206 2009-09-21  Jie Zhang  <jie.zhang@analog.com>
207
208         * doc/gdb.texinfo: Escape "{" and "}".
209
210 2009-09-21  Phil Muldoon <pmuldoon@redhat.com>
211
212         PR python/10633
213
214         * c-lang.c (c_printstr): Do not loop past  options->print_max when
215         iterating with wchar_iterate.
216
217 2009-09-21  Phil Muldoon <pmuldoon@redhat.com>
218
219         * python/py-value.c (valpy_getitem): Test value before allowing
220         subscript operation.
221
222 2009-09-21  Hui Zhu  <teawater@gmail.com>
223             Michael Snyder  <msnyder@vmware.com>
224
225         * amd64-linux-tdep.c (amd64_all_but_ip_registers_record): New
226         function.
227         (amd64_linux_syscall_record): Call
228         amd64_all_but_ip_registers_record if syscall is
229         sys_rt_sigreturn.
230         (AMD64_LINUX_redzone, AMD64_LINUX_xstate,
231         AMD64_LINUX_frame_size): New macros.
232         (amd64_linux_record_signal): New function.
233         (amd64_linux_init_abi): Call set_gdbarch_process_record_signal.
234
235 2009-09-21  Hui Zhu  <teawater@gmail.com>
236             Michael Snyder  <msnyder@vmware.com>
237
238         * i386-linux-tdep.c (i386_all_but_ip_registers_record): New
239         function.
240         (i386_linux_intx80_sysenter_record): Call
241         i386_all_but_ip_registers_record if syscall is sys_sigreturn
242         or sys_rt_sigreturn.
243         (I386_LINUX_xstate, I386_LINUX_frame_size): New macros.
244         (i386_linux_record_signal): New function.
245         (i386_linux_init_abi): Call set_gdbarch_process_record_signal.
246
247 2009-09-21  Hui Zhu  <teawater@gmail.com>
248             Michael Snyder  <msnyder@vmware.com>
249
250         * record.c (record_end_entry): New struct.
251         (record_type): Add end.
252         (record_arch_list_add_end): Set rec->u.end.sigval to
253         TARGET_SIGNAL_0.
254         (record_message_args): New struct.
255         (record_message): Call gdbarch_process_record_signal.
256         (do_record_message): Add argument "signal".
257         (record_resume): Ditto.
258         (record_wait): Ditto.  Check record_list->u.end.sigval
259         in replay mode.
260
261 2009-09-21  Hui Zhu  <teawater@gmail.com>
262             Michael Snyder  <msnyder@vmware.com>
263
264         * gdbarch.sh (process_record_signal): New interface.
265
266 2009-09-19  Matt Rice <ratmice@gmail.com>  (tiny change)
267
268         Checked in by Joel Brobecker  <brobecker@gnat.com>
269         * varobj.c (varobj_update): Initialize children_changed.
270
271 2009-09-19  Vladimir Prus  <vladimir@codesourcery.com>
272
273         * mi/mi-cmd-stack.c (list_args_or_locals): Workaround
274         gcc warning.
275
276 2009-09-19  Vladimir Prus  <vladimir@codesourcery.com>
277
278         * mi/mi-cmds.h (mi_cmd_stack_list_variables): Declare.
279         * mi/mi-cmds.c (mi_cmds): Register -stack-list-variables.
280         * mi/mi-cmd-stack.c (enum what_to_list): New.
281         (list_args_or_locals): Accept what_to_list parameter.
282         Use 'variables' as output name of all are requested.
283         (mi_cmd_stack_list_variables): New.
284         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Adjust.
285
286 2009-09-19  Eli Zaretskii  <eliz@gnu.org>
287
288         * config/djgpp/fnchange.lst: Add missing edits.
289
290 2009-09-18  Maxim Grigoriev  <maxim2405@gmail.com>
291
292         * xtensa-tdep.c (call0_analyze_prologue): Replace INT_MAX by UNIT_MAX.
293
294 2009-09-18  Jan Kratochvil  <jan.kratochvil@redhat.com>
295
296         * objfiles.c (free_objfile): Clear SYMFILE_OBJFILE if it is OBJFILE.
297         * rs6000-nat.c (vmap_ldinfo): Only assertion check SYMFILE_OBJFILE now.
298         * symfile.c (syms_from_objfile, symbol_file_clear): Likewise.
299
300 2009-09-18  Ulrich Weigand  <uweigand@de.ibm.com>
301
302         * rs6000-tdep.c (rs6000_builtin_type_vec128): Add v2_double
303         union member.
304
305 2009-09-17  Joel Brobecker  <brobecker@adacore.com>
306
307         Fix a build failure on pa-hpux:
308         * gdb_ptrace.h (PT_SYSCALL): Define here if not already defined.
309         * inf-ttrace.c (inf_ttrace_wait): Fix compilation failure
310         introduced after field syscall_id inside struct target_waitstatus
311         has been renamed into syscall_number.
312
313 2009-09-16  H.J. Lu  <hongjiu.lu@intel.com>
314
315         PR gdb/10649
316         * Makefile.in (GDB_DATADIR_PATH): Renamed to ...
317         (GDB_DATADIR): This.
318         (xml-syscall-install): Updated.
319
320 2009-09-16  Joel Brobecker  <brobecker@adacore.com>
321
322         GDB 7.0 branch created (branch timestamp: 2009-09-16 19:00 UTC)
323         * version.in: Bump version to 7.0.50.20090916-cvs.
324
325 2009-09-15  Tom Tromey  <tromey@redhat.com>
326
327         * varobj.h (varobj_update_result_t) <new>: New field.
328         (varobj_get_child_range, varobj_set_child_range): Declare.
329         (varobj_list_children): Update.
330         (varobj_enable_pretty_printing, varobj_has_more)
331         (varobj_pretty_printed_p): Declare.
332         * varobj.c (pretty_printing): New global.
333         (varobj_enable_pretty_printing): New function.
334         (struct varobj_root) <from, to, constructor, child_iter,
335         saved_item>: New fields.
336         (varobj_create): Don't call install_default_visualizer.
337         (instantiate_pretty_printer): Don't use value_copy.
338         (varobj_has_more): New function.
339         (restrict_range): New function.
340         (install_dynamic_child): Likewise.
341         (dynamic_varobj_has_child_method): Likewise.
342         (update_dynamic_varobj_children): Remove 'new_and_unchanged'
343         argument; add 'new', 'unchanged', 'from', and 'to' arguments.
344         Rewrite.
345         (varobj_get_num_children): Call update_dynamic_varobj_children.
346         (varobj_list_children): Add 'from' and 'to' arguments.  Ignore
347         result of update_dynamic_varobj_children.  Don't call
348         install_default_visualizer.  Restrict result range.
349         (varobj_add_child): Don't call install_default_visualizer.
350         (varobj_pretty_printed_p): New function.
351         (install_visualizer): Rewrite.  Move earlier in file.
352         (install_default_visualizer): Likewise.
353         (construct_visualizer): New function.
354         (install_new_value_visualizer): Likewise.
355         (install_new_value): Don't call release_value.  Special case
356         pretty-printed objects.  Use value_incref.  Rearrange "changed"
357         logic.
358         (varobj_get_child_range): New function.
359         (varobj_set_child_range): Likewise.
360         (varobj_set_visualizer): Rewrite.
361         (varobj_update): Rewrite pretty-printing logic.
362         (new_variable): Initialize new fields.
363         (free_variable): Destroy new fields.
364         (value_of_root): Copy 'from' and 'to'.
365         (my_value_of_variable): Handle pretty-printers.
366         (value_get_print_value): Rework pretty-printing logic.
367         (cplus_describe_child): Don't use release_value.
368         * mi/mi-cmds.h (mi_cmd_enable_pretty_printing)
369         (mi_cmd_var_set_update_range): Declare.
370         * mi/mi-cmds.c (mi_cmds): Add enable-pretty-printing and
371         var-set-update-range.
372         * mi/mi-cmd-var.c (print_varobj): Update.  Emit "dynamic"
373         attribute.
374         (mi_cmd_var_create): Emit "has_more" attribute.
375         (mi_cmd_var_set_format): Plug memory leak.
376         (mi_print_value_p): Replace 'type' argument with 'var'.  Handle
377         pretty-printed varobjs.
378         (mi_cmd_var_list_children): Accept 'from' and 'to' arguments.
379         Emit "has_more" attribute.
380         (mi_cmd_var_evaluate_expression): Plug memory leak.
381         (mi_cmd_var_assign): Likewise.
382         (varobj_update_one): Likewise.  Emit "dynamic", "has_more", and
383         "new_children" attributes.
384         (mi_cmd_enable_pretty_printing): New function.
385         (mi_cmd_var_set_update_range): Likewise.
386
387 2009-09-15  Doug Evans  <dje@google.com>
388
389         * dwarf2expr.h (dwarf_value_location): Add more comments describing
390         enum values.
391         (struct dwarf_stack_value): New struct.
392         (struct dwarf_expr_context): Change type of `stack' from CORE_ADDR*
393         to struct dwarf_stack_value*.
394         (struct dwarf_expr_piece): Move `v.value' into its own struct, v.expr,
395         all uses updated.  Add v.expr.in_stack_memory.
396         (dwarf_expr_push): Update declaration.
397         (dwarf_expr_fetch_in_stack_memory): Declare.
398         * dwarf2expr.c (dwarf_expr_grow_stack): Update calculation of
399         size of stack value.
400         (dwarf_expr_push): New arg in_stack_memory, all callers updated.
401         (dwarf_expr_fetch_in_stack_memory): New function.
402         (add_piece): Set in_stack_memory for non-literal values.
403         (execute_stack_op): Allow ops to specify whether the value is on the
404         program's stack.
405         (execute_stack_op, case DW_OP_fbreg): Mark value as in stack memory.
406         (execute_stack_op, case DW_OP_call_frame_cfa): Ditto.
407         (execute_stack_op, case DW_OP_dup): Copy in_stack_memory flag.
408         (execute_stack_op, cases DW_OP_pick, DW_OP_over): Ditto.
409         (execute_stack_op, cases DW_OP_swap, DW_OP_rot): Update type of
410         dwarf stack value.
411         * dwarf2loc.c (read_pieced_value): Call read_stack for values known
412         to be on the program's stack.
413         (dwarf2_evaluate_loc_desc, case DWARF_VALUE_MEMORY): Call
414         set_value_stack only for objects known to be in stack memory.
415         * dwarf2-frame.c (execute_stack_op): New arg initial_in_stack_memory,
416         all callers updated.
417
418         * target.c (memory_xfer_partial): Pass correct length to dcache_update.
419
420 2009-09-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
421
422         Fix gcc-4.5 HEAD warnings for enum ada_operator.
423         * Makefile.in (HFILES_NO_SRCDIR): Add ada-operator.inc.
424         * ada-lang.h (enum ada_operator): Move it to ...
425         * ada-operator.inc: ... a new file.
426         * expression.h (enum exp_opcode): Include ada-operator.inc.
427         New element OP_UNUSED_LAST.  Update comment for OP_EXTENDED0.
428
429         Fix gcc-4.5 HEAD warnings for GDB_FORM_cached_string.
430         * dwarf2read.c (GDB_FORM_cached_string)
431         (dwarf_form_name <GDB_FORM_cached_string>): Remove.
432         (struct attribute <dwarf_form>): Reduce the bit width.
433         (struct attribute <string_is_canonical>, DW_STRING_IS_CANONICAL): New.
434         (read_attribute_value <DW_FORM_string>)
435         (read_attribute_value <DW_FORM_strp>): Initialize
436         DW_STRING_IS_CANONICAL.
437         (dwarf2_name, dump_die_shallow <DW_FORM_string>)
438         (dump_die_shallow <DW_FORM_strp>): Update the code using former
439         GDB_FORM_cached_string.
440
441 2009-09-14  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
442
443         * amd64-linux-tdep.c: Include xml-syscall.h header, define the XML
444         syscall name for the architecture.
445         (amd64_linux_get_syscall_number): New function.
446         (amd64_linux_init_abi): Register the correct functions for syscall
447         catchpoint; set the correct syscall file name.
448         * breakpoint.c: New include: xml-syscall.h.
449         (set_raw_breakpoint_without_location): Setting the parameters
450         for the catch syscall feature.
451         (insert_catch_syscall): New.
452         (remove_catch_syscall): New.
453         (breakpoint_hit_catch_syscall): New.
454         (print_it_catch_syscall): New.
455         (print_one_catch_syscall): New.
456         (print_mention_catch_syscall): New.
457         (catch_syscall_breakpoint_ops): New.
458         (syscall_catchpoint_p): New.
459         (create_catchpoint_without_mention): New.
460         (create_catchpoint): Modified in order to use
461         create_catchpoint_without_mention.
462         (create_syscall_event_catchpoint): New.
463         (clean_up_filters): New.
464         (catch_syscall_split_args): New.
465         (catch_syscall_command_1): New.
466         (delete_breakpoint): Add cleanup for catch syscall.
467         (is_syscall_catchpoint_enabled): New.
468         (catch_syscall_enabled): New.
469         (catching_syscall_number): New.
470         (catch_syscall_completer): New completer function.
471         (add_catch_command): Add the completer function for catchpoints.
472         * breakpoint.h (syscalls_to_be_caught): New vector.
473         (catch_syscall_enabled): New.
474         (catching_syscall_number): New.
475         * gdbarch.c: Regenerated.
476         * gdbarch.h: Regenerated.
477         * gdbarch.sh: Add syscall catchpoint functions and structures.
478         (get_syscall_number): New.
479         (UNKNOWN_SYSCALL): New definition.
480         * i386-linux-nat.c (i386_linux_resume): Select the proper request
481         to be made for ptrace() considering if we are catching syscalls
482         or not.
483         * i386-linux-tdep.c: Include xml-syscall.h header, define the XML
484         syscall name for the architecture.
485         (i386_linux_get_syscall_number): New.
486         (i386_linux_init_abi): Register the correct functions for syscall
487         catchpoint; set the correct syscall file name.
488         * inf-child.c (inf_child_set_syscall_catchpoint): New.
489         (inf_child_target): Assign default values to target_ops.
490         * inf-ptrace.c (inf_ptrace_resume): Select the proper request
491         to be made for ptrace() considering if we are catching syscalls
492         or not.
493         * inferior.h (struct inferior): Included new variables
494         any_syscall_count, syscalls_counts and total_syscalls_count,
495         used to keep track of requested syscall catchpoints.
496         * infrun.c (resume): Add syscall catchpoint.
497         (deal_with_syscall_event): New.
498         (handle_inferior_event): Add syscall entry/return events.
499         (inferior_has_called_syscall): New.
500         * linux-nat.c: Define some helpful variables to track wether we have
501         support for the needed ptrace option.
502         (linux_test_for_tracesysgood): New.
503         (linux_supports_tracesysgood): New.
504         (linux_enable_tracesysgood): New.
505         (linux_enable_event_reporting): Save the current used ptrace
506         options.
507         (linux_child_post_attach): Calling linux_enable_tracesysgood.
508         (linux_child_post_startup_inferior): Likewise.
509         (linux_child_set_syscall_catchpoint): New function.
510         (linux_handle_extended_wait): Handle the case which the inferior stops
511         because it has called or returned from a syscall.
512         (linux_target_install_ops): Install the necessary functions to handle
513         syscall catchpoints.
514         * linux-nat.h (struct lwp_info): Include syscall_state into the
515         structure, which indicates if we are in a syscall entry or return.
516         * ppc-linux-tdep.c: Include xml-syscall.h header, define the XML
517         syscall filename for the arch.
518         (ppc_linux_get_syscall_number): New.
519         (ppc_linux_init_abi): Register the correct functions for syscall
520         catchpoint; setting the correct name for the XML syscall file.
521         * target.c (update_current_target): Update/copy functions related to
522         syscall catchpoint.
523         (target_waitstatus_to_string): Add syscall catchpoint entry/return
524         events.
525         * target.h (struct target_waitstatus): Add syscall number.
526         (struct syscall): New struct to hold information about syscalls
527         in the system.
528         (struct target_ops): Add ops for syscall catchpoint.
529         (inferior_has_called_syscall): New.
530         (target_set_syscall_catchpoint): New.
531         * xml-support.c (xml_fetch_content_from_file): New function,
532         transferred from xml-tdesc.c.
533         * xml-support.h (xml_fetch_content_from_file): New.
534         * xml-tdesc.c (fetch_xml_from_file): Function removed;
535         transferred to xml-support.c.
536         (file_read_description_xml): Updated to use the new
537         xml_fetch_content_from_file function.
538         * syscalls/gdb-syscalls.dtd: New definition file for syscall's XML
539         support.
540         * syscalls/amd64-linux.xml: New file containing information about
541         syscalls for GNU/Linux systems that use amd64 architecture.
542         * syscalls/i386-linux.xml: New file containing information about
543         syscalls for GNU/Linux systems that use i386 architecture.
544         * syscalls/ppc-linux.xml: New file containing information about
545         syscalls for GNU/Linux systems that use PPC architecture.
546         * syscalls/ppc64-linux.xml: New file containing information about
547         syscalls for GNU/Linux systems that use PPC64 architecture.
548         * xml-syscall.c: New file containing functions for manipulating
549         syscall's XML files.
550         * xml-syscall.h: New file, exporting the functions above mentioned.
551         * Makefile.in: Support for relocatable GDB datadir and XML
552         syscall.
553         * NEWS: Added information about the catch syscall feature.
554
555 2009-09-14  Doug Evans  <dje@google.com>
556
557         * target.c (memory_xfer_partial): Only update dcache after we know
558         the write succeeded.
559
560 2009-09-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
561
562         *minsyms.c (lookup_minimal_symbol_by_pc_section_1): Assert non-NULL
563         section.
564         (lookup_minimal_symbol_by_pc_section): Check for NULL section.
565         (lookup_minimal_symbol_by_pc): Adjust.
566
567 2009-09-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
568
569         * objfiles.c (qsort_cmp): Remove asserts.
570         (insert_section_p, filter_debuginfo_sections): New function.
571         (filter_overlapping_sections): Likewise.
572         (update_section_map): Adjust.   
573
574 2009-09-13  Daniel Jacobowitz  <dan@codesourcery.com>
575
576         * frame.c (get_frame_id): Default to outer_frame_id if the this_id
577         method does not supply an ID.  Assert that the result is not
578         null_frame_id.
579         (outer_frame_id): New.
580         (frame_id_p): Accept outer_frame_id.
581         (frame_id_eq): Allow outer_frame_id to be equal to itself.
582         (frame_find_by_id): Revert previous local workarounds.
583         (get_prev_frame_1): Adjust end-of-stack check to test outer_frame_id.
584         * frame.h (null_frame_id, frame_id_p): Update comments.
585         (outer_frame_id): Declare.
586         * infrun.c (handle_inferior_event): Do not treat all steps from the
587         outermost frame as subroutine calls.
588
589         * libunwind-frame.c (libunwind_frame_this_id): Do not clear THIS_ID.
590         * hppa-tdep.c (hppa_stub_frame_this_id): Likewise.
591         * ia64-tdep.c (ia64_frame_this_id): Likewise.
592         (ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id):
593         Use outer_frame_id instead of null_frame_id.
594         * amd64obsd-tdep.c (amd64obsd_trapframe_cache): Use outer_frame_id.
595         * i386obsd-tdep.c (i386obsd_trapframe_cache): Likewise.
596         * inline-frame.c (inline_frame_this_id): Refuse outer_frame_id.
597         * thread.c (restore_selected_frame): Update comment and remove
598         frame_id_p check.
599
600 2009-09-11  Doug Evans  <dje@google.com>
601
602         * dwarf2expr.c (execute_stack_op, case DW_OP_piece): Delete unused
603         local addr_or_regnum.
604
605         * objfiles.c (struct objfile_data): Delete member cleanup and replace
606         with save, free.
607         (register_objfile_data_with_cleanup): Delete arg cleanup and replace
608         with save, free.  All callers updated.
609         (clear_objfile_data): Replace cleanup loop with separate save and
610         free loops.
611         * objfiles.h (register_objfile_data_with_cleanup): Update.
612         * arm-tdep.c (arm_objfile_data_free): Renamed from
613         arm_objfile_data_cleanup, all callers updated.
614         * dwarf2read.c (dwarf2_per_objfile_free): Renamed from
615         dwarf2_per_objfile_cleanup, all callers updated.
616         * python/py-objfile.c (py_free_objfile): Renamed from clean_up_objfile,
617         all callers updated.
618         * python/py-type.c (save_objfile_types): Renamed from
619         clean_up_objfile_types, all callers updated.
620
621 2009-09-11  Tom Tromey  <tromey@redhat.com>
622
623         * dwarf2loc.c (struct piece_closure) <arch>: New field.
624         (dwarf2_evaluate_loc_desc): Update.
625         (dwarf2_loc_desc_needs_frame): Likewise.
626         (allocate_piece_closure): Initialize new field.
627         (read_pieced_value): Update.
628         (write_pieced_value): Update.
629         (copy_pieced_value_closure): Update.
630         * dwarf2expr.h (enum dwarf_value_location): New.
631         (struct dwarf_expr_context) <in_reg>: Remove.
632         <location, len, data>: New fields.
633         (struct dwarf_expr_piece) <in_reg, value>: Remove.
634         <location, v>: New fields.
635         * dwarf2expr.c (add_piece): Remove in_reg, value arguments.
636         Update.
637         (require_composition): New function.
638         (execute_stack_op): Update.
639         <DW_OP_implicit_value, DW_OP_stack_value>: New cases.
640         <DW_OP_reg0>: Set location, not in_reg.
641         <DW_OP_regx>: Likewise.  Use require_composition.
642         <DW_OP_fbreg>: Update.
643         <DW_OP_piece>: Likewise.
644         * dwarf2-frame.c (execute_stack_op): Update.
645
646 2009-09-10  Anthony Green  <green@moxielogic.com>
647
648         * moxie-tdep.c (moxie_analyze_prologue): Recognize new prologue
649         sequences.
650
651 2009-09-10  Michael Snyder  <msnyder@vmware.com>
652
653         * remote.c (PACKET_bc, PACKET_bs): New enums.
654         (remote_protocol_features): Add ReverseStep, ReverseContinue.
655         (remote_resume): Check for reverse capability.
656         (_initialize_remote): Add packet config for "bs" and "bc" packets.
657         * NEWS (new options): Mention set/show for "bs" and "bc" packets.
658
659 2009-09-10  Joel Brobecker  <brobecker@adacore.com>
660
661         * top.c (interactive_mode): New static variable.
662         (show_interactive_mode): New function.
663         (input_from_terminal_p): If interactive_mode is not auto, then
664         use that rather than checking the stdin settings.
665         (init_main): Add "set/show interactive-mode" command.
666         * NEWS: Add entry for new "set/show interactive-mode" command.
667
668 2009-09-10  Joel Brobecker  <brobecker@adacore.com>
669
670         * configure.ac: Fix the names of the python source and object files
671         following the renaming done in an earlier change.
672         * configure: Regenerate.
673
674 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
675
676         Fix a build failure on AIX.
677         * rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table
678         instead of relying on the to_sections/to_section_end target_ops
679         field, since the latter have been removed in a previous patch.
680
681 2009-09-08  Thiago Jung Bauermann  <thiago.bauermann@gmail.com>
682
683         * Makefile.in (py-cmd.o): Renamed from python-cmd.o.  Updated
684         references.
685         (py-frame.o): Renamed from python-frame.o.  Updated references.
686         (py-function.o): Renamed from python-function.o.  Updated references.
687         (py-objfile.o): Renamed from python-objfile.o.  Updated references.
688         (py-prettyprint.o): Renamed from python-prettyprint.o.  Updated
689         references.
690         (py-type.o): Renamed from python-type.o.  Updated references.
691         (py-utils.o): Renamed from python-utils.o.  Updated references.
692         (py-value.o): Renamed from python-value.o.  Updated references.
693         * py-cmd.c: Renamed from python-cmd.c.
694         * py-frame.c: Renamed from python-frame.c.
695         * py-function.c: Renamed from python-function.c.
696         * py-objfile.c: Renamed from python-objfile.c.
697         * py-prettyprint.c: Renamed from python-prettyprint.c.
698         * py-type.c: Renamed from python-type.c.
699         * py-utils.c: Renamed from python-utils.c.
700         * py-value.c: Renamed from python-value.c.
701
702 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
703
704         Avoid quadratic behavior when computing the value of a register.
705         * frame.c (frame_stash): New static constant.
706         (frame_stash_add, frame_stash_find, frame_stash_invalidate):
707         New functions.
708         (get_frame_id): Minor reformatting. Add the frame to the frame stash.
709         (frame_find_by_id): Search the frame stash first before walking all
710         frames starting from te current_frame.
711         (reinit_frame_stash): Add call to frame_stash_invalidate ();
712
713 2009-09-08  Joel Brobecker  <brobecker@adacore.com>
714
715         * block.c (contained_in): Return zero for nested functions.
716         * blockframe.c (block_innermost_frame): Delete unreferenced local
717         variable.
718
719 2009-09-08  Doug Evans  <dje@google.com>
720
721         * target.c (initialize_targets): Fix thinko in stack_cache_enabled_p.
722
723 2009-09-08  Michael Snyder  <msnyder@vmware.com>
724
725         * amd64-linux-tdep.h (enum amd64_syscall): New enum consts, 
726         to replace literal consts used in amd64-linux-tdep.c
727         * linux-record.h (enum gdb_syscall): New enum consts, to replace
728         literal consts used in amd64-linux-tdep.c and linux-record.c.
729         * amd64-linux-tdep.c (amd64_canonicalize_syscall): New function,
730         translate from native amd64 Linux syscall id to internal gdb id.
731         (amd64_linux_syscall_record): Switch statement abstracted out 
732         and replaced with a call to amd64_canonicalize_syscall.
733         * linux-record.c (record_linux_system_call): Replace literal
734         consts with enum consts.
735         * i386-linux-tdep.c (i386_canonicalize_syscall): New function,
736         trivially translate from native i386 Linux syscalls to gdb syscalls.
737         (i386_linux_intx80_sysenter_record): 
738
739 2009-09-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
740
741         * gdb/Makefile.in (check//%): Parse 'config.status --version'
742         output to recreate the configuration from the testsuite directory,
743         rather than running 'config.status --recheck' from a different
744         build directory.  Let configure do the recursion rather than
745         doing it manually.
746
747 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
748
749         * ia64-tdep.c (ia64_memory_remove_breakpoint): Call do_cleanups
750         before a return.
751
752 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
753
754         * ia64-tdep.c (ia64_memory_insert_breakpoint)
755         (ia64_memory_remove_breakpoint): Return immediately if any of memory
756         reads fail.  Do not combine the VAL values.
757
758 2009-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
759
760         Fix ia64 shadowing of breakpoints in multiple slots of a single bundle.
761         * ia64-tdep.c (ia64_memory_insert_breakpoint): New call
762         of make_show_memory_breakpoints_cleanup with parameter 0.  Move the
763         reading of SHADOW_CONTENTS to this memory state point of code.  Update
764         comment for the memory re-read.
765
766 2009-09-07  Michael Snyder  <msnyder@vmware.com>
767
768         * record.c: Minor comment and white space fix-ups.
769
770 2009-09-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
771
772         * m68k-tdep.c (m68k_gdbarch_init): Allocate TDEP as cleared.
773         * sparc-tdep.c (sparc32_gdbarch_init): Allocate TDEP as cleared.
774         Remove explicit clearing of TDEP fields.
775
776 2009-09-06  Hui Zhu  <teawater@gmail.com>
777
778         * i386-tdep.c (i386_record_check_override): Deleted.
779         (i386_record_lea_modrm): Ditto.
780         (i386_process_record): Ditto.
781
782 2009-09-05  Eli Zaretskii  <eliz@gnu.org>
783
784         * config/djgpp/djconfig.sh: Fix for Autoconf 2.64.
785         * config/djgpp/config.sed: Fix for Autoconf 2.64.
786
787 2009-09-05  Hui Zhu  <teawater@gmail.com>
788
789         * i386-tdep.c (i386_record_s): Add orig_addr.
790         (i386_record_check_override): New function.
791         (i386_record_lea_modrm): Call i386_record_check_override.
792         (i386_process_record): Ditto.
793
794 2009-09-03  Nathan Froyd  <froydnj@codesourcery.com>
795
796         * dwarf2loc.c (struct piece_closure): New.
797         (allocate_piece_closure): New function.
798         (read_pieced_value): New function.
799         (write_pieced_value): New function.
800         (copy_pieced_value_closure): New function.
801         (free_pieced_value_closure): New function.
802         (pieced_value_funcs): Define.
803         (dwarf2_evaluate_loc_desc): Return a computed value for a variable
804         described with pieces.
805
806 2009-09-03  Pierre Muller <muller@ics.u-strasbg.fr>
807             Richard Earnshaw <rearnsha@arm.com>
808
809         * arm-tdep.c (displaced_write_reg): Replace call to abort by call
810         to internal_error.
811
812 2009-09-02  Tom Tromey  <tromey@redhat.com>
813
814         * frame.h (frame_unwinder_is): Declare.
815         * frame.c (frame_unwinder_is): New function.
816         * dwarf2loc.c: Include dwarf2-frame.h.
817         (dwarf_expr_frame_cfa): New function.
818         (dwarf2_evaluate_loc_desc): Use it.
819         (needs_frame_frame_cfa): New function.
820         (dwarf2_loc_desc_needs_frame): Use it.
821         * dwarf2expr.h (struct dwarf_expr_context) <get_frame_cfa>: New
822         field.
823         * dwarf2expr.c (execute_stack_op) <DW_OP_call_frame_cfa>: New
824         case.
825         * dwarf2-frame.h (dwarf2_frame_cfa): Declare.
826         * dwarf2-frame.c (no_get_frame_cfa): New function.
827         (execute_stack_op): Use it.
828         (dwarf2_frame_cfa): New function.
829
830 2009-09-02  Hui Zhu  <teawater@gmail.com>
831
832         * record.c (record_resume): Change "signal" to "siggnal".
833
834 2009-09-01  Hui Zhu  <teawater@gmail.com>
835
836         * record.c (record_resume): Change "siggnal" to "signal".
837
838 2009-09-01  Hui Zhu  <teawater@gmail.com>
839
840         * record.c (record_resume_siggnal): Deleted.
841         (record_resume): Ditto.
842         (record_wait): Change record_resume_siggnal to
843         TARGET_SIGNAL_0.
844
845 2009-08-31  Jacob Potter  <jdpotter@google.com>
846             Doug Evans  <dje@google.com>
847
848         Implement TARGET_OBJECT_STACK_MEMORY.
849         * NEWS: Add note on new "set stack-cache" option.
850         * corefile.c (read_stack): New function.
851         * dcache.c (dcache_struct): New member ptid.
852         (dcache_enable_p): Mark as obsolete.
853         (show_dcache_enabled_p): Flag option as deprecated.
854         (dcache_invalidate): Update ptid.
855         (dcache_invalidate_line): New function.
856         (dcache_read_line): No longer check cacheable attribute, stack
857         accesses get cached despite attribute.
858         (dcache_init): Set ptid.
859         (dcache_xfer_memory): Flush cache if from different ptid than before.
860         Update cache after write.
861         (dcache_update): New function.
862         (dcache_info): Report ptid.
863         (_initialize_dcache): Update text for `remotecache' to indicate it
864         is obsolete.
865         * dcache.h (dcache_update): Declare.
866         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Mark values on stack with
867         set_value_stack.
868         * frame-unwind.c (frame_unwind_got_memory): Ditto.
869         * gdbcore.h (read_stack): Declare.
870         * memattr.c (mem_enable_command): Call target_dcache_invalidate
871         instead of dcache_invalidate.
872         (mem_disable_command, mem_delete_command): Ditto.
873         * target.c (stack_cache_enabled_p_1): New static global.
874         (stack_cache_enabled_p): New static global.
875         (set_stack_cache_enabled_p): New function.
876         (show_stack_cache_enabled_p): New function.
877         (target_dcache): Make static.
878         (target_dcache_invalidate): New function.
879         (target_load, target_resume): Call target_dcache_invalidate
880         instead of dcache_invalidate.
881         (memory_xfer_partial): New arg object, all callers updated.
882         Check for existing inferior before calling dcache routines.
883         When writing non-TARGET_OBJECT_STACK_MEMORY, notify dcache.
884         (target_xfer_partial): Call memory_xfer_partial for
885         TARGET_OBJECT_STACK_MEMORY.
886         (target_read_stack): New function.
887         (initialize_targets): Install new option `stack-cache'.
888         * target.h: Remove #include of dcache.h.
889         (enum target_object): New value TARGET_OBJECT_STACK_MEMORY.
890         (target_dcache): Delete.
891         (target_dcache_invalidate): Declare.
892         (target_read_stack): Declare.
893         * top.c (prepare_execute_command): New function.
894         (execute_command): Call prepare_execute_command
895         instead of free_all_values.
896         * top.h (prepare_execute_command): Declare.
897         * valops.c (get_value_at): New function.
898         (value_at): Guts moved to get_value_at.
899         (value_at_lazy): Similarly.
900         (value_fetch_lazy): Call read_stack for stack values.
901         * value.c (struct value): New member `stack'.
902         (value_stack, set_value_stack): New functions.
903         * value.h (value_stack, set_value_stack): Declare.
904         * mi/mi-main.c (mi_cmd_execute): Call prepare_execute_command
905         instead of free_all_values.
906
907 2009-08-29  Hui Zhu  <teawater@gmail.com>
908
909         * i386-tdep.c (i386_process_record): Fix the error of string
910         ops instructions's handler.
911
912 2009-08-28  Doug Evans  <dje@google.com>
913
914         * top.c (execute_command): Remove redundant comment.
915
916 2009-08-28  Daniel Jacobowitz  <dan@codesourcery.com>
917
918         PR gdb/10565
919
920         * value.c (value_primitive_field): Do not save value_offset for
921         bitfields.
922         (unpack_bits_as_long): Do not read an entire ULONGEST.
923
924 2009-08-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
925
926         Support constant DW_AT_data_member_location by GCC PR debug/40659.
927         * dwarf2read.c
928         (dwarf2_add_field <DW_TAG_member> <DW_AT_data_member_location>):
929         Initialize BYTE_OFFSET to 0 by default.  Explicitly check if
930         attr_form_is_block.
931         (dwarf2_add_field <DW_TAG_inheritance> <DW_AT_data_member_location>)
932         (read_common_block <DW_AT_data_member_location>): New variable
933         byte_offset.  Fix crash on non-DW_BLOCK ATTR values.
934
935 2009-08-28  Hui Zhu  <teawater@gmail.com>
936
937         * record.c (record_list_release_next): Change the first
938         record_reg to record_end.
939
940 2009-08-27  Doug Evans  <dje@google.com>
941
942         * value.c (free_all_values): Tweak comment.
943
944         * NEWS: Add note on "info sharedlibrary".
945         Remove note on "set print symbol-loading".
946         * main.c (captured_main): Pass !batch for from_tty when calling
947         symbol_file_add_main.
948         * objfiles.h (objfile_has_partial_symbols): Declare.
949         (objfile_has_full_symbols): Declare.
950         * objfiles.c (objfile_has_partial_symbols): New function.
951         (have_partial_symbols): Use it.
952         (objfile_has_full_symbols): New function.
953         (have_full_symbols): Use it.
954         * solib.c: Include interps.h.
955         (solib_read_symbols): Back out patch of 2008-07-10.
956         Add test for info_verbose for symbol loading messages for
957         consistency with symfile.c.
958         (info_sharedlibrary_command): Handle optional parameter of regex of
959         libraries to list.  Inform user of libraries without debugging info.
960         Rewrite to use ui_out routines to format output.
961         * symfile.c (print_symbol_loading): Delete.
962         (symbol_file_add_with_addrs_or_offsets): Back out patch of 2008-07-10.
963         Print "no debugging symbols found" only if from_tty || info_verbose;
964         and only check file being loaded, not all files.
965         (reread_symbols): Test file being loaded for whether it has symbols,
966         not all files.
967         (__initialize_symfile): Delete `set print symbol-loading'.
968         * symfile.h (print_symbol_loading): Delete.
969
970 2009-08-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
971
972         * varobj.c (varobj_create): Error if the specified frame was not found
973         and it is needed.
974
975 2009-08-26  Michael Snyder  <msnyder@vmware.com>
976
977         * i386-tdep.c (i386_process_record): Break out of prefix loop
978         if not amd64.  Otherwise inc/dec instructions are lost.
979
980 2009-08-25  Keith Seitz  <keiths@redhat.com>
981
982         * c-exp.y (yylex): Add cxx_only check for tokentab2 and tokentab3
983         searches. 
984         (tokentab3): Add cxx_only for DOT_STAR.
985
986 2009-08-25  Pedro Alves  <pedro@codesourcery.com>
987
988         * inferior.c (print_inferior): Align columns left.  Remove header
989         for the the "current" column.  Rename column "Id" to "Num".
990         Rename column "PID" to "Description".  Print if there's no selected
991         inferior.
992
993 2009-08-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
994
995         Fix ia64 start crash when GDB built with -lmcheck.
996         * ia64-tdep.c (ia64_gdbarch_init): Allocate TDEP as cleared.  Remove
997         specific clearing of TDEP SIGCONTEXT_REGISTER_ADDRESS and
998         PC_IN_SIGTRAMP.
999
1000 2009-08-24  Keith Seitz  <keiths@redhat.com>
1001
1002         * c-exp.y (tokentab3): Add new token, ARROW_STAR. Changed all users.
1003         (tokentab2): Add new token, DOT_STAR. Changed all users.
1004
1005 2009-08-24  Keith Seitz  <keiths@redhat.com>
1006
1007         * symtab.c (default_make_symbol_completion_list): Keep
1008         ':', too, so that we can limit searches in namespaces
1009         and classes. 
1010
1011 2009-08-24  Tom Tromey  <tromey@redhat.com>
1012
1013         * python/python-value.c (valpy_richcompare): Don't return from
1014         inside a TRY_CATCH.
1015
1016 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1017
1018         * CONTRIBUTE: Bump documented Autoconf version.
1019         * configure.ac: Do not substitute datarootdir, htmldir,
1020         pdfdir, docdir.  Do not process --with-datarootdir,
1021         --with-htmldir, --with-pdfdir, --with-docdir.
1022         * configure: Regenerate.
1023
1024         * aclocal.m4: Regenerate.
1025         * config.in: Likewise.
1026         * configure: Likewise.
1027         * gnulib/Makefile.in: Likewise.
1028
1029         * configure.ac: Use AC_USE_SYSTEM_EXTENSIONS instead of
1030         AC_GNU_SOURCE, AC_AIX, AC_ISC_POSIX.
1031
1032 2009-08-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
1033
1034         * objfiles.h (gdb_bfd_ref): New prototype.
1035         * objfiles.c (gdb_bfd_ref): New function.
1036         (allocate_objfile): Call it.
1037         (gdb_bfd_unref): Adjust assertion.
1038         * solib.c (solib_map_sections): Add reference.
1039         (symbol_add_stub): Don't add reference here.
1040         * symfile.c (reread_symbols): Add reference.
1041
1042 2009-08-21  Ken Werner <ken@linux.vnet.ibm.com>
1043             Doug Evans  <dje@google.com>
1044
1045         * jit.c (jit_event_handler): Use paddress to print target addresses.
1046         Wrap printf string in _().
1047
1048 2009-08-21  Doug Evans  <dje@google.com>
1049
1050         * jit.c (jit_read_descriptor): New arg gdbarch, all callers updated.
1051         (jit_read_code_entry, jit_register_code): Ditto.
1052         (jit_event_handler): Ditto.
1053         (jit_inferior_init): Renamed from previous jit_inferior_created_hook.
1054         (jit_inferior_created_hook, jit_breakpoint_re_set): New functions.
1055         (jit_inferior_created_observer): Renamed from
1056         jit_inferior_created_hook1, all callers updated.
1057         * jit.h (jit_breakpoint_re_set): Declare.
1058         (jit_event_handler): Update prototype.
1059         * breakpoint.c (breakpoint_re_set): Call jit_breakpoint_re_set instead
1060         of jit_inferior_created_hook.
1061
1062 2009-08-21  Hui Zhu  <teawater@gmail.com>
1063
1064         * record.c (record_wait): Change the argument of
1065         record_beneath_to_wait to options.
1066
1067 2009-08-20  Jacob Potter  <jdpotter@google.com>
1068
1069         Replace dcache with splay tree.
1070         Remove partially implemented writeback support.
1071         * dcache.c: Include splay-tree.h.
1072         (LINE_SIZE_POWER): Change from 5 to 6.
1073         (DCACHE_SIZE): Change from 64 to 4096.
1074         (ENTRY_INVALID, ENTRY_VALID, ENTRY_DIRTY): Delete.
1075         (state_chars): Delete.
1076         (struct dcache_block): Clean up; remove state and anydirty fields.
1077         (struct dcache_struct): Redefine as a splay tree and linked list.
1078         (last_cache): Make static.
1079         (dcache_invalidate, dcache_hit): Rewrite for new cache structure.
1080         (dcache_read_line, dcache_alloc): Rewrite for new cache structure.
1081         (dcache_write_line): Delete.
1082         (dcache_writeback): Delete.
1083         (dcache_peek_byte): Clean up; remove "invalid" state check.
1084         (dcache_poke_byte): Rewrite for new cache structure; clarify comment.
1085         (dcache_splay_tree_compare): New function.
1086         (dcache_init, dcache_free): Rewrite for new cache structure.
1087         (dcache_xfer_memory): Rewrite for new write-through cache structure.
1088         (dcache_print_line): New function.
1089         (dcache_info): Rewrite for new cache structure.
1090         (_initialize_dcache): Update "info dcache" help text.
1091         * dcache.h (dcache_xfer_memory): Update declaration.
1092         * target.c (memory_xfer_partial): Update calls to dcache_xfer_memory.
1093
1094 2009-08-19  Reid Kleckner  <reid@kleckner.net>
1095
1096         Add interface for JIT code generation.
1097         * NEWS: Announce JIT interface.
1098         * Makefile.in (SFILES): Add jit.c.
1099         (HFILES_NO_SRCDIR): Add jit.h.
1100         (COMMON_OBS): Add jit.o.
1101         * jit.c: New file.
1102         * jit.h: New file.
1103         * breakpoint.h (enum bptype): Add bp_jit_event to enum.
1104         * breakpoint.c:
1105         (update_breakpoints_after_exec): Delete jit breakpoints after exec.
1106         (bpstat_what): Update event table for bp_jit_event.
1107         (print_it_typical): Added case for bp_jit_event.
1108         (print_one_breakpoint_location): Added case for bp_jit_event.
1109         (allocate_bp_location): Added case for bp_jit_event.
1110         (mention): Added case for bp_jit_event.
1111         (delete_command): Added case for bp_jit_event.
1112         (breakpoint_re_set_one): Added case for bp_jit_event.
1113         (breakpoint_re_set): Added call to jit_inferior_created_hook.
1114         (create_jit_event_breakpoint): New.
1115         * infrun.c (handle_inferior_event): Add handler for jit event.
1116         (follow_exec): Add call to jit_inferior_created_hook.
1117
1118 2009-08-19  Ulrich Weigand  <uweigand@de.ibm.com>
1119
1120         * value.c (enum internalvar_kind): Replace INTERNALVAR_SCALAR by
1121         INTERNALVAR_INTEGER and INTERNALVAR_POINTER.
1122         (union internalvar_data): Replace "scalar" member by "integer"
1123         and "pointer".
1124         (value_of_internalvar): Handle INTERNALVAR_INTEGER and
1125         INTERNALVAR_POINTER instead of INTERNALVAR_SCALAR.
1126         (get_internalvar_integer): Likewise.
1127         (set_internalvar): Likewise.
1128         (set_internalvar_integer): Likewise.
1129         (preserve_one_internalvar): Likewise.
1130         (value_from_pointer): Handle typedef'd pointer types.
1131
1132 2009-08-18  Tom Tromey  <tromey@redhat.com>
1133
1134         * utils.c (add_internal_problem_command): Free set_doc and
1135         show_doc.
1136         * remote.c (add_packet_config_cmd): Free set_doc and show_doc.
1137         * language.c (add_language): Free language_set_doc.
1138
1139 2009-08-18  Tom Tromey  <tromey@redhat.com>
1140
1141         * Makefile.in (ALL_TARGET_OBS): Remove prologue-value.o, solib.o.
1142
1143 2009-08-17  Ulrich Weigand  <uweigand@de.ibm.com>
1144
1145         * symfile.c (reread_symbols): Call objfiles_changed *before*
1146         calling clear_symtab_users.
1147
1148 2009-08-17  Michael Snyder  <msnyder@vmware.com>
1149
1150         * amd64-tdep.c: Add a frame unwinder for function epilogues.
1151         (amd64_in_function_epilogue_p): New function.
1152         (amd64_epilogue_frame_sniffer): New function.
1153         (amd64_epilogue_frame_cache): New function.
1154         (amd64_epilogue_frame_this_id): New function.
1155         (amd64_epilogue_frame_unwind): New struct frame_unwind.
1156         (amd64_init_abi): Hook the new unwinder.
1157
1158         * amd64-linux-tdep.c (amd64_linux_init_abi): Set gdbarch to use
1159         SVR4 method for skip_trampoline_code.
1160
1161 2009-08-17  Pedro Alves  <pedro@codesourcery.com>>
1162
1163         * objfiles.c (objfile_relocate): Relocate the entry point before
1164         relocating the section offsets.  Flush the section map before
1165         resetting breakpoints.
1166
1167 2009-08-14  Doug Evans  <dje@google.com>
1168
1169         * symfile.c (find_separate_debug_file): Remove double free of
1170         canon_name.
1171
1172 2009-08-14  Pedro Alves  <pedro@codesourcery.com>
1173
1174         * top.c (any_thread_of): Delete.
1175         (kill_or_detach): Use any_thread_of_process.
1176         * top.c (print_inferior_quit_action): New.
1177         (quit_confirm): Rewrite to print info about all inferiors.
1178         * target.c (dispose_inferior): New.
1179         (target_preopen): Use it.
1180
1181 2009-08-14  Pedro Alves  <pedro@codesourcery.com>
1182
1183         * ui-file.h (ui_file_xstrdup): Mention that the length argument
1184         may be NULL.
1185         * ui-file.c (ui_file_xstrdup): Don't dereference LENGTH if it is
1186         NULL.
1187         * aix-thread.c (aix_thread_extra_thread_info): Pass NULL as length
1188         parameter to ui_file_xstrdup.
1189         * arm-tdep.c (_initialize_arm_tdep): Ditto.
1190         * infrun.c (print_target_wait_results): Ditto.
1191         * language.c (add_language): Ditto.
1192         * linespec.c (cplusplus_error): Ditto.
1193         * remote.c (escape_buffer): Ditto.
1194         * typeprint.c (type_to_string): Ditto.
1195         * utils.c (error_stream): Ditto.
1196         * varobj.c (value_get_print_value): Ditto.
1197         * xtensa-tdep.c (xtensa_verify_config): Replace `dummy' local with
1198         `length' local.  Pass it to ui_file_xstrdup, and avoid an strlen
1199         call.
1200         * gdbarch.sh (verify_gdbarch): Ditto.
1201         * gdbarch.c: Regenerate.
1202         * cli/cli-setshow.c (do_setshow_command): Pass NULL as length
1203         parameter to ui_file_xstrdup.
1204         * python/python-frame.c (frapy_str): Ditto.
1205         * python/python-type.c (typy_str): Use the length local instead of
1206         calling strlen.
1207         * python/python-value.c (valpy_str): Pass NULL as length parameter
1208         to ui_file_xstrdup.
1209
1210 2009-08-13  Doug Evans  <dje@google.com>
1211
1212         * utils.c (gnu_debuglink_crc32): Store crc32_table as unsigned int
1213         instead of unsigned long.
1214
1215 2009-08-13  Tom Tromey  <tromey@redhat.com>
1216
1217         * varobj.c (update_dynamic_varobj_children): Don't use
1218         value_copy.
1219         * value.h: (preserve_one_value): Declare.
1220         (value_prepend_to_list, value_remove_from_list): Remove.
1221         * value.c (preserve_one_value): No longer static.
1222         (preserve_values): Call preserve_python_values.
1223         (value_prepend_to_list): Remove.
1224         (value_remove_from_list): Remove.
1225         * python/python.h (values_in_python): Don't declare.
1226         (preserve_python_values): Declare.
1227         * python/python-value.c (values_in_python): Change type.  Move
1228         lower.  Now static.
1229         (struct value_object): Add struct tag.
1230         <next, prev>: New fields.
1231         (valpy_dealloc): Update.
1232         (note_value): New function.
1233         (valpy_new): Use value_incref, note_value.
1234         (preserve_python_values): New function.
1235         (valpy_positive): Don't use value_copy.
1236         (value_to_value_object): Use value_incref, note_value.
1237         (convert_value_from_python): Update comment.
1238
1239 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
1240
1241         * remote.c (remote_pid_to_str): If printing a process id and we
1242         don't know what the remote pid could be, output "Remote target";
1243         otherwise, use normal_pid_to_str.
1244
1245 2009-08-13  Tom Tromey  <tromey@redhat.com>
1246
1247         * language.h (longest_raw_hex_string): Remove unused declaration.
1248
1249 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
1250
1251         PR gdb/8869:
1252
1253         * language.c (language, type, range, case_sensitive): Make const.
1254         (show_language_command): Don't call deprecated_show_value_hack.
1255         Special case "auto".
1256         (set_language_command): An unrecognized language is now an
1257         internal error instead of a user error.  Don't call set_lang_str.
1258         (show_type_command): Don't call deprecated_show_value_hack.
1259         Special case "auto".  Use warning.
1260         (set_type_command): An unrecognized type is now an internal error
1261         instead of a user error.  Output type check mismatch with language
1262         here.  Don't call set_type_str.
1263         (show_range_command): Don't call deprecated_show_value_hack.
1264         Special case "auto".  Use warning.
1265         (set_range_command): An unrecognized range check is now an
1266         internal error instead of a warning.  Output range check mismatch
1267         with language here.  Don't call set_range_str.
1268         (show_case_command): Don't call deprecated_show_value_hack.
1269         Special case "auto".  Use warning.
1270         (set_case_command): Don't call set_case_str.  An unrecognized case
1271         check is now an internal error instead of a warning.  Output range
1272         check mismatch with language here.  Don't call set_case_str.
1273         (set_type_range_case): Don't call set_type_str, set_range_str or
1274         set_case_str here.
1275         (set_lang_str, set_type_str, set_range_str, set_case_str): Delete.
1276         (add_language): Install or reinstall the "set language" command
1277         here, and make it an enum command.  Build the enumeration and the
1278         help string from the current list of known languages.
1279         (_initialize_language): Don't install "set language" here.  Make
1280         "set check type", "set check range" and "set case-sensitive" enum
1281         commands.  Register the "auto" "local" and "unknown" languages in
1282         that order.
1283
1284 2009-08-13  Pedro Alves  <pedro@codesourcery.com>
1285
1286         Revert 2009-08-07 changes for PR gdb/8869:
1287
1288         * language.c (set_language_command): Strip whitespace.
1289         (set_type_command): Likewise.
1290         (set_range_command): Likewise.
1291
1292         * language.c (language_completer): New function.
1293         (range_or_type_completer): New function.
1294         (case_completer): New function.
1295         (_initialize_language): Set completers.
1296         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
1297         command.
1298         (add_setshow_string_noescape_cmd): Likewise.
1299         (add_setshow_integer_cmd): Likewise.
1300         (add_setshow_uinteger_cmd): Likewise.
1301         (add_setshow_zinteger_cmd): Likewise.
1302         (add_setshow_zuinteger_cmd): Likewise.
1303         * command.h (add_setshow_string_cmd,
1304         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
1305         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
1306
1307 2009-08-12  Michael Snyder  <msnyder@vmware.com>
1308
1309         * remote.c (remote_add_inferior): Remove unused local.
1310         (remote_add_thread): Ditto.
1311         (read_ptid): Ditto.
1312         (remote_current_thread): Ditto.
1313         (remote_stop_ns): Ditto.
1314         (remote_parse_stop_reply): Ditto.
1315         (remote_get_pending_stop_replies): Ditto.
1316         (remote_wait_ns): Ditto.
1317         (remote_wait_as): Ditto.
1318         (send_g_packet): Ditto.
1319         (remote_fetch_registers): Ditto.
1320         (store_register_using_P): Ditto.
1321         (remote_store_registers): Ditto.
1322         (remote_remove_breakpoint): Ditto.
1323         (remote_write_qxfer): Ditto.
1324         (remote_read_qxfer): Ditto.
1325
1326 2009-08-11  Tom Tromey  <tromey@redhat.com>
1327
1328         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Make a cleanup.
1329         (dwarf2_loc_desc_needs_frame): Likewise.
1330         * dwarf2expr.h (make_cleanup_free_dwarf_expr_context): Declare.
1331         * dwarf2expr.c (free_dwarf_expr_context_cleanup): New function.
1332         (make_cleanup_free_dwarf_expr_context): Likewise.
1333         * dwarf2-frame.c (execute_stack_op): Make a cleanup.
1334
1335 2009-08-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
1336
1337         * objfiles.c (gdb_bfd_unref): Use the bfd_usrdata accessor.
1338         * solib.c (symbol_add_stub): Likewise.
1339         * symfile.c (symfile_bfd_open): Assert BFD_USRDATA is NULL.
1340
1341 2009-08-10  Paul Pluzhnikov  <ppluzhnikov@google.com>
1342
1343         * objfiles.c (qsort_cmp): Remove assert.
1344         (preferred_obj_section): New function.
1345         (update_section_map): Filter duplicates.
1346         
1347 2009-08-10  Tristan Gingold  <gingold@adacore.com>
1348
1349         * solib-darwin.c (find_program_interpreter): Simplify the code by
1350         looking up for the load_dylinker command instead of reading the
1351         corresponding (but deprecated) section.
1352         (darwin_solib_create_inferior_hook): Adjust: do not free the
1353         interpreter path.
1354
1355 2009-08-10  Tristan Gingold  <gingold@adacore.com>
1356
1357         * i386-darwin-tdep.c (i386_m128_p): New function.
1358         (i386_darwin_arg_type_alignment): Ditto.
1359         (i386_darwin_push_dummy_call): Ditto.
1360         (i386_darwin_init_abi): Define Darwin specific push_dummy_call.
1361         Adjust long_double size.  Adjust pc offset in setjump buffer.
1362
1363 2009-08-10  Hui Zhu  <teawater@gmail.com>
1364
1365         Add Linux AMD64 process record support.
1366
1367         * amd64-linux-tdep.c (amd64_linux_record_tdep): New variable.
1368         This struct has the argument for the function
1369         "record_linux_system_call".
1370         (amd64_linux_syscall_record): New function. Parse the
1371         system call instruction and call function
1372         "record_linux_system_call" to record execute log.
1373         (i386_linux_init_abi): Initialize "amd64_linux_record_tdep".
1374         Set "amd64_linux_syscall_record" to "i386_syscall_record".
1375
1376 2009-08-10  Hui Zhu  <teawater@gmail.com>
1377
1378         Add process record Linux system call 64 bits support.
1379
1380         * linux-record.h (linux_record_tdep): Add size_pointer,
1381         size_size_t, size_iovec and arg6.  Change the values of
1382         size_int, size_long and size_ulong to
1383         gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
1384         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT,
1385         gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT.
1386         * i386-linux-tdep.c (i386_linux_init_abi): Ditto.
1387         (i386_linux_intx80_sysenter_record): Add a check for system
1388         call number.
1389         * linux-record.c (record_linux_system_call): Make this
1390         function support 64 bits.
1391
1392 2009-08-10  Hui Zhu  <teawater@gmail.com>
1393
1394         Add AMD64 process record instruction set support.
1395
1396         * i386-tdep.h (gdbarch_tdep): Add record_regmap for registers
1397         because the AMD64's registers order in GDB is not same with
1398         I386 instructions.
1399         Add i386_syscall_record to be the syscall function handle
1400         interface.
1401         (record_i386_regnum): Number for record_regmap.
1402         * i386-tdep.c (OT_QUAD): For 64 bits.
1403         (i386_record_s): Add rex_x, rex_b, rip_offset and
1404         popl_esp_hack for AMD64 instruction set. And regmap for
1405         record_regmap.
1406         (i386_record_lea_modrm_addr): Support AMD64 instruction set
1407         64 bits lea.
1408         (i386_record_lea_modrm): Ditto.
1409         (i386_record_push): New function.  Record the execution log
1410         of push.
1411         (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the
1412         register.
1413         (i386_process_record): Support AMD64 instruction set.
1414         * amd64-tdep.c (amd64_record_regmap): For record_regmap.
1415         (amd64_init_abi): Set amd64_record_regmap to record_regmap.
1416
1417 2009-08-08  Pedro Alves  <pedro@codesourcery.com>
1418
1419         * bfd-target.c (struct target_bfd_data): New.
1420         (target_bfd_xfer_partial): Adjust to get at the section table from
1421         the new structure.
1422         (target_bfd_get_section_table): Ditto.
1423         (target_bfd_xclose): Ditto.  Get the bfd pointer from the
1424         target_bfd_data structure, from the section table.
1425         (target_bfd_reopen): Store a struct target_bfd_data in the
1426         target_ops to_data field, instead of a target_section_table.
1427
1428 2009-08-08  Aleksandar Ristovski  <aristovski@qnx.com>
1429             Hui Zhu  <teawater@gmail.com>
1430
1431         * record.c (record_store_registers): Remove unused variable.
1432
1433 2009-08-07  Tom Tromey  <tromey@redhat.com>
1434
1435         * language.c (set_language_command): Strip whitespace.
1436         (set_type_command): Likewise.
1437         (set_range_command): Likewise.
1438
1439 2009-08-07  Tom Tromey  <tromey@redhat.com>
1440
1441         PR gdb/8869:
1442         * language.c (language_completer): New function.
1443         (range_or_type_completer): New function.
1444         (case_completer): New function.
1445         (_initialize_language): Set completers.
1446         * cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
1447         command.
1448         (add_setshow_string_noescape_cmd): Likewise.
1449         (add_setshow_integer_cmd): Likewise.
1450         (add_setshow_uinteger_cmd): Likewise.
1451         (add_setshow_zinteger_cmd): Likewise.
1452         (add_setshow_zuinteger_cmd): Likewise.
1453         * command.h (add_setshow_string_cmd,
1454         add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
1455         add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
1456
1457 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
1458         
1459         gold/10400
1460         * dwarf2-frame.c (qsort_fde_cmp): Use stable sort.      
1461         
1462 2009-08-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
1463
1464         * dwarf2-frame.c (struct dwarf2_cie): Remove 'next'.
1465         (struct dwarf2_cie_table): New.
1466         (struct dwarf2_fde): Remove 'next'.
1467         (struct dwarf2_fde_table): New.
1468         (struct comp_unit): Remove 'cie'.
1469         (bsearch_cie_cmp, bsearch_fde_cmp): New function.
1470         (find_cie, dwarf2_frame_find_fde): Use bsearch.
1471         (add_cie, add_fde): Use array instead of linked list.
1472         (decode_frame_entry, decode_frame_entry_1): New parameters.
1473         (qsort_fde_cmp): New function.
1474         (dwarf2_build_frame_info): Adjust.
1475         
1476 2009-08-06  Don Lee <don.lee@sunplusct.com>
1477
1478         * score-tdep.c: Support a new Sunplus CT S+core variant, S+core 3.
1479         * score-tdep.h: Ditto.
1480         * NEWS: Ditto.
1481         * configure.tgt: Test do we have a simulator.
1482         * MAINTAINERS: Add myself under target score
1483
1484 2009-08-06  Nick Roberts  <nickrob@snap.net.nz>
1485
1486         * utils.c (defaulted_query): Don't ask for confirmation if server
1487         prefix is used.
1488
1489 2009-08-05  Tom Tromey  <tromey@redhat.com>
1490
1491         * spu-tdep.h (SPUADDR_SPU): Cast result to int.
1492
1493 2009-08-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
1494
1495         * objfiles.h (OBJF_KEEPBFD): Delete.
1496         (gdb_bfd_unref): New prototype.
1497         * objfiles.c (gdb_bfd_unref): New function.
1498         (free_objfile): Call gdb_bfd_unref.
1499         * solib.c (free_so): Likewise.
1500         (symbol_add_stub): Set refcount.
1501
1502 2009-08-04  Hui Zhu  <teawater@gmail.com>
1503             Michael Snyder  <msnyder@vmware.com>
1504
1505         * record.c (record_mem_entry): New field 'mem_entry_not_accessible'.
1506         (record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'.
1507         (record_wait): Set 'mem_entry_not_accessible' flag if target
1508         memory not readable.  Don't try to change target memory if
1509         'mem_entry_not_accessible' is set.
1510
1511 2009-08-03  Richard Guenther  <rguenther@suse.de>
1512             Jan Kratochvil  <jan.kratochvil@redhat.com>
1513
1514         Fix memory corruption on reread of file through a symbolic link.
1515         * symfile.c (find_separate_debug_file): Initialize CANON_NAME earlier.
1516         Allocate DEBUGFILE with length based on CANON_NAME.  Free CANON_NAME on
1517         all the return paths.
1518
1519 2009-08-03  Jim Ingham  <jingham@apple.com>
1520             Vladimir Prus  <vladimir@codesourcery.com>
1521
1522         Implement -break-commands
1523
1524         * breakpoint.c (get_breakpoint, breakpoint_set_commands): New.
1525         (commands_command): Use breakpoint_set_commands.
1526         * breakpoint.h (get_breakpoint, breakpoint_set_commands): Declare.
1527
1528         * mi/mi-cmds.h (mi_cmd_break_commands): New.
1529         * mi/mi-cmds.c: Register -break-commands.
1530         * mi/mi-cmd-break.c (mi_cmd_break_commands, mi_read_next_line)
1531         (mi_command_line_array, mi_command_line_array_cnt)
1532         (mi_command_line_array_ptr): New.
1533
1534 2009-08-03  Jim Ingham  <jingham@apple.com>
1535             Vladimir Prus  <vladimir@codesourcery.com>
1536
1537         Refactor reading of commands
1538
1539         * defs.h (read_command_lines_1): Declare.
1540         * cli/cli-script.c (read_next_line): Only return string,
1541         do not process.
1542         (process_next_line): New, extracted from read_next_line.
1543         (recurse_read_control_structure): Take a function pointer to the
1544         read function.
1545         (get_command_line) Pass the read_next_line as reader function
1546         into recurse_read_control_structure.
1547         (read_command_lines_1): New, extracted from...
1548         (read_command_lines): ...here.
1549
1550 2009-07-31  Kazu Hirata  <kazu@codesourcery.com>
1551
1552         * procfs.c (proc_set_current_signal): Populate mysinfo before
1553         copying it to arg.
1554         (proc_clear_current_signal): Likewise.
1555         (proc_set_watchpoint): Populate pwatch before copying it to arg.
1556
1557 2009-07-31  Michael Snyder  <msnyder@vmware.com>
1558
1559         * remote.c (store_register_using_P): Call putpkt and getpkt
1560         directly instead of calling remote_send.
1561         (store_registers_using_G): Ditto.
1562         (fetch_register_using_p): Ditto.
1563
1564         * remote.c (store_register_using_P): Make error msg more verbose.
1565         (store_registers_using_G): Ditto.
1566         (fetch_register_using_p): Ditto.
1567
1568 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1569
1570         * spu-tdep.c: Include "infcall.h".
1571         (spu_address_class_type_flags): New function.
1572         (spu_address_class_type_flags_to_name): Likewise.
1573         (spu_address_class_name_to_type_flags): Likewise.
1574         (spu_pointer_to_address): Handle __ea pointers.
1575         (spu_auto_flush_cache_p): New static variable.
1576         (spu_objfile_from_frame): New function.
1577         (flush_ea_cache, spu_attach_normal_stop): Likewise.
1578         (show_spu_auto_flush_cache): Likewise.
1579         (spu_gdbarch_init): Install address class handlers.
1580         (_initialize_spu_tdep): Attach to normal_stop observer.
1581         Install "set spu auto-flush-cache" / "show spu auto-flush-cache"
1582         commands.
1583
1584         * NEWS: Mention "set/show spu auto-flush-cache" commands.
1585
1586 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1587
1588         * spu-tdep.c: Include "block.h".
1589         (setspucmdlist, showspucmdlist): New static variables.
1590         (spu_stop_on_load_p): Likewise.
1591         (spu_catch_start): New function.
1592         (show_spu_command, set_spu_command): New functions.
1593         (show_spu_stop_on_load): Likewise.
1594         (_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer.
1595         Install "set spu" / "show spu" prefix command handler.
1596         Install "set spu stop-on-load" / "show spu stop-on-load" command.
1597
1598         * NEWS: Mention "set/show spu stop-on-load" commands.
1599
1600 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1601
1602         * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h",
1603         "arch-utils.h", and "spu-tdep.h".
1604         (spu_context_objfile, spe_context_lm_addr, spe_context_offset):
1605         New static variables.
1606         (spe_context_cache_ptid, spe_context_cache_address): Likewise.
1607         (ppc_linux_spe_context_lookup): New function.
1608         (ppc_linux_spe_context_inferior_created): Likewise.
1609         (ppc_linux_spe_context_solib_loaded): Likewise.
1610         (ppc_linux_spe_context_solib_unloaded): Likewise.
1611         (ppc_linux_spe_context): Likewise.
1612         (struct ppu2spu_cache, struct ppu2spu_data): New data types.
1613         (ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register,
1614         ppu2spu_unwind_register, ppu2spu_sniffer,
1615         ppu2spu_dealloc_cache): New functions.
1616         (ppu2spu_unwind): New static variable.
1617         (ppc_linux_init_abi): Install cross-architecture unwinder.
1618         (_initialize_ppc_linux_tdep): Attach to observers.
1619
1620         * spu-tdep.c (struct spu2ppu_cache): New data type.
1621         (spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register,
1622         spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions.
1623         (spu2ppu_unwind): New static variable.
1624         (spu_gdbarch_init): Install cross-architecture unwinder.
1625
1626 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1627
1628         * target.h (enum strata): New value arch_stratum.
1629         * target.c (target_require_runnable): Skip arch_stratum targets.
1630
1631         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
1632         solib-spu.o and spu-multiarch.o to gdb_target_obs.
1633         * Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o.
1634         (ALLDEPFILES): Add solib-spu.c and spu-multiarch.c.
1635
1636         * solib-spu.c: New file.
1637         * solib-spu.h: New file.
1638         * spu-multiarch.c: New file.
1639
1640         * spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros.
1641
1642         * spu-tdep.c (struct gdbarch_tdep): New member id.
1643         (spu_gdbarch_id): New function.
1644         (spu_lslr): New function.
1645
1646         (spu_address_to_pointer): New function.
1647         (spu_pointer_to_address): Support SPU ID address encoding.  Use
1648         spu_gdbarch_id and spu_lslr.
1649         (spu_integer_to_address): Likewise.
1650         (spu_frame_unwind_cache): Update for encoded addresses.
1651         (spu_unwind_pc, spu_unwind_sp): Likewise.
1652         (spu_read_pc, spu_write_pc): Likewise.
1653         (spu_push_dummy_call): Likewise.
1654         (spu_software_single_step): Likewise.
1655         (spu_get_longjmp_target): Likewise.
1656         (spu_overlay_update_osect): Likewise.
1657
1658         (spu_dis_asm_print_address): New function.
1659         (gdb_print_insn_spu): Likewise.
1660
1661         (spu_gdbarch_init): Store SPU ID in tdep structure.
1662         Install spu_address_to_pointer and gdb_print_insn_spu.
1663
1664         * ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h"
1665         and "solib-spu.h".
1666         (ppc_linux_entry_point_addr): New static variable.
1667         (ppc_linux_inferior_created): New function.
1668         (ppc_linux_displaced_step_location): Likewise.
1669         (ppc_linux_init_abi): Enable Cell/B.E. support if supported
1670         by the target.
1671         (_initialize_ppc_linux_tdep): Attach to inferior_created observer.
1672
1673         * NEWS: Mention multi-architecture and Cell/B.E. debugging
1674         capabilities.
1675
1676 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1677
1678         * linux-nat.c: Include <sys/vfs.h>.
1679         (SPUFS_MAGIC): Define.
1680         (spu_enumerate_spu_ids): New function.
1681         (linux_proc_xfer_spu): New function.
1682         (linux_xfer_partial): Handle TARGET_OBJECT_SPU.
1683
1684         (iterate_over_spus): New function.
1685         (struct linux_spu_corefile_data): New data type.
1686         (linux_spu_corefile_callback): New function.
1687         (linux_spu_make_corefile_notes): New function.
1688         (linux_nat_make_corefile_notes): Call it.
1689
1690         * corelow.c (struct spuid_list): New data type.
1691         (add_to_spuid_list): New function.
1692         (core_xfer_partial): Handle TARGET_OBJECT_SPU.
1693
1694 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1695
1696         * features/Makefile: Allow sub-platform specific expedite settings.
1697         (WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l.
1698         (rs6000/powerpc-cell32l-expedite): Define.
1699         (rs6000/powerpc-cell64l-expedite): Likewise.
1700         * features/rs6000/powerpc-cell32l.xml: New file.
1701         * features/rs6000/powerpc-cell64l.xml: New file.
1702         * features/rs6000/powerpc-cell32l.c: New generated file.
1703         * features/rs6000/powerpc-cell64l.c: New generated file.
1704
1705         * regformats/rs6000/powerpc-cell32l.dat: New generated file.
1706         * regformats/rs6000/powerpc-cell64l.dat: New generated file.
1707
1708         * config/djgpp/fnchange.lst: Add mappings for new files.
1709
1710         * ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype.
1711         (tdesc_powerpc_cell64l): Likewise.
1712         * ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c"
1713         and "features/rs6000/powerpc-cell64l.c".
1714         (_initialize_ppc_linux_tdep): Initialize target descriptions.
1715         (ppc_linux_spu_section): New function.
1716         (ppc_linux_core_read_description): Detect Cell/B.E. core files.
1717         * ppc-linux-nat.c (PPC_FEATURE_CELL): Define.
1718         (ppc_linux_read_description): Detect Cell/B.E. architecture.
1719
1720         * rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize
1721         if exec file is not PowerPC architecture.
1722
1723 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1724
1725         * features/gdb-target.dtd (target): Accept optional
1726         <compatible> elements.
1727         (compatible): Define element.
1728
1729         * target-descriptions.h (tdesc_compatible_p): New.
1730         (tdesc_add_compatible): New.
1731         * target-descriptions.c (arch_p): New VEC_P type.
1732         (struct target_desc): New member compatible.
1733         (free_target_description): Handle it.
1734         (maint_print_c_tdesc_cmd): Likewise.
1735         (tdesc_compatible_p): New function.
1736         (tdesc_add_compatible): New function.
1737
1738         * xml-tdesc.c (tdesc_end_compatible): New function.
1739         (target_children): Handle <compatible> element.
1740
1741         * arch-utils.c (choose_architecture_for_target): Accept target
1742         description instead of BFD architecture as input.  Query target
1743         description for compatible architectures.
1744         (gdbarch_info_fill): Update call.
1745
1746         * NEWS: Mention <compatible> element of target descriptions.
1747
1748 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1749
1750         * breakpoint.c (remove_breakpoints): If removing one breakpoint
1751         location fails, still continue to remove other locations.
1752         (remove_hw_watchpoints): Likewise.
1753         (detach_breakpoints): Likewise.
1754
1755 2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1756
1757         * breakpoint.h (enum enable_state): Add bp_startup_disabled.
1758         (disable_breakpoints_before_startup): Add prototype.
1759         (enable_breakpoints_after_startup): Likewise.
1760
1761         * breakpoint.c (executing_startup): New static variable.
1762         (describe_other_breakpoints): Handle bp_startup_disabled.
1763         (check_duplicates_for): Likewise.
1764         (disable_breakpoints_before_startup): New function.
1765         (enable_breakpoints_after_startup): New function.
1766         (create_breakpoint): Mark new breakpoints as bp_startup_disabled
1767         if executing_startup flag is true.
1768         (break_command_really): Likewise.
1769         (breakpoint_re_set_one): Skip bp_startup_disabled breakpoints.
1770
1771 2009-07-31  Julian Brown  <julian@codesourcery.com>
1772
1773         * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h):
1774         Include files.
1775         (arm_linux_cleanup_svc, arm_linux_copy_svc): New.
1776         (cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New.
1777         (arm_linux_displaced_step_copy_insn): New.
1778         (arm_linux_init_abi): Initialise displaced stepping callbacks.
1779         * arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro.
1780         (ARM_NOP): New.
1781         (displaced_read_reg, displaced_in_arm_mode, branch_write_pc)
1782         (bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg)
1783         (insn_references_pc, copy_unmodified, cleanup_preload, copy_preload)
1784         (copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store)
1785         (cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm)
1786         (copy_alu_imm, cleanup_alu_reg, copy_alu_reg)
1787         (cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load)
1788         (cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb)
1789         (cleanup_block_load_all, cleanup_block_store_pc)
1790         (cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc)
1791         (copy_undef, copy_unpred): New.
1792         (decode_misc_memhint_neon, decode_unconditional)
1793         (decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte)
1794         (decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st)
1795         (decode_svc_copro, arm_process_displaced_insn)
1796         (arm_displaced_init_closure, arm_displaced_step_copy_insn)
1797         (arm_displaced_step_fixup): New.
1798         (arm_gdbarch_init): Initialise max insn length field.
1799         * arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New
1800         macros.
1801         (displaced_step_closure, pc_write_style): New.
1802         (arm_displaced_init_closure, displaced_read_reg)
1803         (arm_process_displaced_insn, arm_displaced_init_closure)
1804         (displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn)
1805         (arm_displaced_step_fixup): Add prototypes.
1806
1807 2009-07-31  Pedro Alves  <pedro@codesourcery.com>
1808             Julian Brown  <julian@codesourcery.com>
1809
1810         * infrun.c (displaced_step_fixup): If this is a software
1811         single-stepping arch, don't tell the target to single-step.
1812         (maybe_software_singlestep): Return 0 if we're using displaced
1813         stepping.
1814         (resume): If this is a software single-stepping arch, and
1815         displaced-stepping is enabled, use it for all single-step
1816         requests.
1817
1818 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1819
1820         * Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
1821         (AUTOCONF, configure_deps, AUTOHEADER): New variables.
1822         ($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
1823         (am--refresh): New rules.
1824         (stamp-h, config.status): List config.in and configure including
1825         $(srcdir)/ prefix.
1826         * aclocal.m4: Regenerate.
1827         * configure: Regenerate.
1828
1829 2009-07-30  Thomas Schwinge  <tschwinge@gnu.org>
1830
1831         * gnu-nat.c (add_task_commands) <stopped>: Register the correct
1832         callback function.
1833
1834 2009-07-30  H.J. Lu  <hongjiu.lu@intel.com>
1835
1836         * ia64-tdep.c (ia64_access_reg): Correct paddress.
1837
1838 2009-07-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
1839
1840         Replace public function varobj_list by all_root_varobjs iterator.
1841         * mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter):
1842         New.
1843         (mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs.
1844         Remove the variables rootlist, cr.  New variable data.
1845         * varobj.c (rootcount, varobj_list): Remove.
1846         (install_variable, uninstall_variable): Remove the rootcount updates.
1847         (all_root_varobjs): New function.
1848         (varobj_invalidate): Use the all_root_varobjs call.  Move the code to...
1849         (varobj_invalidate_iter): ... a new function.
1850         * varobj.h (varobj_list): Remove the prototype.
1851         (all_root_varobjs): New prototype.
1852
1853 2009-07-29  Paul Pluzhnikov  <ppluzhnikov@google.com>
1854
1855         PR gdb/6817
1856         * dbxread.c (read_dbx_symtab): Reduce stack use.
1857         
1858 2009-07-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
1859
1860         Fix gcc-4.5 HEAD warnings.
1861         * cp-name-parser.y (%union <typed_val_int>, %token GLOBAL)
1862         (GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>):
1863         Remove.
1864         (yylex <"global constructors keyed to ">)
1865         (yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL.
1866         (cp_comp_to_string): Remove variables str, prefix and buf.  Remove the
1867         GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling.
1868         (cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS
1869         handling.
1870
1871 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
1872
1873         * NEWS: Mention ARM VFP support.
1874         * target-descriptions.c (tdesc_register_type): Make public.
1875         (tdesc_unnumbered_register): New function.
1876         (tdesc_register_reggroup_p): Allow missing
1877         pseudo_register_reggroup_p.
1878         * target-descriptions.h (tdesc_register_type): Declare.
1879         (tdesc_unnumbered_register): Declare.
1880         * arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions.
1881         (arm_push_dummy_call): Use arm_neon_quad_write.
1882         (arm_neon_double_type, arm_neon_quad_type): New functions.
1883         (arm_register_type): Handle VFP and NEON registers.  Override the
1884         types of double-precision registers for NEON.  Disable FPA registers
1885         if they are not present.
1886         (arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers.
1887         (arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read.
1888         (arm_register_name): Handle VFP single and NEON quad registers.
1889         (arm_pseudo_read, arm_pseudo_write): New functions.
1890         (arm_gdbarch_init): Check for VFP and NEON in the target description.
1891         Assign numbers to double-precision registers.  Register VFP and NEON
1892         pseudo registers.  Remove a shadowed "i" variable.
1893         * arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and
1894         ARM_D31_REGNUM.
1895         (struct gdbarch_tdep): Add have_neon_pseudos, have_neon,
1896         have_vfp_registers, have_vfp_pseudos, neon_double_type,
1897         and neon_quad_type.
1898
1899         * features/Makefile: Make expedite settings only architecture
1900         specific.
1901         (WHICH): Add new ARM descriptions.
1902         * features/arm-with-neon.xml, features/arm-with-vfpv2.c,
1903         features/arm-with-vfpv3.c, features/arm-vfpv2.xml,
1904         features/arm-vfpv3.xml, features/arm-with-vfpv2.xml,
1905         features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files.
1906         * regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat,
1907         regformats/arm-with-vfpv3.dat: Generate.
1908
1909 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
1910
1911         * infrun.c (handle_inferior_event): Clear trap_expected after
1912         stepping past a single-step breakpoint.
1913
1914 2009-07-28  Joseph Myers  <joseph@codesourcery.com>
1915
1916         * arm-tdep.c (enum arm_vfp_cprc_base_type,
1917         arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char,
1918         arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate,
1919         arm_vfp_abi_for_function): New.
1920         (arm_push_dummy_call): Handle VFP ABI.
1921         (arm_extract_return_value, arm_store_return_value): Handle
1922         ARM_FLOAT_VFP case.
1923         (arm_return_value): Handle VFP ABI.
1924         (arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for
1925         EABI binaries.
1926
1927 2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
1928
1929         * arch-utils.c (displaced_step_at_entry_point): Do not call
1930         gdbarch_convert_from_func_ptr_addr.
1931         * cris-tdep.c: Remove outdated comment.
1932         * infcall.c (call_function_by_hand): Do not call
1933         gdbarch_convert_from_func_ptr_addr after entry_point_address.
1934         * objfiles.c (entry_point_address): Call both
1935         gdbarch_convert_from_func_ptr_addr and
1936         gdbarch_addr_bits_remove.
1937
1938 2009-07-28  Aleksandar Ristovski  <aristovski@qnx.com>
1939
1940         * nto-tdep.c (nto_thread_state_str): New array.
1941         (nto_extra_thread_info): New function definition.
1942         * nto-tdep.h (gdbthread.h): New include.
1943         (private_thread_info): New struct.
1944         (nto_extra_thread_info): New declaration.
1945         * nto-procfs.c (procfs_thread_alive): Properly check if
1946         thread is still alive.
1947         (update_thread_private_data_name, update_thread_private_data): New
1948         function definition.
1949         (procfs_find_new_threads): Fetch thread private data.
1950         (init_procfs_ops): Register to_extra_thread_info.
1951
1952 2009-07-25  Pedro Alves  <pedro@codesourcery.com>
1953
1954         * stack.c (backtrace_command_1): Remove dead check of NULL current
1955         frame.
1956
1957 2009-07-23  Keith Seitz  <keiths@redhat.com>
1958
1959         * source.c (forward_search_command): Don't fclose the stream,
1960         just run the cleanups.
1961         (reverse_search_command): Likewise.
1962
1963 2009-07-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
1964
1965         * symtab.c (search_symbols): Add QUIT.
1966         
1967 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
1968
1969         * symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
1970         
1971 2009-07-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
1972
1973         * objfiles.h (objfiles_changed): New prototype.
1974         * objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
1975         (allocate_objfile, free_objfile): Must rebuild section map.
1976         (objfile_relocate): Likewise.
1977         (update_section_map, find_pc_section): Adjust.
1978         (set_objfiles_updated_on_exe_change): Remove.
1979         (set_objfiles_updated_on_solib_activity): Remove.
1980         (_initialize_objfiles): Remove.
1981         (objfiles_changed): New function.
1982         * symfile.c (reread_symbols): Call objfiles_changed.    
1983         
1984 2009-07-22  Hui Zhu  <teawater@gmail.com>
1985
1986         * record.c (record_xfer_partial): Call error When nquery
1987         return "n".
1988
1989 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
1990         
1991         * objfiles.c (objfiles_updated_p): New variable.
1992         (qsort_cmp, bsearch_cmp, update_section_map): New function.
1993         (find_pc_section): Use bsearch.
1994         (set_objfiles_updated_on_exe_change): New function.
1995         (set_objfiles_updated_on_solib_activity): New function.
1996         (_initialize_objfiles): New function.
1997         
1998 2009-07-21 Michael Eager <eager@eagercon.com>
1999
2000         * features/rs6000/powerpc-405.xml: New.
2001         * rs6000-tdep.c: Add include & initialize for
2002         powerpc-405.c, add 405 to variants.
2003         * features/rs6000/powerpc-405.c: Generate.
2004
2005 2009-07-21  Paul Pluzhnikov  <ppluzhnikov@google.com>
2006
2007         * utils.c (internal_vproblem): Always print failure message.
2008
2009 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
2010             Vladimir Prus <vladimir@codesourcery.com>
2011
2012         * valops.c (value_fetch_lazy): Handle bitfields explicitly.
2013         (value_assign): Remove unnecessary FIXME.  Honor the container
2014         type of bitfields if possible.
2015         * value.c (struct value): Add parent field.
2016         (value_parent): New function.
2017         (value_free): Free the parent also.
2018         (value_copy): Copy the parent also.
2019         (value_primitive_field): Do not read the contents of a lazy
2020         value to create a child bitfield value.  Set bitpos and offset
2021         according to the container type if possible.
2022         (unpack_bits_as_long): Rename from unpack_field_as_long.  Take
2023         field_type, bitpos, and bitsize instead of type and fieldno.
2024         (unpack_field_as_long): Use unpack_bits_as_long.
2025         * value.h (value_parent, unpack_bits_as_long): New prototypes.
2026
2027 2009-07-21  Daniel Jacobowitz  <dan@codesourcery.com>
2028
2029         * value.c (struct value): Add reference_count field.
2030         (allocate_value_lazy): Initialize reference_count.
2031         (value_incref): New function.
2032         (value_free): Check the reference count.
2033         * value.h (value_incref): New prototype.
2034
2035 2009-07-20  Marc Khouzam  <marc.khouzam@ericsson.com>
2036
2037         * utils.c (defaulted_query): Update comment and remove dead code.
2038
2039 2009-07-20  Doug Evans  <dje@google.com>
2040
2041         Add support for "comdat types" from DWARF4.
2042         * dwarf2read.c (dwarf2_per_objfile): New member types,
2043         signatured_types.
2044         (TYPES_SECTION): New macro.
2045         (dwarf2_per_cu_data): Change size of length field from 30 bits
2046         to 29 bits.  New member from_debug_types.
2047         (signatured_type): New struct.
2048         (struct attribute): New union member signatured_type.
2049         (DW_SIGNATURED_TYPE): New macro.
2050         (dwarf2_attr_no_follow): New function.
2051         (read_type_unit_scope): New function.
2052         (follow_die_ref_or_sig, follow_die_sig): New functions.
2053         (dwarf2_locate_sectoins): Handle .debug_types.
2054         (dwarf2_build_psymtabs): Read .debug_types.
2055         (read_type_comp_unit_head): New function.
2056         (hash_type_signature, eq_type_signature): New functions.
2057         (create_debug_types_hash_table): New function.
2058         (lookup_signatured_type): New function.
2059         (process_psymtab_comp_unit): Handle type units too.
2060         (process_type_comp_unit, build_type_psymtabs): New functions.
2061         (dwarf2_build_psymtabs_hard): Call build_type_psymtabs.
2062         (load_partial_comp_unit): Assert not called for a type unit.
2063         (skip_one_die): Handle DW_FORM_sig8.
2064         (queue_comp_unit): Don't call load_full_comp_unit here, or
2065         update read_in_chain.
2066         (psymtab_to_symtab_1): Call read_signatured_type_at_offset for
2067         type units, or load_full_comp_unit for comp units after
2068         queue_comp_unit returns.
2069         (load_full_comp_unit): Assert not called for type units.
2070         (load_full_comp_unit): Update read_in_chain here.
2071         (process_die): Handle DW_TAG_type_unit.
2072         (read_structure_type): Look for signatured types.
2073         (read_enumeration_type): Ditto.
2074         (init_cu_die_reader): Handle .debug_types.
2075         (read_comp_unit): Assert hash not computed yet.
2076         (read_die_and_children): Expand debugging printf to handle .debug_types.
2077         (read_partial_die): Handle DW_TAG_type_unit:
2078         (find_patial_die): Handle .debug_types.
2079         (read_attribute_value): Handle DW_FORM_sig8.
2080         (die_type): Call follow_die_ref_or_sig instead of follow_die_ref.
2081         (die_containing_type): Ditto.
2082         (dwarf_tag_name): Handle DW_TAG_type_unit.
2083         (dwarf_attr_name): Handle DW_AT_signature.
2084         (dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc,
2085         DW_FORM_flag_present, DW_FORM_sig8.
2086         (dump_die_shallow): Handlel DW_FORM_sig8.
2087         (maybe_queue_comp_unit): Change return type to int from void.
2088         All callers updated.
2089         (follow_die_ref): Handle .debug_types.
2090         (lookup_signatured_type_at_offset): New function.
2091         (read_signatured_type_at_offset): New function.
2092         (read_signatured_type): New function.
2093
2094 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
2095
2096         * arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT
2097         if the macro is defined.
2098
2099 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
2100
2101         * features/gdb-target.dtd (target): Accept an optional 'osabi'
2102         element.
2103         (osabi): Define element.
2104         * features/mips-linux.xml (target): Add an osabi subelement set to
2105         GNU/Linux.
2106         * regformats/regdat.sh (xmlarch, xmlosabi): New variables.  Don't
2107         write the architecture into $xmltarget.  Store it in $xmlarch.
2108         Handle the 'osabi' type.  Handle outputting the osabi element of
2109         the target description.
2110         * regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux.
2111         * regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux.
2112
2113         * target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare.
2114         * target-descriptions.c (struct target_desc) <osabi>: New field.
2115         (tdesc_osabi): New function.
2116         (set_tdesc_osabi): New function.
2117         * xml-tdesc.c: Include osabi.h.
2118         (tdesc_end_osabi): New.
2119         (target_children): Parse "osabi" elements.
2120         * arch-utils.c (gdbarch_info_fill): Try to get the osabi from the
2121         target description if the user didn't override it or it is not
2122         extractable from the bfd.  If that still fails, fallback to the
2123         configured in default.
2124         * osabi.h (osabi_from_tdesc_string): Declare.
2125         * osabi.c (osabi_from_tdesc_string): New.
2126         (gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of
2127         GDB_OSABI_DEFAULT.
2128
2129         * NEWS: Mention that target descriptions can now describe the
2130         target OS ABI.
2131
2132 2009-07-20  Mike Frysinger  <vapier@gentoo.org>
2133
2134         * configure.ac (AC_CHECK_FUNCS): Check for pipe.
2135         * config.in, configure: Regenerate.
2136         * tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE.
2137
2138 2009-07-20  Pedro Alves  <pedro@codesourcery.com>
2139
2140         * gnu-nat.c: Include "inf-child.h".
2141         (gnu_mourn_inferior): Use the passed in target_ops
2142         instead of the gnu_ops global.
2143         (gnu_create_inferior): Inline `attach_to_child', use the passed in
2144         target_ops instead of the gnu_ops global.
2145         (gnu_can_run): Delete.
2146         (gnu_attach): Use the passed in target_ops instead of the gnu_ops
2147         global.
2148         (gnu_detach): Ditto.
2149         (gnu_prepare_to_store, gnu_open): Delete.
2150         (gnu_store_registers, gnu_fetch_registers): Delete declarations.
2151         (gnu_ops): Delete.
2152         (init_gnu_ops): Delete.
2153         (gnu_target): New.
2154         (_initialize_gnu_nat): Don't call init_gnu_ops or add_target here.
2155         * gnu-nat.h (gnu_target): Declare.
2156         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make
2157         static.
2158         (_initialize_i386gnu_nat): New.
2159
2160 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
2161
2162         * dwarf2loc.c (find_location_expression): Retrieve beginning and
2163         ending address offsets in location list entries as integers,
2164         not as addresses.
2165
2166 2009-07-20  Ulrich Weigand  <uweigand@de.ibm.com>
2167
2168         * infrun.c (wait_for_inferior): Invalidate registers and overlay
2169         cache every time before calling target_wait.
2170         (handle_inferior_event): Make static. Always reset waiton_ptid.
2171         Never call registers_changed.
2172         (prepare_to_wait): Do not invaliate registers or overlay cache
2173         (moved to wait_for_inferior).  Do not reset waiton_ptid (moved
2174         to handle_inferior_event).
2175         (fetch_inferior_event): Remove check for always-true condition.  
2176
2177 2009-07-20  Thomas Schwinge  <tschwinge@gnu.org>
2178
2179         * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to
2180         2009-02-23 target_ops changes.
2181
2182 2009-07-18  Michael Snyder  <msnyder@vmware.com>
2183
2184         * infrun.c (handle_inferior_event): Remove an execution_direction
2185         check in the "check for subroutine calls" test, and add some 
2186         additional handling for reverse-stepping through shared libraries.
2187
2188 2009-07-18  Anthony Green  <green@moxielogic.com>
2189
2190         * moxie-tdep.c (moxie_analyze_prologue): Take gdbarch as last
2191         parameter instead of frame_info.
2192         (moxie_frame_cache): Call moxie_analyze_prologue with different
2193         args.
2194
2195 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
2196
2197         * solib.c (solib_bfd_open): Do not call ops->bfd_open.
2198         (solib_map_sections): Call ops->bfd_open instead of solib_bfd_open.
2199         * solib-frv.c (_initialize_frv_solib): Initialize bfd_open member.
2200         * solib-irix.c (_initialize_irix_solib): Likewise.
2201         * solib-null.c (_initialize_null_solib): Likewise.
2202         * solib-osf.c (_initialize_osf_solib): Likewise.
2203         * solib-pa64.c (_initialize_pa64_solib): Likewise.
2204         * solib-som.c (_initialize_som_solib): Likewise.
2205         * solib-sunos.c (_initialize_sunos_solib): Likewise.
2206         * solib-svr4.c (_initialize_svr4_solib): Likewise.
2207         * solib-target.c (_initialize_solib_target): Likewise.
2208
2209 2009-07-17  Ulrich Weigand  <uweigand@de.ibm.com>
2210
2211         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag.
2212
2213 2009-07-16  Doug Evans  <dje@google.com>
2214
2215         * linux-thread.db.c (try_thread_db_load_1): Tweak comment.
2216
2217 2007-07-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
2218
2219         * linux-thread-db.c (thread_db_find_new_threads_silently):
2220         New function.
2221         (try_thread_db_load_1): Call it.
2222
2223 2009-07-15  Doug Evans  <dje@google.com>
2224
2225         Code reorg in preparation for adding comdat types support.
2226         * dwarf2read.c (struct die_reader_specs): New struct.
2227         (locate_pdi_sibling): New arg buffer.  All callers updated.
2228         (load_partial_dies, read_partial_die): Ditto.
2229         (read_8_bytes): Change return type to ULONGEST.
2230         (read_comp_unit): Delete arg abfd.  All callers updated.
2231         (read_die_and_children_1): Delete args abfd, cu.  New arg reader.
2232         All callers updated.
2233         (read_die_and_children, read_die_and_siblings): Ditto.
2234         (read_full_die): Ditto.  Move closer to callers.
2235         (skip_one_die): New arg buffer.  All callers updated.
2236         (load_full_comp_unit): Change return type to void.  All callers
2237         updated.
2238         (partial_read_comp_unit_head): New args buffer, buffer_size.
2239         All callers updated.
2240         (process_psymtab_comp_unit): New function, split out from
2241         dwarf2_build_psymtabs_hard.
2242         (dwarf2_build_psymtabs_hard): Call it.
2243         (load_partial_comp_unit): Renamed from load_comp_unit.
2244         All callers updated.
2245         (skip_children): New arg buffer.  All callers updated.
2246         (init_cu_die_reader): New function.
2247         (is_ref_attr): New function.
2248         (dwarf2_get_ref_die_offset): Call it.
2249         (alloc_one_comp_unit): New function.
2250
2251 2009-07-14  Stan Shebs  <stan@codesourcery.com>
2252
2253         * MAINTAINERS (Global Maintainers): Add Doug Evans.
2254
2255 2009-07-14  Stan Shebs  <stan@codesourcery.com>
2256
2257         Conditional tracepoints.
2258         * ax-gdb.h (gen_eval_for_expr): Declare.
2259         * ax-gdb.c (gen_expr): Generate bytecodes for BINOP_EQUAL
2260         and other comparisons.
2261         (gen_eval_for_expr): New function.
2262         (agent_eval_command): New maintenance command.
2263         (_initialize_ax_gdb): Define the command.
2264         * remote.c (struct remote_state): New field cond_tracepoints.
2265         (PACKET_ConditionalTracepoints): New packet config type.
2266         (remote_cond_tracepoint_feature): New function.
2267         (remote_protocol_features): Add ConditionalTracepoints.
2268         (remote_supports_cond_tracepoints): New function.
2269         (_initialize_remote): Add ConditionalTracepoints.
2270         * tracepoint.c (download_tracepoint): Add conditional.
2271         * NEWS: Mention conditional tracepoints.
2272
2273 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
2274
2275         * objfiles.c (objfile_relocate): Do not relocate the same
2276         BLOCKVECTOR_MAP address map multiple times.
2277
2278 2009-07-14  Ulrich Weigand  <uweigand@de.ibm.com>
2279
2280         * remote.c (process_stop_reply): Access expedited target registers
2281         in target_gdbarch.
2282
2283 2009-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
2284
2285         Fix memory access from signed 32bit inferior registers on 64bit GDB.
2286         * linux-nat.c (linux_xfer_partial <TARGET_OBJECT_MEMORY>): New variable
2287         addr_bit.  Mask OFFSET by the ADDR_BIT width.
2288
2289 2009-07-13  Anthony Green  <green@moxielogic.com>
2290
2291         * moxie-tdep.c (moxie_gdbarch_init): Call
2292         set_gdbarch_process_record.
2293         (moxie_process_record): New.
2294         (moxie_process_readu): New.
2295
2296 2009-07-12  Michael Snyder  <msnyder@vmware.com>
2297
2298         * i386-tdep.c: Add a frame unwinder for function epilogues.
2299         (i386_in_function_epilogue_p): New function.
2300         (i386_epilogue_frame_sniffer): New function.
2301         (i386_epilogue_frame_cache): New function.
2302         (i386_epilogue_frame_this_id): New function.
2303         (i386_epilogue_frame_unwind): New struct frame_unwind.
2304         (i386_gdbarch_init): Hook the new unwinder.
2305
2306 2009-07-11  Hui Zhu  <teawater@gmail.com>
2307
2308         * cli/cli-cmds.c (disassemble_command): Add a new modifier /r
2309         to "disassemble" command to print the raw instructions in hex as
2310         well as in symbolic form.
2311         (init_cli_cmds): Ditto.
2312         (print_disassembly): Change "mixed" to "flags" to translate
2313         the behavior of disassemble.
2314         (disassemble_current_function): Ditto.
2315         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
2316         * stack.c (gdb_disassembly_stub): Ditto.
2317         * disasm.c (do_mixed_source_and_assembly): Ditto.
2318         (do_mixed_source_and_assembly): Ditto.
2319         (do_assembly_only): Ditto.
2320         (gdb_disassembly): Ditto.
2321         (dump_insns): print the raw instructions in hex as well as in
2322         symbolic form if DISASSEMBLY_RAW_INSN and flags is true.
2323         * disasm.h (DISASSEMBLY_SOURCE): Include source code with the
2324         assembly if it and flags is true.
2325         (DISASSEMBLY_RAW_INSN): Include the raw instructions in hex with
2326         the assembly if it and flags is true.
2327         (gdb_disassembly): Update extern.
2328         * NEWS: Document disassemble/r support.
2329
2330 2009-07-10  Tom Tromey  <tromey@redhat.com>
2331
2332         * dwarf2-frame.c: Include dwarf2.h, not elf/dwarf2.h.
2333         * dwarf2expr.c: Likewise.
2334         * dwarf2loc.c: Likewise.
2335         * dwarf2read.c: Likewise.
2336         * sh-tdep.c: Likewise.
2337         * xtensa-tdep.c: Likewise.
2338
2339 2009-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
2340
2341         Tidy up the code.
2342         * mi/mi-cmd-var.c (mi_cmd_var_update): Remove variable nv.  Move
2343         variables var, rootlist and cr to their local sub-block.  Move the
2344         make_cleanup_ui_out_tuple_begin_end, make_cleanup_ui_out_list_begin_end
2345         and do_cleanups calls to the common base block.  Remove the zero NV
2346         check.
2347
2348 2009-07-10 Phil Muldoon  <pmuldoon@redhat.com>
2349
2350         * python/python-internal.h (apply_varobj_pretty_printer): Update
2351         definition.
2352         (python_string_to_target_python_string): Add definition.
2353         * python/python-utils.c (unicode_to_encoded_python_string)
2354         (unicode_to_target_python_string)
2355         (python_string_to_target_python_string): New Functions.
2356         * python/python-prettyprint.c (pretty_print_one_value): Likewise.
2357         (print_string_repr): Refactor to logic to account for PyObject
2358         returned strings.
2359         (apply_varobj_pretty_printer): Likewise.
2360         * python/python-value.c (valpy_string): Parse length keyword. Use
2361         length keyword in LA_GET_STRING.
2362         * varobj.c (value_get_print_value): Refactor logic to account for
2363         PyObject returned strings.
2364         * c-lang.c (c_get_string): If the length parameter is specified,
2365         use that. Return value in characters. Update comments.
2366         * language.h: Update c_get_string prototype comments.
2367
2368 2009-07-09  Doug Evans  <dje@google.com>
2369
2370         * i386-tdep.c (i386_displaced_step_fixup): Fix order of arguments
2371         to read_memory_unsigned_integer.
2372
2373 2009-07-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
2374
2375         Report error on inaccessible memory.
2376         * cli/cli-dump.c: Include gdbcore.h.
2377         (dump_memory_to_file): Call read_memory instead of target_read_memory.
2378
2379 2009-07-09  Hui Zhu  <teawater@gmail.com>
2380
2381         * solib.c (solib_bfd_open): Output a warning if solib's
2382         architecture is not compatible with inferior's architecture.
2383
2384 2009-07-09  Ulrich Weigand  <uweigand@de.ibm.com>
2385             Jan Kratochvil  <jan.kratochvil@redhat.com>
2386
2387         * target.h (struct target_ops <to_thread_architecture>): Describe it.
2388         (target_thread_architecture): Refer to to_thread_architecture.
2389
2390 2009-07-08  Pierre Muller  <muller@ics.u-strasbg.fr>
2391
2392         * cli/cli-cmds.c (init_cli_cmds): Add "inf" alias for "info" command.
2393
2394 2009-07-07  Ulrich Weigand  <uweigand@de.ibm.com>
2395
2396         * tui/tui-stack.c (tui_make_status_line): Display PC as ?? if unknown.
2397
2398 2009-07-07  Pierre Muller  <muller@ics.u-strasbg.fr>
2399
2400         * breakpoint.c (set_raw_breakpoint): Remove static modifier.
2401
2402 2009-07-07  Tom Tromey  <tromey@redhat.com>
2403
2404         * c-lang.c (convert_octal): Only allow 3 octal digits.
2405         (print_wchar): Prefer 3-digit octal form.  Fall back to hex if
2406         needed.
2407         * c-exp.y (c_parse_escape): Only allow 3 octal digits.
2408
2409 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
2410
2411         * python/python-value.c (valpy_getitem): Remove incorrect assert.
2412         
2413 2009-07-07  Paul Pluzhnikov  <ppluzhnikov@google.com>
2414
2415         * python/python-value.c (valpy_getitem): Don't return from TRY_CATCH.
2416
2417 2009-07-07  Sami Wagiaalla  <swagiaal@redhat.com>
2418
2419         * cp-support.h (struct using_direct): Rename members inner and
2420         outer to import_src, and import_dest respectively.
2421         * cp-namespace.c (cp_add_using_directive): Update.
2422         (cp_add_using): Update.
2423         (cp_copy_usings): Update.
2424         (cp_lookup_symbol_namespace): Update.
2425         (cp_scan_for_anonymous_namespaces): Update.
2426         * cp-support.c (make_symbol_overload_list_using): Update.
2427         * cp-support.h (cp_add_using_directive, cp_add_using): Rename
2428         arguments from inner and outer to src and dest respectively.
2429         * cp-namespace.c (cp_add_using_directive): Ditto.
2430         (cp_add_using): Ditto.
2431
2432 2009-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
2433
2434         * mi/mi-cmd-var.c (mi_cmd_var_update): Replace a while loop by for loop.
2435         * varobj.c (varobj_invalidate): Replace a while loop by for loop.
2436
2437 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
2438
2439         Fix hang in floating varobjs.
2440
2441         * varobj.c (varobj_invalidate): Advance to next
2442         element when processing floating varobj.
2443
2444 2009-07-07  Vladimir Prus  <vladimir@codesourcery.com>
2445
2446         * varobj.c: Remove unnecessary include.
2447
2448 2009-07-07  Tristan Gingold  <gingold@adacore.com>
2449
2450         * config/i386/darwin.mh (NATDEPFILES): Remove excServer.o.
2451         Remove excServer.c target.  Remove _all target.
2452         * darwin.defs: Removed.
2453
2454 2009-07-06  Aleksandar Ristovski  <aristovski@qnx.com>
2455
2456         * configure.tgt (i[34567]86-*-nto*): Add build_gdbserver=yes.
2457
2458 2009-07-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
2459
2460         * source.c (find_and_open_source): Remove the `objfile' parameter.
2461         Update the function comment.
2462         (open_source_file, symtab_to_fullname, psymtab_to_fullname): Update the
2463         find_and_open_source callers.
2464
2465 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
2466
2467         * coff-pe-read.c (read_pe_exported_syms): Recognize
2468         "pe-arm-wince-little" and "pei-arm-wince-little" bfd targets as PE
2469         targets.
2470
2471 2009-07-05  Pedro Alves  <pedro@codesourcery.com>
2472
2473         * arm-wince-tdep.c (arm_wince_skip_main_prologue): New.
2474         (arm_wince_init_abi): Register it as gdbarch_skip_main_prologue
2475         callback.
2476
2477 2009-06-29  Tristan Gingold  <gingold@adacore.com>
2478
2479         * i386-darwin-tdep.c (amd64_darwin_thread_state_reg_offset)
2480         (amd64_darwin_thread_state_num_regs)
2481         (amd64_darwin_sigcontext_addr, x86_darwin_init_abi_64): Moved to
2482         amd64-darwin-tdep.c
2483         (_initialize_i386_darwin_tdep): Remove 64 bits parts.
2484         (darwin_dwarf_signal_frame_p): Make public.
2485         * amd64-darwin-tdep.c: New file with most chunks from
2486         i386-darwin-tdep.c      
2487         * i386-darwin-tdep.h: Add a prototype for darwin_dwarf_signal_frame_p.
2488         (amd64_darwin_thread_state_reg_offset)
2489         (amd64_darwin_thread_state_num_regs): Moved to amd64-darwin-tdep.h
2490         * amd64-darwin-tdep.h: New file.
2491         * i386-darwin-nat.c: Only includes amd64-nat.h and amd64-darwin-tdep.h
2492         if BFD64 is defined.
2493         (i386_darwin_fetch_inferior_registers): Add #ifdef BFD64/#endif around
2494         64 bits parts.
2495         (i386_darwin_store_inferior_registers): Ditto.
2496         (darwin_set_sstep): Ditto.
2497         (darwin_complete_target): Ditto.
2498         (amd64_darwin_sstep_at_sigreturn): Ditto.
2499         * configure.tgt: Create a separate entry for x86_64-*-darwin.
2500         Add 64 bits support for i386-*-darwin if --enable-64-bit-bfd.
2501         * Makefile.in (ALLDEPFILES): Add amd64-darwin-tdep.c, darwin-nat.c,
2502         i386-darwin-tdep.c i386-darwin-nat.c
2503         (ALL_64_TARGET_OBS): Add amd64-darwin-tdep.o
2504         
2505 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
2506
2507         * linux-fork.c (forks_exist_p): Drop unnecessary extern.
2508         (add_fork, linux_fork_killall, linux_fork_mourn_inferior)
2509         (linux_fork_detach): Ditto.
2510         (delete_fork_command): Rename to ...
2511         (delete_checkpoint_command): ... this.
2512         (detach_fork_command): Rename to ...
2513         (detach_checkpoint_command): ... this.
2514         (info_forks_command): Rename to ...
2515         (info_checkpoints_command): ... this.
2516         (_initialize_linux_fork): Remove stale comments.  Adjust.
2517
2518 2009-07-02  Pedro Alves  <pedro@codesourcery.com>
2519
2520         * linux-nat.c (linux_child_follow_fork): If we're staying attached
2521         to the child process, enable event reporting on it.  Don't handle
2522         checkpoints here.  Instead, add the child fork to the lwp thread
2523         and inferior lists without clobbering the previous inferior.  Let
2524         the thread_db layer learn about a new child process, even if
2525         following the parent.
2526         (linux_nat_switch_fork): Delete lwps of the current inferior only,
2527         instead of clearing the whole list.  Use thread_change_ptid to
2528         give the core the illusion the new checkpoint is still the same
2529         inferior.  Clear the register cache.
2530         (linux_handle_extended_wait): Handle checkpoints here.
2531         (linux_multi_process): Turn on.
2532         * linux-fork.c (struct fork_info) <pc>: Remove field.
2533         (init_fork_list): Do not delete the checkpoint from the inferior
2534         list (it is not there).
2535         (fork_load_infrun_state): Don't switch inferior_ptid here.  Pass
2536         the new checkpoint's ptid to linux_nat_switch_fork.
2537         (fork_save_infrun_state): Make static.  Don't stop the pc field of
2538         fork_info, it's gone.
2539         (linux_fork_mourn_inferior): Don't delete the checkpoint from the
2540         inferior list, it's not there.
2541         (linux_fork_detach): Ditto.
2542         (delete_fork_command): Replace mention of fork/checkpoint by
2543         checkpoint only.
2544         (detach_fork_command): Likewise.  Don't delete the checkpoint from
2545         the inferior list.
2546         (info_forks_command): Adjust.
2547         (restore_detach_fork): Delete.
2548         (checkpointing_pid): New.
2549         (linux_fork_checkpointing_p): New.
2550         (save_detach_fork): Delete.
2551         (checkpoint_command): Delete temp_detach_fork.  Don't remove
2552         breakpoints, that's a nop.  Store the pid of the process we're
2553         checkpointing, and use make_cleanup_restore_integer to restore it.
2554         Don't reinsert breakpoints here.
2555         (process_command, fork_command): Delete.
2556         (restart_command): Update comments to only mention checkpoints,
2557         not forks.
2558         (_initialize_linux_fork): Delete "fork", "process", "info forks"
2559         commands.
2560         * linux-fork.h (fork_save_infrun_state, fork_list): Delete
2561         declarations.
2562         (linux_fork_checkpointing_p): Declare.
2563         * cli/cli-cmds.c (killlist): New.
2564         * cli/cli-cmds.h (killlist): Declare.
2565         * gdbcmd.h (killlist): Declare.
2566         * inferior.c: Include "gdbthread.h".
2567         (detach_inferior_command, kill_inferior_command)
2568         (inferior_command): New.
2569         (info_inferiors_command): Allow specifying a specific inferior id.
2570         (_initialize_inferiors): Register "inferior", "kill inferior" and
2571         "detach inferior" commands.
2572         * infcmd.c (_initialize_infcmd): Make "kill" a prefix command.
2573         * gdbthread.h (any_thread_of_process): Declare.
2574         * thread.c (any_thread_of_process): New.
2575
2576         * NEWS: Mention multi-inferior debugging.  Mention 'info
2577         inferiors', 'inferior', 'detach inferior' and 'kill inferior' as
2578         new commands.
2579         (Removed commands): New section, mentioning that 'info forks',
2580         'fork', 'process', 'delete fork' and 'detach fork' are now gone.
2581
2582 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2583
2584         * gdbarch.sh (current_gdbarch): Remove global variable.
2585         (find_arch_by_info): Remove, inline into ...
2586         (gdbarch_find_by_info): ... this.  Remove current_gdbarch swapping.
2587         (deprecated_current_gdbarch_select_hack): Rename to ...
2588         (deprecated_target_gdbarch_select_hack): ... this.  Do not set
2589         or access current_gdbarch.
2590         * gdbarch.c, gdbarch.h: Regenerate.
2591
2592         * arch-utils.c (gdbarch_update_p): Update call.
2593         (set_gdbarch_from_file): Likewise.
2594
2595 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
2596
2597         * defs.h (extract_signed_integer, extract_unsigned_integer,
2598         extract_long_unsigned_integer, store_signed_integer,
2599         store_unsigned_integer): Add BYTE_ORDER parameter.
2600         * findvar.c (extract_signed_integer, extract_unsigned_integer,
2601         extract_long_unsigned_integer, store_signed_integer,
2602         store_unsigned_integer): Add BYTE_ORDER parameter.  Use it
2603         instead of current_gdbarch.
2604
2605         * gdbcore.h (read_memory_integer, safe_read_memory_integer,
2606         read_memory_unsigned_integer, write_memory_signed_integer,
2607         write_memory_unsigned_integer): Add BYTE_ORDER parameter.
2608         * corefile.c (struct captured_read_memory_integer_arguments): Add
2609         BYTE_ORDER member.
2610         (safe_read_memory_integer): Add BYTE_ORDER parameter.  Store it into
2611         struct captured_read_memory_integer_arguments.
2612         (do_captured_read_memory_integer): Pass it to read_memory_integer.
2613         (read_memory_integer): Add BYTE_ORDER parameter.  Pass it to
2614         extract_signed_integer.
2615         (read_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it to
2616         extract_unsigned_integer.
2617         (write_memory_signed_integer): Add BYTE_ORDER parameter.  Pass it
2618         to store_signed_integer.
2619         (write_memory_unsigned_integer): Add BYTE_ORDER parameter.  Pass it
2620         to store_unsigned_integer.
2621
2622         * target.h (get_target_memory_unsigned): Add BYTE_ORDER parameter.
2623         * target.c (get_target_memory_unsigned): Add BYTE_ORDER parameter.
2624         Pass it to extract_unsigned_integer.
2625
2626
2627         Update calls to extract_signed_integer, extract_unsigned_integer,
2628         extract_long_unsigned_integer, store_signed_integer,
2629         store_unsigned_integer, read_memory_integer,
2630         read_memory_unsigned_integer, safe_read_memory_integer,
2631         write_memory_signed_integer, write_memory_unsigned_integer, and
2632         get_target_memory_unsigned to pass byte order:
2633         * ada-lang.c (ada_value_binop): Update.
2634         * ada-valprint.c (char_at): Update.
2635         * alpha-osf1-tdep.c (alpha_osf1_sigcontext_addr): Update.
2636         * alpha-tdep.c (alpha_lds, alpha_sts, alpha_push_dummy_call,
2637         alpha_extract_return_value, alpha_read_insn,
2638         alpha_get_longjmp_target): Update.
2639         * amd64-linux-tdep.c (amd64_linux_sigcontext_addr): Update.
2640         * amd64obsd-tdep.c (amd64obsd_supply_uthread,
2641         amd64obsd_collect_uthread, amd64obsd_trapframe_cache): Update.
2642         * amd64-tdep.c (amd64_push_dummy_call, amd64_analyze_prologue,
2643         amd64_frame_cache, amd64_sigtramp_frame_cache, fixup_riprel,
2644         amd64_displaced_step_fixup): Update.
2645         * arm-linux-tdep.c (arm_linux_sigreturn_init,
2646         arm_linux_rt_sigreturn_init, arm_linux_supply_gregset): Update.
2647         * arm-tdep.c (thumb_analyze_prologue, arm_skip_prologue,
2648         arm_scan_prologue, arm_push_dummy_call, thumb_get_next_pc,
2649         arm_get_next_pc, arm_extract_return_value, arm_store_return_value,
2650         arm_return_value): Update.
2651         * arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update.
2652         * auxv.c (default_auxv_parse): Update.
2653         * avr-tdep.c (avr_address_to_pointer, avr_pointer_to_address,
2654         avr_scan_prologue, avr_extract_return_value,
2655         avr_frame_prev_register, avr_push_dummy_call): Update.
2656         * bsd-uthread.c (bsd_uthread_check_magic, bsd_uthread_lookup_offset,
2657         bsd_uthread_wait, bsd_uthread_thread_alive,
2658         bsd_uthread_extra_thread_info): Update.
2659         * c-lang.c (c_printstr, print_wchar): Update.
2660         * cp-valprint.c (cp_print_class_member): Update.
2661         * cris-tdep.c (cris_sigcontext_addr, cris_sigtramp_frame_unwind_cache,
2662         cris_push_dummy_call, cris_scan_prologue, cris_store_return_value,
2663         cris_extract_return_value, find_step_target, dip_prefix,
2664         sixteen_bit_offset_branch_op, none_reg_mode_jump_op,
2665         move_mem_to_reg_movem_op, get_data_from_address): Update.
2666         * dwarf2expr.c (dwarf2_read_address, execute_stack_op): Update.
2667         * dwarf2-frame.c (execute_cfa_program): Update.
2668         * dwarf2loc.c (find_location_expression): Update.
2669         * dwarf2read.c (dwarf2_const_value): Update.
2670         * expprint.c (print_subexp_standard): Update.
2671         * findvar.c (unsigned_pointer_to_address, signed_pointer_to_address,
2672         unsigned_address_to_pointer, address_to_signed_pointer,
2673         read_var_value): Update.
2674         * frame.c (frame_unwind_register_signed,
2675         frame_unwind_register_unsigned, get_frame_memory_signed,
2676         get_frame_memory_unsigned): Update.
2677         * frame-unwind.c (frame_unwind_got_constant): Update.
2678         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp,
2679         frv_linux_sigcontext_reg_addr, frv_linux_sigtramp_frame_cache):
2680         Update.
2681         * frv-tdep.c (frv_analyze_prologue, frv_skip_main_prologue,
2682         frv_extract_return_value, find_func_descr,
2683         frv_convert_from_func_ptr_addr, frv_push_dummy_call): Update.
2684         * f-valprint.c (f_val_print): Update.
2685         * gnu-v3-abi.c (gnuv3_decode_method_ptr, gnuv3_make_method_ptr):
2686         Update.
2687         * h8300-tdep.c (h8300_is_argument_spill, h8300_analyze_prologue,
2688         h8300_push_dummy_call, h8300_extract_return_value,
2689         h8300h_extract_return_value, h8300_store_return_value,
2690         h8300h_store_return_value): Update.
2691         * hppabsd-tdep.c (hppabsd_find_global_pointer): Update.
2692         * hppa-hpux-nat.c (hppa_hpux_fetch_register, hppa_hpux_store_register):
2693         Update.
2694         * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline,
2695         hppa64_hpux_in_solib_call_trampoline,
2696         hppa_hpux_in_solib_return_trampoline, hppa_hpux_skip_trampoline_code,
2697         hppa_hpux_sigtramp_frame_unwind_cache,
2698         hppa_hpux_sigtramp_unwind_sniffer, hppa32_hpux_find_global_pointer,
2699         hppa64_hpux_find_global_pointer, hppa_hpux_search_pattern,
2700         hppa32_hpux_search_dummy_call_sequence,
2701         hppa64_hpux_search_dummy_call_sequence, hppa_hpux_supply_save_state,
2702         hppa_hpux_unwind_adjust_stub): Update.
2703         * hppa-linux-tdep.c (insns_match_pattern,
2704         hppa_linux_find_global_pointer): Update.
2705         * hppa-tdep.c (hppa_in_function_epilogue_p, hppa32_push_dummy_call,
2706         hppa64_convert_code_addr_to_fptr, hppa64_push_dummy_call,
2707         skip_prologue_hard_way, hppa_frame_cache, hppa_fallback_frame_cache,
2708         hppa_pseudo_register_read, hppa_frame_prev_register_helper,
2709         hppa_match_insns): Update.
2710         * hpux-thread.c (hpux_thread_fetch_registers): Update.
2711         * i386-tdep.c (i386bsd_sigcontext_addr): Update.
2712         * i386-cygwin-tdep.c (core_process_module_section): Update.
2713         * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn,
2714         amd64_darwin_sstep_at_sigreturn): Update.
2715         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr,
2716         amd64_darwin_sigcontext_addr): Likewise.
2717         * i386-linux-nat.c (i386_linux_sigcontext_addr): Update.
2718         * i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Update.
2719         * i386-nto-tdep.c (i386nto_sigcontext_addr): Update.
2720         * i386obsd-nat.c (i386obsd_supply_pcb): Update.
2721         * i386obsd-tdep.c (i386obsd_supply_uthread, i386obsd_collect_uthread,
2722         i386obsd_trapframe_cache): Update.
2723         * i386-tdep.c (i386_displaced_step_fixup, i386_follow_jump,
2724         i386_analyze_frame_setup, i386_analyze_prologue,
2725         i386_skip_main_prologue, i386_frame_cache, i386_sigtramp_frame_cache,
2726         i386_get_longjmp_target, i386_push_dummy_call,
2727         i386_pe_skip_trampoline_code, i386_svr4_sigcontext_addr,
2728         i386_fetch_pointer_argument): Update.
2729         * i387-tdep.c (i387_supply_fsave): Update.
2730         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Update.
2731         * ia64-tdep.c (ia64_pseudo_register_read, ia64_pseudo_register_write,
2732         examine_prologue, ia64_frame_cache, ia64_frame_prev_register,
2733         ia64_sigtramp_frame_cache, ia64_sigtramp_frame_prev_register,
2734         ia64_access_reg, ia64_access_rse_reg, ia64_libunwind_frame_this_id,
2735         ia64_libunwind_frame_prev_register,
2736         ia64_libunwind_sigtramp_frame_this_id,
2737         ia64_libunwind_sigtramp_frame_prev_register, ia64_find_global_pointer,
2738         find_extant_func_descr, find_func_descr,
2739         ia64_convert_from_func_ptr_addr, ia64_push_dummy_call, ia64_dummy_id,
2740         ia64_unwind_pc): Update.
2741         * iq2000-tdep.c (iq2000_pointer_to_address, iq2000_address_to_pointer,
2742         iq2000_scan_prologue, iq2000_extract_return_value,
2743         iq2000_push_dummy_call): Update.
2744         * irix5nat.c (fill_gregset): Update.
2745         * jv-lang.c (evaluate_subexp_java): Update.
2746         * jv-valprint.c (java_value_print): Update.
2747         * lm32-tdep.c (lm32_analyze_prologue, lm32_push_dummy_call, 
2748         lm32_extract_return_value, lm32_store_return_value): Update.
2749         * m32c-tdep.c (m32c_push_dummy_call, m32c_return_value,
2750         m32c_skip_trampoline_code, m32c_m16c_address_to_pointer,
2751         m32c_m16c_pointer_to_address): Update.
2752         * m32r-tdep.c (m32r_store_return_value, decode_prologue,
2753         m32r_skip_prologue, m32r_push_dummy_call, m32r_extract_return_value):
2754         Update.
2755         * m68hc11-tdep.c (m68hc11_pseudo_register_read,
2756         m68hc11_pseudo_register_write, m68hc11_analyze_instruction,
2757         m68hc11_push_dummy_call): Update.
2758         * m68linux-tdep.c (m68k_linux_pc_in_sigtramp,
2759         m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
2760         Update.
2761         * m68k-tdep.c (m68k_push_dummy_call, m68k_analyze_frame_setup,
2762         m68k_analyze_register_saves, m68k_analyze_prologue, m68k_frame_cache,
2763         m68k_get_longjmp_target): Update.
2764         * m88k-tdep.c (m88k_fetch_instruction): Update.
2765         * mep-tdep.c (mep_pseudo_cr32_read, mep_pseudo_csr_write,
2766         mep_pseudo_cr32_write, mep_get_insn, mep_push_dummy_call): Update.
2767         * mi/mi-main.c (mi_cmd_data_write_memory): Update.
2768         * mips-linux-tdep.c (mips_linux_get_longjmp_target, supply_32bit_reg,
2769         mips64_linux_get_longjmp_target, mips64_fill_gregset,
2770         mips64_fill_fpregset, mips_linux_in_dynsym_stub): Update.
2771         * mipsnbdsd-tdep.c (mipsnbsd_get_longjmp_target): Update.
2772         * mips-tdep.c (mips_fetch_instruction, fetch_mips_16,
2773         mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call,
2774         mips_o32_push_dummy_call, mips_o64_push_dummy_call, 
2775         mips_single_step_through_delay, mips_skip_pic_trampoline_code,
2776         mips_integer_to_address): Update.
2777         * mn10300-tdep.c (mn10300_analyze_prologue, mn10300_push_dummy_call):
2778         Update.
2779         * monitor.c (monitor_supply_register, monitor_write_memory,
2780         monitor_read_memory_single): Update.
2781         * moxie-tdep.c (moxie_store_return_value, moxie_extract_return_value,
2782         moxie_analyze_prologue): Update.
2783         * mt-tdep.c (mt_return_value, mt_skip_prologue, mt_select_coprocessor,
2784         mt_pseudo_register_read, mt_pseudo_register_write, mt_registers_info,
2785         mt_push_dummy_call): Update.
2786         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
2787         read_objc_methlist_method, read_objc_object, read_objc_super,
2788         read_objc_class, find_implementation_from_class): Update.
2789         * ppc64-linux-tdep.c (ppc64_desc_entry_point,
2790         ppc64_linux_convert_from_func_ptr_addr, ppc_linux_sigtramp_cache):
2791         Update.
2792         * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_sniffer,
2793         ppcobsd_sigtramp_frame_cache): Update.
2794         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call,
2795         do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call,
2796         ppc64_sysv_abi_return_value): Update.
2797         * ppc-linux-nat.c (ppc_linux_auxv_parse): Update.
2798         * procfs.c (procfs_auxv_parse): Update.
2799         * p-valprint.c (pascal_val_print): Update.
2800         * regcache.c (regcache_raw_read_signed, regcache_raw_read_unsigned,
2801         regcache_raw_write_signed, regcache_raw_write_unsigned,
2802         regcache_cooked_read_signed, regcache_cooked_read_unsigned,
2803         regcache_cooked_write_signed, regcache_cooked_write_unsigned): Update.
2804         * remote-m32r-sdi.c (m32r_fetch_register): Update.
2805         * remote-mips.c (mips_wait, mips_fetch_registers, mips_xfer_memory):
2806         Update.
2807         * rs6000-aix-tdep.c (rs6000_push_dummy_call, rs6000_return_value,
2808         rs6000_convert_from_func_ptr_addr, branch_dest, 
2809         rs6000_software_single_step): Update.
2810         * rs6000-tdep.c (rs6000_in_function_epilogue_p,
2811         ppc_displaced_step_fixup, ppc_deal_with_atomic_sequence,
2812         bl_to_blrl_insn_p, rs6000_fetch_instruction, skip_prologue,
2813         rs6000_skip_main_prologue, rs6000_skip_trampoline_code,
2814         rs6000_frame_cache): Update.
2815         * s390-tdep.c (s390_pseudo_register_read, s390_pseudo_register_write,
2816         s390x_pseudo_register_read, s390x_pseudo_register_write, s390_load,
2817         s390_backchain_frame_unwind_cache, s390_sigtramp_frame_unwind_cache,
2818         extend_simple_arg, s390_push_dummy_call, s390_return_value): Update.
2819         * scm-exp.c (scm_lreadr): Update.
2820         * scm-lang.c (scm_get_field, scm_unpack): Update.
2821         * scm-valprint.c (scm_val_print): Update.
2822         * score-tdep.c (score_breakpoint_from_pc, score_push_dummy_call,
2823         score_fetch_inst): Update.
2824         * sh64-tdep.c (look_for_args_moves, sh64_skip_prologue_hard_way,
2825         sh64_analyze_prologue, sh64_push_dummy_call, sh64_extract_return_value,
2826         sh64_pseudo_register_read, sh64_pseudo_register_write,
2827         sh64_frame_prev_register): Update:
2828         * sh-tdep.c (sh_analyze_prologue, sh_push_dummy_call_fpu,
2829         sh_push_dummy_call_nofpu, sh_extract_return_value_nofpu,
2830         sh_store_return_value_nofpu, sh_in_function_epilogue_p): Update.
2831         * solib-darwin.c (darwin_load_image_infos): Update.
2832         * solib-frv.c (fetch_loadmap, lm_base, frv_current_sos, enable_break2,
2833         find_canonical_descriptor_in_load_object): Update.
2834         * solib-irix.c (extract_mips_address, fetch_lm_info, irix_current_sos,
2835         irix_open_symbol_file_object): Update.
2836         * solib-som.c (som_solib_create_inferior_hook, link_map_start,
2837         som_current_sos, som_open_symbol_file_object): Update.
2838         * solib-sunos.c (SOLIB_EXTRACT_ADDRESS, LM_ADDR, LM_NEXT, LM_NAME):
2839         Update.
2840         * solib-svr4.c (read_program_header, scan_dyntag_auxv,
2841         solib_svr4_r_ldsomap): Update.
2842         * sparc64-linux-tdep.c (sparc64_linux_step_trap): Update.
2843         * sparc64obsd-tdep.c (sparc64obsd_supply_uthread,
2844         sparc64obsd_collect_uthread): Update.
2845         * sparc64-tdep.c (sparc64_pseudo_register_read,
2846         sparc64_pseudo_register_write, sparc64_supply_gregset,
2847         sparc64_collect_gregset): Update.
2848         * sparc-linux-tdep.c (sparc32_linux_step_trap): Update.
2849         * sparcobsd-tdep.c (sparc32obsd_supply_uthread,
2850         sparc32obsd_collect_uthread): Update.
2851         * sparc-tdep.c (sparc_fetch_wcookie, sparc32_push_dummy_code,
2852         sparc32_store_arguments, sparc32_return_value, sparc_supply_rwindow,
2853         sparc_collect_rwindow): Update.
2854         * spu-linux-nat.c (parse_spufs_run): Update.
2855         * spu-tdep.c (spu_pseudo_register_read_spu,
2856         spu_pseudo_register_write_spu, spu_pointer_to_address,
2857         spu_analyze_prologue, spu_in_function_epilogue_p,
2858         spu_frame_unwind_cache, spu_push_dummy_call, spu_software_single_step,
2859         spu_get_longjmp_target, spu_get_overlay_table, spu_overlay_update_osect,
2860         info_spu_signal_command, info_spu_mailbox_list, info_spu_dma_cmdlist,
2861         info_spu_dma_command, info_spu_proxydma_command): Update.
2862         * stack.c (print_frame_nameless_args, frame_info): Update.
2863         * symfile.c (read_target_long_array, simple_read_overlay_table,
2864         simple_read_overlay_region_table): Update.
2865         * target.c (debug_print_register): Update.
2866         * tramp-frame.c (tramp_frame_start): Update.
2867         * v850-tdep.c (v850_analyze_prologue, v850_push_dummy_call,
2868         v850_extract_return_value, v850_store_return_value, 
2869         * valarith.c (value_binop, value_bit_index): Update.
2870         * valops.c (value_cast): Update.
2871         * valprint.c (val_print_type_code_int, val_print_string,
2872         read_string): Update.
2873         * value.c (unpack_long, unpack_double, unpack_field_as_long,
2874         modify_field, pack_long): Update.
2875         * vax-tdep.c (vax_store_arguments, vax_push_dummy_call,
2876         vax_skip_prologue): Update.
2877         * xstormy16-tdep.c (xstormy16_push_dummy_call,
2878         xstormy16_analyze_prologue, xstormy16_in_function_epilogue_p,
2879         xstormy16_resolve_jmp_table_entry, xstormy16_find_jmp_table_entry,
2880         xstormy16_pointer_to_address, xstormy16_address_to_pointer): Update.
2881         * xtensa-tdep.c (extract_call_winsize, xtensa_pseudo_register_read,
2882         xtensa_pseudo_register_write, xtensa_frame_cache,
2883         xtensa_push_dummy_call, call0_track_op, call0_frame_cache): Update.
2884
2885
2886         * dfp.h (decimal_to_string, decimal_from_string, decimal_from_integral,
2887         decimal_from_floating, decimal_to_doublest, decimal_is_zero): Add
2888         BYTE_ORDER parameter.
2889         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
2890         parameters.
2891         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
2892         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
2893         * dfp.c (match_endianness): Add BYTE_ORDER parameter.  Use it
2894         instead of current_gdbarch.
2895         (decimal_to_string, decimal_from_integral, decimal_from_floating,
2896         decimal_to_doublest, decimal_is_zero): Add BYTE_ORDER parameter.
2897         Pass it to match_endianness.
2898         (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT
2899         parameters.  Pass them to match_endianness.
2900         (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters.
2901         Pass them to match_endianness.
2902         (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters.
2903         Pass them to match_endianness.
2904         * valarith.c (value_args_as_decimal): Add BYTE_ORDER_X and
2905         BYTE_ORDER_Y output parameters.
2906         (value_binop): Update call to value_args_as_decimal.
2907
2908         Update calls to decimal_to_string, decimal_from_string,
2909         decimal_from_integral, decimal_from_floating, decimal_to_doublest,
2910         decimal_is_zero, decimal_binop, decimal_compare and decimal_convert
2911         to pass/receive byte order:
2912         * c-exp.y (parse_number): Update.
2913         * printcmd.c (printf_command): Update.
2914         * valarith.c (value_args_as_decimal, value_binop, value_logical_not,
2915         value_equal, value_less): Update.
2916         * valops.c (value_cast, value_one): Update.
2917         * valprint.c (print_decimal_floating): Update.
2918         * value.c (unpack_long, unpack_double): Update.
2919         * python/python-value.c (valpy_nonzero): Update.
2920
2921
2922         * ada-valprint.c (char_at): Add BYTE_ORDER parameter.
2923         (printstr): Update calls to char_at.
2924         (ada_val_print_array): Likewise.
2925         * valprint.c (read_string): Add BYTE_ORDER parameter.
2926         (val_print_string): Update call to read_string.
2927         * c-lang.c (c_get_string): Likewise.
2928         * charset.h (target_wide_charset): Add BYTE_ORDER parameter.
2929         * charset.c (target_wide_charset): Add BYTE_ORDER parameter.
2930         Use it instead of current_gdbarch.
2931         * printcmd.c (printf_command): Update calls to target_wide_charset.
2932         * c-lang.c (charset_for_string_type): Add BYTE_ORDER parameter.
2933         Pass to target_wide_charset.  Use it instead of current_gdbarch.
2934         (classify_type): Add BYTE_ORDER parameter.  Pass to
2935         charset_for_string_type.  Allow NULL encoding pointer.
2936         (print_wchar): Add BYTE_ORDER parameter.
2937         (c_emit_char): Update calls to classify_type and print_wchar.
2938         (c_printchar, c_printstr): Likewise.
2939
2940
2941         * gdbarch.sh (in_solib_return_trampoline): Convert to type "m".
2942         * gdbarch.c, gdbarch.h: Regenerate.
2943         * arch-utils.h (generic_in_solib_return_trampoline): Add GDBARCH
2944         parameter.
2945         * arch-utils.c (generic_in_solib_return_trampoline): Likewise.
2946         * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Likewise.
2947         * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Likewise.
2948         (rs6000_skip_trampoline_code): Update call.
2949
2950         * alpha-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
2951         dynamic_sigtramp_offset and pc_in_sigtramp callbacks.
2952         (alpha_read_insn): Add GDBARCH parameter.
2953         * alpha-tdep.c (alpha_lds, alpha_sts): Add GDBARCH parameter.
2954         (alpha_register_to_value): Pass architecture to alpha_sts.
2955         (alpha_extract_return_value): Likewise.
2956         (alpha_value_to_register): Pass architecture to alpha_lds.
2957         (alpha_store_return_value): Likewise.
2958         (alpha_read_insn): Add GDBARCH parameter.
2959         (alpha_skip_prologue): Pass architecture to alpha_read_insn.
2960         (alpha_heuristic_proc_start): Likewise.
2961         (alpha_heuristic_frame_unwind_cache): Likewise.
2962         (alpha_next_pc): Likewise.
2963         (alpha_sigtramp_frame_this_id): Pass architecture to
2964         tdep->dynamic_sigtramp_offset callback.
2965         (alpha_sigtramp_frame_sniffer): Pass architecture to
2966         tdep->pc_in_sigtramp callback.
2967         * alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): Add GDBARCH parameter.
2968         (alphafbsd_sigtramp_offset): Likewise.
2969         * alpha-linux-tdep.c (alpha_linux_sigtramp_offset_1): Add GDBARCH
2970         parameter.  Pass to alpha_read_insn.
2971         (alpha_linux_sigtramp_offset): Add GDBARCH parameter.  Pass to
2972         alpha_linux_sigtramp_offset_1.
2973         (alpha_linux_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
2974         alpha_linux_sigtramp_offset.
2975         (alpha_linux_sigcontext_addr): Pass architecture to alpha_read_insn
2976         and alpha_linux_sigtramp_offset.
2977         * alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Add GDBARCH parameter.
2978         (alphanbsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
2979         alphanbsd_sigtramp_offset.
2980         * alphaobsd-tdep.c (alphaobsd_sigtramp_offset): Add GDBARCH parameter.
2981         (alphaobsd_pc_in_sigtramp): Add GDBARCH parameter.  Pass to
2982         alpha_read_insn.
2983         (alphaobsd_sigcontext_addr): Pass architecture to
2984         alphaobsd_sigtramp_offset.
2985         * alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): Add GDBARCH
2986         parameter.
2987
2988         * amd64-tdep.c (amd64_analyze_prologue): Add GDBARCH parameter.
2989         (amd64_skip_prologue): Pass architecture to amd64_analyze_prologue.
2990         (amd64_frame_cache): Likewise.
2991
2992         * arm-tdep.c (SWAP_SHORT, SWAP_INT): Remove.
2993         (thumb_analyze_prologue, arm_skip_prologue, arm_scan_prologue,
2994         thumb_get_next_pc, arm_get_next_pc): Do not use SWAP_ macros.
2995         * arm-wince-tdep.c: Include "frame.h".
2996
2997         * avr-tdep.c (EXTRACT_INSN): Remove.
2998         (avr_scan_prologue): Add GDBARCH argument, inline EXTRACT_INSN.
2999         (avr_skip_prologue): Pass architecture to avr_scan_prologue.
3000         (avr_frame_unwind_cache): Likewise.
3001
3002         * cris-tdep.c (struct instruction_environment): Add BYTE_ORDER member.
3003         (find_step_target): Initialize it.
3004         (get_data_from_address): Add BYTE_ORDER parameter.
3005         (bdap_prefix): Pass byte order to get_data_from_address.
3006         (handle_prefix_assign_mode_for_aritm_op): Likewise.
3007         (three_operand_add_sub_cmp_and_or_op): Likewise.
3008         (handle_inc_and_index_mode_for_aritm_op): Likewise.
3009
3010         * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Add GDBARCH parameter.
3011         (frv_linux_sigcontext_reg_addr): Pass architecture to
3012         frv_linux_pc_in_sigtramp.
3013         (frv_linux_sigtramp_frame_sniffer): Likewise.
3014
3015         * h8300-tdep.c (h8300_is_argument_spill): Add GDBARCH parameter.
3016         (h8300_analyze_prologue): Add GDBARCH parameter.  Pass to
3017         h8300_is_argument_spill.
3018         (h8300_frame_cache, h8300_skip_prologue): Pass architecture
3019         to h8300_analyze_prologue.
3020
3021         * hppa-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to
3022         in_solib_call_trampoline callback.
3023         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.
3024         * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Add GDBARCH
3025         parameter.
3026         (hppa64_push_dummy_call): Pass architecture to
3027         hppa64_convert_code_addr_to_fptr.
3028         (hppa_match_insns): Add GDBARCH parameter.
3029         (hppa_match_insns_relaxed): Add GDBARCH parameter.  Pass to
3030         hppa_match_insns.
3031         (hppa_skip_trampoline_code): Pass architecture to hppa_match_insns.
3032         (hppa_in_solib_call_trampoline): Add GDBARCH parameter.  Pass to
3033         hppa_match_insns_relaxed.
3034         (hppa_stub_unwind_sniffer): Pass architecture to
3035         tdep->in_solib_call_trampoline callback.
3036         * hppa-hpux-tdep.c (hppa_hpux_search_pattern): Add GDBARCH parameter.
3037         (hppa32_hpux_search_dummy_call_sequence): Pass architecture to
3038         hppa_hpux_search_pattern.
3039         * hppa-linux-tdep.c (insns_match_pattern): Add GDBARCH parameter.
3040         (hppa_linux_sigtramp_find_sigcontext): Add GDBARCH parameter.
3041         Pass to insns_match_pattern.
3042         (hppa_linux_sigtramp_frame_unwind_cache): Pass architecture to
3043         hppa_linux_sigtramp_find_sigcontext.
3044         (hppa_linux_sigtramp_frame_sniffer): Likewise.
3045         (hppa32_hpux_in_solib_call_trampoline): Add GDBARCH parameter.
3046         (hppa64_hpux_in_solib_call_trampoline): Likewise.
3047
3048         * i386-tdep.c (i386_follow_jump): Add GDBARCH parameter.
3049         (i386_analyze_frame_setup): Add GDBARCH parameter.
3050         (i386_analyze_prologue): Add GDBARCH parameter.  Pass to
3051         i386_follow_jump and i386_analyze_frame_setup.
3052         (i386_skip_prologue): Pass architecture to i386_analyze_prologue
3053         and i386_follow_jump.
3054         (i386_frame_cache): Pass architecture to i386_analyze_prologue.
3055         (i386_pe_skip_trampoline_code): Add FRAME parameter.
3056         * i386-tdep.h (i386_pe_skip_trampoline_code): Add FRAME parameter.
3057         * i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Pass
3058         frame to i386_pe_skip_trampoline_code.
3059
3060         * ia64-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter
3061         to sigcontext_register_address callback.
3062         * ia64-tdep.c (ia64_find_global_pointer): Add GDBARCH parameter.
3063         (ia64_find_unwind_table): Pass architecture to
3064         ia64_find_global_pointer.
3065         (find_extant_func_descr): Add GDBARCH parameter.
3066         (find_func_descr): Pass architecture to find_extant_func_descr
3067         and ia64_find_global_pointer.
3068         (ia64_sigtramp_frame_init_saved_regs): Pass architecture to
3069         tdep->sigcontext_register_address callback.
3070         * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Add
3071         GDBARCH parameter.
3072
3073         * iq2000-tdep.c (iq2000_scan_prologue): Add GDBARCH parameter.
3074         (iq2000_frame_cache): Pass architecture to iq2000_scan_prologue.
3075
3076         * lm32-tdep.c (lm32_analyze_prologue): Add GDBARCH parameter.
3077         (lm32_skip_prologue, lm32_frame_cache): Pass architecture to
3078         lm32_analyze_prologue.
3079
3080         * m32r-tdep.c (decode_prologue): Add GDBARCH parameter.
3081         (m32r_skip_prologue): Pass architecture to decode_prologue.
3082
3083         * m68hc11-tdep.c (m68hc11_analyze_instruction): Add GDBARCH parameter.
3084         (m68hc11_scan_prologue): Pass architecture to
3085         m68hc11_analyze_instruction.
3086
3087         * m68k-tdep.c (m68k_analyze_frame_setup): Add GDBARCH parameter.
3088         (m68k_analyze_prologue): Pass architecture to
3089         m68k_analyze_frame_setup.
3090
3091         * m88k-tdep.c (m88k_fetch_instruction): Add BYTE_ORDER parameter.
3092         (m88k_analyze_prologue): Add GDBARCH parameter.  Pass byte order
3093         to m88k_fetch_instruction.
3094         (m88k_skip_prologue): Pass architecture to m88k_analyze_prologue.
3095         (m88k_frame_cache): Likewise.
3096
3097         * mep-tdep.c (mep_get_insn): Add GDBARCH parameter.
3098         (mep_analyze_prologue): Pass architecture to mep_get_insn.
3099
3100         * mips-tdep.c (mips_fetch_instruction): Add GDBARCH parameter.
3101         (mips32_next_pc): Pass architecture to mips_fetch_instruction.
3102         (deal_with_atomic_sequence): Likewise.
3103         (unpack_mips16): Add GDBARCH parameter, pass to mips_fetch_instruction.
3104         (mips16_scan_prologue): Likewise.
3105         (mips32_scan_prologue): Likewise.
3106         (mips16_in_function_epilogue_p): Likewise.
3107         (mips32_in_function_epilogue_p): Likewise.
3108         (mips_about_to_return): Likewise.
3109         (mips_insn16_frame_cache): Pass architecture to mips16_scan_prologue.
3110         (mips_insn32_frame_cache): Pass architecture to mips32_scan_prologue.
3111         (mips_skip_prologue): Pass architecture to mips16_scan_prologue
3112         and mips32_scan_prologue.
3113         (mips_in_function_epilogue_p): Pass architecture to
3114         mips16_in_function_epilogue_p and
3115         mips32_in_function_epilogue_p.
3116         (heuristic_proc_start): Pass architecture to mips_fetch_instruction
3117         and mips_about_to_return.
3118         (mips_skip_mips16_trampoline_code): Pass architecture to
3119         mips_fetch_instruction.
3120         (fetch_mips_16): Add GDBARCH parameter.
3121         (mips16_next_pc): Pass architecture to fetch_mips_16.
3122         (extended_mips16_next_pc): Pass architecture to unpack_mips16 and
3123         fetch_mips_16.
3124
3125         * objc-lang.c (read_objc_method, read_objc_methlist_nmethods,
3126         read_objc_methlist_method, read_objc_object, read_objc_super,
3127         read_objc_class): Add GDBARCH parameter.
3128         (find_implementation_from_class): Add GDBARCH parameter, pass
3129         to read_objc_class, read_objc_methlist_nmethods, and
3130         read_objc_methlist_method.
3131         (find_implementation): Add GDBARCH parameter, pass to
3132         read_objc_object and find_implementation_from_class.
3133         (resolve_msgsend, resolve_msgsend_stret): Pass architecture
3134         to find_implementation.
3135         (resolve_msgsend_super, resolve_msgsend_super_stret): Pass
3136         architecture to read_objc_super and find_implementation_from_class.
3137
3138         * ppc64-linux-tdep.c (ppc64_desc_entry_point): Add GDBARCH parameter.
3139         (ppc64_standard_linkage1_target, ppc64_standard_linkage2_target,
3140         ppc64_standard_linkage3_target): Pass architecture to
3141         ppc64_desc_entry_point.
3142         * rs6000-tdep.c (bl_to_blrl_insn_p): Add BYTE_ORDER parameter.
3143         (skip_prologue): Pass byte order to bl_to_blrl_insn_p.
3144         (rs6000_fetch_instruction): Add GDBARCH parameter.
3145         (rs6000_skip_stack_check): Add GDBARCH parameter, pass to
3146         rs6000_fetch_instruction.
3147         (skip_prologue): Pass architecture to rs6000_fetch_instruction.
3148         
3149         * remote-mips.c (mips_store_word): Return old_contents as host
3150         integer value instead of target bytes.
3151
3152         * s390-tdep.c (struct s390_prologue_data): Add BYTE_ORDER member.
3153         (s390_analyze_prologue): Initialize it.
3154         (extend_simple_arg): Add GDBARCH parameter.
3155         (s390_push_dummy_call): Pass architecture to extend_simple_arg.
3156
3157         * scm-lang.c (scm_get_field): Add BYTE_ORDER parameter.
3158         * scm-lang.h (scm_get_field): Add BYTE_ORDER parameter.
3159         (SCM_CAR, SCM_CDR): Pass SCM_BYTE_ORDER to scm_get_field.
3160         * scm-valprint.c (scm_scmval_print): Likewise.
3161         (scm_scmlist_print, scm_ipruk, scm_scmval_print): Define
3162         SCM_BYTE_ORDER.
3163
3164         * sh64-tdep.c (look_for_args_moves): Add GDBARCH parameter.
3165         (sh64_skip_prologue_hard_way): Add GDBARCH parameter, pass to
3166         look_for_args_moves.
3167         (sh64_skip_prologue): Pass architecture to
3168         sh64_skip_prologue_hard_way.
3169         * sh-tdep.c (sh_analyze_prologue): Add GDBARCH parameter.
3170         (sh_skip_prologue): Pass architecture to sh_analyze_prologue.
3171         (sh_frame_cache): Likewise.
3172
3173         * solib-irix.c (extract_mips_address): Add GDBARCH parameter.
3174         (fetch_lm_info, irix_current_sos, irix_open_symbol_file_object):
3175         Pass architecture to extract_mips_address.
3176
3177         * sparc-tdep.h (sparc_fetch_wcookie): Add GDBARCH parameter.
3178         * sparc-tdep.c (sparc_fetch_wcookie): Add GDBARCH parameter.
3179         (sparc_supply_rwindow, sparc_collect_rwindow): Pass architecture
3180         to sparc_fetch_wcookie.
3181         (sparc32_frame_prev_register): Likewise.
3182         * sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
3183         * sparc32nbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
3184         * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
3185
3186         * spu-tdep.c (spu_analyze_prologue): Add GDBARCH parameter.
3187         (spu_skip_prologue): Pass architecture to spu_analyze_prologue.
3188         (spu_virtual_frame_pointer): Likewise.
3189         (spu_frame_unwind_cache): Likewise.
3190         (info_spu_mailbox_list): Add BYTE_ORER parameter.
3191         (info_spu_mailbox_command): Pass byte order to info_spu_mailbox_list.
3192         (info_spu_dma_cmdlist): Add BYTE_ORER parameter.
3193         (info_spu_dma_command, info_spu_proxydma_command): Pass byte order
3194         to info_spu_dma_cmdlist.
3195
3196         * symfile.c (read_target_long_array): Add GDBARCH parameter.
3197         (simple_read_overlay_table, simple_read_overlay_region_table,
3198         simple_overlay_update_1): Pass architecture to read_target_long_array.
3199
3200         * v850-tdep.c (v850_analyze_prologue): Add GDBARCH parameter.
3201         (v850_frame_cache): Pass architecture to v850_analyze_prologue.
3202
3203         * xstormy16-tdep.c (xstormy16_analyze_prologue): Add GDBARCH
3204         parameter.
3205         (xstormy16_skip_prologue, xstormy16_frame_cache): Pass architecture
3206         to xstormy16_analyze_prologue.
3207         (xstormy16_resolve_jmp_table_entry): Add GDBARCH parameter.
3208         (xstormy16_find_jmp_table_entry): Likewise.
3209         (xstormy16_skip_trampoline_code): Pass architecture to
3210         xstormy16_resolve_jmp_table_entry.
3211         (xstormy16_pointer_to_address): Likewise.
3212         (xstormy16_address_to_pointer): Pass architecture to
3213         xstormy16_find_jmp_table_entry.
3214
3215         * xtensa-tdep.c (call0_track_op): Add GDBARCH parameter.
3216         (call0_analyze_prologue): Add GDBARCH parameter, pass to
3217         call0_track_op.
3218         (call0_frame_cache): Pass architecture to call0_analyze_prologue.
3219         (xtensa_skip_prologue): Likewise.
3220
3221 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3222
3223         * defs.h (strlen_paddr, paddr, paddr_nz): Remove.
3224         (paddress): Add GDBARCH parameter.
3225         * utils.c (strlen_paddr, paddr, paddr_nz): Remove.
3226         (paddress): Add GDBARCH parameter, use it instead of current_gdbarch.
3227         * ui-out.h (ui_out_field_core_addr): Add GDBARCH parameter.
3228         * ui-out.c (ui_out_field_core_addr): Add GDBARCH parameter,
3229         use it instead of current_gdbarch.
3230
3231         Update calls to ui_out_field_core_addr to pass architecture:
3232         * ada-lang.c (print_one_exception): Update.
3233         * breakpoint.c (print_one_breakpoint_location,
3234         print_one_exception_catchpoint): Update.
3235         * disasm.c (dump_insns): Update.
3236         * darwin-nat-info.c (darwin_debug_regions_recurse): Update.
3237         * mi/mi-main.c (mi_cmd_data_read_memory): Update.
3238         * mi/mi-symbol-cmds.c: Include "objfiles.h".
3239         (mi_cmd_symbol_list_lines): Update.
3240         * stack.c (print_frame_info, print_frame): Update.
3241
3242         Update callers of paddress to pass architecture:
3243         * ada-tasks.c (info_task): Update.
3244         * ada-valprint.c (ada_val_print_1): Update.
3245         * annotate.c (annotate_source, annotate_frame_begin): Update.
3246         * breakpoint.c (insert_bp_location, describe_other_breakpoints,
3247         mention): Update.
3248         * cli/cli-cmds.c (edit_command, list_command, print_disassembly):
3249         Update.
3250         * corefile.c (memory_error): Update.
3251         * c-valprint.c (print_function_pointer_address, c_val_print): Update.
3252         * disasm.c (dis_asm_print_address): Update.
3253         * exec.c (print_section_info): Update.
3254         * f-valprint.c (f_val_print): Update.
3255         * infcmd.c: Include "arch-utils.h".
3256         (jump_command, program_info): Update.
3257         * linux-fork.c: Include "arch-utils.h".
3258         (info_forks_command): Update.
3259         * m2-valprint.c (print_function_pointer_address,
3260         print_unpacked_pointer, print_variable_at_address,
3261         m2_val_print): Update.
3262         * m32r-rom.c (m32r_load_section, m32r_load, m32r_upload_command):
3263         Update.
3264         * printcmd.c (print_address, print_address_demangle, address_info):
3265         Update.
3266         * p-valprint.c (pascal_val_print): Update.
3267         * source.c: Include "arch-utils.h".
3268         (line_info): Update.
3269         * stack.c (frame_info, print_block_frame_labels): Update.
3270         * symfile.c (add_symbol_file_command, list_overlays_command): Update.
3271         * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1,
3272         print_symbol, print_partial_symbols, maintenance_info_psymtabs,
3273         maintenance_check_symtabs): Update.
3274         * symtab.c (find_pc_sect_symtab): Update.
3275         * target.c (deprecated_debug_xfer_memory): Update.
3276         * tracepoint.c (scope_info): Update.
3277         * tui/tui-stack.c (tui_make_status_line): Update.
3278         * valprint.c (val_print_string): Update.
3279
3280         Update callers of paddr_nz to use paddress instead (keeping
3281         user-visible output identical):
3282         * alpha-tdep.c (alpha_heuristic_proc_start): Update.
3283         * amd64-tdep.c (fixup_riprel, amd64_displaced_step_copy_insn,
3284         amd64_displaced_step_fixup): Update.
3285         * arch-utils.c (simple_displaced_step_copy_insn): Update.
3286         * auxv.c (fprint_target_auxv): Update.
3287         * breakpoint.c (insert_single_step_breakpoint): Update.
3288         * buildsym.c (finish_block): Update.
3289         * cli/cli-dump.c (restore_section_callback): Update.
3290         * fbsd-nat.c (fbsd_find_memory_regions): Update.
3291         * frame.c (frame_unwind_register_value): Update.
3292         * gcore.c (gcore_create_callback): Update.
3293         * hppa-tdep.c (hppa_frame_cache, hppa_skip_trampoline_code): Update.
3294         * i386-tdep.c (i386_displaced_step_fixup, i386_record_modrm,
3295         i386_record_lea_modrm_addr, i386_record_lea_modrm,
3296         i386_process_record): Update.
3297         * ia64-tdep.c (ia64_frame_this_id, ia64_sigtramp_frame_this_id,
3298         ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id,
3299         ia64_dummy_id, ia64_access_reg, ia64_access_rse_reg): Update.
3300         * infrun.c (displaced_step_prepare, displaced_step_fixup,
3301         handle_inferior_event, insert_step_resume_breakpoint_at_sal,
3302         insert_longjmp_resume_breakpoint): Update.
3303         * linux-nat.c (linux_nat_find_memory_regions): Update.
3304         * linux-record.c (record_linux_system_call): Update.
3305         * mips-tdep.c (heuristic_proc_start, mips_eabi_push_dummy_call,
3306         mips_n32n64_push_dummy_call, mips_o32_push_dummy_call,
3307         mips_o64_push_dummy_call): Update.
3308         * monitor.c (monitor_error, monitor_remove_breakpoint): Update.
3309         * record.c (record_arch_list_add_mem, record_wait,
3310         record_xfer_partial): Update.
3311         * remote-mips.c (mips_fetch_word, mips_check_lsi_error,
3312         mips_common_breakpoint): Update.
3313         * remote-sim.c (gdbsim_xfer_inferior_memory): Update.
3314         * rs6000-tdep.c (ppc_displaced_step_fixup): Update.
3315         * solib-som.c (som_current_sos): Update.
3316         * symfile.c (load_progress, generic_load): Update.
3317         * symfile-mem.c (add_vsyscall_page): Update.
3318         * valops.c (value_fetch_lazy): Update.
3319         * windows-tdep.c (windows_xfer_shared_library): Update.
3320
3321         Update callers of paddr_nz to use paddress instead (changing
3322         user-visible output to make it more correct):
3323         * dwarf2loc.c (locexpr_describe_location): Update.
3324         * ia64-tdep.c (ia64_memory_insert_breakpoint,
3325         ia64_memory_remove_breakpoint): Update.
3326         * jv-valprint.c (java_value_print): Update.
3327         * m32c-tdep.c (m32c_m16c_address_to_pointer): Update.
3328         * monitor.c (monitor_read_memory): Update.
3329
3330         Update callers of paddr to use paddress instead (changing
3331         user-visible output to make it more correct):
3332         * arm-tdep.c (arm_push_dummy_call): Update.
3333         * breakpoint.c (insert_bp_location, create_thread_event_breakpoint,
3334         create_breakpoint): Update.
3335         * darwin-nat-info.c (darwin_debug_regions): Update.
3336         * dcache.c (dcache_info): Update.
3337         * dsrec.c (load_srec, make_srec): Update.
3338         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program,
3339         dwarf2_frame_cache): Update.
3340         * gcore.c (gcore_copy_callback): Update.
3341         * gnu-nat.c (gnu_xfer_memory): Update.
3342         * mips-linux-nat.c (mips_show_dr): Update.
3343         * monitor.c (monitor_write_memory, monitor_insert_breakpoint,
3344         monitor_remove_breakpoint): Update.
3345         * remote.c (compare_sections_command): Update.
3346         * remote-m32r-sdi.c (m32r_xfer_memory, m32r_insert_breakpoint,
3347         m32r_remove_breakpoint, m32r_insert_watchpoint,
3348         m32r_remove_watchpoint): Update.
3349         * sol-thread.c (info_cb): Update.
3350         * symfile.c (load_progress): Update.
3351
3352         Update callers of paddress or paddr_nz to use hex_string instead
3353         (changes output of internal/error/debug messages only):
3354         * dwarf2read.c (dump_die_shallow): Update.
3355         * frame.c (fprint_field, fprint_frame, frame_pc_unwind,
3356         get_frame_func, create_new_frame): Update.
3357         * hppa-tdep.c (find_unwind_entry, unwind_command): Update.
3358         * ia64-tdep.c (get_kernel_table, ia64_find_proc_info_x,
3359         ia64_get_dyn_info_list): Update.
3360         * maint.c (maintenance_translate_address): Update.
3361         * mi/mi-cmd-var.c (mi_cmd_var_create): Update.
3362         * target.c (target_flash_erase): Update.
3363
3364         Update callers of paddr/paddr_nz to use phex/phex_nz instead,
3365         using an appropriate address size.  Remove use of strlen_paddr.
3366         * exec.c (exec_files_info): Update.
3367         * i386-nat.c (i386_show_dr): Update.
3368         * remote.c (remote_flash_erase): Update.
3369         * m32r-rom.c (m32r_load_section): Update.
3370         * monitor.c (monitor_vsprintf, monitor_store_register): Update.
3371         * remote.c (remote_check_symbols, remote_search_memory): Update.
3372         * remote-mips.c (mips_request, mips_common_breakpoint): Update.
3373         * scm-valprint.c (scm_ipruk, scm_scmval_print): Update.
3374         * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs): Update.
3375         * sh-tdep.c (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs,
3376         sh2a_show_regs, sh2a_nofpu_show_regs, sh3e_show_regs,
3377         sh3_dsp_show_regs, sh4_show_regs, sh4_nofpu_show_regs,
3378         sh_dsp_show_regs): Update.
3379         * xcoffsolib.c (sharedlibrary_command): Update.
3380
3381
3382         * maint.c (maint_print_section_info): Add ADDR_SIZE parameter.
3383         Use hex_string_custom instead of paddr.
3384         (print_bfd_section_info): Pass address size.
3385         (print_objfile_section_info): Likewise.
3386
3387         * annotate.h (annotate_source): Add GDBARCH parameter.
3388         (annotate_frame_begin): Likewise.
3389         * annotate.c (annotate_source): Add GDBARCH parameter.
3390         (annotate_frame_begin): Likewise.
3391         * source.c (identify_source_line): Update call to annotate_source.
3392         * stack.c (print_frame_info, print_frame): Update call to
3393         annotate_frame_begin.
3394
3395         * breakpoint.c (describe_other_breakpoints): Add GDBARCH parameter.
3396         (create_breakpoint, create_ada_exception_breakpoint): Update call.
3397
3398         * stack.c (print_block_frame_labels): Add GDBARCH parameter.
3399         (print_frame_label_vars): Update call.
3400
3401         * symmisc.c (print_partial_symbols): Add GDBARCH parameter.
3402         (dump_psymtab): Update call to print_partial_symbols.
3403         (struct print_symbol_args): Add GDBARCH member.
3404         (dump_symtab_1): Set print_symbol_args architecture member.
3405         (print_symbol): Use it.
3406
3407         * windows-tdep.h (windows_xfer_shared_library): Add GDBARCH
3408         parameter.
3409         * windows-tdep.c (windows_xfer_shared_library): Likewise.
3410         * i386-cygwin-tdep.c (struct cpms_data): Add GDBARCH member.
3411         (core_process_module_section): Pass architecture from cpms_data to
3412         windows_xfer_shared_library.
3413         (windows_core_xfer_shared_libraries): Initialize cmps_data 
3414         architecture member.
3415         * windows-nat.c (windows_xfer_shared_libraries): Pass architecture
3416         to windows_xfer_shared_library.
3417
3418         * defs.h (print_address): Add GDBARCH parameter.
3419         * printcmd.c (print_address): Add GDBARCH parameter.
3420         (print_scalar_formatted, do_examine): Update call.
3421         * findcmd.c (find_command): Update call.
3422         * tracepoint.c: Include "arch-utils.h".
3423         (trace_find_line_command): Update call.
3424         * tui/tui-disasm.c (tui_disassemble): Update call.
3425
3426         * value.h (print_address_demangle): Add GDBARCH parameter.
3427         * printcmd.c (print_address_demangle): Add GDBARCH parameter.
3428         * c-valprint.c (print_function_pointer_address, c_val_print):
3429         Update call.
3430         * f-valprint.c (f_val_print): Update call.
3431         * gnu-v3-abi.c (gnuv3_print_method_ptr): Update call.
3432         * jv-valprint.c (java_val_print): Update call.
3433         * m2-valprint.c (print_function_pointer_address, m2_val_print):
3434         Update call.
3435         * p-valprint.c (pascal_val_print): Update call.
3436
3437         * disasm.c (gdb_disassemble_info): Install architecture into
3438         di.application_data field.
3439
3440 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3441
3442         * disasm.h (gdb_disassembly): Add GDBARCH parameter.
3443         (gdb_print_insn): Likewise.
3444         * disasm.c (dump_insns): Add GDBARCH parameter.  Use it instead
3445         of current_gdbarch.
3446         (do_mixed_source_and_assembly): Add GDBARCH parameter.  Pass to
3447         dump_insns.
3448         (do_assembly_only): Likewise.
3449         (gdb_disassembly): Add GDBARCH parameter.  Use it instead of
3450         current_gdbarch.  Pass to subroutines.
3451         (gdb_print_insn): Add GDBARCH parameter.  Use it instead of
3452         current_gdbarch.
3453
3454         * stack.c (struct gdb_disassembly_stub_args): Add GDBARCH member.
3455         (gdb_disassembly_stub): Pass architecture to gdb_disassembly.
3456         (do_gdb_disassembly): Add GDBARCH argument.  Store into args.
3457         (print_frame_info): Pass architecture to do_gdb_disassembly.
3458
3459         * printcmd.c (print_formatted): Pass architecture to gdb_print_insn.
3460
3461         * mi/mi-cmd-disas.c: Include "arch-utils.h"
3462         (mi_cmd_disassemble): Pass architecture to gdb_disassembly.
3463
3464         * cli/cli-cmds.c: Include "arch-utils.h".
3465         (print_disassembly): Add GDBARCH parameter.  Pass to gdb_disassembly
3466         and tui_show_assembly.
3467         (disassemble_current_function): Pass architecture to
3468         tui_get_low_disassembly_address and print_disassembly.
3469         (disassemble_command): Pass architecture to
3470         tui_get_low_disassembly_address and print_disassembly.
3471
3472         * tui/tui.c (tui_show_assembly): Add GDBARCH parameter.  Pass to
3473         tui_update_source_windows_with_addr.
3474
3475         * tui/tui-data.h (struct tui_locator_element): Add GDBARCH member.
3476         (struct tui_source_info): Likewise.
3477         * tui/tui-data.c (tui_clear_win_detail): Clear source_info.gdbarch.
3478
3479         * tui/tui-disasm.c (tui_disassemble): Add GDBARCH parameter.
3480         Pass to gdb_print_insn.
3481         (tui_find_disassembly_address): Add GDBARCH parameter.  Pass to
3482         tui_disassemble.
3483         (tui_set_disassem_content): Add GDBARCH parameter.  Install into
3484         source_info.gdbarch.  Pass to tui_disassemble.
3485         (tui_show_disassem): Add GDBARCH parameter.  Pass to 
3486         tui_update_source_window.
3487         (tui_show_disassem_and_update_source): Add GDBARCH parameter.  Pass to
3488         tui_show_disassem and tui_update_source_window.
3489
3490         (tui_get_begin_asm_address): Return locator architecture in addition
3491         to locator PC value.
3492
3493         (tui_get_low_disassembly_address): Add GDBARCH parameter.   Pass to
3494         tui_get_low_disassembly_address.
3495
3496         (tui_vertical_disassem_scroll): Pass architecture to subroutines.
3497
3498         * tui/tui-disasm.h (tui_set_disassem_content): Add GDBARCH parameter.
3499         (tui_show_disassem): Likewise.
3500         (tui_show_disassem_and_update_source): Likewise.
3501         (tui_get_begin_asm_address): Return architecture and PC value.
3502
3503         * tui/tui.h (tui_get_low_disassembly_address): Add GDBARCH parameter.
3504         (tui_show_assembly): Add GDBARCH parameter.
3505
3506         * tui/tui-layout.c (extract_display_start_addr): Return current window
3507         architecture in addition to current PC value.
3508
3509         (tui_set_layout): Update calls to tui_get_low_disassembly_address and
3510         extract_display_start_addr.  Pass architecture to
3511         tui_update_source_windows_with_addr.
3512
3513         * tui/tui-source.c: Include "objfiles.h".
3514         (tui_set_source_content): Initialize window architecture.
3515         (tui_show_symtab_source): Add GDBARCH parameter.  Pass to
3516         tui_update_source_window_as_is
3517
3518         * tui/tui-source.h (tui_show_symtab_source): Add GDBARCH parameter.
3519
3520         * tui/tui-stack.c (tui_set_locator_info): Add GDBARCH parameter.
3521         Install locator architecture.
3522         (tui_set_locator_filename): Update call.
3523         (tui_show_frame_info): Pass architecture to tui_set_locator_info
3524         and subroutines.
3525
3526         * tui/tui-win.c (make_visible_with_new_height): Pass architecture
3527         to tui_update_source_window.
3528
3529         * tui/tui-winsource.c: Include "objfiles.h".
3530         (tui_display_main): Update call to tui_get_begin_asm_address.
3531         Pass architecture to tui_update_source_windows_with_addr.
3532         (tui_update_source_window): Add GDBARCH parameter.  Pass to
3533         tui_update_source_window_as_is.
3534         (tui_update_source_window_as_is): Add GDBARCH parameter.
3535         Pass to tui_set_disassem_content.
3536         (tui_update_source_windows_with_addr): Add GDBARCH parameter.
3537         Pass to subroutines.
3538         (tui_update_source_windows_with_line): Pass objfile architecture
3539         to subroutines.
3540         (tui_horizontal_source_scroll): Pass architecture to 
3541         tui_update_source_window_as_is.
3542         
3543         * tui/tui-winsource.h (tui_update_source_window): Add GDBARCH
3544         parameter.
3545         (tui_update_source_window_as_is): Likewise.
3546         (tui_update_source_windows_with_addr): Likewise.
3547
3548 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3549
3550         * breakpoint.h (struct breakpoint): New member GDBARCH.
3551         * breakpoint.c: Include "arch-utils.h".
3552         (set_raw_breakpoint_without_location): Add GDBARCH parameter.
3553         Use it to set breakpoint architecture.
3554         (set_raw_breakpoint): Add GDBARCH parameter.
3555         (create_internal_breakpoint): Likewise.
3556         (create_catchpoint): Likewise.
3557         (create_fork_vfork_event_catchpoint): Likewise.
3558         (create_breakpoint): Likewise.
3559         (create_breakpoints): Likewise.
3560         (break_command_really): Likewise.
3561         (create_ada_exception_breakpoint): Likewise.
3562         Update local callers to pass architecture:
3563         (create_internal_breakpoint): Update.
3564         (create_overlay_event_breakpoint): Update.
3565         (create_longjmp_master_breakpoint): Update.
3566         (create_thread_event_breakpoint): Update.
3567         (create_solib_event_breakpoint): Update.
3568         (create_catchpoint): Update.
3569         (create_fork_vfork_event_catchpoint): Update.
3570         (set_momentary_breakpoint): Update.
3571         (clone_momentary_breakpoint): Update.
3572         (create_breakpoint): Update.
3573         (create_breakpoints): Update.
3574         (break_command_really): Update.
3575         (break_command_1): Update.
3576         (set_breakpoint): Update.
3577         (watch_command_1): Update.
3578         (catch_fork_command_1): Update.
3579         (catch_exec_commnd_1): Update.
3580         (handle_gnu_v3_exceptions): Update.
3581         (create_ada_exception_breakpoint): Update.
3582         (catch_ada_exception_command): Update.
3583         (catch_assert_command): Update.
3584         (trace_command): Update.
3585
3586         * breakpoint.h (struct bp_location): New member GDBARCH.
3587         * breakpoint.c (get_sal_arch): New function.
3588         (set_raw_breakpoint): Set location architecture.
3589         (add_location_to_breakpoint): Likewise.
3590         (clone_momentary_breakpoint): Likewise.
3591         (watch_command_1): Likewise.
3592         (update_watchpoint): Likewise.
3593         (bp_loc_is_permanent): Use location architecture instead of
3594         current_gdbarch.
3595         (adjust_breakpoint_address): Add GDBARCH parameter; use it
3596         instead of current_gdbarch.
3597         Update callers of adjust_breakpoint_address to pass
3598         breakpoint location architecture:
3599         (set_raw_breakpoint): Update.
3600         (watch_command_1): Update.
3601
3602         * tracepoint.c: (collect_symbol): Add GDBARCH parameter, use instead
3603         of current_gdbarch.
3604         (add_local_symbols): Add GDBARCH parameter.  Pass to collect_symbol.
3605         (encode_actions): Pass tracepoint architecture to add_local_symbols
3606         (encode_actions): Use tracepoint architecture instead of
3607         current_gdbarch.  Pass it to add_local_symbols and collect_symbol.
3608
3609         * breakpoint.h (struct breakpoint_ops): Replace last_addr parameter
3610         of print_one callback with last_loc.
3611         * breakpoint.c (print_one_breakpoint_location): Replace last_addr
3612         parameter with last_loc.
3613         (print_one_breakpoint): Likewise.
3614         (do_captured_breakpoint_query): Update call.
3615         (breakpoint_1): Pass last_loc instead of last_addr to
3616         print_one_breakpoint.  Pass last location architecture instead of
3617         current_gdbarch to set_next_address.
3618         Update all implementations of the print_one callback:
3619         * breakpoint.c (print_one_catch_fork): Update.
3620         (print_one_catch_vfork): Update.
3621         (print_one_catch_exec): Update.
3622         (print_one_exception_catchpoint): Update.
3623         * ada-lang.c (print_one_exception): Update.
3624         (print_one_catch_exception): Update.
3625         (print_one_catch_exception_unhandled): Update.
3626         (print_one_catch_assert): Update.
3627
3628         * breakpoint.c (print_one_breakpoint_location): Add PRINT_ADDRESS_BITS
3629         parameter.  Use it instead of gdbarch_addr_bit (current_gdbarch).
3630         (print_one_breakpoint): Add PRINT_ADDRESS_BITS parameter and pass it
3631         to print_one_breakpoint_location.
3632         (breakpoint_address_bits): New function.
3633         (do_captured_breakpoint_query): Compute number of address bits to print
3634         and pass it to print_one_breakpoint.
3635         (breakpoint_1): Likewise.  Use it instead of current_gdbarch.
3636
3637         * breakpoint.h (create_thread_event_breakpoint): Add GDBARCH.
3638         * breakpoint.c (create_thread_event_breakpoint): Likewise.
3639         Update callers to create_thread_event_breakpoint:
3640         * aix-thread.c (pd_enable): Update.
3641         * linux-thread-db.c (enable_thread_event): Update.
3642
3643         * breakpoint.h (create_solib_event_breakpoint): Add GDBARCH.
3644         * breakpoint.c (create_solib_event_breakpoint): Likewise.
3645         Update callers to create_solib_event_breakpoint:
3646         * solib-frv.c (enable_break, enable_break2): Update.
3647         * solib-pa64.c (pa64_solib_create_inferior_hook): Update.
3648         * solib-som.c (som_solib_create_inferior_hook): Update.
3649         * solib-darwin.c (darwin_solib_create_inferior_hook): Update.
3650         * solib-svr4.c (enable_break): Update.
3651
3652         * breakpoint.h (insert_single_step_breakpoint): Add GDBARCH.
3653         * breakpoint.c (insert_single_step_breakpoint): Likewise.
3654         Update callers to insert_single_step_breakpoint:
3655         * alpha-tdep.c (alpha_software_single_step): Update.
3656         * arm-linux-tdep.c (arm_linux_software_single_step): Update.
3657         * arm-tdep.c (arm_software_single_step): Update.
3658         * cris-tdep.c (cris_software_single_step): Update.
3659         * rs6000-aix-tdep.c (rs6000_software_single_step): Update.
3660         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Update.
3661         * sparc-tdep.c (sparc_software_single_step): Update.
3662         * spu-tdep.c (spu_software_single_step): Update.
3663         * mips-tdep.c (deal_with_atomic_sequence): Add GDBARCH parameter.
3664         Pass it to insert_single_step_breakpoint.
3665         (mips_software_single_step): Pass architecture to
3666         deal_with_atomic_sequence and insert_single_step_breakpoint.
3667
3668         * breakpoint.h (deprecated_insert_raw_breakpoint): Add GDBARCH.
3669         (deprecated_remove_raw_breakpoint): Likewise.
3670         * breakpoint.c (deprecated_insert_raw_breakpoint): Add GDBARCH.
3671         (deprecated_remove_raw_breakpoint): Likewise.
3672         Update callers to deprecated_insert_raw_breakpoint and
3673         deprecated_remove_raw_breakpoint:
3674         * breakpoint.c (single_step_gdbarch): New static variable.
3675         (insert_single_step_breakpoint): Pass GDBARCH parameter to
3676         deprecated_insert_raw_breakpoint.  Store it in single_step_gdbarch.
3677         (remove_single_step_breakpoints): Pass architecture stored in
3678         single_step_gdbarch to deprecated_remove_raw_breakpoint.
3679         * rs6000-nat.c (exec_one_dummy_insn): Update.
3680         * solib-irix.c (enable_break, disable_break): Update.
3681         * procfs.c (procfs_mourn_inferior): Update.
3682         (remove_dbx_link_breakpoint): Update.
3683
3684         * breakpoint.h (set_breakpoint): Add GDBARCH parameter.
3685         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
3686         * breakpoint.c (set_breakpoint): Add GDBARCH parameter.
3687         (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise.
3688         Update callers to set_breakpoint, set_momentary_breakpoint and
3689         set_momentary_breakpoint_at_pc:
3690         * breakpoint.c (set_momentary_breakpoint_at_pc): Update.
3691         (until_break_command): Update.
3692         * infcall.c (call_function_by_hand): Update.
3693         * infcmd.c (finish_backward, finish_forward): Update.
3694         * infrun.c (insert_step_resume_breakpoint_at_sal): Add GDBARCH
3695         parameter.  Pass it to set_momentary_breakpoint.
3696         (insert_longjmp_resume_breakpoint): Add GDBARCH parameter.
3697         Pass it to set_momentary_breakpoint_at_pc.
3698         (handle_inferior_event): Update.
3699         (insert_step_resume_breakpoint_at_frame): Update.
3700         (insert_step_resume_breakpoint_at_caller): Update..
3701         * mi/mi-cmd-break.c: Include "arch-utils.h".
3702         (mi_cmd_break_insert): Update.
3703
3704         * target.h (struct target_ops): Add GDBARCH parameter to
3705         to_insert_breakpoint, to_remove_breakpoint, to_insert_hw_breakpoint,
3706         and to_remove_hw_breakpoint members.
3707         (target_insert_breakpoint, target_remove_breakpoint,
3708         target_insert_hw_breakpoint, target_remove_hw_breakpoint): Add GDBARCH
3709         parameter, pass to target routine.
3710         (memory_remove_breakpoint, memory_insert_breakpoint): Add GDBARCH
3711         parameter.
3712         * target.c (debug_to_insert_breakpoint, debug_to_remove_breakpoint,
3713         debug_to_insert_hw_breakpoint, debug_to_remove_hw_breakpoint): Add
3714         GDBARCH parameter, pass to target routine.
3715         (update_current_target): Update function signature.
3716         * breakpoint.c (insert_bp_location, remove_breakpoint,
3717         deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint):
3718         Pass architecture to target_ routines.
3719         Update all implementations of the target breakpoint routines to take
3720         GDBARCH parameter and use it instead of GDBARCH as appropriate:
3721         * corelow.c (ignore): Update.
3722         * exec.c (ignore): Update.
3723         * mem-break.c (memory_insert_breakpoint): Update.
3724         (memory_remove_breakpoint): Update.
3725         * monitor.c (monitor_insert_breakpoint): Update.
3726         (monitor_remove_breakpoint): Update.
3727         * record.c (record_insert_breakpoint): Update.
3728         (record_beneath_to_insert_breakpoint): Update.
3729         (record_remove_breakpoint): Update.
3730         (record_beneath_to_remove_breakpoint): Update.
3731         * remote.c (remote_insert_breakpoint): Update.
3732         (remote_remove_breakpoint): Update.
3733         (remote_insert_hw_breakpoint): Update.
3734         (remote_remove_hw_breakpoint): Update.
3735         * remote-m32r-sdi.c (m32r_insert_breakpoint): Update.
3736         (m32r_remove_breakpoint): Update.
3737         * remote-mips.c (mips_insert_breakpoint): Update.
3738         (mips_remove_breakpoint): Update.
3739         * i386-nat.c (i386_insert_hw_breakpoint): Update.
3740         (i386_remove_hw_breakpoint): Update.
3741         * nto-procfs.c (procfs_insert_breakpoint):  Update.
3742         (procfs_remove_breakpoint): Update.
3743         (procfs_insert_hw_breakpoint): Update.
3744         (procfs_remove_hw_breakpoint): Update.
3745
3746 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3747
3748         * frame.h (frame_unwind_arch): New.
3749         (frame_unwind_caller_arch): Likewise.
3750         * frame-unwind.h (frame_prev_arch_ftype): New type.
3751         (struct frame_unwind): New member prev_arch.
3752         * frame.c (struct frame_info): New member prev_arch.
3753         (frame_unwind_arch): New function.
3754         (frame_unwind_caller_arch): Likewise..
3755         (get_frame_arch): Reimplement in terms of frame_unwind_arch.
3756         * sentinel-frame.c (sentinel_frame_prev_arch): New function.
3757         (sentinel_frame_unwinder): Install it.
3758
3759         * frame.c (frame_pc_unwind): Use frame_unwind_arch instead
3760         of get_frame_arch.
3761         (frame_unwind_register_value): Likewise.
3762         (frame_unwind_register_signed): Likewise.
3763         (frame_unwind_register_unsigned): Likewise.
3764         * frame-unwind.c (frame_unwind_got_optimized): Likewise.
3765         (frame_unwind_got_register): Likewise.
3766         (frame_unwind_got_constant): Likewise.
3767         (frame_unwind_got_bytes): Likewise.
3768         (frame_unwind_got_address): Likewise.
3769
3770         * frame.h (enum frame_type): New value ARCH_FRAME.
3771         * frame.c (fprint_frame_type): Handle ARCH_FRAME.
3772         * stack.c (print_frame_info): Likewise.
3773
3774 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3775
3776         * target.h (struct target_ops): New member to_thread_architecture.
3777         (target_thread_architecture): New macro.
3778         * target.c (update_current_target): Inherit to_thread_architecture.
3779         (default_thread_architecture): New function.
3780         (debug_to_thread_architecture): New function.
3781         (setup_target_debug): Handle to_thread_architecture.
3782
3783         * regcache.h (get_thread_arch_regcache): New.
3784         * regcache.c (struct regcache_list): New data type.
3785         (current_regcache): Hold regcache list instead of single regcache.
3786         (current_thread_ptid, current_thread_arch): New static variables.
3787         (get_thread_arch_regcache): New function.
3788         (get_thread_regcache): Use it.  Call target_thread_architecture.
3789         (regcache_thread_ptid_changed): Update to current_regcache changes.
3790         (registers_changed): Likewise.  Reset current_thread_arch and
3791         current_thread_ptid.
3792
3793         * remote.c (remote_wait): Access target registers in target_gdbarch.
3794         * linux-nat.c (linux_nat_do_thread_registers): Likewise.
3795         * proc-service.c (ps_lgetregs, ps_lsetregs): Likewise.
3796         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
3797         * sol-thread.c (ps_lgetregs, ps_lsetregs): Likewise.
3798         (ps_lgetfpregs, ps_lsetfpregs): Likewise.
3799         * solib-svr4.c (enable_break): Likewise.
3800         (svr4_relocate_main_executable): Likewise.
3801
3802 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3803
3804         * python/python-internal.h (struct language_defn): Declare.
3805         (python_gdbarch, python_language): Likewise.
3806         (ensure_python_env): Add prototype.
3807         (make_cleanup_py_restore_gil): Remove prototype.
3808
3809         * python/python.c: Include "arch-utils.h", "value.h" and "language.h".
3810         (python_gdbarch, python_language): New global variables.
3811         (struct python_env): New data type.
3812         (ensure_python_env, restore_python_env): New functions.
3813         (eval_python_from_control_command): Call ensure_python_env to
3814         install current architecture and language.
3815         (python_command, gdbpy_new_objfile): Likewise.
3816         * python/python-cmd.c: Include "arch-utils.h" and "language.h".
3817         (cmdpy_destroyer, cmdpy_function, cmdpy_completer): Call
3818         ensure_python_env.
3819         * python/python-type.c (clean_up_objfile_types): Likewise.
3820         * python/python-objfile.c: Include "language.h".
3821         (clean_up_objfile): Call ensure_python_env.
3822         * python/python-prettyprint.c (apply_val_pretty_printer): Likewise.
3823         (apply_varobj_pretty_printer): Do not call PyGILState_Ensure.
3824         * varobj.c (varobj_ensure_python_env): New helper function.
3825         (varobj_get_display_hint, update_dynamic_varobj_children,
3826         install_default_visualizer, varobj_set_visualizer, free_variable,
3827         value_get_print_value): Call it.
3828         (value_get_print_value): Add varobj argument instead of pretty
3829         printer argument.  Update all callers.
3830
3831         * python/python-utils.c (py_gil_restore, make_cleanup_py_restore_gil):
3832         Remove.
3833
3834         * value.h (internal_function_fn): Add GDBARCH and LANGUAGE argument.
3835         (call_internal_function): Likewise.
3836         * value.c (call_internal_function): Likewise.  Pass to handler.
3837         * eval.c (evaluate_subexp_standard): Update call.
3838         * python/python-function.c: Include "language.h".
3839         (fnpy_call): Add GDBARCH and LANGAUAGE arguments and call
3840         make_cleanup_python_env.
3841
3842         * python/python-value.c (builtin_type_pyint, builtin_type_pyfloat,
3843         builtin_type_pylong, builtin_type_pybool, builtin_type_pychar,
3844         valpy_str): Use python_gdbarch and python_language instead of
3845         current_gdbarch and current_language.
3846         * python/python-type.c (typy_lookup_typename): Likewise.
3847
3848 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3849
3850         * arch-utils.c (selected_byte_order): Return target_byte_order_user.
3851         (show_endian): Use target_byte_order_user if specified; otherwise
3852         use get_current_arch () instead of current_gdbarch.
3853         (show_architecture): Use set_architecture_string if specified;
3854         otherwise use get_current_arch () instead of current_gdbarch.
3855         (get_current_arch): New function.
3856         * arch-utils.h (get_current_arch): Add prototype.
3857
3858         * osabi.c (show_osabi): Use get_current_arch () instead of
3859         current_gdbarch.
3860
3861         * findcmd.c: Include "arch-utils.h".
3862         (parse_find_args): Add BIG_P argument.  Use it instead of byte order
3863         of current_gdbarch.
3864         (find_command): Use get_current_arch () instead of current_gdbarch.
3865         Pass byte order to parse_find_args.
3866
3867         * maint.c: Include "arch-utils.h".
3868         (maintenance_print_architecture): Use get_current_arch () instead
3869         of current_gdbarch.
3870
3871         * reggroups.c: Include "arch-utils.h".
3872         (maintenance_print_reggroups): Use get_current_arch () instead
3873         of current_gdbarch.
3874
3875         * symfile.c: Include "arch-utils.h".
3876         (overlay_load_command): Use get_current_arch () instead of
3877         current_gdbarch.
3878
3879         * value.c: Include "arch-utils.h".
3880         (show_convenience): Use get_current_arch () instead of
3881         current_gdbarch.
3882
3883         * tui/tui-regs.c: Include "arch-utils.h".
3884         (tui_reg_next_command): Use get_current_arch () instead of
3885         current_gdbarch.
3886
3887         * mi/mi-main.c: Include "arch-utils.h".
3888         (mi_cmd_data_read_memory): Use get_current_arch () instead of
3889         current_gdbarch.
3890
3891         * parse.c: Include "arch-utils.h".
3892         (parse_exp_in_context): Use get_current_arch () instead of
3893         current_gdbarch.
3894
3895 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3896
3897         * gdbtypes.c (make_pointer_type, make_reference_type,
3898         smash_to_memberptr_type, lookup_array_range_type, check_stub_method):
3899         Use type architecture instead of current_gdbarch.
3900
3901         * gdbtypes.h (address_space_name_to_int, address_space_int_to_name):
3902         Add GDBARCH paramter.
3903         * gdbtypes.c (address_space_name_to_int, address_space_int_to_name):
3904         Add GDBARCH parameter.   Use it instead of current_gdbarch.
3905         * c-typeprint.c (c_type_print_modifier): Update call.
3906         * parse.c (push_type_address_space): Likewise.
3907
3908         * findvar.c (extract_typed_address, store_typed_address): Use type
3909         architecture instead of current_gdbarch.
3910
3911         * value.c (value_as_address, unpack_field_as_long): Use type architecture
3912         instead of current_gdbarch.
3913
3914         * doublest.c (floatformat_from_length): Add GDBARCH argument.  Use it
3915         instead of current_gdbarch.
3916         (floatformat_from_type): Pass type architecture.
3917
3918         * infcall.c (find_function_addr): Use type architecture instead
3919         of current_gdbarch.
3920
3921         * valarith.c (value_bitstring_subscript, value_x_binop, value_neg,
3922         value_bit_index): Use type architecture instead of current_gdbarch.
3923         * valops.c (value_cast, value_slice): Likewise.
3924
3925         * value.h (modify_field): Add TYPE argument.
3926         * value.c (modify_field): Add TYPE argument.  Use type architecture
3927         instead of current_gdbarch.
3928         (set_internalvar_component): Likewise.
3929         * eval.c (evaluate_struct_tuple): Update call.
3930         * valops.c (value_assign): Likewise.
3931         * ada-lang.c (modify_general_field): Likewise.  Add TYPE argument.
3932         (make_array_descriptor): Update calls.
3933         (move_bits): Add BITS_BIG_ENDIAN_P argument.  Use it instead of
3934         current_gdbarch.
3935         (ada_value_assign, value_assign_to_component): Update calls.
3936         (decode_packed_array, ada_value_primitive_packed_val, ada_value_assign,
3937         value_assign_to_component): Use type arch instead of current_gdbarch.
3938
3939         * printcmd.c (float_type_from_length): Remove GDBARCH argument,
3940         use type architecture instead.
3941         (print_scalar_formatted, printf_command): Update calls.  Use type
3942         architecture instead of current_gdbarch.
3943         * valprint.c (val_print_type_code_int): Use type architecture
3944         instead of current_gdbarch.
3945         * varobj.c (value_get_print_value): Likewise.
3946         * python/python-prettyprint.c (print_string_repr): Add GDBARCH
3947         argument.  Use it instead of current_gdbarch.
3948         (apply_val_pretty_printer): Update call.
3949
3950         * ada-valprint.c (ada_val_print_1): Use type architecture instead
3951         of current_gdbarch.
3952         * c-valprint.c (print_function_pointer_address): Add GDBARCH argument.
3953         Use it instead of current_gdbarch.
3954         (c_val_print): Update calls passing type architecture.
3955         * f-valprint.c (f_val_print): Use type architecture instead of
3956         current_gdbarch.
3957         * jv-valprint (java_value_print): Likewise.
3958         * m2-valprint.c (print_function_pointer_address): Add GDBARCH argument.
3959         Use it instead of current_gdbarch.
3960         (print_unpacked_pointer): Update calls passing type architecture.
3961         * scm-valprint.c (scm_scmval_print): Use type architecture instead of
3962         current_gdbarch.
3963
3964         * gnu-v3-abi.c (get_class_arch): Remove.
3965         (gnuv3_rtti_type): Use get_type_arch instead of get_class_arch.  Remove
3966         special-case check for Java classes.
3967         (gnuv3_virtual_fn_field, gnuv3_baseclass_offset, gnuv3_print_method_ptr,
3968         gnuv3_method_ptr_size, gnuv3_make_method_ptr, gnuv3_method_ptr_to_value):
3969         Use get_type_arch instead of get_class_arch.
3970
3971 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
3972
3973         * gdbtypes.h (TYPE_OBJFILE_OWNED, TYPE_OWNER): New macros.
3974         (TYPE_OBJFILE, TYPE_ALLOC, TYPE_ZALLOC): Reimplement.
3975         (alloc_type_arch): Add prototype.
3976         (alloc_type_copy): Likewise.
3977         (get_type_arch): Likewise.
3978         (arch_type): Likewise.
3979         (arch_integer_type): Likewise.
3980         (arch_character_type): Likewise.
3981         (arch_boolean_type): Likewise.
3982         (init_float_type): Remove, replace by ...
3983         (arch_float_type): ... this.
3984         (init_complex_type): Remove, replace by ...
3985         (arch_complex_type): ... this.
3986         (init_flags_type): Remove, replace by ...
3987         (arch_flags_type): ... this.
3988         (init_composite_type): Remove, replace by ...
3989         (arch_composite_type): ... this.
3990
3991         * gdbtypes.c (alloc_type): No longer support NULL objfile.
3992         (init_type): Likewise.
3993         (alloc_type_arch): New function.
3994         (alloc_type_copy): New function.
3995         (get_type_arch): New function.
3996
3997         (smash_type): Preserve type ownership information.
3998         (make_pointer_type, make_reference_type, make_function_type,
3999         smash_to_memberptr_type, smash_to_method_type): No longer
4000         preserve OBJFILE across smash_type calls.
4001         (make_pointer_type, make_reference_type, make_function_type,
4002         lookup_memberptr_type, lookup_methodptr_type, allocate_stub_method,
4003         create_range_type, create_array_type, create_set_type, copy_type):
4004         Use alloc_type_copy when allocating types.
4005         (check_typedef): Use alloc_type_arch.
4006         (copy_type_recursive): Likewise.  Preserve type ownership data
4007         after copying type.
4008         (recursive_dump_type): Dump type ownership data.
4009         (alloc_type_instance): Update type ownership check.
4010         (copy_type, copy_type_recursive): Likewise.
4011
4012         (arch_type): New function.
4013         (arch_integer_type): Likewise.
4014         (arch_character_type): Likewise.
4015         (arch_boolean_type): Likewise.
4016         (init_float_type): Remove, replace by ...
4017         (arch_float_type): ... this.
4018         (init_complex_type): Remove, replace by ...
4019         (arch_complex_type): ... this.
4020         (init_flags_type): Remove, replace by ...
4021         (arch_flags_type): ... this.
4022         (append_flags_type_flag): Move down.
4023         (init_composite_type): Remove, replace by ...
4024         (arch_composite_type): ... this.
4025         (append_composite_type_field_aligned,
4026         append_composite_type_field): Move down.
4027
4028         * gdbarch.c (gdbtypes_post_init): Allocate all types
4029         using per-architecture routines.
4030         * ada-lang.c (ada_language_arch_info): Likewise.
4031         * f-lang.c (build_fortran_types): Likewise.
4032         * jv-lang.c (build_java_types): Likewise.
4033         * m2-lang.c (build_m2_types): Likewise.
4034         * scm-lang.c (build_scm_types): Likewise.
4035
4036         * ada-lang.c (ada_type_of_array): Use alloc_type_copy.
4037         (packed_array_type): Likewise.
4038         (ada_template_to_fixed_record_type_1): Likewise.
4039         (template_to_static_fixed_type): Likewise.
4040         (to_record_with_fixed_variant_part): Likewise.
4041         (to_fixed_variant_branch_type): Likewise.
4042         (to_fixed_array_type): Likewise.
4043         (to_fixed_range_type): Likewise.
4044         (empty_record): Use type instead of objfile argument.
4045         Use alloc_type_copy.
4046         (to_fixed_variant_branch_type): Update call to empty_record.
4047         * jv-lang.c (type_from_class): Use alloc_type_arch.
4048
4049         * arm-tdep.c (arm_ext_type): Allocate per-architecture type.
4050         * i386-tdep.c (i386_eflags_type, i386_mxcsr_type, i387_ext_type,
4051         i386_mmx_type, i386_sse_type): Likewise.
4052         * ia64-tdep.c (ia64_ext_type): Likewise.
4053         * m32c-tdep.c (make_types): Likewise.
4054         * m68k-tdep.c (m68k_ps_type, m68881_ext_type): Likewise.
4055         * rs6000-tdep.c (rs6000_builtin_type_vec64,
4056         rs6000_builtin_type_vec128): Likewise.
4057         * sparc-tdep.c (sparc_psr_type, sparc_fsr_type): Likewise.
4058         * sparc64-tdep.c (sparc64_pstate_type, sparc64_fsr_type,
4059         sparc64_fprs_type): Likewise.
4060         * spu-tdep.c (spu_builtin_type_vec128): Likewise.
4061         * xtensa-tdep.c (xtensa_register_type): Likewise.
4062         * linux-tdep.c (linux_get_siginfo_type): Likewise.
4063         * target-descriptions.c (tdesc_gdb_type): Likewise.
4064         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
4065
4066 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4067
4068         * i386-tdep.h (struct gdbarch_tdep): Add i386_eflags_type and
4069         i386_mxcsr_type members.
4070         (i386_eflags_type): Make into function.
4071         (i386_mxcsr_type): Likewise.
4072         * i386-tdep.c (i386_eflags_type): Make into function.
4073         (i386_mxcsr_type): Likewise.
4074         (i386_register_type): Update uses.
4075         (i386_init_types): Remove.
4076         (_initialize_i386_tdep): Do not call it.
4077         * amd64-tdep.c (amd64_register_type): Update uses.
4078
4079         * m68k-tdep.h (struct gdbarch_tdep): Add m68k_ps_type member.
4080         * m68k-tdep.c (m68k_ps_type): Make into function.
4081         (m68k_register_type): Update use.
4082         (m68k_init_types): Remove.
4083         (_initialize_m68k_tdep): Do not call it.
4084
4085         * sparc-tdep.h (struct gdbarch_tdep): Add sparc_psr_type,
4086         sparc_fsr_type, sparc64_pstate_type, sparc64_fsr_type, and
4087         sparc64_fprs_type members.
4088         * sparc-tdep.c (sparc_psr_type): Make into function.
4089         (sparc_fsr_type): Likewise.
4090         (sparc32_register_type): Update uses.
4091         (sparc_init_types): Remove.
4092         (_initialize_sparc_tdep): Do not call it.
4093         * sparc64-tdep.c (sparc64_pstate_type): Make into function.
4094         (sparc64_fsr_type): Likewise.
4095         (sparc64_fprs_type): Likewise.
4096         (sparc64_register_type): Update uses.
4097         (sparc64_init_types): Remove.
4098         (_initialize_sparc64_tdep): Likewise.
4099
4100 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4101
4102         * gdbtypes.h (builtin_type_ieee_single, builtin_type_ieee_double,
4103         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
4104         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
4105         (init_float_type, init_complex_type): Add prototypes.
4106         * gdbtypes.c (builtin_type_ieee_single, builtin_type_ieee_double,
4107         builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext,
4108         builtin_type_ia64_spill, builtin_type_ia64_quad): Remove.
4109         (_initialize_gdbtypes): Do not initialize them.
4110         (build_flt): Rename to ...
4111         (init_float_type): ... this.  Make global.
4112         (build_complex): Rename to ...
4113         (init_complex_type): ... this.  Make global.  Remove BIT argument.
4114         (gdbtypes_post_init): Update calls.
4115
4116         * ada-lang.c (ada_language_arch_info): Use init_float_type.
4117         * jv-lang.c (build_java_types): Likewise.
4118         * m2-lang.c (build_m2_types): Likewise.
4119         * f-lang.c (build_fortran_types): Use init_float_type and
4120         init_complex_type.
4121
4122         * target-descriptions.c (tdesc_gdb_type): Call init_float_type instead
4123         of using builtin_type_ieee_single, builtin_type_ieee_double, or
4124         builtin_type_arm_ext.
4125
4126         * ia64-tdep.h (struct gdbarch_tdep): Add ia64_ext_type member.
4127         * ia64-tdep.c (builtin_type_ia64_ext): Remove.
4128         (_initialize_ia64_tdep): Do not initialize it.
4129         (floatformat_valid, floatformat_ia64_ext, floatformats_ia64_ext):
4130         Move up.
4131         (ia64_ext_type): New function.
4132         (ia64_register_reggroup_p, ia64_convert_register_p,
4133         ia64_register_to_value, ia64_value_to_register,
4134         ia64_extract_return_value, ia64_store_return_value): Use ia64_ext_type
4135         instead of builtin_type_ia64_ext.
4136
4137         * i386-tdep.h (struct gdbarch_tdep): Add i387_ext_type member.
4138         (i387_ext_type): Add prototype.
4139         * i386-tdep.c (i387_ext_type): New function.
4140         (i386_extract_return_value, i386_store_return_value,
4141         i386_register_type): Use it instead of builtin_type_i387_ext.
4142         * amd64-tdep.c (amd64_register_type): Likewise.
4143         * i387-tdep.c (print_i387_value, i387_register_to_value,
4144         i387_value_to_register): Likewise.
4145         (print_i387_value, print_i387_ext): Add GDBARCH argument.
4146         (print_i387_ext, i387_print_float_info): Pass to subroutines.
4147
4148         * m68k-tdep.h (struct gdbarch_tdep): Add m68881_ext_type member.
4149         * m68k-tdep.c (m68881_ext_type): New function.
4150         (m68k_register_type, m68k_convert_register_p): Use it instead
4151         of builtin_type_m68881_ext.
4152
4153         * arm-tdep.h (struct gdbarch_tdep): Add arm_ext_type member.
4154         * arm-tdep.c (arm_ext_type): New function.
4155         (arm_register_type): Use it instead of builtin_type_arm_ext.
4156
4157         * alpha-tdep.c (alpha_register_type): Use builtin types
4158         instead of builtin_type_ieee_double.
4159
4160         * mips-tdep.c (mips_float_register_type, mips_double_register_type):
4161         Remove.
4162         (mips_register_type): Use builtin types instead of
4163         builtin_type_ieee_single and builtin_type_ieee_double.
4164         (mips_print_fp_register): Use builtin types instead of
4165         mips_float_register_type and mips_double_register_type.
4166
4167         * hppa-tdep.c (hppa32_register_type, hppa64_register_type):
4168         Use builtin types instead of builtin_type_ieee_single and
4169         builtin_type_ieee_double.
4170
4171 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4172
4173         * gdbtypes.h (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
4174         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
4175         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
4176         builtin_type_int128, builtin_type_uint128): Remove.
4177         (struct builtin_type): New members builtin_int0, builtin_int8,
4178         builtin_uint8, builtin_int16, builtin_uint16, builtin_int32,
4179         builtin_uint32, builtin_int64, builtin_uint64, builtin_int128,
4180         and builtin_uint128.
4181         * gdbtypes.c (builtin_type_int0, builtin_type_int8, builtin_type_uint8,
4182         builtin_type_int16, builtin_type_uint16, builtin_type_int32,
4183         builtin_type_uint32, builtin_type_int64, builtin_type_uint64,
4184         builtin_type_int128, builtin_type_uint128): Remove.
4185         (_initialize_gdbtypes): Do not initialize them.
4186         (gdbtypes_post_init): Initialize fixed-size integer types.
4187
4188         * dwarf2expr.c (unsigned_address_type, signed_address_type): Add
4189         GDBARCH argument.  Return platform-specific type.
4190         (dwarf2_read_address, execute_stack_op): Update calls.
4191
4192         * target-descriptions.c (tdesc_gdb_type): Use platform-specific types
4193         instead of global builtin_int_... variables.
4194         * mi/mi-main.c (mi_cmd_data_read_memory): Likewise.
4195         * printcmd.c (do_examine): Likewise.
4196         * jv-exp.y (parse_number): Likewise.
4197
4198         * alpha-tdep.c (alpha_register_type, alpha_push_dummy_call,
4199         alpha_store_return_value): Likewise.
4200         * amd64-linux-tdep.c (amd64_linux_register_type): Likewise.
4201         * amd64-tdep.c (amd64_register_type): Likewise.
4202         * arm-tdep.c (arm_register_type): Likewise.
4203         * avr-tdep.c (avr_register_type): Likewise.
4204         * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
4205         * frv-tdep.c (frv_register_type): Likewise.
4206         * h8300-tdep.c h8300_register_type): Likewise.
4207         * hppa-tdep.c (hppa64_push_dummy_call, hppa32_register_type,
4208         hppa64_register_type): Likewise.
4209         * i386-tdep.c (i386_mmx_type, i386_sse_type): Likewise.
4210         * iq2000-tdep.c (iq2000_register_type): Likewise.
4211         * lm32-tdep.c (lm32_register_type, lm32_push_dummy_call): Likewise.
4212         * m32r-tdep.c (m32r_register_type): Likewise.
4213         * m68hc11-tdep.c (m68hc11_register_type, m68hc11_pseudo_register_read,
4214         m68hc11_pseudo_register_write): Likewise.
4215         * m68k-tdep.c (m68k_register_type): Likewise.
4216         * m88k-tdep.c (m88k_register_type, m88k_store_arguments): Likewise.
4217         * mep-tdep.c (mep_register_type): Likewise.
4218         * mips-tdep.c (mips_register_type, mips_pseudo_register_type,
4219         mips_print_fp_register): Likewise.
4220         * moxie-tdep.c (moxie_register_type): Likewise.
4221         * mt-tdep.c (mt_copro_register_type, mt_register_type): Likewise.
4222         * rs6000-tdep.c (rs6000_builtin_type_vec64,
4223         rs6000_builtin_type_vec128): Likewise.
4224         * score-tdep.c (score_register_type): Likewise.
4225         * sparc-tdep.c (sparc32_register_type, sparc32_store_arguments):
4226         Likewise.
4227         * sparc64-tdep.c (sparc64_register_type, sparc64_store_arguments):
4228         Likewise.
4229         * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
4230         * v850-tdep.c (v850_register_type): Likewise.
4231         * xstormy16-tdep.c (xstormy16_register_type): Likewise.
4232         * xtensa-tdep.c (xtensa_register_type): Likewise.
4233
4234         * mt-tdep.c (struct gdbarch_tdep): New data structure.
4235         (mt_gdbarch_init): Alloc TDEP structures.
4236         (mt_register_type): Cache coprocessor type in TDEP instead of
4237         static global variable.
4238
4239         * xtensa-tdep.h (struct gdbarch_tdep): Add type_entries member.
4240         * xtensa-tdep.c (type_entries): Remove.
4241         (xtensa_register_type): Cache fixed-size types in TDEP instead
4242         of in global variable.
4243
4244 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4245
4246         * gdbtypes.h (builtin_type_true_char): Remove.
4247         (builtin_type_true_unsigned_char): Likewise.
4248         (struct builtin_type): Add builtin_true_char and
4249         builtin_true_unsigned_char members.
4250         * gdbtypes.c (builtin_type_true_char): Remove.
4251         (builtin_type_true_unsigned_char): Likewise.
4252         (_initialize_gdbtypes): Do not initialize them.
4253         (gdbtypes_post_init): Initialize builtin_true_char and
4254         builtin_true_unsigned_char members of builtin_type.
4255
4256         * printcmd.c (print_scalar_formatted): Use builtin_type
4257         members instead of builtin_type_true_char and
4258         builtin_type_true_unsigned_char.
4259         * ada-valprint.c (ada_val_print_1): Likewise.
4260
4261 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4262
4263         * gdbtypes.h (builtin_type_void): Remove.
4264         * gdbtypes.c (builtin_type_void): Remove.
4265         (_initialize_gdbtypes): Do not initialize it.
4266
4267         (safe_parse_type): Add GDBARCH argument.  Use it to construct
4268         void return type.
4269         (check_stub_method): Update call.
4270
4271         * infcall.c (call_function_by_hand): Use platform-specific type
4272         instead of builtin_type_void.
4273         * valops.c (value_cast): Use input void type instead of
4274         builtin_type_void.
4275
4276 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4277
4278         * ada-lang.c (assign_component): Use platform-specific integer type
4279         instead of builtin_type_int32 type.
4280         (ada_evaluate_subexp) [OP_ATR_SIZE]: Likewise.
4281
4282         * ax-gdb.c (gen_expr) [UNOP_NEG]: Use platform-specific integer type
4283         instead of builtin_type_int8 type.
4284         * valarith.c (value_x_unop): Likewise.
4285         * python/python-value.c (valpy_absolute): Avoid reference to
4286         builtin_type_int8 type.
4287
4288         * eval.c (evaluate_subexp_standard): Use platform-specific integer
4289         type instead of builtin_type_int8 as EVAL_SKIP return value type.
4290         * ada-lang.c (ada_evaluate_subexp): Likewise.
4291         * jv-lang.c (evaluate_subexp_java): Likewise.
4292         * m2-lang.c (evaluate_subexp_modula2): Likewise.
4293         * scm-lang.c (evaluate_exp): Likewise.
4294
4295         * value.h (value_bitstring): Add INDEX_TYPE argument.
4296         * valops.c (value_bitstring): Add INDEX_TYPE argument, use it instead
4297         of builtin_type_int32 as base range type.
4298         * eval.c (evaluate_subexp_standard): Update value_bitstring call.
4299
4300 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4301
4302         * gdbtypes.c (lookup_array_range_type): Add prototype.
4303         (lookup_string_range_type): Likewise.
4304         * gdbtypes.c (lookup_array_range_type): New function.
4305         (lookup_string_range_type): Likewise.
4306
4307         * ax-gdb.c (gen_repeat): Use lookup_array_range_type.
4308         * parse.c (follow_types): Likewise.
4309         * jv-lang.c (java_array_type): Likewise.
4310         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
4311         * mt-tdep.c (mt_register_type): Likewise.
4312         * sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
4313         * sh64-tdep.c (sh64_build_float_register_type): Likewise.
4314         * value.c (allocate_repeat_value): Likewise.
4315         * valops.c (value_array, value_cstring): Likewise.
4316         * valops.c (value_string): Use lookup_string_range_type.
4317
4318 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4319
4320         * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Remove
4321         redundant check for NULL TYPE_TARGET_TYPE.
4322         * m2-valprint.c (m2_print_long_set): Likewise.
4323         * p-valprint.c (pascal_type_print_base): Likewise.
4324
4325 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4326
4327         * printcmd.c (next_gdbarch): New static variable.
4328         (set_next_address, do_examine, x_command): Set it.
4329         (decode_format): Use 'a' size to indicate width of an address.
4330         (do_examine): Add GDBARCH argument.  Handle 'a' size.
4331         (x_command): Pass architecture to do_examine.
4332         Error if called without argument the first time.  
4333         (do_one_display): Pass architecture to do_examine.
4334
4335         (examine_i_type, examine_b_type, examine_h_type, examine_w_type,
4336         examine_g_type): Remove.
4337         (_initialize_printcmd): Do not initialize them.
4338         (do_examine): Use builin_type_int... instead of examine_..._type.
4339
4340 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4341
4342         * gdbtypes.h (struct builtin_type): Add internal_fn member.
4343         * gdbtypes.c (gdbtypes_post_init): Initialize it.
4344         * value.c (internal_fn_type): Remove.
4345         (_initialize_values): Do not initialize it.
4346
4347         * value.c (struct internalvar): Add enum internalvar_kind type and
4348         kind member.  Restructure union internalvar_data type.  Remove type,
4349         canonical, and make_value members.
4350         (init_if_undefined_command): Update for data structure changes.
4351         (create_internalvar): Likewise.
4352         (create_internalvar_type_lazy): Likewise.
4353         (get_internalvar_integer): Likewise.
4354         (get_internalvar_function): Likewise.
4355         (set_internalvar_component): Likewise.
4356         (set_internalvar): Likewise.
4357         (set_internalvar_integer): Likewise.
4358         (set_internalvar_function): Likewise.
4359         (clear_internalvar): Likewise.
4360         (add_internal_function): Likewise.
4361         (preserve_one_internalvar): New function.
4362         (preserve_values): Call it.
4363
4364         * value.h (value_of_internalvar): Add GDBARCH parameter.
4365         (internalvar_make_value): Likewise.
4366         * value.c (value_of_internalvar): Add GDBARCH parameter.  Pass it to
4367         make_value callback.  Use it to generate per-architecture result value
4368         types for internal variables with no pre-defined type.  Update for data
4369         structure changes.
4370         (show_convenience): Pass architecture to value_of_internalvar.
4371         * eval.c (evaluate_subexp_standard): Likewise.
4372         * infrun.c (siginfo_make_value): Add GDBARCH parameter.  Use it
4373         instead of current frame architecture.  Return per-architecture type.
4374
4375         * value.h (set_internalvar_string): Add prototype.
4376         * value.c (set_internalvar_string): New function.
4377         * tracepoint.c (set_traceframe_context): Use it.
4378
4379 2009-07-02  Ulrich Weigand  <uweigand@de.ibm.com>
4380
4381         * jv-lang.h (java_int_type, java_byte_type, java_short_type,
4382         java_long_type, java_boolean_type, java_char_type, java_float_type,
4383         java_double_type, java_void_type): Remove.
4384         (struct builtin_java_type): New data type.
4385         (builtin_java_type): Add prototype.
4386         (java_primitive_type): Add GDBARCH argument.
4387         (java_primitive_type_from_name): Likewise.
4388         (type_from_class): Likewise.
4389
4390         * jv-lang.c (java_int_type, java_byte_type, java_short_type,
4391         java_long_type, java_boolean_type, java_char_type, java_float_type,
4392         java_double_type, java_void_type): Remove.
4393
4394         (build_java_types, builtin_java_type): New functions.
4395         (java_type_data): New static variable.
4396         (_initialize_java_language): Initialize it.  No longer initialize
4397         global types.
4398         (java_language_arch_info): Use per-architecture types.
4399
4400         (java_primitive_type): Add GDBARCH argument.  Return per-architecture
4401         type instead of refering to global variable.
4402         (java_primitive_type_from_name): Add GDBARCH argument.
4403         (java_primitive_type_name): New function.
4404         (java_demangled_signature_length): Use it instead of
4405         java_primitive_type_from_name.
4406         (java_demangled_signature_copy): Likewise.
4407
4408         (type_from_class): Add GDBARCH argument.  Pass to java_link_class_type,
4409         java_primitive_type, and recursive type_from_class call.
4410         (java_link_class_type): Add GDBARCH argument.  Pass to type_from_class
4411         calls.  Use per-architecture types instead of global types.
4412
4413         * jv-exp.y (parse_java_type): New define.
4414         Use per-architecture types instead of global types througout.
4415
4416         * jv-valprint.c (java_value_print): Pass architecture to
4417         type_from_class and java_primitive_type_from_name.  Use per-
4418         architecture types instead of global types.
4419
4420 2009-07-01  Doug Evans  <dje@google.com>
4421
4422         * NEWS: Mention biarch amd64-linux gdbserver and hardware watchpoint
4423         support for i386-linux, amd64-linux, and i386-win32 builds of
4424         gdbserver.
4425
4426 2009-07-01  Nick Roberts  <nickrob@snap.net.nz>
4427
4428         * Makefile.in (HFILES_NO_SRCDIR): Remove entries for deleted files.
4429
4430 2009-06-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
4431
4432         * Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL.
4433         (check//%): Construct FORCE_PARALLEL for the sub-make.  Extend the
4434         comment for it.
4435
4436 2009-06-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
4437
4438         gdb/10275
4439         * dwarf2-frame.c (dwarf2_frame_state): Move cfa_offset, cfa_reg,
4440         cfa_how and cfa_exp into regs and adjust users.
4441         
4442 2009-06-30  Daniel Jacobowitz  <dan@codesourcery.com>
4443
4444         * dwarf2read.c (inherit_abstract_dies): Work around GCC PR 40573.
4445
4446 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
4447
4448         * mi/mi-cmd-stack.c (parse_print_values): New.
4449         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Use the above.
4450
4451 2009-06-30  Vladimir Prus  <vladimir@codesourcery.com>
4452
4453         * varobj.c (varobj_get_type): Use type_to_string.
4454
4455 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
4456
4457         * infrun.c (handle_inferior_event): Context switch to the new
4458         thread when resuming for a new_thread_event.
4459
4460 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4461
4462         * ada-lang.h (ada_convert_actual): Add GDBARCH argument.
4463         * ada-lang.c (convert_actual): Remove stale prototype.
4464         (ensure_lval, make_array_descriptor, ada_convert_actual):
4465         Add GDBARCH argument and pass through to subroutine calls.
4466         (ensure_lval): Use GDBARCH instead of current_gdbarch.
4467         * infcall.c (value_arg_coerce): Update ada_convert_actual call.
4468
4469 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4470
4471         * ada-lang.c (resolve): Use per-architecture void type instead
4472         of platform-independent one.
4473         (ada_evaluate_subexp) [STRUCTOP_STRUCT]: Likewise.
4474         (ada_resolve_function): Reimplement fallback logic to avoid
4475         explicit reference to builtin_type_void.
4476
4477 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4478
4479         * ada-valprint.c (ada_print_scalar): Accept NULL type argument
4480         to indicate scalar should be printed as default integer.
4481         (print_optional_low_bound): Pass NULL to ada_print_scalar to
4482         indicate default integer output.
4483         * ada-typeprint.c (print_range, print_range_bound): Likewise.
4484         (print_choices): Likewise.  Thus, accept NULL as val_type.
4485         * ada-lang.c (ada_variant_discrim_type): Return NULL when failed
4486         to look up controlling discriminant name.
4487
4488 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4489
4490         * ada-lang.c (to_fixed_range_type): Add ORIG_TYPE argument.
4491         Fall back to orig_type as index type if symbol lookup fails.
4492         Allocate result types from ORIG_TYPE's objfile.
4493         (ada_array_bound_from_type, to_fixed_array_type,
4494         ada_evaluate_subexp): Pass original index type to
4495         to_fixed_range_type.  Do not pass objfile.
4496
4497         * ada-typeprint.c (print_range_type_named): Add ORIG_TYPE argument.
4498         Fall back to orig_type as index type if symbol lookup fails.
4499         (print_array_type, ada_print_type): Pass original index type
4500         to print_range_type_named.
4501
4502 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4503
4504         * ada-lang.c (ada_index_type): Update comment.
4505
4506 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4507
4508         * ada-lang.c (ada_index_type): Make static.  Add NAME argument.
4509         Throw error on invalid input arguments.  Return NULL if unable
4510         to determine index type.
4511
4512         (ada_array_bound_from_type): Remove TYPEP argument.
4513         (ada_array_bound): Make static.  Return LONGEST instead of value.
4514         Update for ada_array_bound_from_type change.
4515         (ada_array_length): Return LONGEST instead of value.
4516         Update for ada_array_bound_from_type change.
4517         (make_array_descriptor): Update for ada_array_bound change.
4518
4519         (ada_evaluate_subexp) [OP_ATR_RANGE, OP_ATR_FIRST, OP_ATR_LAST,
4520         OP_ATR_LENGTH]: Update for ada_array_bound_from_type,
4521         ada_array_bound, ada_array_length, ada_index_type changes.
4522         Always use ada_index_type to compute result type; fall back
4523         to architecture-specific integer type if ada_index_type fails.
4524
4525         * ada-lang.h (ada_index_type): Remove prototype.
4526         (ada_array_bound): Likewise.
4527
4528 2009-06-29  Pedro Alves  <pedro@codesourcery.com>
4529
4530         * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending
4531         a psymtab.
4532
4533 2009-06-29  Tom Tromey  <tromey@redhat.com>
4534
4535         * README: Mention parallel check.
4536
4537 2009-06-29  Sami Wagiaalla  <swagiaal@redhat.com>
4538
4539         * dwarf2read.c (read_import_statement): Properly set import location
4540         and destination.
4541         * cp-support.h (cp_add_using, cp_add_using_directive): Now take char*
4542         inner, char* outer arguments. Updated callers.
4543
4544 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4545
4546         * value.h (value_subscript, value_subscripted_rvalue,
4547         value_bitstring_subscript, value_ptradd): Use LONGEST instead
4548         of value as type of the index argument.
4549         (value_ptrsub): Remove.
4550         * valarith.c (value_subscript, value_subscripted_rvalue,
4551         value_bitstring_subscript, value_ptradd): Use LONGEST instead
4552         of value as type of the index argument.
4553         (value_ptrsub): Remove.
4554
4555         * wrapper.h (gdb_value_subscript): Use LONGEST instead of
4556         value as type of the index argument.
4557         * wrapper.c (gdb_value_subscript): Likewise.
4558
4559         Update calls to gdb_value_subscript, value_subscript,
4560         value_subscripted_rvalue, value_bitstring_subscript and
4561         value_ptradd to use LONGEST instead of value as index
4562         argument type.  Use value_ptradd instead of value_ptrsub.
4563         * ada-lang.c (ada_value_subscript, ada_value_ptr_subscript,
4564         ada_tag_name_2): Update.
4565         * ada-tasks.c (read_atcb): Update.
4566         * eval.c (evaluate_subexp_standard): Update.
4567         * valarith.c (value_subscript): Update.
4568         * gnu-v2-abi.c (gnuv2_virtual_fn_field): Update.
4569         * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
4570         gnuv3_method_ptr_to_value): Update.
4571         * jv-lang.c (evaluate_subexp_java): Update.
4572         * m2-lang.c (evaluate_subexp_modula2): Update.
4573         * python/python-value.c (valpy_getitem, valpy_binop): Update.
4574         * wrapper.c (gdb_value_subscript): Update.
4575         * varobj.c (c_describe_child): Update.
4576
4577 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4578
4579         * gdbtypes.h (make_function_type): Remove OBJFILE parameter.
4580         * gdbtypes.c (make_function_type): Remove OBJFILE parameter.
4581         (lookup_function_type): Update call.
4582         * stabsread.c (read_type): Likewise.
4583         * dwarf2read.c (read_subroutine_type): Use lookup_function_type
4584         instead of make_function_type.
4585         * jv-lang.c (type_from_class): Likewise.  Do not allocate types
4586         on the fake "dynamics" obstack.
4587
4588 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4589
4590         * gdbtypes.h (struct builtin_type): Remove builtin_core_addr,
4591         nodebug_text_symbol, nodebug_data_symbol, nodebug_unknown_symbol,
4592         and nodebug_tls_symbol members.
4593         (struct objfile_type): New data structure.
4594         (objfile_type): Add prototype.
4595         * gdbtypes.c (gdbtypes_post_init): Remove initialization code
4596         for types no longer in struct builtin_type.
4597         (objfile_type_data): New static variable.
4598         (_initialize_gdbtypes): Initialize it.
4599         (objfile_type): New function.
4600
4601         * gdbtypes.h (builtin_type_error): Remove.
4602         * gdbtypes.c (build_complex): Do not use builtin_type_error.
4603         * symtab.c (builtin_type_error): Remove.
4604         (_initialize_symtab): Remove initialization.
4605
4606         * stabsread.c (dbx_lookup_type, define_symbol, error_type,
4607         rs6000_builtin_type, read_range_type): Use per-objfile types
4608         instead of global or per-architecture builtin types.
4609         * coffread.c (decode_type): Likewise.
4610         * dwarf2read.c (read_array_type, read_tag_string_type,
4611         new_symbol, die_type): Likewise.
4612         * mdebugread.c (parse_symbol, basic_type, upgrade_type,
4613         parse_procedure, psymtab_to_symtab_1): Likewise.
4614         * xcoffread.c (process_xcoff_symbol): Likewise.
4615         * parse.c (write_exp_msymbol): Likewise.
4616
4617         * stabsread.c (rs6000_builtin_type_data): New static variable.
4618         (_initialize_stabsread): Initialize it.
4619         (rs6000_builtin_type): Add OBJFILE argument.  Allocate builtin
4620         types per-objfile instead of globally.
4621
4622         * stabsread.c (dbx_lookup_type): Add OBJFILE argument.  Use it
4623         instead of current_objfile; pass it to rs6000_builtin_type.
4624         (dbx_alloc_type, read_type, read_range_type): Update calls.
4625         (cleanup_undefined_types_noname): Add OBJFILE argument and
4626         pass it to dbx_lookup_type.
4627         (cleanup_undefined_types): Add OBJFILE argument and pass it
4628         to cleanup_undefined_types_noname.
4629         * stabsread.h (cleanup_undefined_types): Add OBJFILE argument.
4630         * buildsym.c (end_symtab): Update call.
4631
4632 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4633
4634         * darwin-nat-info.c (darwin_debug_regions_recurse): Use
4635         target_gdbarch instead of current_gdbarch.
4636
4637 2009-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
4638
4639         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-windows-tdep.o.
4640         (ALL_TARGET_OBS): Add moxie-tdep.o, i386-darwin-tdep.o, and
4641         solib-darwin.o.
4642
4643         * configure.tgt: Add comment.
4644
4645 2009-06-28  Paul Pluzhnikov  <ppluzhnikov@google.com>
4646
4647         * mi/mi-cmds.c (mi_cmds): Remove unimplemented entries.
4648         
4649 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
4650             Jan Kratochvil  <jan.kratochvil@redhat.com>
4651
4652         * NEWS: Document inlined function support.
4653         * Makefile.in (SFILES): Add inline-frame.c.
4654         (COMMON_OBS): Add inline-frame.o.
4655         * block.c (contained_in): Rewrite to use lexical nesting.
4656         (block_linkage_function): Skip inlined function blocks.
4657         (block_inlined_p): New.
4658         * block.h (struct block): Update comment.
4659         (block_inlined_p): New prototype.
4660         * blockframe.c (get_frame_block): Handle inlined functions.
4661         (get_frame_function): Do not use block_linkage_function.
4662         (block_innermost_frame): Use get_frame_block and contained_in.
4663         * breakpoint.c (watchpoint_check): Remove extra reinit_frame_cache.
4664         Skip over inlined functions.  Simplify epilogue check.
4665         (bpstat_check_breakpoint_conditions): Use get_stack_frame_id.
4666         Update comments.
4667         (set_momentary_breakpoint): Only accept non-inlined frames.
4668         (watch_command_1): Use frame_unwind_caller_pc and
4669         frame_unwind_caller_id instead of get_prev_frame.
4670         (until_break_command): Likewise.  Use get_stack_frame_id.
4671         * buildsym.c (end_symtab): Set SYMBOL_SYMTAB for block functions.
4672         * dwarf2loc.c (dwarf_expr_frame_base): Use block_linkage_function.
4673         * dwarf2read.c (process_die): Handle DW_TAG_inlined_subroutine.
4674         (read_func_scope, new_symbol): Likewise.  Handle arguments specially
4675         for inlined functions without call site information.
4676         (inherit_abstract_dies): Allow tag mismatch for inlined subroutines.
4677         (die_specification): Treat DW_AT_abstract_origin as a specification.
4678         (read_type_die): Handle DW_TAG_inlined_subroutine.
4679         * frame-unwind.c (frame_unwind_init): Add inline_frame_unwind.
4680         * frame.c (fprint_frame_id): Print inline depth.
4681         (fprint_frame_type): Handle INLINE_FRAME and SENTINEL_FRAME.
4682         (skip_inlined_frames, get_stack_frame_id): New.
4683         (frame_unwind_caller_id): Use skip_inlined_frames.
4684         (frame_id_inlined_p): New.
4685         (frame_id_eq): Make the logic match the comments.  Add inline_depth
4686         check.
4687         (frame_id_inner): Handle inlined functions.
4688         (frame_unwind_pc): New function, copied from frame_unwind_caller_pc.
4689         (frame_unwind_caller_pc): Use skip_inlined_frames and frame_unwind_pc.
4690         (get_prev_frame_1): Check for inline frames.  Split out frame
4691         allocation to get_prev_frame_raw.
4692         (get_prev_frame_raw): New function.
4693         (get_prev_frame): Handle inline frames.
4694         (get_frame_pc): Use frame_unwind_pc.
4695         (get_frame_address_in_block): Skip inlined frames on both sides.
4696         (pc_notcurrent): Delete.
4697         (find_frame_sal): Rewrite to handle inline call sites.  Use
4698         get_frame_address_in_block.
4699         (deprecated_update_frame_pc_hack): Make static.
4700         * frame.h: Update comments.
4701         (struct frame_id): Add inline_depth.
4702         (enum frame_type): Add INLINE_FRAME.
4703         (frame_id_inlined_p, get_stack_frame_id): New prototypes.
4704         * gdbthread.h (struct thread_info): Add step_stack_frame_id field.
4705         * infcmd.c (set_step_frame): New function.
4706         (step_once): Use set_step_frame.  Handle inlined functions.
4707         (until_next_command): Use set_step_frame.
4708         (finish_backward), finish_forward): Use get_stack_frame_id.
4709         (finish_command): Support inlined functions.
4710         * inferior.h (set_step_info): New prototype.
4711         * infrun.c (RESUME_ALL): Use minus_one_ptid.
4712         (clear_proceed_status): Clear step_stack_frame_id.
4713         (init_wait_for_inferior): Call clear_inline_frame_state.
4714         (init_execution_control_state): Make static.
4715         (set_step_info): New function.
4716         (init_thread_stepping_state): Do not set the symtab or line here.
4717         (stepped_in_from): New function.
4718         (handle_inferior_event): Handle inlined functions.  Use set_step_info.
4719         (insert_step_resume_breakpoint_at_frame): Use get_stack_frame_id.
4720         (struct inferior_status): Add step_stack_frame_id.
4721         (save_inferior_status, restore_inferior_status): Save and restore
4722         step_stack_frame_id.
4723         * inline-frame.c, inline-frame.h: New files.
4724         * minsyms.c (prim_record_minimal_symbol_and_info): Use XCALLOC.
4725         * regcache.c (regcache_write_pc): Call reinit_frame_cache.
4726         * s390-tdep.c (s390_prologue_frame_unwind_cache): Handle INLINE_FRAME.
4727         * stack.c (frame_show_address): New.
4728         (print_frame_info, print_frame): Use it.
4729         (find_frame_funname): Use get_frame_function.  Handle inlined blocks.
4730         (frame_info): Mark inlined functions.
4731         (backtrace_command_1): Use get_current_user_frame.
4732         (print_frame_local_vars, print_frame_label_vars): Update comments.
4733         (return_command): Refuse inlined functions.
4734         * symtab.c (lookup_symbol_aux_local): Stop at inlined function
4735         boundaries.
4736         (find_function_start_sal): Avoid inlined functions.
4737         (completion_list_add_fields): New function.
4738         (default_make_symbol_completion_list): Use it.  Use block_static_block
4739         and block_global_block.  Check for inlined functions.
4740         (skip_prologue_using_sal): Avoid line number comparison across
4741         inlining.
4742         * symtab.h (struct symbol): Add is_inlined.
4743         (SYMBOL_INLINED): New.
4744         * target.c (target_resume): Call clear_inline_frame_state.
4745         * valops.c (value_of_variable): Check block_inlined_p.
4746
4747 2009-06-27  Daniel Jacobowitz  <dan@codesourcery.com>
4748
4749         * frame.c (frame_unwind_id): Renamed to ...
4750         (frame_unwind_caller_id): ... this.  All callers updated.
4751         (frame_pc_unwind): Renamed to ...
4752         (frame_unwind_caller_pc): ... this.  All callers updated.
4753         * frame.h: Document frame_unwind_caller_WHAT functions.
4754         (frame_unwind_id): Renamed to ...
4755         (frame_unwind_caller_id): ... this.
4756         (frame_pc_unwind): Renamed to ...
4757         (frame_unwind_caller_pc): ... this.
4758         * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment.
4759         * stack.c (parse_frame_specification_1): Do not rely on
4760         frame_unwind_id.
4761
4762 2009-06-27  Michael Snyder  <msnyder@vmware.com>
4763
4764         * infrun.c (handle_inferior_event): Improve handling of
4765         reverse-stepping into and over shared library functions.
4766
4767 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
4768
4769         * linespec.c (find_method): Add new not_found_ptr parameter to
4770         bring in line with symtab_from_filename, decode_variable.
4771         (decode_compound): Likewise.  Also propagate not_found_ptr to 
4772         find_method.
4773         (decode_line_1): Propagate not_found_ptr to decode_compound.
4774         (cplusplus_error): Now throws NOT_FOUND_ERROR.
4775
4776 2009-06-25  Karen Osmond  <karen.osmond@gmail.com>
4777
4778         * MAINTAINERS (Write After Approval): Add self.
4779
4780 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
4781
4782         * valops.c (value_one): Reimplement broken decimal-float case.
4783
4784 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
4785
4786         * eval.c (evaluate_subexp_standard): Use expression architecture
4787         instead of current_gdbarch.
4788
4789         * infrun.c (handle_inferior_event): Avoid unncessary reference
4790         to current_gdbarch and get_current_frame ().
4791
4792 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
4793
4794         * breakpoint.h (set_longjmp_breakpoint): Add THREAD argument.
4795         (enum bptype): Add bp_longjmp_master.
4796
4797         * breakpoint.c (create_longjmp_master_breakpoint): New function.
4798         (update_breakpoints_after_exec): Handle bp_longjmp_master
4799         breakpoints.  Call create_longjmp_master_breakpoint.
4800         (print_it_typical, bpstat_stop_status, bpstat_what,
4801         print_one_breakpoint_location, allocate_bp_location, mention,
4802         delete_command, breakpoint_re_set_one): Handle bp_longjmp_master.
4803         (breakpoint_re_set): Call create_longjmp_master_breakpoint.
4804         (create_longjmp_breakpoint): Delete.
4805         (set_longjmp_breakpoint): Add THREAD argument.  Reimplement
4806         to install momentary clones of bp_longjmp_master breakpoints.
4807
4808         * infcmd.c (step_1): Pass thread to set_longjmp_breakpoint.
4809
4810 2009-06-23  Cary Coutant  <ccoutant@google.com>
4811
4812         * dwarf2read.c (dwarf_decode_lines): Ignore rows where is_stmt is 0.
4813         Set basic_block to 0 after a special opcode.
4814
4815 2009-06-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
4816
4817         Fix a regression by the mmap patch from 2009-06-16.
4818         * symfile.c (reread_symbols): Move sym_finish and clear_objfile_data
4819         calls before deleting the OBJFILE obstack.  Extend the comment.
4820
4821 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
4822
4823         * jv-lang.h (JAVA_OBJECT_SIZE): Remove.
4824         (get_java_object_header_size): Add GDBARCH parameter.
4825         * jv-lang.c (get_java_object_header_size): Add GDBARCH parameter.
4826         Use it instead of current_gdbarch.
4827         (evaluate_subexp_java): Replace JAVA_OBJECT_SIZE with call to
4828         get_java_object_header_size.
4829         * jv-valprint.c (java_value_print): Likewise.
4830
4831 2009-06-23  Sami Wagiaalla  <swagiaal@redhat.com>
4832
4833         * dwarf2read.c (process_die): Handle import statements
4834         (DW_TAG_imported_declaration, case DW_TAG_imported_module)
4835         (read_import_statement): New.
4836         (read_func_scope): Update using_directives to point to current context
4837         (read_lexical_block_scope): Ditto.
4838         * cp-support.h: Added prototype for cp_add_using.
4839         * cp-namespace.c: Removed local context_stack.
4840         (cp_initialize_namespace): Deleted.
4841         (cp_finalize_namespace): Deleted.
4842         (cp_add_using_directive): Use using_directives instead of using_list.
4843         (cp_add_using): No longer static.
4844         * buildsym.h: Created global using_direct variable.
4845         Created using_direct variable in context_stack.
4846         * buildsym.c (finish_block): Set using directives for the block under
4847         construction.
4848         (start_symtab): Removed call to cp_initialize_namespace().
4849         (end_symtab): Removed call to cp_finalize_namespace().
4850         (push_context): Save and reset using_directives.
4851         * block.c (block_using): Return using directives for given
4852         block instead of static block.
4853
4854 2009-06-23  Ulrich Weigand  <uweigand@de.ibm.com>
4855
4856         * target-descriptions.h (struct type): Do not declare.
4857         (struct tdesc_type): Declare.
4858         (tdesc_named_type): Change return type to struct tdesc_type *.
4859         (tdesc_record_type): Remove.
4860         (tdesc_create_vector): Add prototype.
4861         (tdesc_create_union): Likewise.
4862         (tdesc_add_field): Likewise.
4863
4864         * target-descriptions.c (struct tdesc_reg): Replace gdb_type
4865         member by tdesc_type member.
4866         (struct tdesc_type_field, tdesc_type_field): Add type and vector def.
4867         (struct tdesc_type, tdesc_type_p): Likewise.
4868         (struct tdesc_arch_reg, tdesc_arch_reg): Likewise.
4869         (struct tdesc_feature): Change type of "types" to VEC(tdesc_type_p).
4870         (struct tdesc_arch_data): Replace registers member by arch_regs.
4871
4872         (tdesc_predefined_types): Change to array of pre-defined
4873         struct tdesc_type structures.  Add "code_ptr" and "data_ptr".
4874         (tdesc_named_type): Return struct tdesc_type * instead of GDB type.
4875         (tdesc_gdb_type): New function.
4876
4877         (target_find_description): Update for data structure changes.
4878         (tdesc_data_cleanup): Likewise.
4879         (tdesc_numbered_register): Likewise.
4880         (tdesc_use_registers): Likewise.
4881         (tdesc_create_reg): Likewise.
4882         
4883         (tdesc_find_arch_register): New function.
4884         (tdesc_find_register): Use it.
4885         (tdesc_register_type): Use tdesc_gdb_type to generate GDB type from
4886         tdesc_type on demand; cache generated types in tdesc_arch_reg.
4887
4888         (tdesc_free_type): New function.
4889         (tdesc_free_feature): Call it.
4890
4891         (tdesc_create_vector): New function.
4892         (tdesc_create_union): Likewise.
4893         (tdesc_add_field): Likewise.
4894         (tdesc_record_type): Remove.
4895
4896         (tdesc_type_id): Remove.
4897         (maint_print_c_tdesc_cmd): Update for data structure changes.  Update
4898         generated code to create tdesc_type structures instead of GDB types.
4899
4900         * xml-tdesc.c: Do not include "gdbtypes.h".
4901         (struct tdesc_parsing_data): Change type of current_union to
4902         struct tdesc_type *.
4903         (tdesc_start_reg): Do not special-case "code_ptr" or "data_ptr".
4904         (tdesc_start_union): Call tdesc_create_union.
4905         (tdesc_start_field): Call tdesc_add_field.
4906         (tdesc_start_vector): Call tdesc_create_vector.
4907         (tdesc_end_union): Remove.
4908         (feature_children): Remove reference to tdesc_end_union.
4909
4910         * features/arm-with-iwmmxt.c: Regenerate.
4911         * features/mips-linux.c: Regenerate.
4912         * features/mips64-linux.c: Regenerate.
4913         * features/rs6000/powerpc-32.c: Regenerate.
4914         * features/rs6000/powerpc-32l.c: Regenerate.
4915         * features/rs6000/powerpc-403.c: Regenerate.
4916         * features/rs6000/powerpc-403gc.c: Regenerate.
4917         * features/rs6000/powerpc-505.c: Regenerate.
4918         * features/rs6000/powerpc-601.c: Regenerate.
4919         * features/rs6000/powerpc-602.c: Regenerate.
4920         * features/rs6000/powerpc-603.c: Regenerate.
4921         * features/rs6000/powerpc-604.c: Regenerate.
4922         * features/rs6000/powerpc-64.c: Regenerate.
4923         * features/rs6000/powerpc-64l.c: Regenerate.
4924         * features/rs6000/powerpc-7400.c: Regenerate.
4925         * features/rs6000/powerpc-750.c: Regenerate.
4926         * features/rs6000/powerpc-860.c: Regenerate.
4927         * features/rs6000/powerpc-altivec32.c: Regenerate.
4928         * features/rs6000/powerpc-altivec32l.c: Regenerate.
4929         * features/rs6000/powerpc-altivec64.c: Regenerate.
4930         * features/rs6000/powerpc-altivec64l.c: Regenerate.
4931         * features/rs6000/powerpc-e500.c: Regenerate.
4932         * features/rs6000/powerpc-e500l.c: Regenerate.
4933         * features/rs6000/powerpc-isa205-32l.c: Regenerate.
4934         * features/rs6000/powerpc-isa205-64l.c: Regenerate.
4935         * features/rs6000/powerpc-isa205-altivec32l.c: Regenerate.
4936         * features/rs6000/powerpc-isa205-altivec64l.c: Regenerate.
4937         * features/rs6000/powerpc-isa205-vsx32l.c: Regenerate.
4938         * features/rs6000/powerpc-isa205-vsx64l.c: Regenerate.
4939         * features/rs6000/powerpc-vsx32.c: Regenerate.
4940         * features/rs6000/powerpc-vsx32l.c: Regenerate.
4941         * features/rs6000/powerpc-vsx64.c: Regenerate.
4942         * features/rs6000/powerpc-vsx64l.c: Regenerate.
4943         * features/rs6000/rs6000.c: Regenerate.
4944
4945 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
4946
4947         * ada-lang.c (decode_packed_array): If the value is a pointer to
4948         an array, then use value_ind to dereference it, not ada_value_ind.
4949         (ada_template_to_fixed_record_type_1): Handle the case where a
4950         dynamic field is an aligner type.
4951         (to_fixed_array_type): Add handling for packed array types.
4952         (ada_get_base_type): Do not follow the XVS type if the type is
4953         an aligner type.
4954         (ada_evaluate_subexp): Split a few statements up for clarity
4955         and debuggability.
4956         <OP_FUNCALL>: Add handling of the case of a packed array that
4957         has already been fixed.
4958
4959 2009-06-23  Joel Brobecker  <brobecker@adacore.com>
4960
4961         * ada-lang.c (evaluate_subexp): Delete.  Use the version from eval.c.
4962         (evaluate_subexp_type): Reimplement using evaluate_subexp.
4963         * value.h (evaluate_subexp): Add declaration.
4964         * eval.c (evaluate_subexp): Make non-static.
4965         * objc-lang.c (print_object_command): Use evaluate_subexp.
4966
4967 2009-06-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
4968
4969         Revert 2009-05-14 breakpoint commit (no longer needed).
4970         * breakpoint.h (breakpoint_re_set_objfile): Remove
4971         * breakpoint.c (breakpoint_re_set_objfile): Likewise
4972         (create_overlay_event_breakpoint): Remove objfile parameter,
4973         iterate over all objfiles.
4974         * objfiles.c (objfile_relocate): Update.
4975         * symfile.c (new_symfile_objfile): Likewise.    
4976         
4977 2009-06-23  Tom Tromey  <tromey@redhat.com>
4978
4979         PR gdb/10309:
4980         * c-lang.c (classify_type): Iterate over typedefs.
4981         * c-valprint.c (textual_element_type): Iterate over typedefs.
4982
4983 2009-06-22  Tristan Gingold  <gingold@adacore.com>
4984
4985         * darwin-nat.c (darwin_xfer_partial): Use host_address_to_string
4986         instead of "%p".
4987
4988 2009-06-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
4989
4990         PR gdb/9988:
4991         * buildsym.c (block_compar): New function.
4992         (end_symtab): Replace the bubble sort by a qsort based code.
4993
4994 2009-06-22  Sami Wagiaalla  <swagiaal@redhat.com>
4995
4996         * MAINTAINERS (Write After Approval): Add self.
4997
4998 2009-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
4999
5000         * spu-tdep.c (spu_get_longjmp_target): New function.
5001         (spu_gdbarch_init): Install it.
5002
5003 2009-06-22  H.J. Lu  <hongjiu.lu@intel.com>
5004
5005         PR server/10306
5006         * remote.c (getpkt_or_notif_sane_1): Initialize val to -1.
5007
5008 2009-06-21  Michael Snyder  <msnyder@vmware.com>
5009
5010         * inferior.h: Update ancient comment.
5011
5012 2009-06-20  Aleksandar Ristovski  <aristovski@qnx.com>
5013             Pedro Alves  <pedro@codesourcery.com>
5014
5015         * solib-svr4.c (IGNORE_FIRST_LINK_MAP_ENTRY): Avoid dereferencing
5016         NULL pointer.
5017         (scan_dyntag): Skip if input bfd isn't elf flavoured.
5018         (locate_base): Call elf_locate_base even without an exec_bfd.
5019
5020 2009-06-19  Samuel Bronson  <naesten@gmail.com>
5021
5022         PR cli/9903:
5023         * cli/cli-decode.c (apropos_cmd): Skip traversing abbreviations
5024         for prefix commands to avoid duplicates in the output.
5025
5026 2009-06-19  Samuel Bronson  <naesten@gmail.com>
5027
5028         PR cli/9903:
5029         * cli/cli-decode.c (apropos_cmd): Fix avoidance of double
5030         printing.
5031
5032 2009-06-19  Jerome Guitton  <guitton@adacore.com>
5033
5034         * breakpoint.c (expand_line_sal_maybe): When explicit_line,
5035         skip prologue on each sals.
5036         (skip_prologue_sal): Return explicit_line and explicit_pc
5037         unmodified.
5038
5039 2009-06-19  Tristan Gingold  <gingold@adacore.com>
5040
5041         * darwin-nat.c (_initialize_darwin_inferior): Remove commented-out
5042         line.
5043
5044 2009-06-19  Tristan Gingold  <gingold@adacore.com>
5045         * machoread.c (macho_symtab_read): Adjust for bfd changes.
5046         * darwin-nat.h (struct darwin_exception_msg): New type to describe
5047         a mach exception.
5048         (struct private_thread_info): New type to describe the state of the
5049         thread.
5050         (DEF_VEC_I thread_t): Removed, replaced by ...
5051         (DEF_VEC_O darwin_thread_t): ... this new type.
5052         (struct darwin_inferior): Renamed to ...
5053         (struct private_inferior): ... this type.  Fields added.
5054         (darwin_not_port): Moved into the private inferior structure.
5055         * darwin-nat.c: Add includes, improve comments.
5056         Rewrite to handle multiple threads and processes.
5057         (darwin_resume_to): New function and protype.
5058         (darwin_resume, darwin_wait_to, darwin_wait): Ditto.
5059         (darwin_kill_inferior): Add ops argument.
5060         (darwin_pid_to_str): New function.
5061         (darwin_thread_alive): Ditto.
5062         (darwin_inf, darwin_not_port): Removed.
5063         (darwin_inf_fake_stop): New variable.
5064         (msgin, msgout, msg_state, exc_msg): Removed.
5065         (mach_check_error): Use warning instead of error.
5066         (darwin_ptrace): Adjust debug level.
5067         (cmp_thread_t): Fix names (typo).
5068         (darwin_check_new_threads): Argument is now an inferior,
5069         adjust for new structures, add no change check, ignore dead ports,
5070         handle first thread case.
5071         (find_inferior_task_it): New function.
5072         (find_inferior_notify_it): Ditto.
5073         (darwin_find_inferior_by_task): Ditto.
5074         (darwin_find_inferior_by_notify): Ditto.
5075         (darwin_find_thread): Ditto.
5076         (darwin_suspend_inferior): Ditto.
5077         (darwin_resume_inferior): Ditto.
5078         (catch_exception_raise_state): Removed.
5079         (catch_exception_raise_state_identity): Removed.
5080         (darwin_suspend_inferior_it): New function.
5081         (darwin_resume_inferior_it): Ditto.
5082         (darwin_dump_message): New function, extracted from darwin_wait.
5083         (darwin_decode_exception_message): New function.
5084         (darwin_encode_reply): New function.
5085         (catch_exception_raise): Removed.
5086         (darwin_send_reply): New function, extracted from darwin_resume.
5087         (darwin_resume_thread): New function, extracted from darwin_resume.
5088         (struct resume_inferior_threads_param): New type.
5089         (darwin_resume_inferior_threads_it): New function.
5090         (darwin_resume_inferior_threads): New function.
5091         (darwin_suspend_inferior_threads): New function.
5092         (darwin_resume): Mostly rewritten to handle multiple threads and
5093         some corner cases.
5094         (darwin_decode_message): New function extracted from darwin_wait.
5095         (cancel_breakpoint): New function.
5096         (darwin_wait): Mostly rewritten.  Handle multiple threads.
5097         (darwin_mourn_inferior): Adjust for per process structures.
5098         (darwin_reply_to_all_pending_messages): New function.
5099         (darwin_stop_inferior): Adjust for per inferior structures.
5100         (darwin_attach_pid): Ditto.
5101         (darwin_init_thread_list): Ditto.
5102         (darwin_attach): Ditto.
5103         (darwin_detach): Ditto.
5104         (darwin_files_info): Now empty.
5105         (darwin_pid_to_str): Adjust returns string to match one expected by
5106         the testsuite.
5107         (darwin_read_write_inferior): Rename err variable to match other uses.
5108         Adjust debug message.  Handle submaps.
5109         (darwin_xfer_memory): Adjust for per inferior structures.
5110         (set_enable_mach_exceptions): Ditto.
5111         (darwin_pid_to_exec_file): New function.
5112         (darwin_get_ada_task_ptid): Ditto.
5113         (darwin_supports_multi_process): Ditto.
5114         (_initialize_darwin_inferior): Remove useless assertion, adjust for
5115         per inferior structures.  Add new target operations.
5116
5117 2009-06-18  Hui Zhu  <teawater@gmail.com>
5118             Michael Snyder  <msnyder@vmware.com>
5119
5120         * infrun.c (handle_inferior_event): Improve reverse stepping
5121         through function epilogue.
5122
5123         * infrun.c (handle_inferior_event): Reverse-next through
5124         trampoline.
5125
5126 2009-06-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
5127
5128         * dwarf2-frame.c (struct comp_unit): Use bfd_size_type for
5129         dwarf_frame_size.
5130
5131 2009-06-17  Tom Tromey  <tromey@redhat.com>
5132
5133         * dwarf2read.c (zlib_decompress_section): Use a cleanup.
5134
5135 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5136
5137         * gdbarch.sh (pointer_to_address): Change to type 'm'.
5138         (address_to_pointer): Likewise.
5139         * gdbarch.c, gdbarch.h: Regenerate.
5140
5141         * inferior.h (unsigned_pointer_to_address): Add GDBARCH argument.
5142         (signed_pointer_to_address): Likewise.
5143         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
5144         * findvar.c (unsigned_pointer_to_address): Likewise.
5145         (signed_pointer_to_address): Likewise.
5146         (unsigned_address_to_pointer, address_to_signed_pointer): Likewise.
5147
5148         * avr-tdep.c (avr_address_to_pointer): Likewise.
5149         (avr_pointer_to_address): Likewise.
5150         * iq2000-tdep.c (iq2000_pointer_to_address): Likewise.
5151         (iq2000_address_to_pointer): Likewise.
5152         * m32c-tdep.c (m32c_m16c_address_to_pointer): Likewise.
5153         (m32c_m16c_pointer_to_address): Likewise.
5154         * spu-tdep.c (spu_pointer_to_address): Likewise.
5155         * xstormy16-tdep.c (xstormy16_pointer_to_address): Likewise.
5156         (xstormy16_address_to_pointer): Likewise.
5157
5158 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5159
5160         * printcmd.c (print_scalar_formatted): Always truncate
5161         unsigned data types.
5162
5163         * cli-dump.c (struct callback_data): Change type of load_offset
5164         to CORE_ADDR.
5165         (restore_binary_file): Update type casts.
5166         (restore_command): Parse load_offset as address, not long.
5167
5168         * utils.c (string_to_core_addr): Do not sign-extend value.
5169         * varobj.c (find_frame_addr_in_frame_chain): Truncate frame_base
5170         before comparing against requested frame address.
5171
5172 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5173
5174         * gdbarch.sh (gcore_bfd_target): New gdbarch callback.
5175         * gdbarch.h, gdbarch.c: Regenerate.
5176
5177         * gcore.c (default_gcore_target): Make return value const.
5178         Call gdbarch_gcore_bfd_target if present.
5179         (default_gcore_arch, default_gcore_mach): Use target_gdbarch.
5180
5181         * corelow.c (core_read_description): Call gdbarch_core_read_description
5182         on core_gdbarch instead of current_gdbarch.
5183
5184         * ppc-linux-tdep.c (ppc_linux_init_abi): Install gcore_bfd_target.
5185
5186 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5187
5188         * gdbtypes.c (create_string_type): Receive character type as argument.
5189         * gdbtypes.h (create_string_type): Add character type argument.
5190         * dwarf2read.c (read_tag_string_type): Pass character type to
5191         create_string_type.
5192
5193         * value.h (value_string): Add character type argument.
5194         * valops.c (value_string): Add character type argument.  Pass it to
5195         create_string_type.  Do not allocate space in inferior.
5196         * valarith.c (value_concat): Pass character type to value_string.
5197
5198         * value.h (value_typed_string): Rename to ...
5199         (value_cstring): ... this.
5200         * valops.c (value_typed_string): Rename to ...
5201         (value_cstring): ... this.
5202         * c-lang.c (evaluate_subexp_c): Update.
5203
5204         * python/python-value.c (builtin_type_pychar): New define.
5205         (convert_value_from_python): Call value_cstring instead
5206         of value_from_string.
5207         * value.c (value_from_string): Remove.
5208         * value.h (value_from_string): Remove.
5209
5210         * eval.c (evaluate_subexp_standard): Pass character type to
5211         value_string.  Pass expression architecture to value_nsstring
5212         and lookup_child_selector.
5213         * objc-lang.h (lookup_objc_class): Add GDBARCH parameter.
5214         (lookup_child_selector): Likewise.
5215         (value_nsstring): Likewise.
5216         * objc-lang.c (lookup_objc_class): Add GDBARCH parameter.
5217         Pass character type to value_string..
5218         (lookup_child_selector): Likewise.
5219         (value_nsstring): Add GDBARCH parameter, use it instead of
5220         objfile architecture.  Pass architecture to lookup_objc_class
5221         and lookup_child_selector. Pass character type to value_string.
5222         (end_msglist): Pass architecture to lookup_objc_class.
5223         * objc-exp.y: Pass architecture to lookup_objc_class.
5224
5225 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5226
5227         * gdbtypes.h (struct language_defn): Add forward declaration.
5228         (lookup_typename): Add LANGUAGE and GDBARCH parameters.
5229         (lookup_unsigned_typename): Likewise.
5230         (lookup_signed_typename): Likewise.
5231         * gdbtypes.c (lookup_typename): Add LANGUAGE and GDBARCH parameters.
5232         Use them instead of current_language and current_gdbarch.
5233         (lookup_unsigned_typename): Add LANGUAGE and GDBARCH parameters.
5234         Pass them to lookup_typename.
5235         (lookup_signed_typename): Likewise.
5236
5237         * c-exp.y: Pass parse_language and parse_gdbarch to
5238         lookup_unsigned_typename and lookup_signed_typename.
5239         * objc-exp.y: Likewise.
5240         * m2-exp.y: Pass parse_language and parse_gdbarch to lookup_typename.
5241
5242         * c-lang.c (evaluate_subexp_c): Pass expression language and
5243         gdbarch to lookup_typename.
5244         * printcmd.c (printf_command): Pass current language and
5245         gdbarch to lookup_typename.
5246         * python/python-type.c (typy_lookup_typename): Likewise.
5247         Include "language.h".
5248
5249 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5250
5251         * sparc64-nat.c (sparc64_gregset_supplies_p): Add GDBARCH parameter.
5252         Use it instead of current_gdbarch.  Pass architecture to
5253         sparc32_gregset_supplies_p.
5254         (sparc64_fpregset_supplies_p): Add GDBARCH parameter.  Use it instead
5255         of current_gdbarch.  Pass architecture to sparc32_fpregset_supplies_p.
5256         * sparc64nbsd-nat.c (sparc64nbsd_gregset_supplies_p,
5257         sparc64nbsd_fpregset_supplies_p): Likewise.
5258         * sparc-nat.c (sparc_gregset_supplies_p, sparc_fpregset_supplies_p):
5259         Add GDBARCH parameter.
5260         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
5261         (sparc_fetch_inferior_registers): Pass regcache architecture to
5262         sparc_gregset_supplies_p and sparc_fpregset_supplies_p.
5263         (sparc_store_inferior_registers): Likewise.
5264         * sparc-nat.h (sparc_gregset_supplies_p, sparc_fpregset_supplies_p:
5265         Add GDBARCH parameter.
5266         (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise.
5267
5268 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5269
5270         * ada-tasks.c (read_known_tasks_array): Use target_gdbarch instead
5271         of current_gdbarch.
5272         * aix-thread.c (pd_enable): Likewise.
5273         * amd64-linux-nat.c (ps_get_thread_area): Likewise.
5274         * bsd-uthread.c (bsd_uthread_activate): Likewise.
5275         * linux-nat.c (linux_nat_info_proc_cmd): Likewise.
5276         * linux-thread-db.c (enable_thread_event): Likewise.
5277         * monitor.c (monitor_write_memory, monitor_read_memory): Likewise.
5278         * nto-procfs.c (procfs_open): Likewise.
5279         * procfs.c (invalidate_cache, procfs_insert_watchpoint,
5280         info_proc_mappings, info_mappings_callback): Likewise.
5281         * record.c (record_open): Likewise.
5282         * rs6000-nat.c (ARCH64): Likewise.
5283         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
5284         (darwin_bfd_open): Likewise.
5285         * memattr.c (mem_info_command): Likewise.
5286
5287         * windows-nat.c (win32_resume): Use current regcache architecture
5288         instead of current_gdbarch.
5289
5290         * dbug-rom.c (dbug_regname): Remove check against number of
5291         registers in current_gdbarch.
5292         * solib-pa64.c (read_dynamic_info): Remove unused variable.
5293
5294 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5295
5296         * dummy-frame.c (deprecated_pc_in_call_dummy): Add GDBARCH parameter,
5297         use it instead of current_gdbarch.
5298         * frame.h (deprecated_pc_in_call_dummy): Add GDBARCH parameter.
5299         * arm-tdep.c (arm_skip_prologue): Pass architecture to
5300         deprecated_pc_in_call_dummy.
5301
5302         * symtab.c (skip_prologue_using_sal): Add GDBARCH parameter.
5303         Use it instead of current_gdbarch.
5304         * symtab.h (skip_prologue_using_sal): Add GDBARCH parameter.
5305         * breakpoint.c (expand_line_sal_maybe): Pass architecture to
5306         skip_prologue_using_sal.
5307         * arm-tdep.c (skip_prologue_using_sal): Likewise.
5308         * lm32-tdep.c (lm32_skip_prologue): Likewise.
5309         * m32-tdep.c (m32c_skip_prologue): Likewise.
5310         * mips-tdep.c (mips_skip_prologue): Likewise.
5311         * moxie-tdep.c (moxie_skip_prologue): Likewise.
5312         * mt-tdep.c (mt_frame_unwind_cache): Likewise.
5313         * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
5314         * frv-tdep.c (frv_analyze_prologue): Add GDBARCH parameter, pass
5315         it to skip_prologue_using_sal.  Update call sites ...
5316         (frv_skip_prologue, frv_frame_unwind_cache): ... here.
5317
5318         * mn10300-tdep.c (struct mn10300_prologue): Add GDBARCH member.
5319         (check_for_saved): Use it instead of current_gdbarch.
5320         (mn10300_analyze_prologue): Set it.
5321
5322         * value.c (using_struct_return): Add GDBARCH parameter.  Use it
5323         instead of current_gdbarch.
5324         * value.h (using_struct_return): Add GDBARCH parameter.
5325         * eval.c (evaluate_subexp_standard): Pass architecture to
5326         using_struct_return.
5327         * infcall.c (call_function_by_hand): Likewise.
5328         * stack.c (return_command): Likewise.
5329         * sparc-tdep.c (sparc32_push_dummy_code): Likewise.
5330
5331         * symtab.c (in_prologue): Add GDBARCH parameter.  Use it instead of
5332         current_gdbarch.
5333         * symtab.h (in_prologue): Add GDBARCH parameter.
5334         * infrun.c (handle_inferior_event): Pass architecture to in_prologue.
5335
5336         * eval.c (evaluate_subexp_standard): Use expression architecture
5337         instead of current_gdbarch.
5338
5339         * c-lang.c (evaluate_subexp_c): Use expression architecture and
5340         language instead of current_gdbarch and current_language.
5341
5342         * printcmd.c (do_one_display): Use expression architecture instead
5343         of current_gdbarch.
5344
5345         * infcmd.c (print_return_value): Use architecture of stop_regcache
5346         instead of current_gdbarch.
5347         (print_vector_info, print_float_info): Remove GDBARCH argument,
5348         use frame architecture instead.
5349         (vector_info, float_info): Update calls.
5350
5351         * objc-lang.c (objc_skip_trampoline): Use frame architecture
5352         instead of current_gdbarch.
5353
5354         * parse.c (write_dollar_variable): Use parse architecture instead
5355         of current_gdbarch.
5356
5357         * source.c (line_info): Use objfile architecture instead of
5358         current_gdbarch.
5359
5360         * symtab.c (find_function_start_sal): Use gdbarch instead of
5361         current_gdbarch.
5362         (print_msymbol_info): Use objfile architecture instead of
5363         current_gdbarch.
5364
5365         * valops.c (value_assign): Use frame architecture instead of
5366         current_gdbarch.
5367
5368 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5369
5370         * buildsym.c (record_line): Remove call to gdbarch_addr_bits_remove.
5371
5372         * coffread.c (coff_symtab_read): Call gdbarch_addr_bits_remove before
5373         calling record_line.
5374         (enter_linenos): Likewise.
5375         * dbxread.c (process_one_symbol): Likewise.
5376         * dwarf2read.c (dwarf_decode_lines): Likewise.
5377         * mdebugread.c (psymtab_to_symtab_1): Likewise.
5378         * xcoffread.c (enter_line_range): Likewise.
5379
5380 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5381
5382         * ax-gdb.c (gen_bitfield_ref): Add EXP argument, use expression
5383         architecture instead of current_gdbarch.
5384         (gen_struct_ref): Add EXP argument, pass to get_bitfield_ref.
5385         (gen_expr): Pass expression to get_struct_ref.
5386
5387         * symtab.h (struct symbol_ops): Add GDBARCH parameter to
5388         tracepoint_var_ref callback.
5389         * ax-gdb.c (gen_var_ref): Pass architecture to tracepoint_var_ref
5390         symbol operation callback.
5391         * dwarf2loc.c (dwarf2_tracepoint_var_ref): Add GDBARCH parameter.
5392         Use it instead of current_gdbarch.
5393         (locexpr_tracepoint_var_ref): Add GDBARCH parameter.  Pass it to
5394         dwarf2_tracepoint_var_ref.
5395         (loclist_tracepoint_var_ref): Likewise.
5396
5397 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5398
5399         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
5400         Use it instead of address bits of current_gdbarch.
5401         * prologue-value.c (make_pv_area): Add ADDR_BIT argument.
5402         * arm-tdep.c (thumb_analyze_prologue): Pass address bits to
5403         make_pv_area.
5404         (arm_scan_prologue): Likewise.
5405         * m32c-tdep.c (m32c_analyze_prologue): Likewise.
5406         * mep-tdep.c (mep_analyze_prologue): Likewise.
5407         * mn10300-tdep.c (mn10300_analyze_prologue): Likewise.
5408         * s390-tdep.c (s390_analyze_prologue): Likewise.
5409
5410 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5411
5412         * mi/mi-main.c (mi_cmd_data_list_register_names): Use selected
5413         frame architecture instead of current_gdbarch.
5414         (mi_cmd_data_list_changed_registers): Likewise.
5415         (mi_cmd_data_list_register_values): Likewise.  Pass selected
5416         frame to get_register.
5417         (get_register): Add FRAME argument, use it as frame to retrieve
5418         registers from (instead of selected frame).  Use frame architecture
5419         instead of current_gdbarch.
5420         (mi_cmd_data_write_register_values): Use current regcache
5421         architecture instead of current_gdbarch.
5422
5423 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5424
5425         * tui/tui-regs.c (tui_show_register_group): Remove GDBARCH parameter;
5426         use frame architecture instead.  Replace current_gdbarch uses.
5427         (tui_show_registers): Update call.
5428         (tui_get_register): Remove GDBARCH parameter; use frame architecture
5429         instead.
5430         (tui_show_register_group): Update call.
5431         (tui_check_register_values): Likewise.
5432         (tui_register_format): Remove GDBARCH parameter; use frame
5433         architecture instead.  Replace current_gdbarch uses.
5434         (tui_get_register): Update call.
5435
5436 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5437
5438         * gdbarch.sh (construct_inferior_arguments): Remove.
5439         * gdbarch.c, gdbarch.h: Regenerate.
5440         * infcmd.c (get_inferior_args): Call construct_inferior_arguments
5441         directly instead of gdbarch_construct_inferior_arguments.
5442         (construct_inferior_arguments): Remove GDBARCH argument.
5443         * inferior.h (construct_inferior_arguments): Likewise.
5444
5445 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5446
5447         * symfile.c (section_is_mapped): Use objfile architecture instead
5448         of current_gdbarch.
5449         (TARGET_LONG_BYTES): Remove.
5450         (read_target_long_array): Add SIZE argument.  Use it instead of
5451         TARGET_LONG_BYTES.
5452         (simple_read_overlay_table): Retrieve long size from objfile
5453         architecture; pass it to read_target_long_array.
5454         (simple_read_overlay_region_table): Likewise.
5455         (simple_overlay_update_1): Likewise.
5456
5457 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5458
5459         * infrun.c (cleanup_displaced_step_closure): Remove.
5460         (displaced_step_clear_cleanup): Move to before displaced_step_prepare.
5461         (displaced_step_prepare): Use displaced_step_clear_cleanup instead
5462         of cleanup_displaced_step_closure.
5463         (handle_inferior_event, keep_going): Use thread architecture instead
5464         of current_gdbarch.
5465
5466 2009-06-17  Ulrich Weigand  <uweigand@de.ibm.com>
5467
5468         * infrun.c (handle_inferior_event): Use current frame architecture
5469         or thread architecture instead of current_gdbarch.  Pass to
5470         handle_step_into_function and handle_step_into_function_backward.
5471         (handle_step_into_function): Add GDBARCH parameter.  Use it instead
5472         of current_gdbarch.
5473         (handle_step_into_function_backward): Likewise.
5474         (insert_step_resume_breakpoint_at_frame): Use frame architecture
5475         instead of current_gdbarch.
5476         (insert_step_resume_breakpoint_at_caller): Likewise.
5477
5478 2009-06-17  Pierre Muller  <muller@ics.u-strasbg.fr>
5479         Pedro Alves  <pedro@codesourcery.com>
5480         
5481         * infcmd.c (post_create_inferior): Call breakpoint_re_set after target
5482         is pushed for watchpoint promotion to hardware watchpoint.
5483
5484 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
5485
5486         * dwarf2read.c (dwarf_info_section, dwarf_abbrev_section)
5487         (dwarf_line_section, dwarf_pubnames_section, dwarf_aranges_section)
5488         (dwarf_loc_section, dwarf_macinfo_section, dwarf_str_section)
5489         (dwarf_ranges_section, dwarf_frame_section)
5490         (dwarf_eh_frame_section): Removed.
5491         (dwarf2_resize_section): Likewise.
5492         (dwarf2_read_section): Now static, use bfd_mmap() if possible.
5493         (dwarf2_get_section_info): New function.
5494         (munmap_section_buffer): Likewise.
5495         (dwarf2_per_objfile_cleanup): Likewise.
5496         (section_is_p): Signature change.
5497         * dwarf2-frame.c (dwarf2_build_frame_info): Use
5498         dwarf2_get_section_info instead of dwarf2_read_section.
5499         
5500 2009-06-16  Paul Pluzhnikov  <ppluzhnikov@google.com>
5501
5502         * solib.c (symbol_add_stub): New FLAGS parameter.
5503         (solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub
5504         directly.
5505         (solib_add): Defer breakpoint_re_set until after all solibs.
5506         * bsd-uthread.c (bsd_uthread_solib_loaded): Adjust.
5507         * rs6000-nat.c (objfile_symbol_add): Adjust.
5508         * symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS.
5509         (new_symfile_objfile): Likewise.
5510         (symbol_file_add_with_addrs_or_offsets): Likewise.
5511         (symbol_file_add_from_bfd): Likewise.
5512         (symbol_file_add): Likewise.
5513         * symfile.h (enum symfile_add_flags): New. Adjust prototypes.
5514         * symfile-mem.c (symbol_file_add_from_memory): Adjust.
5515         * windows-nat.c (safe_symbol_file_add_stub): Adjust.
5516         * machoread.c (macho_oso_symfile, macho_symfile_read): Adjust.
5517         
5518 2009-06-16  Keith Seitz  <keiths@redhat.com>
5519
5520         * linespec.c (collect_methods): Delete.
5521         (add_matching_methods): Reove destructor special case.
5522         (find_method): Call find_methods directly instead of
5523         collect_methods.
5524         * valops.c (value_struct_elt): Remove destructor
5525         special cases.
5526         (check_field): Likewise.
5527         (value_struct_elt_for_reference): Likewise.
5528         (destructor_name_p): Remove misleading comment about dtors
5529         being "special cases". 
5530         * gdbtypes.h (get_destructor_fn_field): Remove. No longer needed.
5531         * gdbtypes.c (get_destructor_fn_field): Likewise. 
5532
5533 2009-06-16  Pedro Alves  <pedro@codesourcery.com>
5534
5535         * mi/mi-main.c (mi_cmd_data_read_memory): Dispatch
5536         TARGET_OJECT_MEMORY reads to the topmost target, not to the
5537         flattened current_target.
5538
5539 2009-06-16  Tristan Gingold  <gingold@adacore.com>
5540
5541         * avr-tdep.c (struct gdbarch_tdep): Replace the unused field with
5542         call_length field.
5543         (avr_register_name): Add const to register_names.
5544         (avr_scan_arg_moves): Move inside avr_scan_prologue.
5545         (avr_scan_prologue): Add pc_end argument.
5546         Only read prologue bytes that can be read.
5547         Limit the scan to the known prologue length.
5548         Makes pattern variables static and const.
5549         Fix indentation.
5550         (avr_skip_prologue): Pass func_end argument to avr_scan_prologue.
5551         Fix indentation.
5552         (avr_breakpoint_from_pc): Constify avr_break_insn.
5553         (avr_extract_return_value): Fix function comment.
5554         (avr_frame_unwind_cache): Fix GNU style violations.
5555         Pass current_pc argument to avr_scan_prologue to stop prologue
5556         analysis to the current pc.  This fixes the bug with the 'next'
5557         command.
5558         Correctly set the SP register of the previous frame (use call_length).
5559         (avr_frame_prev_register): Fix indentation.
5560         Correctly read PC from the stack on avr6 architectures.
5561         (avr_push_dummy_call): Fix indentation.
5562         (avr_gdbarch_init): Set call_length according to the architecture.
5563
5564 2009-06-15  Phil Muldoon  <pmuldoon@redhat.com>
5565
5566         * infcall.c (show_unwind_on_terminating_exception_p): New
5567         function.
5568         (call_function_by_hand): Create breakpoint and clean-up call for
5569         std::terminate.breakpoint. Add unwind_on_terminating_exception_p
5570         gate. Pop frame on breakpoint hit.
5571         (_initialize_infcall): Add add_setshow_boolean_cmd for
5572         unwind-on-terminating-exception.
5573
5574 2009-06-12  Kevin Buettner  <kevinb@redhat.com>
5575
5576         * dwarf2read.c (dwarf2_psymtab_to_symtab): Propagate
5577         `has_section_at_zero' flag from stripped objfile to separate,
5578         debug info only, objfile.
5579
5580 2009-06-12  Pedro Alves  <pedro@codesourcery.com>
5581
5582         * exec.h (section_table_xfer_memory_partial): Improve description,
5583         mention SECTION_NAME.
5584         * exec.c (section_table_xfer_memory_partial): Remove stale
5585         description.
5586
5587 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
5588
5589         * nto-tdep.h (nto_generic_supply_gpregset)
5590         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
5591         * nto-tdep.c (nto_generic_supply_gpregset)
5592         (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
5593
5594 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
5595
5596         * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define.
5597         (i386nto_sigcontext_addr): Change the way context address is calculated.
5598         (i386nto_init_abi): Remove usage of deprecated sc_reg_offset and
5599         sc_sp_offset and set sc_reg_offset and sc_num_regs.
5600
5601 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
5602
5603         * i386-nto-tdep.c (i386_nto_target): Remove definition.
5604         (init_i386nto_ops): Use macros to set fields to global
5605         current_nto_target directly.
5606         (i386nto_init_abi): Remove unused nto_set_target call.
5607         * nto-tdep.h (nto_set_target): Remove unused declaration.
5608         * nto-tdep.c (nto_set_target): Remove unused function.
5609
5610 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
5611
5612         * breakpoint.c (break_command_really): Rename local variable
5613         breakpoint_chain to bkpt_chain.
5614
5615 2009-06-11  Aleksandar Ristovski  <aristovski@qnx.com>
5616
5617         Add support for XMM registers.
5618         * i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set.
5619         (i386nto_register_area): Correctly calculate offsets and sizes for
5620         all supported registers.
5621
5622 2009-06-11  Tom Tromey  <tromey@redhat.com>
5623
5624         * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove
5625         'static' from local variable definitions.
5626
5627 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
5628
5629         * symtab.c (append_expanded_sal): Remove unused local variables.
5630
5631 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
5632
5633         * infrun.c (sched_multi): New global.
5634         (resume): If sched_multi is set, resume only threads of the
5635         current inferior.
5636         (prepare_to_proceed): Don't switch over to wait_ptid if we're
5637         resuming a different inferior, and sched_multi is off.
5638         (show_schedule_multiple): New.
5639         (_initialize_infrun): Register new "set schedule-multiple" command.
5640         * inferior.h (sched_multi): Declare.
5641         * NEWS: Mention new "schedule-multiple" setting.
5642
5643 2009-06-11  Pedro Alves  <pedro@codesourcery.com>
5644
5645         * varobj.c (varobj_create): Properly restore the selected frame.
5646
5647 2009-06-05  Tom Tromey  <tromey@redhat.com>
5648
5649         * inferior.c (print_inferior): Make a table, not a list.  Emit
5650         table headers.
5651
5652 2009-06-10  Jonas Maebe  <jonas.maebe@elis.ugent.be>
5653
5654         * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to
5655         darwin_wait (blocking wait).
5656         (darwin_kill_inferior): Likewise.
5657
5658 2009-06-10  Pedro Alves  <pedro@codesourcery.com>
5659
5660         * infrun.c (handle_inferior_event): Update comment around trying
5661         to revert back to a stepping thread that has exited.
5662
5663 2009-06-10  Cary Coutant  <ccoutant@google.com>
5664
5665         * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
5666         DW_LNE_set_discriminator.
5667
5668 2009-06-10  Pierre Muller  <muller@ics.u-strasbg.fr>
5669
5670         * breakpoint.c: ARI fixes.
5671         (create_overlay_event_breakpoint): Avoid assignment inside if statement.
5672         (print_one_breakpoint_location): Likewise.
5673         (create_longjmp_breakpoint): Likewise.
5674         (tracepoint_save_command): Likewise
5675         (bpstat_find_step_resume_breakpoint): No operator at end of line.
5676         (bpstat_stop_status): Likewise.
5677         (describe_other_breakpoints): Likewise.
5678         (hw_watchpoint_used_count): Likewise.
5679         (expand_line_sal_maybe): Likewise.
5680         (break_command_really): Likewise.
5681         (delete_command): Likewise.
5682         (do_enable_breakpoint): Likewise.
5683         (delete_trace_command): Likewise.
5684         (catch_exception_command_1): Likewise and remove extra parentheses.
5685
5686 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
5687
5688         * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
5689         "ubreak" command that does not exist.
5690
5691 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
5692
5693         * cli/cli-decode.c (add_alias_cmd): Correct assertion.
5694
5695 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
5696
5697         * hppa-tdep.c (_initialize_hppa_tdep): Add declaration.
5698
5699 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
5700
5701         * procfs.h: New.
5702         * proc-utils.h (procfs_first_available): Don't declare here.
5703         * sol-thread.c: Include procfs.h instead of sys/procfs.h and
5704         proc-utils.h.
5705         * procfs.c: Include procfs.h.
5706         (procfs_target): Make it public.  Don't register
5707         procfs_can_use_hw_breakpoint here.
5708         (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
5709         defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
5710         (procfs_can_use_hw_breakpoint): Remove check of
5711         TARGET_HAS_HARDWARE_WATCHPOINTS.
5712         (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
5713         here.
5714         (_initialize_procfs): Don't add the procfs target here.
5715
5716         * i386-sol2-nat.c: Include target.h and procfs.h.
5717         (_initialize_amd64_sol2_nat): Install the procfs target here,
5718         customized with watchpoints support.
5719         * irix5-nat.c: Include target.h.
5720         (_initialize_core_irix5): Rename to ...
5721         (_initialize_irix5_nat): ... this.  Install the procfs target
5722         here, customized with watchpoints support.
5723         * alpha-nat.c: Include procfs.h.
5724         (_initialize_core_alpha): Rename to...
5725         (_initialize_alpha_nat): ... this.  Install the procfs target
5726         here, customized with watchpoints support.
5727         * sparc-sol2-nat.c: Include target.h and procfs.h.
5728         (_initialize_sparc_sol2_nat): New.
5729
5730         * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
5731         * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
5732         * config/mips/irix5.mh (NAT_FILE): Delete.
5733         * config/mips/irix6.mh (NAT_FILE): Delete.
5734         * config/mips/nm-irix5.h: Delete.
5735
5736 20009-06-07  Pedro  Alves  <pedro@codesourcery.com>
5737
5738         * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
5739         to enum target_object.  Cleanup comments.
5740         * auxv.h: Include "target.h".  Cleanup comments to not mention
5741         NATIVE_XFER_AUXV anymore.
5742
5743 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
5744
5745         * inferior.h (procfs_first_available): Move declaration to...
5746         * proc-utils.h: ... here.
5747         * sol-thread.c: Include procfs.h and proc-utils.h.
5748
5749 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
5750
5751         * inferior.h (proc_iterate_over_mappings): Delete declaration.
5752         * nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
5753         * procfs.c (proc_iterate_over_mappings): Delete.
5754
5755 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
5756
5757         * target.h (struct target_ops): Make to_has_all_memory,
5758         to_has_memory, to_has_stack, to_has_registers and to_has_execution
5759         methods instead of variables.
5760         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
5761         (target_has_registers_1, target_has_execution_1): Declare
5762         functions.
5763         (target_has_all_memory): Rewrite to call target_has_all_memory_1.
5764         (target_has_memory): Rewrite to call target_has_memory_1.
5765         (target_has_stack): Rewrite to call target_has_all_stack_1.
5766         (target_has_registers): Rewrite to call target_has_registers_1.
5767         (target_has_execution): Rewrite to call target_has_execution_1.
5768         (default_child_has_all_memory, default_child_has_memory)
5769         (default_child_has_stack, default_child_has_registers)
5770         (default_child_has_execution): Declare.
5771         (target_mark_running, target_mark_exited): Delete declarations.
5772         * target.c (default_child_has_all_memory,
5773         default_child_has_memory, default_child_has_stack,
5774         default_child_has_registers, default_child_has_execution): New.
5775         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
5776         target_has_registers_1, target_has_execution_1): New.
5777         (add_target): Default the to_has_all_memory, to_has_all_memory,
5778         to_has_memory, to_has_stack, to_has_registers and to_has_execution
5779         callbacks to return 0.
5780         (update_current_target): Do not inherit to_has_all_memory,
5781         to_has_memory, to_has_stack, to_has_registers or to_has_execution.
5782         (target_mark_running, target_mark_exited): Delete.
5783         (memory_xfer_partial): Adjust.
5784         (target_read_memory, target_write_memory, target_search_memory):
5785         Dispatch to the the top-most target, not the flattened
5786         current_target.
5787         (target_info): Adjust.
5788         (init_dummy_target): Install return_zero as callback for
5789         to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
5790         to_has_execution.
5791         (set_maintenance_target_async_permitted): Use have_live_inferiors
5792         instead of target_has_execution.
5793         * target-memory.c (target_write_memory_blocks): Dispatch memory
5794         writes to the the top-most target, not the flattened
5795         current_target.
5796
5797         * breakpoint.c (insert_breakpoints): Don't check for
5798         target_has_execution here.
5799         (update_global_location_list): Check if there are live inferiors
5800         to debug instead of target_has_execution.
5801         * infcmd.c (kill_command, detach_command): Check if there are
5802         inferiors instead of target_has_execution.
5803         * inferior.h (have_live_inferiors): Declare.
5804         * inferior.c (have_live_inferiors): New.
5805         * infrun.c (normal_stop): Don't check for target_has_execution to
5806         finish the thread states.
5807         * thread.c (is_thread_state, is_stopped, is_exited, is_running)
5808         (any_running, is_executing): Remove checks for
5809         target_has_execution.
5810         * top.c (kill_or_detach): Don't try to kill core inferiors.
5811         (quit_target): Don't check for target_has_execution.
5812
5813         * corelow.c (core_has_memory, core_has_stack, core_has_registers):
5814         New.
5815         (init_core_ops): Install core_has_memory, core_has_stack and
5816         core_has_registers.
5817         * exec.c (exec_has_memory): New.
5818         (init_exec_ops): Install exec_has_memory.
5819         * remote.c (remote_add_inferior): Don't call target_mark_running.
5820         (remote_start_remote): Don't call target_mark_exited or call
5821         target_mark_running.
5822         (remote_open_1): Use have_inferiors instead of
5823         target_has_execution.  Don't use target_mark_exited.
5824         (init_remote_ops): Install deafult_child_has_all_memory,
5825         default_child_has_memory, default_child_has_stack,
5826         default_child_has_registers, default_child_has_execution.
5827         * bsd-kvm.c (bsd_kvm_return_one): New.
5828         (bsd_kvm_add_target): Register bsd_kvm_return_one as
5829         to_has_memory, to_has_stack and to_has_registers callbacks.
5830         * remote-m32r-sdi.c (m32r_return_one): New.
5831         (init_m32r_ops): Register it.
5832         * inf-child.c (inf_child_target): Adjust to register
5833         default_child_has_all_memory, default_child_has_memory,
5834         default_child_has_stack, default_child_has_registers,
5835         default_child_has_execution callbacks.
5836         * gnu-nat.c (init_gnu_ops): Likewise.
5837         * go32-nat.c (init_go32_ops): Likewise.
5838         * hpux-thread.c (init_hpux_thread_ops): Likewise.
5839         * monitor.c (init_base_monitor_ops): Likewise.
5840         * nto-procfs.c (init_procfs_ops): Likewise.
5841         * remote-mips.c (_initialize_remote_mips): Likewise.
5842         * windows-nat.c (init_windows_ops): Likewise.
5843         * remote-sim.c (gdbsim_create_inferior): Don't use
5844         target_mark_running or target_mark_exited.
5845         (gdbsim_mourn_inferior): Don't call target_mark_exited.
5846         (init_gdbsim_ops): Adjust to register
5847         default_child_has_all_memory, default_child_has_memory,
5848         default_child_has_stack, default_child_has_registers,
5849         default_child_has_execution callbacks.
5850
5851         * linux-nat.c (linux_nat_xfer_partial): If reading memory, and
5852         there's no inferior selected, defer to a lower stratum.
5853
5854 2009-06-05  Tom Tromey  <tromey@redhat.com>
5855
5856         * varobj.c (update_dynamic_varobj_children): Wrap error text in
5857         _().
5858         (install_visualizer): Likewise.
5859         (varobj_set_visualizer): Likewise.
5860
5861 2009-06-05  Marc Khouzam  <marc.khouzam@ericsson.com>
5862
5863         * mi/mi-main.c (mi_cmd_exec_continue)
5864         (mi_cmd_exec_interrupt): Adjust parsing of thread group
5865         ids to current reality, where they don't have any 'p' prefix.
5866
5867 2009-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
5868
5869         * corelow.c (core_open): Check for core_gdbarch before calling
5870         gdbarch_target_signal_from_host.
5871
5872 2009-06-05  Tom Tromey  <tromey@redhat.com>
5873
5874         * c-exp.y (parse_number): Don't use K&R definition.
5875         (yylex): Likewise.
5876         (yyerror): Likewise.
5877
5878 2009-06-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
5879
5880         * varobj.c (varobj_update): Fix out of scope varobjs to not to change.
5881
5882 2009-06-04  Ulrich Weigand  <uweigand@de.ibm.com>
5883
5884         * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
5885         * ax-gdb.c (gen_var_ref): Likewise.
5886         * findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
5887         * printcmd.c (address_info): Likewise.
5888         * dwarf2loc.c (dwarf_expr_frame_base): Likewise.
5889         * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
5890         * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
5891         * dwarf2loc.h: Likewise.
5892         * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.
5893
5894         * symtab.h: (struct symbol_register_ops): New struct definition.
5895         (struct symbol): Make "ops" member a union of symbol_computed_ops and
5896         symbol_register_ops callback pointers.
5897         (SYMBOL_REGISTER_OPS): New macro.
5898         * tracepoint.c: Include "objfiles.h".
5899         (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
5900         callback to retrieve register numbers.
5901         * ax-gdb.c (gen_var_ref): Likewise.
5902         * findvar.c (read_var_value): Likewise.
5903         * printcmd.c (address_info): Likewise.
5904
5905         * coffread.c (coff_reg_to_regnum): New function.
5906         (coff_register_funcs): New static variable.
5907         (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
5908         Install SYMBOL_REGISTER_OPS callbacks.
5909         * mdebugread.c (mdebug_reg_to_regnum): New function.
5910         (mdebug_register_funcs): New static variable.
5911         (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
5912         Install SYMBOL_REGISTER_OPS callbacks.
5913         * stabsread.c (stab_reg_to_regnum): New function.
5914         (stab_register_funcs): New static variable.
5915         (define_symbol): Do not call gdbarch_stab_reg_to_regnum.
5916         Install SYMBOL_REGISTER_OPS callbacks.
5917
5918 2009-06-03  Doug Evans  <dje@google.com>
5919
5920         * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
5921         after discarding its contents.
5922
5923 2009-06-03  Pedro Alves  <pedro@codesourcery.com>
5924
5925         * target.c: Include "exec.h".
5926         (update_current_target): Don't inherit to_sections or
5927         to_sections_end.
5928         (target_get_section_table): New.
5929         (target_section_by_addr): Fetch the section table from the passed
5930         in target.
5931         (memory_xfer_partial): Handle unmapped overlay sections before
5932         anything else.  Get the overlay mapped address here.  Adjust to
5933         use section_table_xfer_memory_partial.
5934         (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
5935         instead of TARGET_OBJECT_MEMORY.
5936         (target_resize_to_sections): Delete.
5937         (remove_target_sections): Adjust to remove target sections from
5938         `current_target_sections', and use resize_section_table.
5939         * target.h (struct target_ops) <to_sections, to_sections_end>:
5940         Remove fields.
5941         <to_get_section_table>: New method.
5942         (xfer_memory, print_section_info): Delete declarations.
5943         (struct target_section_table): New type.
5944         (target_get_section_table): Declare.
5945         (target_resize_to_sections): Delete declaration.
5946         (remove_target_sections): Delete declaration.
5947         * bfd-target.c (target_bfd_xfer_partial): Get the section table
5948         from to_data.
5949         (target_bfd_get_section_table): New.
5950         (target_bfd_xclose): Adjust.
5951         (target_bfd_reopen): Store the section table in the to_data field.
5952         * corelow.c (core_data): New.
5953         (core_close): Adjust to release core_data and its sections.
5954         (core_open): Allocate core_data, and build its target sections
5955         table.
5956         (deprecated_core_resize_section_table): New.
5957         (core_files_info): Pass core_data to print_section_info.
5958         (core_xfer_partial): Adjust to use
5959         section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
5960         (init_core_ops): Do not install a deprecated_xfer_memory callback
5961         anymore.
5962         * solib.c (update_solib_list): Add the shared library sections
5963         to the current target sections table.
5964         * exec.c (current_target_sections_1): New global.
5965         (current_target_sections): New global.
5966         (exec_close_1): New function, refactored from exec_close.  Remove
5967         the exec_bfd's sections from the current target sections table.
5968         Adjust to not use to_sections.
5969         (exec_close): Remove all target sections.  Call exec_close_1.
5970         (exec_file_clear): Use exec_close_1 instead of unpushing the
5971         target.
5972         (exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
5973         exec_bfd's sections to the current target sections table.  Don't
5974         push the exec_ops target here.
5975         (resize_section_table): New.
5976         (add_target_sections): New.
5977         (remove_target_sections): Moved here.
5978         (section_table_xfer_memory): Adjust to implement the xfer_partial
5979         interface, and rename to...
5980         (section_table_xfer_memory_partial): ... this, replacing the
5981         current function of that same name.
5982         (exec_get_section_table): New.
5983         (exec_xfer_partial): New.
5984         (xfer_memory): Delete.
5985         (print_section_info): Replace the target_ops parameter by a
5986         target_section_table parameter.
5987         (exec_files_info, set_section_command, exec_set_section_address):
5988         Adjust to use the current sections table.
5989         (init_exec_ops): Do not register a deprecated_xfer_memory
5990         callback.  Register to_xfer_partial and to_get_section_table
5991         callbacks.
5992         * infrun.c (handle_inferior_event): Update comments around
5993         solib_add.
5994         * rs6000-nat.c (xcoff_relocate_core): Adjust to use
5995         deprecated_core_resize_section_table.
5996         * exec.h (resize_section_table): Declare.
5997         (section_table_xfer_memory_partial): Add const char * argument.
5998         (remove_target_sections): Declare here.
5999         (add_target_sections): Declare.
6000         (print_section_info): Declare here.
6001         * gdbcore.h (deprecated_core_resize_section_table): Declare.
6002
6003 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
6004
6005         * value.h (struct internalvar): Remove.
6006         (get_internalvar_integer): Add prototype.
6007         (set_internalvar_integer): Add prototype.
6008         (clear_internalvar): Add prototype.
6009
6010         * value.c (struct internalvar): Move here.  Add type member.  Remove
6011         endian member.  Add union_internalvar member instead of value member.
6012         (init_if_undefined_command): Use intvar->type.
6013         (create_internalvar): Do not initialize value/endian, but type.
6014         (create_internalvar_type_lazy): Call create_internalvar.
6015         (value_of_internalvar): Handle host-side internalvar contents.
6016         (set_internalvar_component): Likewise.
6017         (set_internalvar): Likewise.
6018         (get_internalvar_integer): New function.
6019         (clear_internalvar): Likewise.
6020         (set_internalvar_integer): Likewise.
6021         (preserve_values): Handle host-side internalvar contents.
6022
6023         * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
6024         set_internalvar_integer instead of set_internalvar.
6025         * findcmd.c (find_command): Likewise.
6026         * infrun.c (handle_inferior_event): Likewise.
6027         * source.c (forward_search_command, reverse_search_command): Likewise.
6028         * tracepoint.c (set_traceframe_num, set_tracepoint_num,
6029         set_traceframe_context): Likewise.
6030
6031         * printcmd.c (x_command): Call clear_internalvar instead of
6032         set_internalvar.
6033         * tracepoint.c (set_traceframe_context): Likewise.
6034         
6035         * breakpoint.c (get_number_trailer): Call get_internalvar_integer
6036         instead of value_of_internalvar.
6037         * linespec.c (decode_dollar): Likewise.
6038
6039         * expprint.c (dump_subexp_body_standard): Use internalvar_name
6040         instead of accessing internalvar private elements.
6041         * valops.c (value_assign): Copy from original source instead of
6042         accessing internalvar private elements.
6043
6044 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
6045
6046         * scm-lang.c (builtin_type_scm): Remove.
6047         (scm_lookup_name): Add GDBARCH parameter.  Use it instead of
6048         objfile architecture.  Use per-architecture builtin_scm_type instead
6049         of builtin_type_scm.
6050         (evaluate_exp): Pass expression architecture to scm_lookup_name.
6051
6052         (scm_get_field): Add SIZE parameter.  Use it instead of 
6053         TYPE_LENGTH (builtin_type_scm).
6054
6055         (build_scm_types): New function.
6056         (scm_type_data): New variable.
6057         (builtin_scm_type): New function.
6058         (_initialize_scheme_language): Do not initialize builtin_type_scm.
6059         Register build_scm_types as post-init function for scm_type_data.
6060
6061         * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
6062         instead of builtin_type_scm.
6063
6064         * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
6065         (scm_get_field): Add SIZE paramter.
6066         (scm_scmval_print): Remove prototype.
6067         (builtin_type_scm): Remove.
6068         (struct builtin_scm_type): Add structure definition.
6069         (builtin_scm_type): Add prototype.
6070
6071         * scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
6072         instead of builtin_core_addr type; do not use objfile architecture.
6073         (scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
6074         Pass type to scm_scmval_print.
6075         (scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
6076         (scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
6077         define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
6078         (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
6079
6080 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
6081
6082         * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
6083         mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
6084         mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
6085         mdebug_type_unsigned_char, mdebug_type_unsigned_short,
6086         mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
6087         mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
6088         mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
6089         mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
6090         mdebug_type_complex, mdebug_type_double_complex,
6091         mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
6092         Remove.
6093
6094         (basic_type_data): New global variable.
6095         (basic_type): New function.
6096         (parse_type): Remove static basic type map map_bt.  Call basic_type
6097         to get basic types instead of using mdebug_type_ variables.
6098
6099         (parse_symbol): Use builtin types instead of mdebug_type_ variables.
6100         (upgrade_type): Likewise.
6101         (parse_procedure): Likewise.
6102         (psymtab_to_symtab_1): Likewise.
6103
6104         (_initialize_mdebugread): Do not initialize mdebug_type_ variables.
6105         Initialize basic_type_data.
6106
6107 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
6108
6109         * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
6110         * dfp.c (promote_decimal): Remove.
6111         (decimal_binop): Convert LEN_RESULT to input parameter.
6112         Remove call to decimal_binop.
6113         (decimal_compare): Remove call to decimal_binop.
6114
6115         * valarith.c (value_binop): Pass desired result type length
6116         to decimal_binop.
6117
6118 2009-06-01  Tristan Gingold  <gingold@adacore.com>
6119
6120         * configure.tgt (avr): Set gdb_sim to use the simulator.
6121
6122 2009-05-29  Doug Evans  <dje@google.com>
6123
6124         * infrun.c (prepare_to_proceed): Document.  Assert !non_stop.
6125         If scheduler-locking is enabled, we're not going to be singlestepping
6126         any other previously stopped thread.
6127
6128 2009-05-29  Pedro Alves  <pedro@codesourcery.com>
6129
6130         * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0.
6131
6132 2009-05-29  Eli Zaretskii  <eliz@gnu.org>
6133
6134         * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
6135         for stabs and COFF debug info.
6136
6137 2009-05-28  Pedro Alves  <pedro@codesourcery.com>
6138
6139         * infrun.c (handle_inferior_event): When thread hoping, switch
6140         inferior_ptid to the event thread before removing breakpoints from
6141         the target.  If not stopping, also try to revert back to a thread
6142         that was doing a "next".  Check if that thread still exists before
6143         resuming.
6144         (currently_stepping_thread): Delete and merge with ...
6145         (currently_stepping): ... this.
6146         (currently_stepping_callback): Rename to ...
6147         (currently_stepping_or_nexting_callback): ... this, and also
6148         return true if the thread was stepping over a call (has a
6149         step-resume breakpoint).
6150
6151 2009-05-28  Tom Tromey  <tromey@redhat.com>
6152
6153         * python/python.c (gdbpy_parameter): Rename.  Fix error message.
6154         (GdbMethods): Change "get_parameter" to "parameter".
6155
6156 2009-05-28  Pierre Muller  <muller@ics.u-strasbg.fr>
6157             Paul Pluzhnikov  <ppluzhnikov@google.com>
6158
6159         * configure.ac (!have_libpython): Add python-prettyprint source
6160         and object files.
6161         * configure: Regenerate.
6162         * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
6163         python headers.
6164         
6165 2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
6166             Tom Tromey  <tromey@redhat.com>
6167             Thiago Jung Bauermann  <bauerman@br.ibm.com>
6168
6169         * mi/mi-main.c (mi_cmd_list_features): List "python" feature.
6170         * varobj.h (varobj_set_visualizer): Declare.
6171         (varobj_get_display_hint): Likewise.
6172         (varobj_update_result_t) <children_changed, value_installed>: New
6173         fields.
6174         * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
6175         * mi/mi-cmds.h (mi_cmd_var_set_visualizer,
6176         mi_cmd_var_set_child_range): Declare.
6177         * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
6178         (mi_cmd_var_list_children): Emit display hint.
6179         (varobj_update_one): Emit display hint.  Handle dynamic children.
6180         * python/python.c (GdbMethods): Add "default_visualizer".
6181         * python/python-internal.h (apply_varobj_pretty_printer,
6182         gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
6183         Declare.
6184         (gdbpy_default_visualizer): Likewise.
6185         * varobj.c: Include python.h, python-internal.h.
6186         (PyObject): New typedef.
6187         (struct varobj) <children_requested, pretty_printer>: New fields.
6188         (varobj_create): Call install_default_visualizer.
6189         (instantiate_pretty_printer): New function.
6190         (varobj_set_display_format): Update.
6191         (varobj_get_display_hint): New function.
6192         (update_dynamic_varobj_children): New function.
6193         (varobj_get_num_children): Handle dynamic children.
6194         (varobj_list_children): Likewise.
6195         (install_new_value): Likewise.
6196         (varobj_add_child): New function.
6197         (install_visualizer): Likewise.
6198         (install_default_visualizer): Likewise.
6199         (varobj_set_visualizer): Likewise.
6200         (varobj_update): Handle dynamic children.
6201         (create_child): Use create_child_with_value.
6202         (create_child_with_value): New function.
6203         (value_get_print_value): Call pretty printer.  Add value_formatter
6204         argument.
6205         (c_value_of_variable): Update.
6206         (varobj_invalidate): Always free all_rootvarobj.
6207         * python/python-prettyprint.c (apply_varobj_pretty_printer): New
6208         function.
6209         (gdbpy_get_varobj_pretty_printer): Likewise.
6210         (gdbpy_default_visualizer): Likewise.
6211
6212 2009-05-27  Tom Tromey  <tromey@redhat.com>
6213             Thiago Jung Bauermann  <bauerman@br.ibm.com>
6214             Phil Muldoon  <pmuldoon@redhat.com>
6215             Paul Pluzhnikov  <ppluzhnikov@google.com>
6216             Vladimir Prus  <vladimir@codesourcery.com>
6217
6218         * python/python-value.c (value_object_to_value): New function.
6219         * python/python-internal.h: Include frameobject.h.
6220         (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
6221         Declare.
6222         (value_object_to_value): Declare.
6223         * printcmd.c (struct format_data) <raw>: New field.
6224         (last_format): Default to 0.
6225         (decode_format): Initialize val.raw.  Handle /r flag.
6226         (print_command_1): Initialize fmt.raw and opts.raw.
6227         (output_command): Likewise.
6228         (x_command): Fix initialization of fmt.format.  Initialize
6229         fmt.raw.
6230         (display_command): Initialize fmt.raw.
6231         (do_one_display): Set opts.raw.
6232         * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
6233         gdbpy_display_hint_cst): New globals.
6234         (_initialize_python): Initialize them.  Set gdb.pretty_printers.
6235         * cp-valprint.c: Include python.h.
6236         (cp_print_value): Call apply_val_pretty_printer.
6237         * python/python.h (apply_val_pretty_printer): Declare.
6238         * stack.c (print_this_frame_argument_p): Remove.
6239         (print_frame_args): Compute summary flag.  Don't use
6240         print_this_frame_argument_p.
6241         * valprint.c: Include python.h.
6242         (user_print_options): Initialize new fields.
6243         (scalar_type_p): New function.
6244         (val_print): Handle 'raw' and 'summary' modes.  Call
6245         apply_val_pretty_printer.
6246         (value_print): Handle 'raw' mode.
6247         * valprint.h (struct value_print_options) <raw, summary>: New
6248         fields.
6249         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
6250         (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
6251         (python-prettyprint.o): New target.
6252         * python/python-prettyprint.c: New file.
6253
6254 2009-05-27  Tom Tromey  <tromey@redhat.com>
6255             Paul Pluzhnikov  <ppluzhnikov@google.com>
6256
6257         * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
6258         value_address.
6259         * cli/cli-dump.c (dump_value_to_file): Use value_address.
6260         * valprint.c (common_val_print): Likewise.
6261         * v850-tdep.c (v850_push_dummy_call): Use value_address.
6262         * tracepoint.c (encode_actions): Use value_address.
6263         * printcmd.c (print_formatted): Use value_address.
6264         (x_command): Likewise.
6265         * p-valprint.c (pascal_object_print_static_field): Use
6266         value_address.
6267         * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
6268         * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
6269         * m32r-tdep.c (m32r_push_dummy_call): Use value_address.
6270         * jv-valprint.c (java_value_print): Use value_address.
6271         * infcall.c (find_function_addr): Use value_address.
6272         * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
6273         * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
6274         * frv-tdep.c (frv_push_dummy_call): Use value_address.
6275         * frame.c (frame_register_unwind): Use value_address.
6276         (frame_unwind_register_value): Likewise.
6277         * darwin-nat-info.c (info_mach_region_command): Use
6278         value_address.
6279         * cp-valprint.c (cp_print_static_field): Use value_address.
6280         * c-valprint.c (c_value_print): Use value_address.
6281         * breakpoint.c (update_watchpoint): Use value_address.
6282         (can_use_hardware_watchpoint): Likewise.
6283         * ada-valprint.c (ada_val_print_1): Use value_address.
6284         (ada_value_print): Likewise.
6285         * ada-tasks.c (read_fat_string_value): Use value_address.
6286         * jv-lang.c (java_link_class_type): Use set_value_address.
6287         (java_link_class_type): Likewise.
6288         (get_java_utf8_name): Use value_address.
6289         (type_from_class): Likewise.
6290         (java_link_class_type): Likewise.
6291         * findvar.c (value_of_register): Use set_value_address.
6292         (read_var_value): Likewise.
6293         (read_var_value): Likewise.
6294         * eval.c (evaluate_subexp_standard): Use set_value_address.
6295         (evaluate_subexp_standard): Use value_address.
6296         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
6297         * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
6298         (ada_value_primitive_packed_val): Likewise.
6299         (ensure_lval): Likewise.
6300         (thin_data_pntr): Use value_address.
6301         (desc_bounds): Likewise.
6302         (ada_value_primitive_packed_val): Likewise.
6303         (value_assign_to_component): Likewise.
6304         (ensure_lval): Likewise.
6305         (make_array_descriptor): Likewise.
6306         (ada_to_fixed_value): Likewise.
6307         (unwrap_value): Likewise.
6308         * value.c (deprecated_value_address_hack): Remove.
6309         (value_address): New function.
6310         (value_raw_address): Likewise.
6311         (set_value_address): Likewise.
6312         (value_fn_field): Use set_value_address.
6313         (value_from_contents_and_address): Likewise.
6314         (value_fn_field): Likewise.
6315         (allocate_value_lazy): Don't use VALUE_ADDRESS.
6316         (value_as_address): Use value_address.
6317         (value_static_field): Likewise.
6318         * valops.c (search_struct_field): Use set_value_address.
6319         (value_at): Likewise.
6320         (value_at_lazy): Likewise.
6321         (value_repeat): Likewise.
6322         (value_cast_structs): Use value_address.
6323         (value_cast): Likewise.
6324         (value_fetch_lazy): Likewise.
6325         (value_assign): Likewise.
6326         (value_repeat): Likewise.
6327         (address_of_variable): Likewise.
6328         (value_coerce_array): Likewise.
6329         (value_coerce_function): Likewise.
6330         (value_addr): Likewise.
6331         (search_struct_field): Likewise.
6332         (search_struct_method): Likewise.
6333         (find_method_list): Likewise.
6334         (value_struct_elt_for_reference): Likewise.
6335         (value_full_object): Likewise.
6336         * jv-valprint.c (java_value_print): Use set_value_address.
6337         * value.h (deprecated_value_address_hack): Remove.
6338         (VALUE_ADDRESS): Remove.
6339         (value_address): Declare.
6340         (value_raw_address): Declare.
6341         (set_value_address): Declare.
6342
6343 2009-05-27  Tom Tromey  <tromey@redhat.com>
6344             Thiago Jung Bauermann  <bauerman@br.ibm.com>
6345             Phil Muldoon  <pmuldoon@redhat.com>
6346             Paul Pluzhnikov  <ppluzhnikov@google.com>
6347
6348         * python/python.c (_initialize_python): Call
6349         gdbpy_initialize_types.
6350         (GdbMethods): Add "lookup_type".
6351         * python/python-value.c (value_object) <type>: New field.
6352         (valpy_dealloc): Decref type.
6353         (valpy_new): Initialize type.
6354         (valpy_get_type): New function.
6355         (value_to_value_object): Initialize type.
6356         (valpy_cast): New function.
6357         (value_object_getset): Add "type".
6358         (value_object_methods): Add "cast".
6359         * python/python-internal.h (type_to_type_object): Declare.
6360         (type_object_to_type): Likewise.
6361         (gdbpy_initialize_types): Likewise.
6362         (gdbpy_lookup_type): Declare.
6363         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
6364         (SUBDIR_PYTHON_SRCS): Add python-type.c.
6365         (python-type.o): New target.
6366         * python/python-type.c: New file.
6367
6368 2009-05-27  Tom Tromey  <tromey@redhat.com>
6369             Thiago Jung Bauermann  <bauerman@br.ibm.com>
6370             Phil Muldoon  <pmuldoon@redhat.com>
6371
6372         * python/python.c: Include objfiles.h, observer.h.
6373         (gdbpy_auto_load): New global.
6374         (gdbpy_current_objfile): Likewise.
6375         (GDBPY_AUTO_FILENAME): New define.
6376         (gdbpy_new_objfile): New function.
6377         (gdbpy_get_current_objfile): Likewise.
6378         (gdbpy_objfiles): Likewise.
6379         (_initialize_python): Add "maint set auto-load".  Call
6380         gdbpy_initialize_objfile.  Attach objfile observer.
6381         (GdbMethods): New methods current_objfile, objfiles.
6382         * python/python-objfile.c: New file.
6383         * python/python-internal.h (objfile_to_objfile_object): Declare.
6384         (objfpy_get_printers): Likewise.
6385         (gdbpy_initialize_objfile): Likewise.
6386         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
6387         (SUBDIR_PYTHON_SRCS): Add python-objfile.c.
6388         (python-objfile.o): New target.
6389
6390 2009-05-27  Pedro Alves  <pedro@codesourcery.com>
6391
6392         * infrun.c (follow_exec): Clear the stop_requested flag.
6393         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
6394         Add debug output.
6395
6396 2009-05-27  Aleksandar Ristovski  <aristovski@qnx.com>
6397
6398         * nto-procfs.c (get_regset): Pass correct pointer.
6399
6400 2009-05-26  Doug Evans  <dje@google.com>
6401
6402         * dwarf2read.c (follow_die_ref): Add comment.
6403         (dwarf2_mark_helper): Tweak comment.
6404         (dwarf2_mark): Move description to its proper place.
6405
6406 2009-05-25  Pierre Muller  <muller@ics.u-strasbg.fr>
6407
6408         * procfs.c (procfs_wait): Add options parameter.
6409
6410 2009-05-24  Doug Evans  <dje@google.com>
6411
6412         Global renaming of find_thread_pid to find_thread_ptid.
6413         * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
6414         * thread.c (find_thread_ptid): Renamed from find_thread_pid.
6415         All callers updated.
6416
6417         * infrun.c (follow_fork): Initialize new step_* locals
6418         to avoid "may be used uninitialized" warnings.
6419
6420 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
6421
6422         * inflow.c (copy_terminal_info): Deep copy `run_terminal'.
6423
6424 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
6425
6426         * gdbthread.h (struct thread_info): New `pending_follow' field.
6427         * thread.c (new_thread): New function.
6428         (add_thread_silent): Use it.
6429         * breakpoint.c (internal_breakpoint_number): New global, moved
6430         from inside...
6431         (create_internal_breakpoint): ... this.
6432         (clone_momentary_breakpoint): New.
6433         * breakpoint.h (clone_momentary_breakpoint): Declare.
6434         * infrun.c (nullify_last_target_wait_ptid): Move declaration
6435         higher.
6436         (pending_follow): Delete.
6437         (follow_fork): Handle pending follow fork event here.  Moved the
6438         preserving of thread stepping state here.
6439         (resume): Don't handle pending follow fork events here.  Only
6440         install the inferior's terminal modes if we're about to resume it.
6441         (proceed): Handle possible pending follow fork events here.
6442         (init_wait_for_inferior): No need to clear pending_follow anymore,
6443         it's gone.
6444         (handle_inferior_event): Adjust to per-thread `pending_follow'.
6445         Call `follow_fork' to handle following the fork.  If the
6446         follow-fork is cancelled, stop stepping.
6447         * linux-nat.c (linux_child_follow_fork): Adjust to per-thread
6448         `pending_follow' events.  Remove code that handled preserving the
6449         thread stepping state.
6450         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
6451         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
6452
6453 2009-05-24  Pierre Muller  <muller@ics.u-strasbg.fr>
6454
6455         * symfile.c (add_shared_symbol_files_command): Remove
6456         prototype and function.
6457         (_initialize _symfile): Move "add-shared-symbol-files"
6458         command and "assf" alias.
6459         * windows-nat.c (_initialize_windows_nat): to here.
6460         Change "add-shared-symbol-files" to alias.
6461         
6462         * config/i386/cygwin.mh: Remove NAT_FILE.
6463         * config/i386/mingw.mh: Remove NAT_FILE.
6464         * config/i386/mingw64.mh: Remove NAT_FILE.
6465         * config/i386/nm-cygwin.h: Remove file.
6466         * config/i386/nm-cygwin64.h: Remove file.
6467
6468 2009-05-24  Hui Zhu  <teawater@gmail.com>
6469
6470         * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
6471         I386_LINUX_RECORD_IOCTL_*,
6472         I386_LINUX_RECORD_FCNTL_*) Removed.
6473         (i386_linux_init_abi): Change size of record from macros to
6474         numbers.
6475
6476 2009-05-24  Hui Zhu  <teawater@gmail.com>
6477
6478         * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
6479         * linux-record.c (record_linux_system_call): Ditto.
6480         * linux-record.h (linux_record_tdep): Ditto.
6481
6482 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
6483
6484         Replace the savestring calls by xstrdup calls where possible.
6485         * breakpoint.c (condition_command, set_raw_breakpoint)
6486         (create_catchpoint, update_breakpoint_locations): Replace the
6487         savestring calls by xstrdup calls where possible.
6488         * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
6489         (record_producer): Likewise.
6490         * coffread.c (coff_start_symtab, complete_symtab): Likewise.
6491         * corefile.c (set_gnutarget): Likewise.
6492         * dbxread.c (add_new_header_file): Likewise.
6493         * demangle.c (set_demangling_command, set_demangling_style): Likewise.
6494         * event-top.c (push_prompt, pop_prompt, command_line_handler)
6495         (set_async_prompt): Likewise.
6496         * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
6497         Likewise.
6498         * language.c (set_language_command, _initialize_language): Likewise.
6499         * linespec.c (decode_line_2): Likewise.
6500         * rs6000-nat.c (add_vmap): Likewise.
6501         * top.c (set_prompt, init_history, init_main): Likewise.
6502         * tracepoint.c (stringify_collection_list): Likewise.
6503         * varobj.c (varobj_create): Remove variable expr_len.  Replace the 
6504         savestring calls by xstrdup calls where possible.
6505         (value_of_root, c_name_of_variable, c_describe_child): Replace the
6506         savestring calls by xstrdup calls where possible.
6507         * xcoffread.c (complete_symtab): Likewise.
6508         * cli/cli-script.c (build_command_line, define_command): Likewise.
6509         * cli/cli-setshow.c (do_setshow_command): Likewise.
6510
6511 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
6512
6513         Remove already unreachable code.
6514         * varobj.c (varobj_get_handle): Fix comment when error is called.
6515         All callers updated.
6516
6517 2009-05-23  Eli Zaretskii  <eliz@gnu.org>
6518
6519         * README (`configure' options): Document GDB-specific options to
6520         `configure'.
6521
6522         * symtab.c (skip_prologue_using_lineinfo): New function.
6523         (find_function_start_sal): Use it to get to the first line of
6524         function's body that has an entry in the lineinfo table.
6525
6526         * symmisc.c (dump_symtab): Switch the current language to
6527         the language of the symtab we are dumping only if the symtab's
6528         language is neither language_auto nor language_unknown.
6529
6530         * coffread.c (coff_symtab_read): Set language_minimal as the
6531         language for the "_globals_" pseudo-file.
6532         (process_coff_symbol): Set the symbol's language to the language
6533         of current_subfile.
6534
6535 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
6536
6537         * target.h (struct section_table): Rename to ...
6538         (struct target_section): ... this.
6539         * exec.c: Adjust all references.
6540         * exec.h: Adjust all references.
6541         * nto-tdep.c: Adjust all references.
6542         * nto-tdep.h: Adjust all references.
6543         * ppc-linux-tdep.c: Adjust all references.
6544         * rs6000-nat.c: Adjust all references.
6545         * s390-tdep.c: Adjust all references.
6546         * solib-darwin.c: Adjust all references.
6547         * solib-frv.c: Adjust all references.
6548         * solib-irix.c: Adjust all references.
6549         * solib-null.c: Adjust all references.
6550         * solib-osf.c: Adjust all references.
6551         * solib-pa64.c: Adjust all references.
6552         * solib-som.c: Adjust all references.
6553         * solib-sunos.c: Adjust all references.
6554         * solib-svr4.c: Adjust all references.
6555         * solib-target.c: Adjust all references.
6556         * solib.c: Adjust all references.
6557         * solist.h: Adjust all references.
6558         * symfile.c: Adjust all references.
6559         * symfile.h: Adjust all references.
6560         * target.c: Adjust all references.
6561
6562 2009-05-22  Hui Zhu  <teawater@gmail.com>
6563
6564         Add sys_fcntl argument interfaces to linux_record_tdep.
6565
6566         * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
6567         fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
6568         interfaces.
6569         * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
6570         I386_LINUX_RECORD_FCNTL_F_GETLK64,
6571         I386_LINUX_RECORD_FCNTL_F_SETLK64,
6572         I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
6573         of I386 Linux sys_fcntl arguments.
6574         (i386_linux_init_abi): Set macros values to linux_record_tdep.
6575         * linux-record.c (record_linux_system_call): Change to use
6576         the interface in linux_record_tdep in sys_fcntl and
6577         sys_fcntl64.
6578
6579         * linux-record.c (record_linux_system_call): Fix the process
6580         record build error about type in CYGWIN.
6581
6582 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
6583
6584         * inflow.c (kill_command): Delete left over static declaration.
6585
6586 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
6587
6588         * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
6589         Include exec.h.
6590         (struct section_closure): Delete.
6591         (add_to_section_table): Delete.
6592         (build_target_sections_from_bfd): Delete.
6593         (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
6594         (target_bfd_reopen): Use build_section_table.
6595         * exec.c (xfer_memory): Move most code except for overlay
6596         debugging support from here...
6597         (section_table_xfer_memory): ... to this new function.
6598         (section_table_xfer_memory_partial): New.
6599         * exec.h (section_table_xfer_memory_partial): Declare.
6600         * bfd-target.h (build_target_sections_from_bfd): Delete
6601         declaration.
6602
6603 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
6604
6605         * remote.c (compare_sections_command): Don't declare exec_bfd.
6606         * tracepoint.c: Include "gdbcore.h".
6607         (remote_set_transparent_ranges): Don't declare exec_bfd.
6608
6609 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
6610
6611         * aix-thread.c (init_aix_thread_ops): Whitespace.
6612
6613 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
6614
6615         * dec-thread.c (dec_thread_wait): Add options parameter.  Use it
6616         to call the to_wait method in the target beneath.
6617         * remote-m32r-sdi.c (m32r_wait): Add options parameter.
6618
6619 2009-05-21  Joel Brobecker  <brobecker@adacore.com>
6620
6621         * aix-thread.c (aix_thread_wait): Add options parameter.  Use it
6622         to call the to_wait method in the target_beneath.
6623
6624 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
6625
6626         * linux-nat.c (linux_nat_terminal_inferior)
6627         (linux_nat_terminal_ours): Don't check sync_execution.
6628         * remote.c (remote_terminal_inferior, remote_terminal_ours):
6629         Don't check sync_execution.  Update comments.
6630         * target.c (target_terminal_inferior): New.
6631         * target.h (target_terminal_inferior): Delete macro, and declare
6632         as function.
6633         * event-top.c (async_disable_stdin): Make idempotent.  Don't give
6634         the target the terminal here.
6635         * inflow.c (terminal_ours_1): Don't return early without setting
6636         `terminal_is_ours'.
6637
6638 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
6639
6640         * target.h (TARGET_WNOHANG): New.
6641         * target.c (target_wait): Add `options' argument.  Adjust.
6642         (struct target_ops) <to_wait>: Add `options' argument.
6643         (target_wait): Add `options' argument.
6644         * infrun.c (wait_for_inferior): Pass 0 as options to
6645         target_wait (blocking wait).
6646         (fetch_inferior_event): Pass TARGET_WNOHANG as options to
6647         target_wait.
6648         * fork-child.c (startup_inferior): Pass 0 as options to
6649         target_wait (blocking wait).
6650         * linux-nat.c (linux_nat_create_inferior): Remove async masking.
6651         (linux_nat_wait_1): Add `target_options' argument.  Use it instead
6652         of checking on target_can_async_p.
6653         (linux_nat_wait): Add `target_options' argument.  Adjust.
6654         * remote.c (remote_wait_ns): Add `options' argument.  Adjust to
6655         check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
6656         (remote_wait_as): Add `options' argument.  Adjust to check on
6657         TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
6658         a blocking wait, keep waiting until an interesting event comes
6659         out.
6660         (remote_wait): Add `options' argument.  Don't loop here if the
6661         target is in async mode, and a blocking wait has been requested.
6662
6663         * top.c (deprecated_target_wait_hook): Add `options' argument.
6664         * linux-thread-db.c (thread_db_wait): Add `options' argument, and
6665         pass it down to the layer beneath.
6666         * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
6667         * record.c (record_beneath_to_wait): Add `options' argument.
6668         (record_wait): Add `options' argument, and pass it down to the
6669         layer beneath.
6670         * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
6671         * darwin-nat.c (darwin_wait): Likewise.
6672         * defs.h (deprecated_target_wait_hook): Likewise.
6673         * gnu-nat.c (gnu_wait): Add `options' argument.
6674         * go32-nat.c (go32_wait): Likewise.
6675         * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
6676         pass it down to the layer beneath.
6677         * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
6678         * monitor.c (monitor_wait): Likewise.
6679         * nto-procfs.c (procfs_wait): Likewise.
6680         * remote-mips.c (mips_wait): Add `options' argument.
6681         * remote-sim.c (gdbsim_wait): Likewise.
6682         * rs6000-nat.c (rs6000_wait): Add `options' argument.
6683         * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
6684         it down to the layer beneath.
6685         * spu-linux-nat.c (spu_child_wait): Add `options' argument.
6686         * windows-nat.c (windows_wait): Likewise.
6687         * tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
6688
6689 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
6690
6691         * mi/mi-interp.c (mi_on_resume): Account for whole process
6692         resumes.
6693
6694 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
6695
6696         * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
6697
6698 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
6699
6700         * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
6701
6702 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
6703
6704         Fix parsing DW_AT_const_value using DW_FORM_string.
6705         * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
6706
6707 2009-05-20  Joel Brobecker  <brobecker@adacore.com>
6708
6709         * aix-thread.c (giter_count): Do not count the main thread.
6710         (giter_accum): Do not include the main thread.
6711
6712 2009-05-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
6713
6714         Remove the PROT parameter from openp.
6715         * source.c (openp): Remove the parameter PROT.  Assertion check MODE.
6716         defs.h (openp): Update the prototype.
6717         Update all the openp callers.
6718
6719 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
6720
6721         * inflow.c (kill_command): Moved to infcmd.c.
6722         (_initialize_inflow): Don't add the "kill" command or clear
6723         inferior_ptid here.
6724         * infcmd.c (kill_command): Moved here from inflow.c.
6725         (_initialize_infcmd): Add the "kill" command here.
6726
6727 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
6728
6729         * fork-child.c: Don't include frame.h.  Include terminal.h.
6730         (fork_inferior): Call new_tty_postfork after forking adn adding
6731         the child to the inferior list.
6732         * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
6733         here.
6734         * inflow.c (struct terminal_info): Remove const qualifier from
6735         `run_terminal' field.
6736         (inferior_thisrun_terminal): Tweak comment.
6737         (inflow_inferior_exit): Release the `run_terminal' field.
6738         (copy_terminal_info): New function.
6739         (new_tty_postfork): New function.
6740         * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
6741         (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
6742         * inf-ptrace.c: Include terminal.h.
6743         (inf_ptrace_follow_fork): Copy the parent's terminal info to the
6744         child.
6745         * linux-nat.c: Include terminal.h.
6746         (linux_child_follow_fork): Copy the parent's terminal info to the
6747         child.
6748         * inf-ttrace.c: Include terminal.h.
6749         (inf_ttrace_follow_fork): Copy the parent's terminal info to the
6750         child.
6751
6752 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
6753
6754         * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
6755         (update_global_location_list): Use gdbarch_has_global_breakpoints
6756         instead of gdbarch_has_global_solist and
6757         target_supports_multi_process.
6758         * dicos-tdep.c (dicos_init_abi): Set
6759         gdbarch_has_global_breakpoints.
6760         * gdbarch.sh (has_global_solist): Update comment.
6761         (has_global_breakpoints): New.
6762         * remote.c (remote_start_remote): Use
6763         gdbarch_has_global_breakpoints instead of
6764         gdbarch_has_global_solist.
6765         * target.c (target_detach): Use gdbarch_has_global_breakpoints
6766         instead of gdbarch_has_global_solist.
6767         * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
6768         of target_supports_multi_process.
6769
6770 2009-05-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
6771
6772         * objc-lang.c (find_methods): Plug a small memory leak.
6773
6774 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
6775
6776         * solib-svr4.c: Include observer.h.
6777         (debug_base, debug_loader_offset_p, debug_loader_offset)
6778         (debug_loader_name, main_lm_addr): Move these globals...
6779         (struct svr4_info): ... into this new structure.
6780         (svr4_info_p): New typedef.
6781         (svr4_info): New global.
6782         (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
6783         functions.
6784         (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
6785         (solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
6786         per-inferior svr4.
6787         (open_symbol_file_object): Adjust to per-inferior svr4.
6788         (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
6789         Ditto.
6790         (enable_break): Add svr4_info argument.  Adjust to per-inferior
6791         svr4.
6792         (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
6793         Adjust to per-inferior svr4.
6794         (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
6795         observer.
6796
6797 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
6798
6799         * linux-nat.h (linux_proc_get_tgid): Declare.
6800         * linux-nat.c (linux_proc_get_tgid): New.
6801         * linux-thread-db.c (struct thread_db_info): New field
6802         `need_stale_parent_threads_check'.
6803         (add_thread_db_info): Set it.
6804         (find_new_threads_callback): Ignore stale fork parent threads.
6805         (thread_db_resume): New.
6806         (init_thread_db_ops): Install thread_db_resume.
6807
6808 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
6809
6810         * fork-child.c (fork_inferior): Only reset the thread list if this
6811         is the first inferior.
6812         (startup_inferior): If the target support multi-process, tell it
6813         to resume only the new process.
6814         * linux-nat.c (num_lwps): Delete global.
6815         (purge_lwp_list): New function.
6816         (num_lwps): New function.
6817         (add_lwp, delete_lwp): Adjust.
6818         (ptid_match): New.
6819         (iterate_over_lwps): Add filter argument.  Handle it.
6820         (linux_nat_attach): Remove FIXME note.
6821         (linux_nat_detach): Adjust to iterate over threads of the inferior
6822         we're detaching from.  Adjust to num_lwps being a function.  Don't
6823         assume the head of the lwp list is the main thread of the process
6824         we're detaching from.  Don't destroy the LWP list.
6825         (resume_callback): Add debug output.
6826         (linux_nat_resume): Handle resuming a single inferior.  Allow a
6827         wildcard resume in non-stop mode.
6828         (linux_handle_extended_wait): Don't assume inferior_ptid is the
6829         correct inferior of the parent LWP.
6830         (status_callback): Also check lp->waitstatus.
6831         (select_event_lwp): Add new filter parameter.  Handle it.
6832         (linux_nat_filter_event): Adjust to num_lwps being a function.
6833         (linux_nat_wait_1): When adding the first lwp of the inferior, use
6834         an is_lwp check instead of checking for the number of lwps.
6835         (linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
6836         pending process exit statuses.
6837         (linux_nat_mourn_inferior): Don't destroy all the LWP info.
6838         Instead delete LWPs of the inferior that we're mourning.  Don't
6839         unregister from the event loop here.
6840         (linux_nat_pid_to_str): Use `num_lwps'.
6841         (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
6842         single inferior.
6843         (linux_nat_is_async_p): Check if async was masked out.
6844         (linux_multi_process): New global.
6845         (linux_nat_supports_multi_process): New.
6846         (linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
6847         caller.
6848         (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
6849         LWP filtering.
6850         (linux_nat_close): New.
6851         (linux_nat_add_target): Register linux_nat_close and
6852         linux_nat_supports_multi_process.
6853         * linux-nat.h (iterate_over_lwps): Add filter argument.
6854         * linux-thread-db.c (thread_db_handle): Delete.
6855         (proc_handle, thread_agent, td_init_p, td_ta_new_p)
6856         (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
6857         (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
6858         (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
6859         (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
6860         longer globals, moved to...
6861         (struct thread_db_info): ... this new structure.
6862         (thread_db_list): New.
6863         (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
6864         New.
6865         (have_threads_callback): Filter out threads of all inferiors but
6866         the one specified by the ARGS argument.
6867         (have_threads): Add ptid argument specifying the inferior we're
6868         interested in.  Handle it.
6869         (struct thread_get_info_inout): New.
6870         (thread_get_info_callback, thread_from_lwp): Adjust to use it.
6871         (thread_db_attach_lwp): Check that inferior of the passed in
6872         thread is using thread-db.  Adjust.
6873         (enable_thread_event): Remove thread_agent parameter.  Instead,
6874         get it from the per-inferior thread-db info.
6875         (dladdr_to_soname): Move higher up.
6876         (enable_thread_event_reporting): Adjust to use per-inferior
6877         thread-db info.
6878         (try_thread_db_load_1): Replace `handle' parameter by a
6879         thread_db_info parameter.  Adjust to use per-inferior thread-db
6880         info.
6881         (try_thread_db_load): Adjust to use per-inferior thread-db info.
6882         (thread_db_load, disable_thread_event_reporting): Ditto.
6883         (check_for_thread_db): Remove conditional reporting of which
6884         libthread_db is in use.
6885         (thread_db_new_objfile): Add comment about inferior_ptid.
6886         (attach_thread): Adjust to use per-inferior thread-db info.
6887         (thread_db_detach): Adjust to use per-inferior thread-db info.
6888         Remove thread event breakpoints of the current inferior.  Only
6889         unpush the thread-db target if there are no more processes using
6890         it.
6891         (check_event): Adjust to use per-inferior thread-db info.
6892         (thread_db_wait): Adjust to use per-inferior thread-db info.  Only
6893         unpush the thread-db target if there are no more processes using
6894         it.
6895         (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
6896         info.  Mark breakpoints of the current inferior out before
6897         deleting them.  Only unpush the thread-db target if there are no
6898         more processes using it.
6899         (find_new_threads_callback): Adjust to use per-inferior thread_db
6900         info.
6901         (thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
6902         use per-inferior thread-db info.
6903         (thread_db_find_new_threads): Adjust to use per-inferior thread-db
6904         info.
6905         (thread_db_get_thread_local_address): Adjust.
6906         (thread_db_get_ada_task_ptid): Adjust.
6907         * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
6908         if there no more processes left to debug.
6909         * thread.c (set_running, set_executing): Handle resuming all
6910         threads of a single inferior.
6911         * mi/mi-interp.c (mi_output_running_pid): New.
6912         (mi_inferior_count): New.
6913         (mi_on_resume): For backwards compatibility, if resuming all
6914         threads of an inferior, and there is only one inferior, output
6915         "all".
6916
6917 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
6918
6919         * ada-lang.c (ada_find_any_type): Move check for primitive types ...
6920         (to_fixed_range_type): ... to here.
6921
6922 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
6923
6924         * ada-lang.c (desc_data_type): Remove, replace by ...
6925         (desc_data_target_type): ... this.
6926         (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
6927         (ada_is_array_descriptor_type): Likewise.
6928         (ada_type_of_array): Likewise.
6929         (ada_coerce_to_simple_array_type): Likewise.
6930         (ada_array_element_type): Likewise.
6931
6932 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
6933
6934         * ada-valprint.c (ada_val_print_1): Use val_print_string to print
6935         result of ada_vax_float_print_function inferior call.
6936
6937 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
6938
6939         * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
6940         avoid creating a dummy value.
6941
6942 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
6943
6944         * p-valprint.c (pascal_val_print): Use extract_typed_address
6945         to extract reference value.
6946
6947 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
6948
6949         * doublest.c (NAN): Remove unused define.
6950         (extract_floating_by_length, deprecated_extract_floating): Remove.
6951         (store_floating_by_length, deprecated_store_floating): Remove.
6952         (extract_typed_floating): Do not call extract_floating_by_length.
6953         (store_typed_floating): Do not call store_floating_by_length.
6954         (convert_typed_floating): Remove redundant assertions.
6955         * doublest.h (deprecated_extract_floating): Remove.
6956         (deprecated_store_floating): Remove.
6957         * sh64-tdep.c (sh64_register_convert_to_raw): Call
6958         extract_typed_floating instead of deprecated_extract_floating.
6959
6960 2009-05-18  Jon Beniston <jon@beniston.com>
6961         
6962         * MAINTAINERS: Add lm32 target.        
6963         * Makefile.in: Add lm32 dependencies.        
6964         * NEWS: Indicate lm32 is a new target.
6965         * configure.tgt: Add lm32 targets.
6966         * lm32-tdep.c: New file.
6967
6968 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
6969
6970         * corelow.c (core_open): Flush the register cache before doing
6971         anything with registers.
6972
6973 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
6974
6975         * inflow.h (our_process_group): Remove declaration.
6976         (inferior_process_group): Delete global variable declaration.
6977         (inferior_process_group): New function declaration.
6978         * inflow.c: Include observer.h.
6979         (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
6980         Delete.
6981         (struct terminal_info): New struct.
6982         (our_terminal_info): New global.
6983         (inferior_process_group): New function.
6984         (inferior_thisrun_terminal): Extend description comment.
6985         (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
6986         instead of globals.
6987         (terminal_init_inferior_with_pgrp): Adjust to per-inferior
6988         terminal settings.
6989         (terminal_inferior): Ditto.
6990         (terminal_ours_1): Ditto.
6991         (inflow_new_inferior, inflow_inferior_exit): New functions.
6992         (child_terminal_info): Adjust to per-inferior terminal settings.
6993         (osig_set): New global.
6994         (set_sigint_trap): Adjust to per-inferior terminal settings.  Set
6995         or clear `osig_set' accordingly.
6996         (clear_sigint_trap): Check `osig_set' to decide wheater to restore
6997         SIGINT handler, instead of checking the current inferior (which
6998         may be none).
6999         (_initialize_inflow): Attach inflow_new_inferior and
7000         inflow_inferior_exit to the "new_inferior" and "inferior_exit"
7001         notifications, respectively.
7002         * inferior.h (struct terminal_info): Forward declare.
7003         (struct inferior): Add `terminal_info' field.
7004         * inferior.c (delete_inferior_1): Notify the inferior_exit
7005         observers before removing the inferior from the lists and deleting
7006         it.
7007         * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
7008         a function instead of a variable.  Adjust.
7009         * procfs.c (procfs_stop): Ditto.
7010
7011 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
7012
7013         * infrun.c (handle_inferior_event): When handling a
7014         TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
7015         immediatelly.
7016         * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
7017         from the child if vforking.
7018         * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
7019         breakpoints from the child here.
7020
7021 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
7022
7023         * infrun.c (pending_follow): Remove execd_pathname member.
7024         (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
7025         (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
7026         event, don't copy `execd_pathname' to pending_follow, use the
7027         event copy instead.  Release `execd_pathname' once done with
7028         handling the event.
7029
7030         * infrun.c (pending_follow): Remove mention of exec events.
7031
7032 2009-05-17  Hui Zhu  <teawater@gmail.com>
7033
7034         * i386-tdep.c (i386_process_record): Make it extern.
7035         (i386_gdbarch_init): Don't call set_gdbarch_process_record
7036         here.
7037         * i386-tdep.h (i386_process_record): Declare.
7038         * i386-linux-tdep.c (i386_linux_init_abi): Call
7039         set_gdbarch_process_record.
7040
7041 2009-05-17  Vladimir Prus  <vladimir@codesourcery.com>
7042
7043         Always report varobj as changed when in_scope attribute changes.
7044
7045         * varobj.c (install_new_value): If non-NULL-ness of value
7046         changed, return 1.
7047
7048 2009-05-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
7049         
7050         * NEWS: Mention set/show libthread-db-search-path.
7051         * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
7052         (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
7053         * linux-thread-db.c (libthread_db_search_path): New setting.
7054         (thread_db_handle): New variable (replaces using_thread_db).
7055         (try_thread_db_load_1): New function.
7056         (try_thread_db_load, thread_db_load_search): Likewise.
7057         (dladdr_to_soname): Likewise.
7058         (thread_db_load): Iterate over possibly multiple libthread_db's.
7059         (check_for_thread_db): Attempt to load new libthread_db.
7060         (thread_db_detach, thread_db_wait): Unload libthread_db.
7061         (thread_db_mourn_inferior): Likewise.
7062         (_initialize_thread_db): Add new libthread-db-search-path option.
7063         Defer loading of libthread_db to check_for_thread_db.
7064         * solib.c (libpthread_name_p): New function.
7065         (libpthread_solib_p): Call it.
7066         * solib.h (libpthread_name_p): New prototype.
7067         
7068 2009-05-15  Pierre Muller  <muller@ics.u-strasbg.fr>
7069
7070         * MAINTAINERS: Update my email address.
7071         
7072 2009-05-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
7073
7074         * breakpoint.h: Add breakpoint_re_set_objfile prototype.
7075         * breakpoint.c (create_overlay_event_breakpoint): Renamed
7076         from create_overlay_event_breakpoint_1, old
7077         create_overlay_event_breakpoint deleted.
7078         (breakpoint_re_set_objfile): Don't rescan all objfiles
7079         unnecessarily.
7080         (breakpoint_re_set): New function.
7081         * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
7082         instead of breakpoint_re_set.
7083         * objfiles.c (objfile_relocate): Likewise.
7084         
7085 2009-05-14  Joel Brobecker  <brobecker@adacore.com>
7086
7087         * gdbarch.sh: Add comment documenting the target_gdbarch global.
7088         gdbarch.h does NOT need to be regenerated as the corresponding
7089         change has already been made in a previous commit.
7090
7091 2009-05-14  Pierre Muller  <muller@ics.u-strasbg.fr>
7092
7093         Remove all i386 debug register low level macros in config nm files.
7094         (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
7095         (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
7096         (I386_USE_GENERIC_WATCHPOIINTS): Remove.
7097
7098         * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
7099         (struct i386_dr_low_type): New type.
7100         (i386_dr_low): New global variable.
7101         * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
7102         (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
7103         i386_dr_low struct variable fields.
7104         (i386_remove_aligned_watchpoint): Likewise.
7105         (i386_stopped_data_address): Likewise.
7106         (i386_stopped_by_hwbp): Likewise.
7107         (show_debug_regs_command_added): New static variable.
7108         (add_show_debug_regs_command): New static function.
7109         (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
7110         (i386_set_debug_register_length): New function.
7111         (_initialize_i386_nat): Delete.
7112         
7113         * amd64-linux-nat.c: Include "i386-nat.h".
7114         (amd64_linux_dr_set_control):  Change to static.
7115         (amd64_linux_dr_get_status): Change to static.
7116         (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
7117         (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
7118         
7119         * go32-nat.c: Include "i386-nat.h".
7120         (go32_set_addr): Change to static.
7121         (go32_set_dr7): Change to static. Change arg type to unisgned long.
7122         (go32_get_dr6): Change to static. Change return type to unisnged long.
7123         (init_go32_ops):  Set i386_dr_low variable fields.
7124         * i386-linux-nat.c: Include "i386-nat.h".
7125         (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
7126         (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
7127         (_initialize_i386_linux_nat):  Set i386_dr_low variable fields.
7128         * i386bsd-nat.h: Declare functions used for
7129         i386_dr_low fields in i386fbsd-nat.c.
7130         * i386fbsd-nat.c: Include "i386-nat.h".
7131         (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
7132         * windows-nat.c: Include "i386-nat.h".
7133         (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
7134         Change to static.
7135         (cygwin_get_dr6): Change return type to unisnged long.
7136         (cygwin_set_dr7): Change arg type to unisgned long.
7137         (init_windows_ops): Set i386_dr_low function fields.
7138
7139         * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call 
7140         i386_set_debug_register_length.
7141         * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
7142
7143         * config/i386/nm-cygwin.h: Remove all I386_* macros.
7144         * config/i386/nm-cygwin64.h: Likewise.
7145         * config/i386/nm-fbsd.h: Likewise.
7146         * config/i386/nm-linux.h: Likewise.
7147         * config/i386/nm-i386.h: Remove completely.
7148         * config/i386/nm-go32.h: Remove completely.
7149         * config/i386/nm-linux64.h: Remove completely.
7150         * config/i386/go32.mh (NAT_FILE): Remove entry.
7151         * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
7152
7153 2009-05-14  Jon Beniston  <jon@beniston.com>
7154
7155         * MAINTAINERS: Add Jon Beniston to write after approval list.
7156
7157 2009-05-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
7158
7159         * objc-lang.c (objc_objfile_data): New variable.
7160         (find_methods): Skip objfiles without Obj-C methods.
7161         (_initialize_objc_lang): New function.
7162
7163 2009-05-13  Joel Brobecker  <brobecker@adacore.com>
7164
7165         * c-lang.c (print_wchar): Remove unnecessary cast.
7166
7167 2009-05-12  Jim Blandy  <jimb@red-bean.com>
7168
7169         * MAINTAINERS: Remove self as m32c target maintainer.
7170
7171 2009-05-12  Pedro Alves  <pedro@codesourcery.com>
7172
7173         * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
7174         * command.h (deprecated_add_set_cmd): Delete declaration.
7175         * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
7176         'set debug gnu-nat' and 'show debug gnu-nat'.
7177         * i386-nat.c (_initialize_i386_nat): Replace 'maint
7178         show-debug-registers' with 'maint set show-debug-registers' and
7179         'maint show show-debug-registers'.
7180         * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
7181         show-debug-registers' with 'maint set show-debug-registers' and
7182         'maint show show-debug-registers'.
7183
7184 2009-05-12  Joel Brobecker <brobecker@adacore.com>
7185
7186         * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
7187         pushing it on the output obstack.
7188
7189 2009-05-11  Joel Brobecker <brobecker@adacore.com>
7190
7191         Fix internal error on breaking at a multi-locations caller source line.
7192         * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
7193         command with no parameters.
7194
7195 2009-05-11  Pedro Alves  <pedro@codesourcery.com>
7196
7197         * linux-nat.c (enum sigchld_state): Delete.
7198         (linux_nat_async_events_state): Delete.
7199         (struct waitpid_result): Delete.
7200         (waitpid_queue): Delete.
7201         (queued_waitpid_1): Delete.
7202         (async_file_flush): New.
7203         (queued_waitpid, push_waitpid): Delete.
7204         (async_file_mark): New.
7205         (drain_queued_events): Delete.
7206         (my_waitpid): Remove locally queued events handling.
7207         (linux_test_for_tracefork): Upjust.
7208         (linux_child_follow_fork): Ditto.
7209         (sync_sigchld_action): Delete.
7210         (blocked_mask): Reinstate.
7211         (async_sigchld_action): Rename to...
7212         (sigchld_action): ... this.
7213         (block_child_signals): New.
7214         (restore_child_signals_mask): New.
7215         (lin_lwp_attach_lwp): Adjust.
7216         (linux_nat_create_inferior): Ditto.
7217         (linux_nat_attach): Also use lp->status in async mode.
7218         (get_pending_status): Don't use queued_waitpid.
7219         (linux_nat_detach): Don't drain locally queued events.
7220         (linux_nat_resume): Allow pending wait statuses stored lp->status
7221         in async mode.  If returning early due to a pending event,
7222         re-register the event source.
7223         (stop_wait_callback): Allow pending wait statuses stored
7224         lp->status in async mode.
7225         (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
7226         (linux_nat_wait): Rename to ...
7227         (linux_nat_wait_1): ... this.  Allow pending wait statuses stored
7228         lp->status in async mode.  Always add WNOHANG to the waitpid
7229         options in async mode.
7230         (linux_nat_wait): New.
7231         (kill_callback): Don't drain locally queued events.
7232         (sigchld_handler): Rewrite.
7233         (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
7234         refer to "set target-async".
7235         (linux_nat_async_mask): If in non-stop, and re-enabling async
7236         mode, re-register the target event source in the event loop.
7237         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
7238         (get_pending_events, async_sigchld_handler)
7239         (linux_nat_async_events): Delete.
7240         (handle_target_event): New.
7241         (linux_nat_async_file_handler): Delete.
7242         (linux_async_pipe): New.
7243         (linux_nat_async): Only re-register in the event loop if not
7244         registered yet.  Always notify the event-loop once if enabling the
7245         event source.
7246         (linux_nat_stop_lwp): Rewrite to handle pending events stored in
7247         lp->status, not in the locally queued event list.
7248         (linux_nat_stop): Don't mask out async event handling.
7249         (linux_nat_setup_async): Delete.
7250         (_initialize_linux_nat): Adjust.
7251         (lin_thread_get_thread_signals): blocked_mask is global again.
7252         Adjust.
7253
7254 2009-05-11  Pierre Muller  <muller@ics.u-strasbg.fr>
7255
7256         Unify target macros.
7257
7258         * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
7259         (target_stoppped_by_watchpoint): New macro.
7260         (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
7261         (target_have_steppable_watchpoint): New macro.
7262         (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
7263         (target_have_continuable_watchpoint): New macro.
7264         (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
7265         (target_can_use_hardware_watchpoint): New macro.
7266         (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
7267         (target_region_ok_for_hw_watchpoint): New macro.
7268
7269         * breakpoint.c (update_watchpoint): Use new macros.
7270         (bpstat_alloc): Likewise.
7271         (create_breakpoint): Likewise.
7272         (watch_command_1): Likewise.
7273         (can_use_hardware_watchpoint): Likewise.
7274         (do_enable_breakpoint): Likewise.
7275         * infrun.c (handle_inferior_event): Adapt to new macros.
7276         * mips-tdep.c (mips_gdbarch_init): Update comments.
7277         * procfs.c (procfs_set_watchpoint): Update comment.
7278         (procfs_insert_watchpoint): Adapt to new macros.
7279         * remote-m32r-sdi.c (m32r_stop):
7280         * remote-mips.c (mips_remove_breakpoint):
7281         * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
7282         (debug_to_stopped_by_watchpoint): Likewise.
7283
7284
7285 2009-05-10  Pierre Muller  <muller@ics.u-strasbg.fr>
7286
7287         * src/gdb/target.h: Remove all tests for already defined
7288         macros. All macros defined here should not be set in config
7289         headers anymore.
7290
7291 2009-05-08  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
7292
7293         * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
7294         (have_ptrace_getsetfpregs): Likewise.
7295         fetch_all_gp_regs): New function.
7296         (fetch_gp_regs): New function.
7297         (fetch_all_fp_regs): Likewise.
7298         (fetch_fp_regs): New function.
7299         (fetch_ppc_registers): Using the new methods to fetch general-
7300         purpose and floating-pointer registers.
7301         (store_all_gp_regs): New function.
7302         (store_gp_regs): Likewise.
7303         (store_all_fp_regs): New function.
7304         (store_fp_regs): Likewise.
7305         (store_ppc_registers): Using the new methods to store general-
7306         purpose and floating-pointer registers.
7307
7308 2009-05-08  Doug Evans  <dje@google.com>
7309
7310         * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
7311
7312 2009-05-07  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
7313
7314         * MAINTAINERS (Write After Approval): Add self.
7315
7316 2009-05-07  Joel Brobecker  <brobecker@adacore.com>
7317
7318         * gdbarch.h (target_gdbarch): Add comment documenting this global.
7319
7320 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
7321
7322         * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
7323         system iconv.
7324         * configure: Regenerate.
7325
7326 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
7327
7328         * utils.c: Add include of gdb_usleep.h.
7329         (defaulted_query): Detect false EOF conditions that happen
7330         on terminals opened with the O_NONBLOCK flag when there is
7331         nothing to read.
7332
7333 2009-05-06  Pedro Alves  <pedro@codesourcery.com>
7334
7335         * inferior.c (add_inferior): Move observer_notify_new_inferior
7336         call to ...
7337         (add_inferior_silent): ... here.
7338
7339 2009-05-06  Pierre Muller  <muller@ics.u-strasbg.fr>
7340             Pedro Alves  <pedro@codesourcery.com>
7341
7342         * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
7343         (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
7344         functions.
7345         (procfs_stopped_by_watchpoint): Made static, ptid argument
7346         removed.
7347         (_initialize_procfs): Register new watchpoint related target
7348         functions.
7349         * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
7350         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
7351         (HAVE_CONTINUABLE_WATCHPOINT): Delete.
7352         (target_insert_watchpoint, target_remove_watchpoint): Delete.
7353         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
7354         declarations.
7355         * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
7356         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
7357         (target_insert_watchpoint, target_remove_watchpoint): Delete.
7358         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
7359         declarations.
7360         * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
7361         (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
7362         (target_insert_watchpoint, target_remove_watchpoint): Delete.
7363         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
7364         declarations.
7365
7366 2009-05-06  Hui Zhu  <teawater@gmail.com>
7367
7368         * i386-tdep.c (i386_process_record): Change bzero to memset.
7369
7370 2009-05-06  Hui Zhu  <teawater@gmail.com>
7371
7372         * NEWS: Add item for process record and replay.
7373
7374 2009-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
7375
7376         * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
7377
7378 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
7379
7380         * inferior.h (read_pc, write_pc): Remove.
7381         * regcache.c (read_pc, write_pc): Remove.
7382
7383         * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
7384         of read_pc.
7385         (handle_inferior_event): Use regcache_read_pc instead of read_pc
7386         when determining value of stop_pc.  Replace subsequent uses of
7387         read_pc by inspecting already-retrieved stop_pc value.
7388         (keep_going): Use regcache_read_pc instead of read_pc.
7389
7390         * breakpoint.c (watchpoint_check): Use current frame architecture
7391         and PC instead of current_gdbarch and read_pc ().
7392         * tracepoint.c (set_traceframe_context): Replace PC argument
7393         with FRAME argument.
7394         (trace_start_command, finish_tfind_command): Update calls.
7395         (finish_tfind_command): Compare frame IDs to identify transitions
7396         between frames.
7397         (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
7398         * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
7399         of gdbarch.  Use regcache_read_pc and regcache_write_pc instead
7400         of read_pc and write_pc.
7401         (store_register): Make regcache argument non-const.  Update call
7402         to exec_one_dummy_insn.
7403
7404         * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
7405         * infcmd.c (post_create_inferior): Likewise.
7406         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
7407         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
7408         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
7409         * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
7410         * linux-fork.c (fork_load_infrun_state): Likewise.
7411         * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
7412         * record.c (record_wait): Likewise.
7413         * procfs.c (procfs_wait): Likewise.
7414         * remote-mips.c (common_open, mips_wait): Likewise.
7415         * remote-m32r-sdi.c (m32r_resume): Likewise.
7416
7417         * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
7418         * monitor.c (monitor_create_inferior, monitor_load): Likewise.
7419         * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
7420         * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
7421         * remote-mips.c (mips_create_inferior, mips_load): Likewise.
7422
7423         * solib-darwin.c: Include "regcache.h".
7424         * solib-pa64.c: Include "regcache.h".
7425         * solib-svr4.c: Include "regcache.h.".
7426
7427         * symfile.c: Do not mention read_pc or write_pc in comments.
7428         * dink32-rom.c: Likewise.
7429         * m32r-rom.c: Likewise.
7430         * mips-tdep.c: Likewise.
7431
7432 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
7433
7434         * fork-child.c (startup_inferior): Move setting stop_pc ...
7435         * infcmd.c (post_create_inferior): ... to here.
7436
7437 2009-05-04  Michael Snyder  <msnyder@vmware.com>
7438
7439         * NEWS: Add item for reverse debugging commands.
7440
7441 2009-05-04  Pedro Alves  <pedro@codesourcery.com>
7442
7443         * go32-nat.c (go32_stop): Delete.
7444         (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
7445         (go32_create_inferior): Don't call go32_stop or
7446         go32_kill_inferior.
7447         (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
7448         here.
7449         (init_go32_ops): Don't register go32_stop.
7450
7451 2009-05-02  Eli Zaretskii  <eliz@gnu.org>
7452
7453         * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
7454         sym_name.
7455
7456         * infcall.c (find_function_addr): Avoid compiler warnings for
7457         funaddr.
7458
7459 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
7460
7461         * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
7462         (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
7463
7464 2009-05-01  Doug Evans  <dje@google.com>
7465
7466         * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
7467         to thread_info.
7468
7469 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
7470
7471         * record.c (_initialize_record): Reformat and clarify doc strings
7472         for stop-at-limit and insn-number-max.
7473
7474         * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
7475
7476 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
7477
7478         Make specifiable the make_function_type type memory ownership.
7479         * gdbtypes.c (make_function_type): New parameter `objfile', use it
7480         explicitely instead of TYPE-initialized removed local variable
7481         `objfile'.  Describe `objfile' it in the function comment.
7482         (lookup_function_type): Update make_function_type callers.
7483         * gdbtypes.h (make_function_type): Update the prototype.
7484         * jv-lang.c (java_link_class_type): Update make_function_type callers.
7485         * dwarf2read.c (read_subroutine_type): Likewise.
7486         * stabsread.c (read_type): Likewise.
7487
7488 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
7489
7490         * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
7491         printing a bogus "Thread <main>".
7492         (go32_thread_alive): Don't return 1 for null_ptid.
7493
7494         * i386-tdep.c (i386_go32_init_abi): Override the number of
7495         registers due to non-support of SSE.
7496
7497 2009-04-30  Anthony Green  <green@moxielogic.com>
7498
7499         * configure.tgt: Link the moxie simulator in with gdb.
7500
7501 2009-04-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
7502
7503         * elfread.c (elf_symtab_read): Don't assume .data and .rodata
7504         are present.
7505
7506 2009-04-30  Hui Zhu  <teawater@gmail.com>
7507             Michael Snyder  <msnyder@vmware.com>
7508
7509         I386 Linux process record and replay support.
7510
7511         * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
7512         This struct has the argument for the function
7513         "record_linux_system_call".
7514         (i386_linux_intx80_sysenter_record): New function. Parse the
7515         system call instruction and call function
7516         "record_linux_system_call" to record execute log.
7517         (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
7518         Set "i386_linux_intx80_sysenter_record" to
7519         "i386_intx80_record" and "i386_sysenter_record".
7520
7521 2009-04-30  Hui Zhu  <teawater@gmail.com>
7522             Michael Snyder  <msnyder@vmware.com>
7523
7524         I386 architecture process record and replay support.
7525
7526         * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
7527         PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
7528         instruction set.
7529         (aflag, dflag, override, modrm, mod, reg, rm, ot,
7530         i386_record_pc): New variables. Ditto.
7531         (i386_record_modrm, i386_record_lea_modrm_addr,
7532         i386_record_lea_modrm): New functions. Ditto.
7533         (i386_process_record): New function. Parse the instruction in
7534         address "addr" and record the values of registers and memory
7535         that will be changed by this instruction.
7536         (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
7537         "process_record" interface.
7538         * i386-tdep.h (gdbarch_tdep): New function pointers
7539         "i386_intx80_record" and "i386_sysenter_record" that point to
7540         the function that can record "intx80" and "sysenter" execute
7541         log.
7542
7543 2009-04-30  Hui Zhu  <teawater@gmail.com>
7544             Michael Snyder  <msnyder@vmware.com>
7545
7546         * infrun.c (use_displaced_stepping): Return false if process
7547         record and replay target is used.
7548         (proceed): Call function "record_not_record_set" if pocess
7549         record and replay target is used.
7550
7551 2009-04-30  Hui Zhu  <teawater@gmail.com>
7552             Michael Snyder  <msnyder@vmware.com>
7553
7554         Linux process record and replay support.
7555
7556         * Makefile.in (ALLDEPFILES): Add linux-record.c.
7557         (ALL_TARGET_OBS): Add linux-record.o.
7558         * configure.tgt (x86_64-*-linux*): Add linux-record.o.
7559         (i[34567]86-*-linux*): Add linux-record.o.
7560         * linux-record.c, linux-record.h: New file.
7561
7562 2009-04-30  Hui Zhu  <teawater@gmail.com>
7563             Michael Snyder  <msnyder@vmware.com>
7564
7565         Process record and replay target.
7566
7567         * Makefile.in (SFILES): Add record.c.
7568         (COMMON_OBS): Add record.o.
7569         * record.c, record.h: New file.
7570
7571 2009-04-30  Hui Zhu  <teawater@gmail.com>
7572             Michael Snyder  <msnyder@vmware.com>
7573
7574         * target.h (strata): New stratum "record_stratum".
7575
7576 2009-04-30  Hui Zhu  <teawater@gmail.com>
7577             Michael Snyder  <msnyder@vmware.com>
7578
7579         GDBARCH interface for process record and replay.
7580
7581         * gdbarch.sh (process_record): This interface point to the
7582         function that records the inferior execute log.
7583
7584 2009-04-29  Doug Evans  <dje@google.com>
7585
7586         * i386-nat.c (child_post_startup_inferior): Delete, unused.
7587
7588 2009-04-29  Pedro Alves  <pedro@codesourcery.com>
7589
7590         * breakpoint.c (print_exception_catchpoint): Access `b' directly
7591         instead of `b->loc->owner'.
7592         (print_mention_exception_catchpoint): Ditto.
7593
7594 2009-04-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
7595
7596         * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
7597
7598 2009-04-27  Tom Tromey  <tromey@redhat.com>
7599
7600         * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
7601
7602 2009-04-27  Jerome Guitton  <guitton@adacore.com>
7603
7604         * symtab.c (append_exact_match_to_sals): New function, extracted
7605         from expand_line_sal.
7606         (expand_line_sal): Use append_exact_match_to_sals to append exact
7607         matches. If none found, append all best items.
7608
7609 2009-04-27  Jerome Guitton  <guitton@adacore.com>
7610
7611         * main.c (captured_main): Move gdbinit lookups after gdb_init.
7612
7613 2009-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
7614
7615         PR gdb/9675:
7616         * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
7617         (read_func_scope): Call inherit_abstract_dies.
7618
7619 2009-04-25  Eli Zaretskii  <eliz@gnu.org>
7620
7621         * Makefile.in (ALLDEPFILES): Remove duplicate entries for
7622         sparc-sol2-nat.c and sparc-sol2-tdep.c.
7623
7624         * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
7625
7626 2009-04-24  Pierre Muller  <muller@ics.u-strasbg.fr>
7627
7628         ARI change: Use "/* ARI: rule */" pattern.
7629         * utils.c: Update ARI patterns.
7630         * gdb_dirent.h: Likewise.
7631
7632 2009-04-23  Anthony Green  <green@moxielogic.com>
7633
7634         * MAINTAINERS: Add moxie target.
7635         * configure.tgt: Add moxie-*-elf target.
7636         * moxie-tdep.c: New file.
7637         * moxie-tdep.h: New file.
7638
7639 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
7640
7641         * ada-lang.c: Remove an extra empty line. No code change.
7642
7643 2009-04-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
7644
7645         Fix double free on error inserting the breakpoint instruction.
7646         * breakpoint.c (create_breakpoints): Move the
7647         update_global_location_list call to ...
7648         (break_command_really): ... here together with the second local call
7649         both unified after all the cleanups.
7650
7651 2009-04-23  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
7652             Tom Tromey  <tromey@redhat.com>
7653
7654         * configure, config.in: Regenerate.
7655         * configure.ac: Support for relocatable GDB datadir.  Use
7656         GDB_AC_WITH_DIR.  Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
7657         * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
7658         * top.c (init_main): Add "set data-directory".
7659         * defs.h (gdb_datadir): Declare.
7660         * main.c (gdb_datadir): New global.
7661         (captured_main): Initialize gdb_datadir.  Use relocate_directory.
7662         (relocate_path): New function.
7663         (relocate_directory): Likewise.
7664         (get_init_files): Use relocate_path.
7665         (README): Mention --with-gdb-datadir.
7666
7667 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
7668
7669         * ada-tasks (task_command_1): Call target_find_new_threads.
7670
7671 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
7672
7673         * stack.c (do_gdb_disassembly): Print the exception message if an
7674         error was thrown while trying to perform the disassembly.
7675
7676 2009-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
7677
7678         * varobj.c (free_variable): Replace free_current_contents by xfree.
7679
7680 2009-04-22  Kazu Hirata  <kazu@codesourcery.com>
7681
7682         * arm-linux-nat.c (fetch_register, store_register): Use
7683         ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
7684         * arm-linux-tdep.c (arm_linux_supply_gregset,
7685         arm_linux_collect_gregset): Likewise.
7686         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
7687         * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
7688
7689 2009-04-22  Hui Zhu  <teawater@gmail.com>
7690
7691         * stack.c (_initialize_stack): Set the default of
7692         disassemble-next-line to off.
7693
7694 2009-04-21  Tom Tromey  <tromey@redhat.com>
7695
7696         * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
7697         * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
7698
7699 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
7700
7701         * configure.ac: Add quotes to not lose brackets in help text.
7702         * configure: Rebuild.
7703
7704 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
7705
7706         * configure.ac: Don't postprocess Makefile in config.status.
7707         Substitute GDB_NM_FILE.  Don't substitute nm_h.
7708         * Makefile.in (GDB_NM_FILE): Substitute.
7709         (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
7710         * configure: Regenerate.
7711         * gnulib/Makefile.in: Regenerate.
7712
7713 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
7714
7715         * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
7716         --with-htmldir): New.
7717         * configure: Regenerate.
7718
7719 2009-04-21  Tom Tromey  <tromey@redhat.com>
7720
7721         * configure: Rebuild.
7722         * configure.ac: Use lower case for start of help strings.  Clean
7723         up --with-sysroot help.
7724
7725 2009-04-21  Tom Tromey  <tromey@redhat.com>
7726
7727         * configure: Rebuild.
7728         * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
7729         * configure.ac: Use AC_HELP_STRING.  Use upper case for variables
7730         in help.
7731
7732 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
7733
7734         ARI fix: remove "%p".
7735         * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
7736         (ia64_sigtramp_frame_this_id): Ditto.
7737         (ia64_libunwind_frame_this_id): Ditto.
7738         (ia64_libunwind_sigtramp_frame_this_id): Ditto.
7739         * symmisc.c (maintenance_info_psymtabs): Ditto.
7740
7741 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
7742
7743         * configure.ac (--with-relocated-sources): New.
7744         * configure, config.in: Regenerate.
7745         * source.c (add_substitute_path_rule): Remove static.
7746         * source.h (add_substitute_path_rule): Declare.
7747         * main.c: Include "source.h".
7748         (captured_main): Add substitution rule if RELOC_SRCDIR.
7749
7750 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
7751
7752         * gnu-nat.h (proc_debug): Add missing continuation line in macro.
7753
7754 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
7755
7756         * NEWS: Mention MIPS/Linux hardware watchpoint support.
7757
7758 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
7759
7760         * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
7761         (maint_show_dr, super_close): New variables.
7762         (super_fetch_registers, super_store_registers): Make static.
7763         (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
7764         (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
7765         (pt_watch_style): Define new enum.
7766         (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
7767         Define new structs.
7768         (watch_readback_valid, watch_readback, current_watches, watch_mirror):
7769         New variables.
7770         (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
7771         (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
7772         (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
7773         (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
7774         (type_to_irw, fill_mask, try_one_watch)
7775         (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
7776         (mips_linux_new_thread, populate_regs_from_watches)
7777         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7778         (mips_linux_close): New functions.
7779         (_initialize_mips_linux_nat): Register watchpoint functions with
7780         the target_ops.  Add show-debug-regs maintenance command.
7781
7782 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
7783
7784         * infrun.c (handle_inferior_event): Move gegisters_changed call down.
7785
7786 2009-04-19  Pedro Alves  <pedro@codesourcery.com>
7787
7788         * NEWS: Mention gdbserver support for x86 Windows CE.
7789
7790 2009-04-19  Eli Zaretskii  <eliz@gnu.org>
7791
7792         * config/djgpp/fnchange.lst: Fix typos.
7793
7794         Set default host and target charsets in the DJGPP port.
7795
7796         * config/djgpp/config.sed (am_cv_langinfo_codeset)
7797         (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
7798         in all configure scripts that define ac_cv_env_CPP_value.
7799
7800         * go32-nat.c (dos_codepage, nl_langinfo): New functions.
7801         Include langinfo.h.
7802
7803         * config/djgpp/nl_types.h: New file.
7804
7805         * config/djgpp/langinfo.h: New file.
7806
7807         * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
7808
7809 2009-04-18  Carlos O'Donell  <carlos@codesourcery.com>
7810
7811         * Makefile.in (MAKEHTML): Set to makeinfo --html.
7812         (MAKEHTMLFLAGS): Set to empty.
7813
7814 2009-04-18  Eli Zaretskii  <eliz@gnu.org>
7815
7816         * NEWS: Mention all new set/show commands added since GDB 6.8 was
7817         released.
7818
7819         * go32-nat.c (go32_sysinfo): Check if the call to
7820         __dpmi_get_capabilities fills the buffer with information, and
7821         don't use the buffer if not.
7822
7823 2009-04-17  Tom Tromey  <tromey@redhat.com>
7824
7825         * charset.c (_initialize_charset): Add special case for "646".
7826
7827 2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>
7828
7829         * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
7830         * configure: Regenerate.
7831         * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
7832         configure substitutions.
7833         (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
7834
7835 2009-04-17  Pierre Muller  <muller@ics.u-strasbg.fr>
7836
7837         ARI fix: Do not use %p, replace by call to host_address_to_string
7838         for host pointers.
7839         * darwin-nat.c (darwin_xfer_partial): Apply change.
7840         * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
7841         * gnu-nat.h (proc_debug): Ditto.
7842         * symmisc.c (maintenance_info_symtabs): Ditto.
7843         (maintenance_info_psymtabs): Ditto.
7844         * windows-nat.c (handle_load_dll): Ditto.
7845         (handle_unload_dll, info_w32_command, handle_exception): Ditto.
7846         * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
7847
7848 2009-04-17  Joseph Myers  <joseph@codesourcery.com>
7849
7850         * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
7851         --enable-64-bit-bfd.
7852         (sparc-*-linux*): Likewise.
7853
7854 2009-04-17  Eli Zaretskii  <eliz@gnu.org>
7855
7856         * go32-nat.c (go32_sysinfo): Update list of Windows versions of
7857         the NT family.
7858
7859 2009-04-16  Pedro Alves  <pedro@codesourcery.com>
7860
7861         * remote.c (remote_query_attached): Fix pasto in packet_ok result
7862         checking.
7863
7864 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
7865
7866         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
7867         Revert the previous change.  Might not be correct, actually.
7868
7869 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
7870
7871         * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
7872         (ada_get_current_task, ada_print_exception_breakpoint_nontask)
7873         (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
7874         Remove declaration. These are non-existent functions.
7875
7876 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
7877
7878         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
7879         Fix a compilation warning on mips-irix due to casting from
7880         a pointer of different size.
7881
7882 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
7883
7884         * ada-lang.c (symtab_for_sym): Delete.
7885         (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
7886
7887 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
7888
7889         * ada-lang.c (extract_string): Delete.
7890         (ada_main_name): Reimplement using target_read_string instead of
7891         extract_string.
7892
7893 2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
7894
7895         * m68klinux-nat.c: Remove obsolete comment.
7896         (fetch_register, store_register): Don't call
7897         gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
7898         which are always nops here.
7899
7900 2009-04-14  Tom Tromey  <tromey@redhat.com>
7901
7902         * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
7903         (c_printstr): Likewise.
7904         * charset.c: Include gdb_wait.h.
7905         (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
7906         (find_charset_names): Use pexecute.  Handle libiconv's output.
7907         Detect errors.
7908         (_initialize_charset): Use xstrdup.
7909         * gdb_wchar.h: Check HAVE_BTOWC.  Split PHONY_ICONV and wchar
7910         cases.
7911         (INTERMEDIATE_ENCODING): New define.
7912         * configure, config.in: Rebuild.
7913         * configure.ac: Check for btowc.
7914
7915 2009-04-15  Tom Tromey  <tromey@redhat.com>
7916
7917         * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
7918
7919 2009-04-15  Eli Zaretskii  <eliz@gnu.org>
7920
7921         * utils.c (parse_escape): Initialize target_char to pacify GCC.
7922
7923 2009-04-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
7924
7925         * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
7926
7927 2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
7928
7929         ARI fix: sprintf rule.
7930         * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
7931         * ada-lang.c (add_angle_brackets): Use xstrprintf.
7932         (ada_decode): Replace sprintf by xsnprintf.
7933         (find_old_style_renaming_symbol): Ditto.
7934         (ada_to_fixed_type_1, ada_enum_name): Ditto.
7935
7936
7937 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
7938
7939         * target.c (target_mourn_inferior): Call bfd_cache_close_all
7940         after having executed the target mourn_inferior routine.
7941
7942 2009-04-14  Eli Zaretskii  <eliz@gnu.org>
7943
7944         * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
7945         undefined.
7946
7947 2009-04-13  David Daney  <ddaney@caviumnetworks.com>
7948
7949         * infrun.c (maybe_software_singlestep): New function.
7950         (resume): Call maybe_software_singlestep.
7951         (handle_inferior_event): Same.
7952
7953 2009-04-13  Tom Tromey  <tromey@redhat.com>
7954
7955         * python/python-frame.c (frapy_richcompare): Return
7956         Py_NotImplemented, not an error.  Handle Py_NE as well.
7957
7958 2009-04-13  Eli Zaretskii  <eliz@gnu.org>
7959
7960         * charset.c (EILSEQ): Define if not defined by system headers.
7961
7962 2009-04-11  Eli Zaretskii  <eliz@gnu.org>
7963
7964         * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
7965         to be consistent with renaming config.intl.in into config_intl.in.
7966
7967         * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
7968         consistent with the change from 2008-11-09.
7969
7970 2009-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
7971
7972         * gdbtypes.c: Remove excessive parentheses at the return keywords.
7973         * varobj.c (varobj_invalidate): Fix indentation.
7974         * varobj.c (varobj_invalidate): Fix formatting text width.
7975
7976 2009-04-08  Vladimir Prus  <vladimir@codesourcery.com>
7977
7978         Implement -exec-jump.
7979
7980         * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
7981         * mi/mi-main.c (mi_cmd_exec_jump): New.
7982         * mi/mi-cmds.c (mi_cmds): Register exec-jump.
7983
7984 2009-04-07  Doug Evans  <dje@google.com>
7985
7986         * symfile.c (symbol_file_clear): Fix indentation.
7987
7988 2009-04-06  Mark Kettenis  <kettenis@gnu.org>
7989
7990         * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
7991
7992 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
7993
7994         * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
7995         (ppc_linux_auxv_parse): New function.
7996         (ppc_linux_read_description): Use ppc_linux_target_wordsize.
7997         (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
7998
7999 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
8000
8001         * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
8002         BFD to contents of SPU name note.
8003         (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
8004         with "from_tty" argument 1 instead of 0.
8005
8006 2009-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
8007
8008         * dwarf2read.c
8009         (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
8010         Create the symbol in local scope.
8011         * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
8012
8013 2009-04-02  Keith Seitz  <keiths@redhat.com>
8014
8015         * stabsread.c (read_member_functions): GCC may emit an extra space
8016         at the end of the names "__base_ctor" and "__base_dtor"; so ignore
8017         whitespace when looking for these functions.
8018
8019 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
8020
8021         Change the default value for "set print frame-arguments" to scalars.
8022
8023         * stack.c (print_frame_arguments): Set initial value to "scalars".
8024
8025 2009-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
8026
8027         * mips-tdep.c (mips_numeric_register_alieses): New definition.
8028         (mips_gdbarch_init): Add user registers from
8029         mips_numeric_register_aliases.
8030
8031 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
8032
8033         * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
8034
8035 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
8036
8037         * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
8038         this is the last one.
8039
8040 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
8041
8042         * remote.c (append_resumption): New.
8043         (remote_vcont_resume): Use it.
8044
8045 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
8046
8047         * windows-nat.c (+windows_get_ada_task_ptid): New function.
8048         (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
8049
8050 2009-03-31  Daniel Jacobowitz  <dan@codesourcery.com>
8051             Keith Seitz  <keiths@redhat.com>
8052             Jan Kratochvil  <jan.kratochvil@redhat.com>
8053
8054         PR gdb/6817
8055         * Makefile.in (dbxread.o): Update.
8056         * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
8057         * dwarf2read.c (GDB_FORM_cached_string): New.
8058         (read_partial_die): Use dwarf2_canonicalize_name.
8059         (dwarf2_linkage_name): Use dwarf2_name.
8060         (dwarf2_canonicalize_name): New.
8061         (dwarf2_name): Use dwarf2_canonicalize_name.
8062         (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
8063         * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
8064         * symtab.c (lookup_symbol_in_language): Canonicalize input before
8065         searching.
8066         * cp-name-parser.y: operator() requires two parameters,
8067         according to libiberty.
8068         * minsyms.c (lookup_minimal_symbol): Canonicalize input
8069         before searching.
8070         * NEWS: Update.
8071
8072 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
8073
8074         Provide support for (Ada) task-specific breakpoints.
8075
8076         * ada-lang.h (ada_get_task_number): Add declaration.
8077         (breakpoint_ada_task_match): Delete declaration.
8078         * ada-tasks.c (ada_get_task_number): Make non-static.
8079         * breakpoint.h (struct breakpoint): Add field "task".
8080         * breakpoint.c (print_one_breakpoint_location): Add handling of
8081         task-specific breakpoints.
8082         (create_breakpoint, create_breakpoints, find_condition_and_thread):
8083         New parameter "task".
8084         (break_command_really): Update calls to find_condition_and_thread
8085         and create_breakpoints.
8086         (breakpoint_re_set_one): Update call to find_condition_and_thread.
8087         Set b->task.
8088
8089 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
8090
8091         * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
8092
8093 2009-03-31  Pedro Alves  <pedro@codesourcery.com>
8094
8095         * remote.c (remote_notice_new_inferior): Use ptid_is_pid.  Check
8096         if the thread's ptid without a thread id field is in the list
8097         before calling thread_change_ptid.
8098         (extended_remote_attach_1): In non-stop mode, do not rely on
8099         querying the current thread, instead, query the thread list, and
8100         select the first thread of the process.
8101         * gdbthread.h (first_thread_of_process): Declare.
8102         * thread.c (first_thread_of_process): Define.
8103
8104 2009-03-30  Stan Shebs  <stan@codesourcery.com>
8105
8106         Make tracepoints into a type of breakpoint.
8107         * breakpoint.h (enum bptype): Add bp_tracepoint.
8108         (struct breakpoint): Add fields step_count, pass_count, actions.
8109         (get_tracepoint, get_tracepoint_by_number): Declare.
8110         (all_tracepoints): Declare.
8111         * breakpoint.c: Include tracepoint.h, readline.h.
8112         (ALL_TRACEPOINTS): Move here from tracepoint.c.
8113         (tracepoint_count): Ditto.
8114         (should_be_inserted): GDB does not insert tracepoints itself.
8115         (print_it_typical): Add tracepoint case.
8116         (bpstat_what): Ditto.
8117         (print_one_breakpoint_location): Ditto, and add printing for
8118         pass count, step count, and action list.
8119         (user_settable_breakpoint): Add tracepoint case.
8120         (allocate_bp_location): Ditto.
8121         (set_breakpoint_location_function): Ditto.
8122         (disable_breakpoints_in_shlibs): Ditto.
8123         (mention): Ditto.
8124         (break_command_really): Add argument traceflag, use to choose
8125         basic breakpoint type.
8126         (break_command_1): Pass extra argument.
8127         (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
8128         (breakpoint_re_set_one): Add tracepoint case.
8129         (disable_command, enable_command): Ditto.
8130         (set_tracepoint_count): Move here from tracepoint.c.
8131         (trace_command): Move here from tracepoint.c and use
8132         break_command_really.
8133         (tracepoints_info): Move here from tracepoint.c and call
8134         breakpoints_info.
8135         (enable_trace_command): Move here from tracepoint.c and call
8136         enable_command.
8137         (disable_trace_command): Move here from tracepoint.c and call
8138         disable_command.
8139         (delete_trace_command): Move here from tracepoint.c and call
8140         delete_breakpoint.
8141         (trace_pass_command): Move here from tracepoint.c.
8142         (get_tracepoint_by_number): Ditto.
8143         (tracepoint_save_command): Ditto.
8144         (get_tracepoint): New function.
8145         (all_tracepoints): New function.
8146         (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
8147         deprecate "enable trace" and "disable trace" commands.
8148         * tracepoint.h (struct tracepoint): Remove.
8149         (tracepoint_chain): Remove decl.
8150         (deprecated_create_tracepoint_hook): Remove decl.
8151         (deprecated_delete_tracepoint_hook): Remove decl.
8152         (deprecated_modify_tracepoint_hook): Remove decl.
8153         (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
8154         (free_actions): Update signature.
8155         (validate_actionline): Update signature.
8156         (end_actions_pseudocommand): Declare.
8157         (while_stepping_pseudocommand): Declare.
8158         * tracepoint.c: Include breakpoint.h.
8159         (tracepoint_chain, tracepoint_count): Remove.
8160         (free_actions, make_cleanup_free_actions): Update signature.
8161         (trace_command, set_raw_tracepoint): Remove.
8162         (trace_mention): Remove.
8163         (tracepoints_info): Remove.
8164         (tracepoint_operation, map_args_over_tracepoints): Remove.
8165         (get_tracepoint_by_number): Remove.
8166         (enable_trace_command, disable_trace_command): Remove.
8167         (delete_trace_command, trace_pass_command): Remove.
8168         (trace_actions_command, read_actions): Update signature.
8169         (validate_actionline): Update signature, use bp loc.
8170         (encode_actions): Ditto.
8171         (download_tracepoint): New function, body of trace_start_command.
8172         (trace_start_command): Call it, use all_tracepoints.
8173         (tracepoint_save_command): Remove.
8174         (tracepoint_dump_command): Use get_tracepoint.
8175         (end_actions_pseudocommand): Make globally visible.
8176         (while_stepping_pseudocommand): Ditto.
8177         (_initialize_tracepoint): Move command definitions to breakpoint.c.
8178
8179 2009-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8180
8181         Expose frames to Python.
8182         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
8183         (SUBDIR_PYTHON_SRCS): Add python-frame.c.
8184         (python-frame.o): New target.
8185         * python/python-frame.c: New file.
8186         * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
8187         gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
8188         gdbpy_initialize_frames): New prototypes.
8189         * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
8190         (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
8191         entries.
8192         * stack.c (find_frame_funname): New function, factored out of
8193         print_frame.
8194         (print_frame): Call find_frame_funname.
8195         * stack.h (find_frame_funname): Add prototype.
8196
8197 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8198
8199         Remove unused value_object attribute `owned_by_gdb'.
8200         * python/python-value.c (value_object): Remove owned_by_gdb
8201         attribute.
8202         (valpy_dealloc): Remove reference to self->owned_by_gdb.
8203         (valpy_new): Likewise.
8204         (value_to_value_object): Likewise.
8205
8206 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8207
8208         Change gdb.Value.address from a method to an attribute.
8209         * python/python-value.c (value_object): Add `address' element.
8210         (valpy_dealloc): Decrement reference to self->address if set.
8211         (valpy_new): Initialize val_obj->address.
8212         (valpy_address): Rename to ...
8213         (valpy_get_address): ... this.  Change signature from method to
8214         attribute.  Update self->address if not set.
8215         (value_to_value_object): Initialize val_obj->address.
8216         (value_object_getset): Add `address' element.
8217         (value_object_methods): Remove `address' element.
8218
8219 2009-03-29  Andreas Schwab  <schwab@linux-m68k.org>
8220
8221         * observer.sh: Set LANG/LC_ALL to C, not c.
8222
8223 2009-03-28  Kevin Buettner  <kevinb@redhat.com>
8224
8225         * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
8226         `char' is unsigned.
8227
8228 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
8229
8230         * remote.c (remote_stop_ns): If multi-process extensions are off,
8231         and GDB is requesting the whole process to stop, sent "vCont;t",
8232         not "vCont;t:-1"
8233
8234 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
8235
8236         * inf-loop.c (inferior_event_handler): Avoid calling is_running on
8237         null inferior_ptid.
8238
8239 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
8240
8241         * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
8242
8243 2009-03-26  Doug Evans  <dje@google.com>
8244
8245         * thread.c (do_restore_current_thread_cleanup): Redo test for
8246         whether to restore old->inferior_ptid.
8247
8248 2009-03-26  Tom Tromey  <tromey@redhat.com>
8249
8250         * breakpoint.c (resolve_sal_pc): Preserve original line number
8251         when skipping prologue.
8252
8253 2009-03-26  Doug Evans  <dje@google.com>
8254
8255         * thread.c (inferior_thread) Remove "extern" in definition.
8256
8257 2009-03-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8258
8259         Add gdb.Value.is_optimized_out attribute.
8260         * python/python-value.c (valpy_get_is_optimized_out): New
8261         function.
8262         (value_object_getset): New variable.
8263         (value_object_type): Initialize tp_getset element.
8264
8265 2009-03-26  Joel Brobecker  <brobecker@adacore.com>
8266
8267         Recognize missing DW_AT_location as <value optimized out>.
8268         * dwarf2read.c
8269         (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
8270         Call add_symbol_to_list.
8271
8272 2009-03-25  Tom Tromey  <tromey@redhat.com>
8273
8274         * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
8275         * stack.c (print_this_frame_argument_p): Use check_typedef.
8276
8277 2009-03-25  Tom Tromey  <tromey@redhat.com>
8278
8279         * configure: Rebuild.
8280         * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
8281         Rearrange flags setting.  Add comments.
8282
8283 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
8284
8285         * config/i386/nm-i386.h: Remove code within
8286         I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
8287         * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
8288         macro.
8289         * config/i386/nm-cygwin64.h: Ditto.
8290         * config/i386/nm-fbsd.h: Ditto.
8291         * config/i386/nm-go32.h: Ditto.
8292         * config/i386/nm-linux.h: Ditto.
8293         * config/i386/nm-linux64.h: Ditto.
8294
8295 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
8296
8297         ARI fix: "xasprintf" rule.
8298         * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
8299
8300 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
8301
8302         * remote.c (remote_start_remote): In non-stop mode, call
8303         init_wait_for_inferior before adding threads and inferiors.
8304
8305 2009-03-25  Joel Brobecker  <brobecker@adacore.com>
8306
8307         * breakpoint.c (breakpoint_thread_match): Split a large condition
8308         into several smaller conditions.  No behavior change.
8309
8310 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
8311
8312         * infrun.c (infrun_thread_thread_exit): New.
8313         (_initialize_infrun): Attach it to the thread_exit observer.
8314         * thread.c (delete_thread_1): Always call the observer, passing it
8315         the silent flag.
8316         * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
8317         SILENT, return immediately.
8318
8319 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
8320
8321         * infrun.c (normal_stop): Use has_stack_frames instead of
8322         target_has_stack.
8323         * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
8324         when there is no thread selected.
8325         (mi_cmd_execute): Don't special case commands that can run without
8326         a valid selected thread.
8327         * top.c (execute_command): Don't special case commands that can
8328         run without a valid selected thread.  Use has_stack_frames.
8329         * infcmd.c (ensure_valid_thread): New.
8330         (continue_1, step_1, jump_command, signal_command): Use it.
8331         (detach_command): Error out if there's no selected thread/inferior.
8332         * thread.c (print_thread_info): Allow having no thread selected.
8333         (switch_to_thread): Don't read the PC if there is no current thread.
8334         (do_restore_current_thread_cleanup): Don't record the current
8335         frame if there is no current thread.
8336         (make_cleanup_restore_current_thread): Don't read frame info if
8337         there is no selected thread.
8338         (_initialize_thread): Don't mark commands as
8339         "no_selected_thread_ok".
8340         * frame.c (get_current_frame): Error out if there is no valid
8341         selected thread.
8342         (has_stack_frames): Return false if there is no valid
8343         selected thread.
8344         * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
8345         "no_selected_thread_ok".
8346         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
8347         (get_cmd_no_selected_thread_ok): Delete.
8348         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
8349         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
8350         Delete declaration.
8351         * stack.c (get_selected_block): Use has_stack_frames.
8352
8353 2009-03-25  Thiago Jung Bauermann  <bauerman@br.ibm.com>
8354
8355         Fix size of FPSCR in Power 7 processors.
8356         * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
8357         (PPC_FEATURE_HAS_DFP): New #define.
8358         (ppc_linux_read_description): Check for DFP feature instead of
8359         ISA 2.05 to decide on size of the FPSCR.
8360
8361 2009-03-25  Kevin Buettner  <kevinb@redhat.com>
8362
8363         * mn10300-tdep.c (trad-frame.h): Don't include.
8364         (prologue-value.h): Include.
8365         (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
8366         (struct mn10300_prologue): Define.
8367         (push_reg, translate_rreg, check_for_saved): New functions.
8368         (mn10300_analyze_prologue): Rewrite, using prologue-value
8369         machinery.  Handle more instructions than before.  Permit
8370         instructions to occur in any order.
8371         (mn10300_skip_prologue): Find the extents of the function
8372         in question; mn10300_analyze_prologue no longer does this.
8373         (mn10300_analyze_frame_prologue): New function.
8374         (mn10300_frame_base): New function.
8375         (mn10300_frame_this_id): Rewrite, no longer using trad-frame
8376         implementation.
8377         (mn10300_frame_prev_register): Likewise.
8378         (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
8379         (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
8380         `this_frame'.
8381         (mn10300_frame_unwind_init): Don't call frame_base_set_default().
8382
8383 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
8384
8385         Fix completer problem for filename completion on the first try.
8386
8387         * gdb/completer.h (gdb_completion_word_break_characters): New function.
8388         * gdb/completer.c: Include gdb_assert.h.
8389         (complete_line_internal_reason): New enum.
8390         (complete_line_internal): Change last argument type to
8391         complete_line_internal_reason.
8392         Modify function to handle the different complete_line_internal_reason
8393         argument values.
8394         (complete_line): Adapt to change in complete_line_internal.
8395         (command_completer): Ditto.
8396         (gdb_completion_word_break_characters): Implement new function.
8397         * top.c (init_main): Set  rl_completion_word_break_hook to
8398         gdb_completion_word_break_characters.
8399
8400
8401 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
8402
8403         ARI fix: "strlen d_name" rule.
8404         * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
8405
8406
8407 2009-03-24  Tom Tromey  <tromey@redhat.com>
8408             Pedro Alves  <pedro@codesourcery.com>
8409
8410         * configure, config.in: Rebuild.
8411         * configure.ac: Check for libiconvlist.
8412         * charset.c: Check HAVE_LIBICONVLIST.
8413         * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
8414         LIBICONV_LIBDIR.  Update CPPFLAGS and LIBS.
8415         * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
8416         Remove.
8417         (INTERNAL_CFLAGS_BASE): Update.
8418         (INTERNAL_LDFLAGS): Update.
8419         (CLIBS): Update.
8420
8421 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8422
8423         * configure.ac: Initialize the variable $PREFER_CURSES.
8424         * configure: Regenerated.
8425
8426 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8427
8428         * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
8429         * configure: Regenerated.
8430
8431 2009-03-24  Pierre Muller  <muller@ics.u-strasbg.fr>
8432
8433         ARI fix: "strerror" rule.
8434         * darwin-nat.c (darwin_ptrace): Use safe_strerror.
8435         (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
8436
8437 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8438
8439         * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
8440         before looking up the fields inside our struct type.
8441
8442 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8443
8444         * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
8445         trying to resolve the type qualification.
8446
8447 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8448
8449         * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
8450         we try to apply the attribute on the real type, rather than
8451         its associated typedef.
8452
8453 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8454
8455         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
8456         to make sure we try to get the modulus of the actual type, not the
8457         associated typedef.
8458
8459 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8460
8461         * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
8462         [OP_ATR_LENGTH]: When using the attribute on a type, make sure
8463         to get the real type, not the associated typedef.
8464
8465 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8466
8467         * ada-lang.c (ada_get_field_index): Add handling of the case
8468         when TYPE is a typedef of a struct.
8469
8470 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8471
8472         Add gdb_usleep as a portable version of usleep based on gdb_select.
8473         * gdb_usleep.h, gdb_usleep.c: New files.
8474         * Makefile.in (SFILES): Add gdb_usleep.c.
8475         (HFILES_NO_SRCDIR): Add gdb_usleep.h.
8476         (COMMON_OBS): Add gdb_usleep.o.
8477         * ser-unix.c (hardwire_send_break): Replace call to gdb_select
8478         by call to gdb_usleep.
8479
8480 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
8481
8482         * buildsym.c (end_symtab): If we ignore the subfiles, then
8483         unlink the associated symtabs if they were already allocated.
8484
8485 2009-03-23  Jerome Guitton  <guitton@adacore.com>
8486
8487         Provide a way to force building of GDB with libcurses.
8488         * configure.ac: Add --with-curses.
8489         * configure: Regenerated.
8490
8491 2009-03-23  Tom Tromey  <tromey@redhat.com>
8492
8493         * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
8494         error message.
8495
8496 2009-03-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
8497
8498         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
8499         solib_contains_address_p instead of searching.
8500
8501 2009-03-23  Tom Tromey  <tromey@redhat.com>
8502
8503         * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
8504         (iconv): Make 'inbuf' argument const.
8505         (convert_between_encodings): Use ICONV_CONST.
8506         (wchar_iterate): Likewise.
8507
8508 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
8509
8510         * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
8511         dynamically loaded function.
8512         (LookupPrivilegeValueA): Ditto.
8513         (OpenProcessToken): Ditto.
8514         (AdjustTokenPrivileges): Rename and define placeholder for address of
8515         dynamically loaded function.
8516         (LookupPrivilegeValueA): Ditto.
8517         (OpenProcessToken): Ditto.
8518         (set_process_privilege): Remove check for loaded functions.
8519         (bad_OpenProcessToken): Define.
8520         (_initialize_loadable): Load token functions from advapi here, setting
8521         OpenProcessToken function to a dummy static function which always return
8522         error if OS doesn't support this functionality.
8523
8524 2009-03-22   Nicolas Roche  <roche@adacore.com>
8525              Christopher Faylor <me+cygwin@cgf.cx>
8526
8527         * win32-nat.c (ctrl_c_handler): New function.
8528         (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
8529         is run in a separate console.
8530
8531 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
8532
8533         * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
8534         for dynamically loaded function.
8535         (DebugBreakProcess): Ditto.
8536         (DebugSetProcessKillOnExit): Ditto.
8537         (EnumProcessModules): Ditto.
8538         (GetModuleFileNameExA): Ditto.
8539         (GetModuleInformation): Ditto.
8540         (DebugActiveProcessStop): Rename and define placeholder for address of
8541         dynamically loaded function.
8542         (DebugBreakProcess): Ditto.
8543         (DebugSetProcessKillOnExit): Ditto.
8544         (EnumProcessModules): Ditto.
8545         (GetModuleFileNameExA): Ditto.
8546         (GetModuleInformation): Ditto.
8547         (psapi_loaded): Delete.
8548         (get_module_name): Don't check psapi_loaded, just rely on the fact that
8549         dynamically loaded functions will return failure if they weren't
8550         previously found.
8551         (has_detach_ability): Delete.
8552         (windows_attach): Remove call to has_detach_ability ().  Just rely on
8553         functions being callable.
8554         (bad_DebugActiveProcessStop): Define.
8555         (bad_DebugBreakProcess): Ditto.
8556         (bad_DebugSetProcessKillOnExit): Ditto.
8557         (bad_EnumProcessModules): Ditto.
8558         (bad_GetModuleFileNameExA): Ditto.
8559         (bad_GetModuleInformation): Ditto.
8560         (_initialize_loadable): Rename from _initialize_psapi.  Initialize all
8561         dynamic storage here, setting nonexistent functions to dummy static
8562         functions which always return error.
8563
8564 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
8565
8566         * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
8567         to the about_to_proceed observer notification.
8568         (mi_about_to_proceed): New.
8569         (mi_on_resume): Only output ^running and the prompt here if the
8570         target was proceeded.
8571         * breakpoint.c (breakpoint_proceeded): New static.
8572         (breakpoint_about_to_proceed): New.
8573         (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
8574         the about_to_proceed observer notification.
8575         * inferior.h (breakpoint_proceeded): Delete declaration.
8576         * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
8577         Notify the about_to_proceed observers.
8578         (struct inferior_status): Delete breakpoint_proceeded member.
8579         (save_inferior_status): Don't save it.
8580         (restore_inferior_status): Don't restore it.
8581         * mi-main.h (mi_proceeded): Declare.
8582         * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
8583         a command.
8584
8585 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
8586
8587         * gdbthread.h (struct thread_info): Add in_infcall member.
8588         * infcall.c (run_inferior_call): Save, set and restore in_infcall.
8589         Remove reverences to suppress_resume_observer.  Refresh
8590         `call_thread' after returning from `proceed'.
8591         * infcmd.c (suppress_resume_observer): Delete.
8592         * inferior.h (suppress_resume_observer): Delete declaration.
8593         * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
8594         inferior function.
8595         * thread.c (set_running): Remove references to
8596         suppress_resume_observer.
8597         * infrun.c (struct inferior_status): Add in_infcall member.
8598         (save_inferior_status): Save it.
8599         (restore_inferior_status): Restore it.
8600
8601 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
8602
8603         * infcall.c (run_inferior_call): Remove references to
8604         suppress_stop_observer.
8605         * infcmd.c (suppress_stop_observer): Delete.
8606         (finish_command_continuation): Remove NOTE.  Don't clear
8607         suppress_stop_observer anymore.
8608         (finish_command_continuation_free_arg): Likewise.
8609         (finish_forward): Remove references to suppress_stop_observer.
8610         Call normal_stop observer if we haven't already.
8611         * inferior.h (suppress_stop_observer): Delete.
8612         * infrun.c (normal_stop): When deciding to suppress the
8613         normal_stop observer, check for proceed_to_finish instead of
8614         suppress_stop_observer.
8615
8616 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
8617
8618         * symfile.c (symfile_relocate_debug_section): Remove check for
8619         SEC_DEBUGGING.
8620
8621 2009-03-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
8622             Jim Blandy  <jimb@red-bean.com>
8623             Thiago Jung Bauermann  <bauerman@br.ibm.com>
8624             Tom Tromey  <tromey@redhat.com>
8625
8626         Miscellaneous fixes to the Python code.
8627         * python/python-cmd.c (cmdpy_init): Accept keyword
8628         arguments.
8629         * python/python-value.c (valpy_string): Accept keyword
8630         arguments.
8631         (valpy_binop): Use `break' to exit from the TRY_CATCH block.
8632         Do not call value_to_value_object on NULL RES_VAL.
8633         (value_object_methods): Change `string' entry to also accept
8634         keyword arguments.
8635         (convert_value_from_python): Return a copy of the value if obj is
8636         a gdb.Value object.
8637         (value_object_methods): Mark the `string' method as accepting
8638         keywords, and show method "prototype" in the doc string.
8639         * python/python.c (get_parameter): Don't return inside a
8640         TRY_CATCH.
8641
8642 2009-03-20  Tom Tromey  <tromey@redhat.com>
8643
8644         Add support for convenience functions in Python.
8645         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
8646         (SUBDIR_PYTHON_SRCS): Add python-function.c.
8647         (python-function.o): New target.
8648         * eval.c: Include "python/python.h" and <ctype.h>.
8649         (evaluate_subexp_standard): Handle values of type
8650         TYPE_CODE_INTERNAL_FUNCTION.
8651         * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
8652         * parse.c (write_exp_string): Remove duplicate word in comment.
8653         * python/python-function.c: New file.
8654         * python/python-internal.h (gdbpy_initialize_functions): Add
8655         prototype.
8656         * python/python.c (_initialize_python): Call
8657         gdbpy_initialize_functions.
8658         * valprint.c (value_check_printable): Handle values of type
8659         TYPE_CODE_INTERNAL_FUNCTION.
8660         * value.c: Include "cli/cli-decode.h".
8661         (internal_function): New struct.
8662         (functionlist, internal_fn_type): New static variables.
8663         (lookup_only_internalvar,
8664         lookup_internalvar): Add const qualifier to name argument.
8665         (create_internalvar): Likewise.  Initialize new field.
8666         (set_internal_var): Fix typo in comment.  Don't allow assignment
8667         to canonical variable.
8668         (value_create_internal_function, value_internal_function_name,
8669         call_internal_function, function_command, function_destroyer,
8670         add_internal_function): New functions.
8671         (_initialize_values): Create `function' placeholder command.
8672         Initialize internal_fn_type.
8673         * value.h (lookup_only_internalvar, create_internalvar,
8674         lookup_internalvar): Add const qualifier to name argument.
8675         (internal_function_fn, add_internal_function, call_internal_function,
8676         value_internal_function_name): Add prototypes.
8677         (struct internalvar) <canonical>: New field.
8678
8679 2009-03-20  Tom Tromey  <tromey@redhat.com>
8680
8681         * c-lang.c (evaluate_subexp_c): Call check_typedef.
8682
8683 2009-03-20  Tom Tromey  <tromey@redhat.com>
8684             Julian Brown  <julian@codesourcery.com>
8685
8686         PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
8687         PR i18n/9401, PR exp/9613:
8688         * NEWS: Update
8689         * value.h (value_typed_string): Declare.
8690         (val_print_string): Update.
8691         * valprint.h (print_char_chars): Update.
8692         * valprint.c (print_char_chars): Add type argument.  Update.
8693         (val_print_string): Likewise.
8694         * valops.c (value_typed_string): New function.
8695         * utils.c (host_char_to_target): New function.
8696         (parse_escape): Use host_char_to_target, host_hex_value.  Update.
8697         Remove '^' case.
8698         (no_control_char_error): Remove.
8699         * typeprint.c (print_type_scalar): Update.
8700         * scm-valprint.c (scm_scmval_print): Update.
8701         * scm-lang.h (scm_printchar, scm_printstr): Update.
8702         * scm-lang.c (scm_printchar): Add type argument.
8703         (scm_printstr): Likewise.
8704         * printcmd.c (print_formatted): Update.
8705         (print_scalar_formatted): Update.
8706         (printf_command) <wide_string_arg, wide_char_arg>: New constants.
8707         Handle '%lc' and '%ls'.
8708         * parser-defs.h (struct typed_stoken): New type.
8709         (struct stoken_vector): Likewise.
8710         (write_exp_string_vector): Declare.
8711         * parse.c (write_exp_string_vector): New function.
8712         * p-valprint.c (pascal_val_print): Update.
8713         * p-lang.h (is_pascal_string_type, pascal_printchar,
8714         pascal_printstr): Update.
8715         * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
8716         Add 'char_type' argument.
8717         (pascal_emit_char): Add type argument.
8718         (pascal_printchar): Likewise.
8719         (pascal_printstr): Likewise.
8720         * objc-lang.c (objc_emit_char): Add type argument.
8721         (objc_printchar): Likewise.
8722         (objc_printstr): Likewise.
8723         * macroexp.c (get_character_constant): Handle unicode characters.
8724         Use c_parse_escape.
8725         (get_string_literal): Handle unicode strings.  Use
8726         c_parse_escape.
8727         * m2-valprint.c (print_unpacked_pointer): Update.
8728         (m2_print_array_contents): Update.
8729         (m2_val_print): Update.
8730         * m2-lang.c (m2_emit_char): Add type argument.
8731         (m2_printchar): Likewise.
8732         (m2_printstr): Likewise.
8733         * language.h (struct language_defn) <la_printchar>: Add type
8734         argument.
8735         <la_printstr, la_emitchar>: Likewise.
8736         (LA_PRINT_CHAR): Likewise.
8737         (LA_PRINT_STRING): Likewise.
8738         (LA_EMIT_CHAR): Likewise.
8739         * language.c (unk_lang_emit_char): Add type argument.
8740         (unk_lang_printchar): Likewise.
8741         (unk_lang_printstr): Likewise.
8742         * jv-valprint.c (java_val_print): Update.
8743         * jv-lang.c (java_emit_char): Add type argument.
8744         * f-valprint.c (f_val_print): Update.
8745         * f-lang.c (f_emit_char): Add type argument.
8746         (f_printchar): Likewise.
8747         (f_printstr): Likewise.
8748         * expprint.c (print_subexp_standard): Update.
8749         * charset.h (target_wide_charset): Declare.
8750         (c_target_char_has_backslash_escape, c_parse_backslash,
8751         host_char_print_literally, host_char_to_target,
8752         target_char_to_host, target_char_to_control_char): Remove.
8753         (enum transliterations): New type.
8754         (convert_between_encodings): Declare.
8755         (HOST_ESCAPE_CHAR): New define.
8756         (host_letter_to_control_character, host_hex_value): Declare.
8757         (enum wchar_iterate_result): New enum.
8758         (struct wchar_iterator): Declare.
8759         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
8760         wchar_push_back): Declare.
8761         * charset-list.h: New file.
8762         * c-valprint.c (textual_name): New function.
8763         (textual_element_type): Handle wide character types.
8764         (c_val_print): Pass original type to textual_element_type.  Handle
8765         wide character types.
8766         (c_value_print): Use textual_element_type.  Pass original type of
8767         value to val_print.
8768         * c-lang.h (enum c_string_type): New type.
8769         (c_printchar, c_printstr): Update.
8770         * c-lang.c (classify_type): New function.
8771         (print_wchar): Likewise.
8772         (c_emit_char): Add type argument.  Handle wide characters.
8773         (c_printchar): Likewise.
8774         (c_printstr): Add type argument.  Handle wide and multibyte
8775         character sets.
8776         (convert_ucn): New function.
8777         (emit_numeric_character): Likewise.
8778         (convert_octal): Likewise.
8779         (convert_hex): Likewise.
8780         (ADVANCE): New macro.
8781         (convert_escape): New function.
8782         (parse_one_string): Likewise.
8783         (evaluate_subexp_c): Likewise.
8784         (exp_descriptor_c): New global.
8785         (c_language_defn): Use exp_descriptor_c.
8786         (cplus_language_defn): Likewise.
8787         (asm_language_defn): Likewise.
8788         (minimal_language_defn): Likewise.
8789         (charset_for_string_type): New function.
8790         * c-exp.y (%union): Add 'svec' and 'tsval'.
8791         (CHAR): New token.
8792         (exp): Add CHAR production.
8793         (string_exp): Rewrite.
8794         (exp) <string_exp>: Rewrite.
8795         (tempbuf): Now global.
8796         (tempbuf_init): New global.
8797         (parse_string_or_char): New function.
8798         (yylex) <tempbuf>: Now global.
8799         <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
8800         Remove.
8801         Handle 'u', 'U', and 'L' prefixes.  Call parse_string_or_char.
8802         (c_parse_escape): New function.
8803         * auxv.c (fprint_target_auxv): Update.
8804         * ada-valprint.c (ada_emit_char): Add type argument.
8805         (ada_printchar): Likewise.
8806         (ada_print_scalar): Update.
8807         (printstr): Add type argument.  Update calls to ada_emit_char.
8808         (ada_printstr): Add type argument.
8809         (ada_val_print_array): Update.
8810         (ada_val_print_1): Likewise.
8811         * ada-lang.c (emit_char): Add type argument.
8812         * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
8813         type arguments.
8814         * gdb_locale.h: Include langinfo.h.
8815         * charset.c (_initialize_charset): Set default host charset from
8816         the locale.  Don't register charsets.  Add target-wide-charset
8817         commands.  Call find_charset_names.
8818         (struct charset, struct translation): Remove.
8819         (GDB_DEFAULT_HOST_CHARSET): Remove.
8820         (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
8821         (target_wide_charset_name): New global.
8822         (show_host_charset_name): Handle "auto".
8823         (show_target_wide_charset_name): New function.
8824         (host_charset_enum, target_charset_enum): Remove.
8825         (charset_enum): New global.
8826         (all_charsets, register_charset, lookup_charset, all_translations,
8827         register_translation, lookup_translation): Remove.
8828         (simple_charset, ascii_print_literally, ascii_to_control): Remove.
8829         (iso_8859_print_literally, iso_8859_to_control,
8830         iso_8859_family_charset): Remove.
8831         (ebcdic_print_literally, ebcdic_to_control,
8832         ebcdic_family_charset): Remove.
8833         (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
8834         register_iconv_charsets): Remove.
8835         (target_wide_charset_be_name, target_wide_charset_le_name): New
8836         globals.
8837         (identity_either_char_to_other): Remove.
8838         (set_be_le_names, validate): New functions.
8839         (backslashable, backslashed, represented): Remove.
8840         (default_c_target_char_has_backslash_escape): Remove.
8841         (default_c_parse_backslash, iconv_convert): Remove.
8842         (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
8843         ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
8844         iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
8845         ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
8846         ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
8847         ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
8848         (table_convert_char, table_translation, simple_table_translation):
8849         Remove.
8850         (current_host_charset, current_target_charset,
8851         c_target_char_has_backslash_escape_func,
8852         c_target_char_has_backslash_escape_baton): Remove.
8853         (c_parse_backslash_func, c_parse_backslash_baton): Remove.
8854         (host_char_to_target_func, host_char_to_target_baton): Remove.
8855         (target_char_to_host_func, target_char_to_host_baton): Remove.
8856         (cached_iconv_host_to_target, cached_iconv_target_to_host):
8857         Remove.
8858         (lookup_charset_or_error, check_valid_host_charset): Remove.
8859         (set_host_and_target_charsets): Remove.
8860         (set_host_charset, set_target_charset): Remove.
8861         (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
8862         (set_target_wide_charset_sfunc): New function.
8863         (show_charset): Print target wide character set.
8864         (host_charset, target_charset): Rewrite.
8865         (target_wide_charset): New function.
8866         (c_target_char_has_backslash_escape): Remove.
8867         (c_parse_backslash): Remove.
8868         (host_letter_to_control_character): New function.
8869         (host_char_print_literally): Remove.
8870         (host_hex_value): New function.
8871         (target_char_to_control_char): Remove.
8872         (cleanup_iconv): New function.
8873         (convert_between_encodings): New function.
8874         (target_char_to_host): Remove.
8875         (struct wchar_iterator): Define.
8876         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
8877         wchar_push_back): New functions.
8878         (do_cleanup_iterator): New function.
8879         (char_ptr): New typedef.
8880         (charsets): New global.
8881         (add_one, find_charset_names): New functions.
8882         (default_charset_names): New global.
8883         (auto_host_charset_name): Likewise.
8884         * aclocal.m4, config.in, configure: Rebuild.
8885         * configure.ac: Call AM_LANGINFO_CODESET.
8886         (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
8887         (AM_ICONV): Invoke earlier.
8888         * acinclude.m4: Include codeset.m4.  Subst LIBICONV_INCLUDE and
8889         LIBICONV_LIBDIR.  Check for libiconv in build tree.
8890         * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
8891         (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
8892         (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
8893         * gdb_obstack.h (obstack_grow_wstr): New define.
8894         * gdb_wchar.h: New file.
8895         * defs.h: Include it.
8896
8897 2009-03-20  Tom Tromey  <tromey@redhat.com>
8898             Jan Kratochvil  <jan.kratochvil@redhat.com>
8899
8900         * dwarf2read.c (process_die): Handle DW_TAG_typedef.
8901         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
8902         typedef.
8903         * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
8904         SYMBOL_TYPE result.
8905         * ada-typeprint.c (print_array_type): Do the NULL check
8906         unconditionally.
8907
8908 2009-03-19  Tom Tromey  <tromey@redhat.com>
8909
8910         * utils.c (do_obstack_free): New function.
8911         (make_cleanup_obstack_free): Likewise.
8912         * defs.h (make_cleanup_obstack_free): Declare.
8913
8914 2009-03-18  Doug Evans  <dje@google.com>
8915
8916         * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
8917         int, not a long long.
8918         (linux_nat_info_proc_cmd): Store pid in long instead of long long.
8919
8920         * expprint.c (dump_raw_expression): Print note if non-NULL.
8921
8922         * printcmd.c (display_uses_solib_p): Redo loop, scan element list
8923         backwards.
8924
8925 2009-03-18  Nathan Sidwell  <nathan@codesourcery.com>
8926
8927         * Makefile.in: Update license to GPLv3.
8928         * ada-exp.y: Update license to GPLv3.
8929         * ada-lex.l: Update license to GPLv3.
8930         * c-exp.y: Update license to GPLv3.
8931         * cp-name-parser.y: Update license to GPLv3.
8932         * darwin-nat-info.c: Update license to GPLv3.
8933         * f-exp.y: Update license to GPLv3.
8934         * gdb_thread_db.h: Update license to GPLv3.
8935         * hppanbsd-nat.c: Update license to GPLv3.
8936         * hppanbsd-tdep.c: Update license to GPLv3.
8937         * hppaobsd-tdep.c: Update license to GPLv3.
8938         * jv-exp.y: Update license to GPLv3.
8939         * m2-exp.y: Update license to GPLv3.
8940         * objc-exp.y: Update license to GPLv3.
8941         * p-exp.y: Update license to GPLv3.
8942         * reply_mig_hack.awk: Update license to GPLv3.
8943         * reverse.c: Update license to GPLv3.
8944         * xtensa-xtregs.c: Update license to GPLv3.
8945
8946 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
8947
8948         * remote.c (remote_close): Don't call generic_mourn_inferior.
8949         (remote_mourn_1): Call generic_mourn_inferior after closing the
8950         target.
8951
8952 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
8953
8954         * remote.c (remote_start_remote): Add missing call to
8955         init_wait_for_inferior in non-stop mode.
8956
8957 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
8958
8959         * breakpoint.c (bpstat_should_step): Only consider software
8960         watchpoints that have a location.
8961
8962 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
8963
8964         Add a target_ops parameter to the to_kill method in struct target_ops.
8965
8966         * target.h (struct target_ops): Add a "target_ops *" parameter to
8967         method to_kill.
8968         (target_kill): Remove macro. Add declaration.
8969         * target.c (debug_to_kill): Delete, no longer necessary.
8970         (target_kill): New function.
8971         (update_current_target):  Stop inheriting the to_kill method.
8972         Do not de_fault it to no_process either.
8973         (setup_target_debug): Do not set current_target.to_kill.
8974         * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
8975         linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
8976         remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
8977         accordingly.
8978
8979 2009-03-17  Doug Evans  <dje@google.com>
8980
8981         * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
8982         glibc 2.3.2 and earlier.
8983
8984 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
8985
8986         * frame.c (get_prev_frame_1): Do not perform the inner_frame
8987         sanity check if this_frame is not NORMAL.
8988         (frame_id_inner): Update the description of this function.
8989
8990 2009-03-17  Hui Zhu  <teawater@gmail.com>
8991
8992         * stack.c: Change the introduce of "disassemble-next-line".
8993
8994 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
8995
8996         * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
8997         declare as extern.
8998
8999 2009-03-17  Hui Zhu  <teawater@gmail.com>
9000
9001         * stack.c: Include valprint.h.
9002         (disassemble_next_line): New enum.
9003         (show_disassemble_next_line): New function.  Show the current
9004         value of disassemble-next-line.
9005         (gdb_disassembly_stub_args): New struct for argument passing
9006         between function do_gdb_disassembly and function
9007         gdb_disassembly_stub.
9008         (gdb_disassembly_stub): New function.  Helper for
9009         gdb_disassembly.
9010         (do_gdb_disassembly): New function.  Use TRY_CATCH to catch
9011         the exception from the gdb_disassembly because it will be
9012         broken by filter sometime.
9013         (print_frame_info): If disassemble-next-line is set to auto
9014         or on and doesn't have the line debug messages for $pc,
9015         output the next instruction.
9016         If disassemble-next-line is set to on and there is line debug
9017         messages, output assembly codes for next line.
9018         (_initialize_stack): Make the "set disassemble-next-line"
9019         command an auto-boolean command.  Change its class to
9020         class_stack.  Place it in the top level set list.  Extend help
9021         to describe the auto mode.
9022
9023 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
9024
9025         * infrun.c (normal_stop): Don't overwrite old_chain.
9026
9027 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
9028
9029         * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
9030         which is undefined, by call to regcache_invalidate, which should
9031         do what the original author wanted to do.
9032
9033 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
9034
9035         * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
9036         (mips_create_inferior): Likewise.
9037
9038 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
9039
9040         * go32-nat.c (go32_create_inferior): Add missing ops parameter.
9041
9042 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
9043
9044         * darwin-nat.c (darwin_resume): Fix a compiler warning when
9045         building on x86_64-darwin.
9046
9047 2009-03-16  Tristan Gingold  <gingold@adacore.com>
9048
9049         * configure.tgt: Add handling for x86_64-darwin.
9050
9051 2009-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
9052
9053         * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
9054
9055 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
9056
9057         * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
9058         Use the ops parameter to get to the target beneath, rather than
9059         using the current_target global.  Using the current_target global
9060         was an unintended accident.
9061
9062 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
9063
9064         Fix an error happening while loading symbols from a core file
9065         (on AIX).
9066
9067         * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
9068         to detect whether we're debugging a core file or not.
9069
9070 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
9071
9072         Modernize the aix-thread later by getting rid of the base_target
9073         global.  This brings back to life the AIX port which was otherwise
9074         crashing all the time.
9075
9076         * aix-thread.c (base_target): Delete.
9077         (pd_enable): Do not set base_target.
9078         (aix_thread_attach): Use find_target_beneath instead of base_target.
9079         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9080         (aix_thread_fetch_registers, aix_thread_store_registers),
9081         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9082         (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
9083         (aix_thread_kill): Delete. Does not seem necessary.
9084         (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
9085
9086 2009-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
9087
9088         * stack.c (return_command <retval_exp>): New variables retval_expr
9089         and old_chain.  Inline parse_and_eval to initialize retval_expr.  Check
9090         RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
9091         if RETURN_TYPE is NULL.
9092
9093 2009-03-14  Pedro Alves  <pedro@codesourcery.com>
9094
9095         * remote.c (PACKET_qAttached): New.
9096         (remote_query_attached): New.
9097         (remote_add_inferior): Add new `attached' argument.  Handle it.
9098         (remote_notice_new_inferior, remote_start_remote): Adjust to pass
9099         -1 to remote_add_inferior in new parameter.
9100         (extended_remote_attach_1): Adjust to pass 1 to
9101         remote_add_inferior in the new parameter.
9102         (extended_remote_create_inferior_1): Adjust to pass 0 to
9103         remote_add_inferior in the new parameter.
9104         (_initialize_remote): Add "set/show remote query-attached-packet"
9105         commands.
9106
9107 2009-03-13  Tom Tromey  <tromey@redhat.com>
9108
9109         * symtab.c (lookup_symbol_in_language): Use a cleanup.
9110
9111 2009-03-13  Doug Evans  <dje@google.com>
9112
9113         * exceptions.h: Clean up some comments on catch_exceptions usage.
9114         * exceptions.c: Ditto.  Plus mark catch_errors as superseded by
9115         catch_exceptions.
9116
9117 2009-02-17  Joel Brobecker  <brobecker@adacore.com>
9118
9119         The following patch helps getting rid of a warning inside solib-som.c.
9120
9121         * source.c (source_full_path_of): Constify parameter filename.
9122         * defs.h (source_full_path_of): Update declaration accordingly.
9123
9124 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9125
9126         * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
9127         BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
9128         Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
9129
9130 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9131
9132         * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
9133         promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
9134
9135 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9136
9137         * ada-tasks.c (ada_task_is_alive): Move up and make static.
9138         * ada-lang.h (ada_task_is_alive): Remove declaration.
9139
9140 2009-03-12  Jerome Guitton  <guitton@adacore.com>
9141
9142         * ada-lang.c (ada_delta): Change the type of numerators and
9143         denominators to DOUBLEST, as they may not fit into a long.
9144         (scaling_factor): Ditto.
9145
9146 2009-03-12  Jerome Guitton  <guitton@adacore.com>
9147
9148         * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
9149
9150 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9151
9152         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
9153         types, if we are unable to determine the actual symbol type
9154         from its tag, then use the static approximation instead.
9155
9156 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9157
9158         Fix crash printing packed record with packed array.
9159
9160         * ada-lang.c (ada_modulus_from_name): New function.
9161         (ada_modulus): In the case where the type length is bigger than
9162         the size of the type used to hold the bounds, try determining
9163         the modulus from the type name.
9164         (ada_value_primitive_packed_val): Fix bug in the computation of
9165         ntarg causing an out-of-buffer invalid access.
9166
9167 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9168
9169         Fix segfault when printing short_integer'last.
9170
9171         * ada-lang.c (ada_find_any_type): Search in the primitive types
9172         if a symbol could not be found.
9173
9174 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9175
9176         * ada-tasks.c (task_states,long_task_states): Add new states
9177         Activating and Acceptor_Delay_Sleep.  Update the description
9178         of state Acceptor_Sleep.
9179
9180 2009-03-12  Jonas Maebe <jonas.maebe@elis.ugent.be>  (obvious change)
9181
9182         Fix a build failure on Darwin following some changes in
9183         the profile of some target_ops methods.
9184
9185         * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
9186         where missing.
9187         (darwin_stop_inferior, darwin_detach): Likewise.
9188
9189 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
9190
9191         Include token in ^running notification for CLI commands.
9192
9193         * mi/mi-main.c (mi_execute_command): Set current_token here.
9194         (mi_cmd_execute): Do not set current_token here.
9195
9196 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
9197
9198         Fix MI timings.
9199
9200         * mi/mi-main.c (mi_print_timing_maybe): New.
9201         (captured_mi_execute_command): Simplify. Output timings to
9202         CLI commands, too.
9203         (mi_execute_async_cli_command): Do not print timings.
9204         * mi/mi-main.h (mi_print_timing_maybe): Declare.
9205         * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
9206
9207 2009-03-12  Jerome Guitton  <guitton@adacore.com>
9208
9209         * xcoffread.c (process_linenos): Check if the line in the
9210         include table refers to the main source file and, if so,
9211         add them to the main subfile.
9212
9213 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
9214
9215         Fix a build failure on AIX introduced after a change in the profile
9216         of some of the "methods" in the target_ops structure.
9217         * aix-thread.c: Add missing target_ops parameter throughout.
9218
9219         Implement Ada task switching on AIX.
9220         * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
9221         (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
9222
9223 2009-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
9224
9225         * breakpoint.c (bpstat_check_breakpoint_conditions): Use
9226         value_mark and value_free_to_mark.
9227         * objfiles.c (free_objfile): Call objfile_free_data before
9228         freeing the BFD.
9229
9230 2009-03-10  Hui Zhu  <teawater@gmail.com>
9231
9232         * disasm.c (gdb_disassembly): Remove unused argument
9233         "line_num".
9234         * disasm.h (gdb_disassembly): Ditto.
9235         * cli/cli-cmds.c (print_disassembly): Ditto.
9236         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
9237
9238 2009-03-09  Paul Pluzhnikov  <ppluzhnikov@google.com>
9239
9240         * solib.c (solib_contains_address_p): New function.
9241         (solib_name_from_address): Use it.
9242         * printcmd.c (display_uses_solib_p): Use it.
9243         * solib.h (solib_contains_address_p): Declare it.
9244
9245 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
9246
9247         * varobj.c (free_variable): Call value_free.
9248
9249 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
9250
9251         PR gdb/9873:
9252         * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
9253         Move the variable `macinfo_type' out of the loop.  Create a new
9254         processing pass before the current one to pre-create `current_file'.
9255         New complaint on misplaced zero/non-zero definitions/includes.
9256         Skip first DW_MACINFO_start_file with `at_commandline' set.
9257
9258 2008-03-09  Vladimir Prus  <vladimir@codesourcery.com>
9259
9260        * solib.c (reload_shared_libraries): Give
9261        inferior a chance to reset solib breakpoint.
9262        Reinit frame cache.
9263
9264 2009-03-08  Christopher Faylor  <me+cygwin@cgf.cx>
9265
9266         * windows-nat.c (dr): Redefine to use largest possible integer which
9267         holds a pointer.
9268         (cygwin_set_dr): Avoid coercion.
9269
9270 2009-03-08  Oswald Buddenhagen  <oswald.buddenhagen@trolltech.de>
9271
9272         * windows-nat.c (windows_create_inferior): Implement --tty handling on
9273         non-cygwin.
9274
9275 2009-03-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
9276
9277         Rename solib_address to solib_name_from_address.
9278         * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
9279         (disable_breakpoints_in_unloaded_shlib): Update.
9280         * printcmd.c (display_uses_solib_p): Likewise.
9281         * stack.c (print_frame): Likewise.
9282         * solib.c: Rename.
9283         * solib.h: Rename.
9284
9285 2009-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
9286
9287         * printcmd.c (do_one_display): Reparse exp_string.
9288         (display_uses_solib_p): New function.
9289         (clear_dangling_display_expressions): New function.
9290         (_initialize_printcmd): Add observer.
9291         * solib.c (no_shared_libraries): Swap order of calls to
9292         clear_solib and objfile_purge_solibs.
9293
9294 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
9295
9296         Implement the target-specific part of Ada tasking support
9297         on Tru64.
9298
9299         * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
9300         (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
9301
9302 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
9303
9304         Get rid of the global "base_target" and use "find_target_beneath"
9305         to find the underlying target.
9306         * dec-thread.c (base_target): Delete.
9307         (enable_dec_thread): Remove assignement to base_target.
9308         (dec_thread_detach, dec_thread_wait, dec_thread_wait)
9309         (dec_thread_fetch_registers, dec_thread_store_registers)
9310         (dec_thread_mourn_inferior, dec_thread_pid_to_str):
9311         Update the function profile if necessary.
9312         Use find_target_beneath to call the same method but from
9313         the underlying target, removing the need for "base_target".
9314
9315         * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
9316         Fix a copy/paste error in a few debug traces...
9317
9318         * solib-osf.c (init_so): Use a simpler method for computing
9319         the size of lm_info structure. This also gets rid of warning
9320         emitted by the compiler.
9321
9322 2009-03-05  Pedro Alves  <pedro@codesourcery.com>
9323
9324         * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
9325         duplicates of permanent breakpoints.
9326
9327 2009-03-04  Pedro Alves  <pedro@codesourcery.com>
9328
9329         * inferior.h (notice_new_inferior): Declare.
9330         * infcmd.c (notice_new_inferior): New.
9331         * remote.c (remote_add_inferior, remote_add_thread): New.
9332         (notice_new_inferiors): Rename to...
9333         (remote_notice_new_inferior): ... this.  Add RUNNING argument.
9334         Use remote_add_thread instead of add_thread, passing it the
9335         RUNNING argument.  Add an inferior with remote_add_inferior.  If
9336         we just learned about an inferior, call notice_new_inferior.
9337         (record_currthread): Adjust.
9338         (remote_threads_info): Adjust to use remote_notice_new_inferior.
9339         (remote_start_remote, extended_remote_attach_1): Use
9340         remote_add_inferior.
9341         (process_stop_reply): Adjust.  Call remote_notice_new_inferior
9342         after handling expedited registers and watchpoint state.
9343         (extended_remote_create_inferior_1): Use remote_add_inferior.
9344
9345 2009-03-04  Aleksandar Ristovski  <aristovski@qnx.com>
9346
9347         * infcmd.c (registers_info): Remove register number case.
9348
9349 2009-03-03  Pedro Alves  <pedro@codesourcery.com>
9350
9351         * top.c (quit_target): Check for target_has_execution before
9352         killing or detaching from inferiors.
9353
9354 2009-03-02  Joel Brobecker  <brobecker@adacore.com>
9355
9356         Remove some unused routines.
9357
9358         * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
9359         Delete.
9360         * ada-lang.c (ada_task_list_iterator_ftype)
9361         (iterate_over_live_ada_tasks): Delete.
9362         * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
9363         Delete.
9364
9365 2009-03-01  Doug Evans  <dje@google.com>
9366
9367         * symtab.c: Remove trailing whitespace throughout the file.
9368         (expand_line_sal): Fix some typos and whitespace.
9369
9370         * Makefile.in (clean): rm -f $(DEPDIR)/*.
9371
9372         * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
9373         (init.c): signals/ -> common/.
9374         (signals.o): Update.
9375         * target.h (target_signal_to_string,target_signal_to_string)
9376         (target_signal_from_name,target_signal_to_host_p)
9377         (target_signal_from_host,target_signal_to_host): Move to ...
9378         * common/gdb_signals.h: ... here.  New file.
9379         * common/signals.c: Moved here from signals/signals.c.
9380         #include gdb_signals.h, remove #include of target.h in gdb case.
9381         (target_signal_from_command,default_target_signal_to_host)
9382         (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
9383
9384         Include thread ID in target_wait debugging output.
9385         * infrun.c (print_target_wait_results): New function.
9386         (wait_for_inferior,fetch_inferior_event): Call it.
9387
9388 2009-02-27  Pedro Alves  <pedro@codesourcery.com>
9389
9390         * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
9391         with a ptid_t field.
9392         * linux-thread-db.c (thread_get_info_callback): Build the ptid
9393         using the pid stored in proc_handle.ptid.
9394         (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
9395         (check_for_thread_db, thread_db_detach, check_event)
9396         (thread_db_mourn_inferior, find_new_threads_callback)
9397         (thread_db_find_new_threads_1): Adjust.
9398         * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
9399         (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
9400
9401 2009-02-27  Phil Muldoon  <pmuldoon@redhat.com>
9402
9403         * valprint.c (read_string): Rework clean-up logic. Use
9404         free_current_contents to clean-up buffer.
9405
9406 2009-02-27  Andreas Schwab  <schwab@linux-m68k.org>
9407
9408         * MAINTAINERS: Update e-mail address.
9409
9410 2009-02-26  Phil Muldoon  <pmuldoon@redhat.com>
9411
9412         * python/python-utils.c (python_string_to_unicode): Always return
9413         a new reference.
9414         (python_string_to_target_string): Decrement transient python
9415         instance.
9416         (python_string_to_host_string): Likewise.
9417
9418 2007-02-26  Pedro Alves  <pedro@codesourcery.com>
9419
9420         * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
9421         call to super_fetch_registers.
9422         (mips64_linux_store_registers): Pass `ops' to call to
9423         super_store_registers.
9424
9425 2009-02-25  Doug Evans  <dje@google.com>
9426
9427         * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
9428         error message.
9429
9430         * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
9431         disabled_shlib_breaks, unused.
9432
9433         * printcmd.c (build_address_symbolic): Fix comment.
9434
9435 2009-02-25  Hui Zhu  <teawater@gmail.com>
9436
9437         * cli/cli-script.c (define_command): Add _() to query.
9438         * gnu-nat.c (inf_validate_task_sc): Ditto.
9439         * infcmd.c (kill_if_already_running): Ditto.
9440         (jump_command): Ditto.
9441         (attach_command): Ditto.
9442         * inflow.c (kill_command): Ditto.
9443         * infrun.c (handle_command): Ditto.
9444         * maint.c (maintenance_dump_me): Ditto.
9445         * memattr.c (mem_delete_command): Ditto.
9446         * monitor.c (monitor_interrupt_query): Ditto.
9447         * nto-procfs.c (interrupt_query): Ditto.
9448         * printcmd.c (undisplay_command): Ditto.
9449         * remote-mips.c (mips_kill): Ditto.
9450         * remote.c (interrupt_query): Ditto.
9451         * solib-irix.c (irix_open_symbol_file_object): Ditto.
9452         * solib-osf.c (osf_open_symbol_file_object): Ditto.
9453         * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
9454         * solib-som.c (som_open_symbol_file_object): Ditto.
9455         * solib-svr4.c (open_symbol_file_object): Ditto.
9456         * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
9457         * target.c (kill_or_be_killed): Ditto.
9458         * tracepoint.c (delete_trace_command): Ditto.
9459         * top.c (quit_confirm): Add _() to s that will be used
9460         in query.
9461
9462 2009-02-24  Pierre Muller  <muller@ics.u-strasbg.fr>
9463
9464         Fix windows-nat.c compilation failure.
9465
9466         * windows-nat.c (windows_thread_alive): Fix forward declaration.
9467         (get_windows_debug_event): Add ops parameter to call to windows_resume.
9468
9469 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
9470
9471         * remote-sim.c (gdbsim_resume): Add target_ops* argument.
9472
9473 2009-02-23  Jay Krell  <jay.krell@cornell.edu>  (tiny change)
9474
9475         * symtab.c (find_line_symtab): Initialize exact to avoid
9476         a compiler warning.
9477
9478 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
9479
9480         * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
9481         `ops' to recursive call.
9482
9483 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
9484
9485         * corelow.c (get_core_registers): Adjust.
9486         (core_file_thread_alive): Rename to...
9487         (core_thread_alive): ... this.
9488         (core_pid_to_str): Try gdbarch_core_pid_to_str first.
9489         (init_core_ops): Adjust.
9490         (coreops_suppress_target): Delete.
9491         (_initialize_corelow): Unconditionally add core_ops.
9492         * procfs.c: Include "inf-child.h".
9493         (procfs_ops): Delete.
9494         (init_procfs_ops): Delete.  Reimplement as...
9495         (procfs_target): ... this, inheriting from inf-child.
9496         (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
9497         (procfs_prepare_to_store): Delete.
9498         (procfs_store_registers, procfs_resume): Adjust.
9499         (procfs_open): Delete.
9500         (procfs_suppress_run): Delete.
9501         (procfs_can_run): Delete.
9502         (procfs_mourn_inferior): Adjust.
9503         (procfs_init_inferior): Add target_ops parameter.  Adjust.
9504         (procfs_create_inferior): Don't pass procfs_init_inferior to
9505         fork_inferior.  Instead call it after fork_inferior returns.
9506         (procfs_find_new_threads): Adjust.
9507         (_initialize_procfs): Adjust to use procfs_target instead of
9508         init_procfs_ops.
9509         * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
9510         (lwp_to_thread): Use target_thread_alive.
9511         (sol_thread_open): Delete.
9512         (sol_thread_attach): Delete.
9513         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9514         (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
9515         to use find_target_beneath.
9516         (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
9517         (sol_thread_xfer_partial): Adjust to use find_target_beneath.
9518         (sol_thread_files_info, sol_thread_kill_inferior): Delete.
9519         (check_for_thread_db): New.
9520         (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
9521         (sol_thread_new_objfile): Call check_for_thread_db.
9522         (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
9523         (sol_thread_can_run): Delete.
9524         (sol_thread_alive): Adjust to use find_target_beneath.
9525         (sol_thread_stop): Delete.
9526         (rw_common): Use target_write_memory or target_read_memory.
9527         (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
9528         (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
9529         (solaris_pid_to_str): Remove check for libthread_db initialization
9530         failing.
9531         (sol_find_new_threads): Remove check for libthread_db
9532         initialization failing, or for an invalid inferior_ptid.  Adjust
9533         to use find_target_beneath.
9534         (sol_core_open, sol_core_close, sol_core_detach,
9535         sol_core_files_info, sol_find_memory_regions,
9536         sol_make_note_section, ignore): Delete.
9537         (init_sol_thread_ops): Make it a thread_stratum target.  Remove
9538         unneeded callback settings.
9539         (init_sol_core_ops): Delete.
9540         (_initialize_sol_thread): No longer call init_sol_core_ops, set
9541         procfs_suppress_run, or hack with core_ops.
9542
9543         * target.h (struct target_ops): Add a target_ops * parameter to
9544         to_resume, to_fetch_registers, to_store_registers, to_thread_alive
9545         and to_find_new_threads.
9546         (target_fetch_registers, target_store_registers)
9547         (target_thread_alive, target_find_new_threads): Redeclare as
9548         function.
9549
9550         * target.c (update_current_target): Do not inherit or de_fault
9551         to_resume, to_fetch_registers, to_store_registers,
9552         to_thread_alive, to_find_new_threads.
9553         (target_resume): Adjust.
9554         (target_thread_alive, target_find_new_threads): New.
9555         (debug_to_resume, debug_to_fetch_registers): Delete.
9556         (target_fetch_registers): New.
9557         (debug_to_store_registers): Delete.
9558         (target_store_registers): New.
9559         (debug_to_thread_alive, debug_to_find_new_threads): Delete.
9560         (setup_target_debug): Adjust.
9561
9562         * gdbcore.h (core_ops): Delete declaration.
9563
9564         * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
9565         inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
9566         i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
9567         hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
9568         nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
9569         alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
9570         bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
9571         hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
9572         ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
9573         m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
9574         mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
9575         ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
9576         shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
9577         vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
9578
9579         * gdbarch.sh (core_pid_to_str): New gdbarch callback.
9580         * gdbarch.h, gdbarch.c: Regenerate.
9581
9582         * sol2-tdep.c: Include "inferior.h".
9583         (sol2_core_pid_to_str): New.
9584         * sol2-tdep.h (sol2_core_pid_to_str): Declare.
9585
9586         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
9587         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
9588         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
9589         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
9590
9591 2009-02-22  Doug Evans  <dje@google.com>
9592
9593         * exec.c (exec_file_attach): Fix comment.
9594
9595 2009-02-22  Pedro Alves  <pedro@codesourcery.com>
9596
9597         Silence a few -Wmissing-prototypes warnings.
9598
9599         PR build/9877:
9600         * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
9601         it static.
9602         * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
9603         * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
9604         * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
9605         (_initialize_amd64nbsd_tdep): ... this.
9606         * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
9607         (_initialize_arm_linux_tdep): Declare.
9608         * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
9609         * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
9610         * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
9611         * avr-tdep.c (avr_return_value): Make it static.
9612         (avr_frame_unwind_cache): Ditto.
9613         * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
9614         (bsd_uthread_solib_loaded): Ditto.
9615         (bsd_uthread_solib_unloaded): Ditto.
9616         (bsd_uthread_target): Ditto.
9617         (_initialize_bsd_uthread): Declare.
9618         * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
9619         (cris_frame_unwind_cache): Ditto.
9620         * frv-tdep.c (frv_return_value): Ditto.
9621         * h8300-tdep.c (h8300_use_struct_convention): Ditto.
9622         (h8300h_use_struct_convention): Ditto.
9623         * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
9624         Ditto.
9625         * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
9626         declarations.
9627         * hppabsd-tdep.c: Include hppabsd-tdep.h.
9628         (hppabsd_find_global_pointer): Make it static.
9629         * hppabsd-tdep.h: New.
9630         * hppanbsd-tdep.c: Include hppabsd-tdep.h.
9631         (hppabsd_init_abi): Remove declaration.
9632         (_initialize_hppabsd_tdep): Remove declaration.
9633         (_initialize_hppanbsd_tdep): Declare.
9634         * hppaobsd-tdep.c: Include hppabsd-tdep.h.
9635         (hppabsd_init_abi): Delete declaration.
9636         (hppaobsd_init_abi): Make it static.
9637         * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
9638         * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
9639         * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
9640         * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
9641         * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
9642         * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
9643         (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
9644         (_initialize_m32c_tdep): Declare.
9645         * m32r-rom.c (_initialize_m32r_rom): Declare.
9646         * m32r-tdep.c (m32r_skip_prologue): Make it static.
9647         (m32r_return_value): Ditto.
9648         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
9649         (m68hc11_return_value): Ditto.
9650         * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
9651         * m88k-tdep.c (m88k_frame_cache): Make it static.
9652         * mep-tdep.c (mep_gdb_print_insn): Ditto.
9653         (mep_return_value): Ditto.
9654         (_initialize_mep_tdep): Declare.
9655         * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
9656         * mips-linux-tdep.c (supply_64bit_reg): Make it static.
9657         (mips_linux_syscall_next_pc): Ditto.
9658         (_initialize_mips_linux_tdep): Declare.
9659         * mips-tdep.c (mips_single_step_through_delay): Make it static.
9660         * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
9661         * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
9662         * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
9663         * mt-tdep.c (_initialize_mt_tdep): Declare.
9664         * nbsd-tdep.c: Include nbsd-tdep.h.
9665         * nto-tdep.c (find_load_phdr): Make it static.
9666         (_initialize_nto_tdep): Declare.
9667         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
9668         static.
9669         (_initialize_ppc_linux_tdep): Declare.
9670         * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
9671         (m32r_insert_watchpoint, m32r_remove_watchpoint)
9672         (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
9673         static.
9674         * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
9675         * rs6000-nat.c: Include xcoffread.h.
9676         (find_toc_address): Don't extern declare get_toc_offset.  Adjust
9677         to call xcoff_get_to_offset.
9678         * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
9679         (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
9680         (rs6000_skip_trampoline_code): Make static.
9681         * s390-tdep.c (s390_regset_from_core_section): Ditto.
9682         * sh-tdep.c (sh_register_reggroup_p): Ditto.
9683         * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
9684         (_initialize_shnbsd_tdep): Declare.
9685         * solib-frv.c (displacement_from_map): Make static.
9686         (_initialize_frv_solib): Declare.
9687         * solib-irix.c (fetch_lm_info): Make static.
9688         (_initialize_irix_solib): Declare.
9689         * solib-som.c: Include solib-som.h.
9690         (som_solib_select): Line break.
9691         * sparc-tdep.c (sparc_regset_from_core_section): Make static.
9692         * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
9693         (_initialize_sparcnbsd_tdep): ... this.
9694         * spu-tdep.c (spu_software_single_step): Make it static.
9695         (_initialize_spu_tdep): Declare.
9696         * vax-tdep.c (vax_frame_cache): Make it static.
9697         * xcoffread.c: Include xcoffread.h.
9698         (get_toc_offset): Rename to ...
9699         (xcoff_get_toc_offset): ... this.
9700         (_initialize_xcoffread): Declare.
9701         * xcoffread.h: New.
9702         * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
9703         * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
9704         static.
9705         (_initialize_xtensa_tdep): Declare.
9706
9707 2008-02-21  Pedro Alves  <pedro@codesorcery.com>
9708
9709         Silence a few -Wmissing-prototypes warnings.
9710
9711         PR build/9877:
9712         * amd64-nat.c: Include "amd64-nat.h".
9713         * fork-child.c (_initialize_fork_child): Ditto.
9714         * gcore.c (_initialize_gcore): Ditto.
9715         * inf-ptrace.c: Include "inf-ptrace.h".
9716         (inf_ptrace_store_registers): Make it static.
9717         * linux-nat.c (linux_nat_terminal_ours): Make it static.
9718         (_initialize_linux_nat): Declare before definition.
9719         * linux-tdep.c: Include "linux-tdep.h".
9720         * linux-thread-db.c (_initialize_thread_db): Declare before
9721         definition.
9722         * proc-service.c (_initialize_proc_service): Ditto.
9723         * remote.c (remote_send_printf): Make it static.
9724         * solib.c: Include "solib.h".
9725         * symfile-mem.c (_initialize_symfile_mem): Declare before
9726         definition.
9727         * ada-lang.c (ada_la_decode, ada_match_name)
9728         (ada_suppress_symbol_printing, ada_is_array_type)
9729         (ada_value_ptr_subscript, ada_array_length)
9730         (ada_to_static_fixed_value): Make them static.
9731         (_initialize_ada_language): Declare before definition.
9732         * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
9733         (ada_task_list_changed, ada_new_objfile_observer): Make them
9734         static.
9735         (_initialize_tasks): Declare before definition.
9736         * addrmap.c (_initialize_addrmap): Declare before definition.
9737         * auxv.c (default_auxv_parse): Make it static.
9738         * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
9739         them static.
9740         * breakpoint.c (remove_sal): Add line break.
9741         (expand_line_sal_maybe): Make it static.
9742         * cp-name-parser.y: Include "cp-support.h".
9743         * cp-valprint.c (cp_find_class_member): Make it static.
9744         * eval.c (value_f90_subarray): Ditto.
9745         * exceptions.c (print_any_exception): Ditto.
9746         * findcmd.c (_initialize_mem_search): Declare before definition.
9747         * frame.c (frame_observer_target_changed): Make it static.
9748         * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
9749         * inf-child.c: Include "inf-child.h".
9750         * inferior.h (valid_inferior_id): Rename to ...
9751         (valid_gdb_inferior_id): ... this.
9752         * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
9753         Make them static.
9754         * jv-lang.c (java_language_arch_info): Make it static.
9755         * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
9756         * osdata.c (info_osdata_command): Make it static.
9757         * regcache.c (regcache_observer_target_changed): Make it static.
9758         * reverse.c (_initialize_reverse): Declare before definition.
9759         * stabsread.c (cleanup_undefined_types_noname)
9760         (cleanup_undefined_types_1): Make them static.
9761         * symfile.c (place_section): Make it static.
9762         * symtab.c (find_pc_sect_psymtab_closer): Make it static.
9763         * target-descriptions.c (_initialize_target_descriptions): Declare
9764         before definition.
9765         * target.c (default_get_ada_task_ptid, find_default_can_async_p)
9766         (find_default_is_async_p, find_default_supports_non_stop): Make
9767         them static.
9768         (target_supports_non_stop): Add prototype.
9769         (dummy_pid_to_str): Make it static.
9770         * utils.c (_initialize_utils): Declare before definition.
9771         * ada-exp.y (_initialize_ada_exp): Declare before definition.
9772         * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
9773         * target.h (struct target_ops): Add a prototype to the
9774         to_can_execute_reverse callback.
9775         * macroscope.c (_initialize_macroscope): Declare before definition.
9776         * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
9777         * python/python.c (_initialize_python): Declare before definition.
9778         * tui/tui-command.c: Include "tui/tui-command.h".
9779         * tui/tui-data.c (init_content_element, init_win_info): Make them
9780         static.
9781         * tui/tui-disasm.c: Include "tui/tui-disasm.h".
9782         * tui/tui-interp.c (_initialize_tui_interp): Declare before
9783         definition.
9784         * tui/tui-layout.c: Include "tui/tui-layout.h".
9785         (_initialize_tui_layout): Declare before definition.
9786         * tui/tui-regs.c: Include "tui/tui-regs.h".
9787         (tui_display_reg_element_at_line): Make it static.
9788         (_initialize_tui_regs): Declare before definition.
9789         * tui/tui-stack.c (_initialize_tui_stack): Declare before
9790         definition.
9791         * tui/tui-win.c: Include "tui/tui-win.h".
9792         (_initialize_tui_win): Declare before definition.
9793         (tui_sigwinch_handler): Make it static.  Wrap in ifdef SIGWINCH.
9794         * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
9795         (tui_get_cmd_list): Add a prototype.
9796         * tui/tui-windata.c: Include tui-windata.h.
9797         * tui/tui-wingeneral.c (box_win): Make it static.
9798         * cli/cli-logging.c (show_logging_command): Make it static.
9799         (_initialize_cli_logging): Declare before definition.
9800         * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
9801         definition.
9802
9803 2009-02-20  Pierre Muller  <muller@ics.u-strasbg.fr>
9804
9805         Extend use of i386_use_watchpoints to all i386 native files
9806         using hardware watchpoints.
9807         * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
9808         * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
9809         * windows-nat.c (init_windows_ops): Ditto.
9810         * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
9811         * config/i386/nm-cygwin64.h: Ditto.
9812         * config/i386/nm-fbsd.h: Ditto.
9813         * config/i386/nm-go32.h: Ditto.
9814
9815 2009-02-19  Joel Brobecker  <brobecker@adacore.com>
9816
9817         * ada-typeprint.c (ada_typedef_print): Remove.  Unused.
9818
9819 2009-02-18  Vladimir Prus  <vladimir@codesourcery.com>
9820
9821         * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
9822         (mi_interpreter_init): Register the above.
9823         * solib.c (clear_solib): Notify solib unload.
9824         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
9825         disable breakpoints on a.out targets.
9826
9827 2009-02-17  Vladimir Prus  <vladimir@codesourcery.com>
9828
9829         * observer.c (observer_test_first_notification_function)
9830         (observer_test_second_notification_function)
9831         (observer_test_third_notification_function): Adjust prototype.
9832
9833 2009-02-17  Pedro Alves  <pedro@codesourcery.com>
9834
9835         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
9836         (ALL_TARGET_OBS): Add dicos-tdep.o.
9837         (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
9838         * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
9839         gdb_target_obs.
9840         (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
9841         gdb_target_obs.
9842         * dicos-tdep.h, dicos-tdep.c: New.
9843         * amd64-dicos-tdep.c: New.
9844         * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
9845         inferior.h.  Include dicos-tdep.h.
9846         (i386_dicos_init_abi): Call dicos_init_abi.
9847         (i386_dicos_bfd_has_symbol_p): Delete.
9848         (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
9849
9850         * NEWS: Mention x86-64 DICOS target support.
9851
9852 2009-02-16  Doug Evans  <dje@google.com>
9853
9854         * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
9855         All callers updated.
9856         (amd64_get_insn_details): Handle more 3-byte opcode insns.
9857         (amd64_breakpoint_p): Delete.
9858         (amd64_displaced_step_fixup): When fixing up after stepping an int3,
9859         don't back up pc to the start of the int3.
9860         * i386-tdep.c: #include opcode/i386.h.
9861         (i386_skip_prefixes): New function.
9862         (i386_absolute_jmp_p): Constify argument.
9863         (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
9864         (i386_breakpoint_p): Delete.
9865         (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
9866         When fixing up after stepping an int3, don't back up pc to the start
9867         of the int3.
9868
9869 2009-02-16  Pedro Alves  <pedro@codesourcery.com>
9870
9871         * corelow.c (core_close): Don't hardcode the core's pid.
9872         (core_open): Find core threads before calling
9873         post_create_inferior.
9874         (add_to_thread_list, get_core_register_section): Take into account
9875         systems where the regset section names encode the pid of the
9876         inferior.
9877
9878         * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
9879         * gdbarch.h, gdbarch.c: Regenerate.
9880
9881         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
9882         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
9883         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
9884         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
9885
9886 2009-02-14  Vladimir Prus  <vladimir@codesourcery.com>
9887
9888         Include frame information for *stopped due to CLI commands.
9889
9890         * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
9891         * infcmd.c (finish_command_continuation): Pass '1' for
9892         'print_frame' parameter to the observer.
9893         * infrun.c (normal_stop): Don't print mi-specific information
9894         here. Pass 'stop_print_frame' to the 'print_frame' parameter
9895         of the observer.
9896         * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
9897         If we need to print frame, and current uiout is not the MI one,
9898         print frame again.
9899
9900 2009-02-13  Pierre Muller  <muller@ics.u-strasbg.fr>
9901
9902         * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
9903         Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
9904
9905 2009-02-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9906
9907         PR fortran/9806
9908         * dwarf2read.c (process_die <DW_TAG_module>, read_module)
9909         (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
9910
9911 2009-02-11  Pierre Muller  <muller@ics.u-strasbg.fr>
9912
9913         * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
9914         for DW_ATE_signed_char and DW_ATE_unsigned_char
9915         for pascal language.
9916
9917 2009-02-11  Jim Meyering  <meyering@redhat.com>
9918             Jan Kratochvil  <jan.kratochvil@redhat.com>
9919
9920         Avoid NULL dereference.
9921         * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
9922         New variable func_type.
9923
9924 2009-02-11  Pedro Alves  <pedro@codesourcery.com>
9925
9926         * gdbarch.c: Regenerate.
9927
9928 2009-02-10  Pierre Muller  <muller@ics.u-strasbg.fr>
9929
9930         * p-lang.c (is_pascal_string_type): Fix comment.
9931         Determine exact size of char elements for GPC
9932         strings.
9933         (pascal_printstr): Handle char width of 2 or 4.
9934         * p-valprint.c (pascal_val_print): Handle char
9935         of width 2 or 4.
9936
9937 2009-02-07  Daniel Jacobowitz  <dan@codesourcery.com>
9938
9939         * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
9940         inside the loop.  Only call addrmap_set_empty if the compilation unit
9941         had DW_AT_high_pc and DW_AT_low_pc.  Update call to
9942         scan_partial_symbols.
9943         (scan_partial_symbols): Take NEED_PC argument and pass it along with
9944         LOWPC and HIGHPC.
9945         (add_partial_namespace): Take NEED_PC argument and pass it through.
9946         (add_partial_subprogram): Take NEED_PC argument.  Update the addrmap
9947         if necessary.
9948
9949 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
9950
9951         * NEWS: Mention inspecting extra signal information, $_siginfo,
9952         and the qXfer:siginfo:read and qXfer:siginfo:write packets.
9953
9954 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
9955
9956         * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
9957         isn't defined.
9958
9959 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
9960
9961         * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
9962         (compat_timer_t, compat_clock_t, struct compat_timeval)
9963         (compat_sigval_t, compat_siginfo_t): New types.
9964         (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
9965         (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
9966         (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
9967         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
9968         (amd64_linux_siginfo_fixup): New.
9969         * linux-nat.c (linux_nat_siginfo_fixup): New.
9970         (siginfo_fixup): New.
9971         (linux_xfer_siginfo): Use siginfo_fixup to convert between the
9972         siginfo layout expected by ptrace and the siginfo layout of the
9973         inferior.
9974         (linux_nat_set_siginfo_fixup): New.
9975         * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
9976
9977 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
9978
9979         * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
9980         * infrun.c (siginfo_value_read, siginfo_value_write): New.
9981         (siginfo_value_funcs): New.
9982         (siginfo_make_value): New.
9983         (_initialize_infrun): Create the $_siginfo convenience variable.
9984         * gdbtypes.h (append_composite_type_field_aligned): Declare.
9985         * gdbtypes.c (append_composite_type_field): Rename to...
9986         (append_composite_type_field_aligned): ... this.  Add ALIGNMENT
9987         argument.  Handle it.
9988         (append_composite_type_field): Rewrite on top of
9989         append_composite_type_field_aligned.
9990         * value.h (internalvar_make_value): New typedef.
9991         (struct internalvar) <make_value>: New field.
9992         (create_internalvar_type_lazy): Declare.
9993         * value.c (create_internalvar): Clear make_value.
9994         (create_internalvar_type_lazy): New.
9995         (value_of_internalvar): If make_value is set use it.
9996         (preserve_values): Skip internal variables that don't have a
9997         value.
9998         * gdbarch.sh (get_siginfo_type): New.
9999         * gdbarch.h, gdbarch.c: Regenerate.
10000
10001         * linux-tdep.h, linux-tdep.c: New.
10002         * amd64-linux-tdep.c: Include "linux-tdep.h".
10003         (amd64_linux_init_abi): Register linux_get_siginfo_type and
10004         linux_get_siginfo_mapper.
10005         * i386-linux-tdep.c: Include "linux-tdep.h".
10006         (i386_linux_init_abi): Register linux_get_siginfo_type and
10007         linux_get_siginfo_mapper.
10008         * arm-linux-tdep.c: Include "linux-tdep.h".
10009         (i386_linux_init_abi): Register linux_get_siginfo_type and
10010         linux_get_siginfo_mapper.
10011
10012         * linux-nat.c (linux_xfer_siginfo): New.
10013         (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
10014         * remote.c (PACKET_qXfer_siginfo_read)
10015         (PACKET_qXfer_siginfo_write): New.
10016         (feature remote_protocol_features): Add "qXfer:siginfo:read" and
10017         "qXfer:siginfo:write" features.
10018         (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
10019         (_initialize_remote): Add "set/show remote read-siginfo-object"
10020         and "set/show remote write-siginfo-object" commands.
10021
10022         * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
10023         (HFILES_NO_SRCDIR): Add linux-tdep.h.
10024         (ALLDEPFILES): Add linux-tdep.c.
10025
10026         * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
10027         (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
10028         gdb_target_obs.
10029
10030 2009-02-06  Jim Blandy  <jimb@codesourcery.com>
10031             Daniel Jacobowitz  <dan@codesourcery.com>
10032             Vladimir Prus  <vladimir@codesourcery.com>
10033             Pedro Alves  <pedro@codesourcery.com>
10034
10035         * defs.h (enum lval_type): New value: lval_computed.
10036         * value.h (struct lval_funcs): New type.
10037         (allocate_computed_value, value_computed_funcs)
10038         (value_computed_closure): New declarations.
10039         * value.c (struct value): Add a structure to the location union
10040         for computed lvalues, containing 'funcs' and 'closure' members.
10041         (allocate_computed_value, value_computed_funcs)
10042         (value_computed_closure): New functions.
10043         (value_free): For computed lvalues, call the closure's
10044         'free_closure' function before freeing the value itself.
10045         (value_copy): If we're copying an lval_computed value, call the
10046         closure's 'copy_closure' function.
10047         (set_value_component_location): If the original value is a
10048         computed lvalue, then call the closure's 'copy_closure' function.
10049         (value_of_internalvar): If an internal variable's value is a
10050         computed lvalue, make retrieving its value produce an equivalent
10051         computed lvalue.
10052         * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
10053         their read function.
10054         (value_assign): Assign to computed lvalues by calling their write
10055         function.
10056
10057 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
10058
10059         * linux-nat.c (linux_nat_wait): Adjust.
10060         (linux_nat_pid_to_str): Adjust.  Remove call to thread_db_init.
10061         * linux-nat.h (thread_db_init): Delete declaration.
10062         * linux-thread-db.c (target_beneath): Delete.
10063         (thread_db_init): Delete.
10064         (thread_db_detach): Use find_target_beneath.
10065         (thread_db_wait): Adjust interface.  Use find_target_beneath.
10066         (thread_db_mourn_inferior): Use find_target_beneath.
10067         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
10068         (thread_db_async_mask): Delete.
10069         (thread_db_pid_to_str): Adjust interface.  Use
10070         find_target_beneath.
10071         (thread_db_get_thread_local_address): Adjust interface.  Use
10072         find_target_beneath.
10073         (init_thread_db_ops): Delete references to delete functions.
10074         * target.c (update_current_target): Don't inherit or default
10075         to_wait.  Don't inherit to_pid_to_str and
10076         to_get_thread_local_address.
10077         (target_translate_tls_address): Look for a pushed target that
10078         implements to_get_thread_local_address, and use it instead of
10079         checking for target_get_thread_local_address_p.
10080         (target_wait, target_pid_to_str): Reimplement as functions.
10081         (dummy_pid_to_str): New.
10082         (init_dummy_target): Register it.
10083         (debug_to_wait): Delete.
10084         * target.h (struct target_ops): Make to_wait, to_pid_to_str and
10085         to_get_thread_local_address accept a pointer to struct target_ops.
10086         (target_wait): Delete macro, and declare as function.
10087         (target_pid_to_str): Likewise.
10088         (target_get_thread_local_address)
10089         (target_get_thread_local_address_p): Delete.
10090         (noprocess): Add NORETURN and ATTR_NORETURN tags.
10091         * inf-ptrace.c (inf_ptrace_wait): Adjust.
10092         (inf_ptrace_pid_to_str): New.
10093         (inf_ptrace_target): Use inf_ptrace_pid_to_str.
10094         * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
10095         * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
10096         * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
10097         Adjust.
10098         * corelow.c (core_pid_to_str): Adjust.
10099         * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
10100         * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
10101         * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
10102         * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
10103         * hpux-thread.c (hpux_thread_wait): Adjust.
10104         * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
10105         * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
10106         * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
10107         * procfs.c (procfs_pid_to_str): Adjust.
10108         * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
10109         * remote-mips.c (mips_wait): Adjust.
10110         * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
10111         * remote.c (remote_wait, remote_pid_to_str)
10112         (remote_get_thread_local_address): Adjust.
10113         * rs6000-nat.c (rs6000_wait): Adjust.
10114         * sol-thread.c (procfs_pid_to_str): Adjust declaration.
10115         (sol_thread_wait, solaris_pid_to_str): Adjust.
10116         * spu-linux-nat.c (spu_child_wait): Adjust.
10117         * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
10118
10119 2009-02-06  Tom Tromey  <tromey@redhat.com>
10120
10121         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
10122         (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
10123         (python-cmd.o): New target.
10124         * cli/cli-decode.c (set_cmd_completer): Add self parameter to
10125         completer prototype.
10126         (add_cmd): Initialize destroyer member of cmd_list_element. Use
10127         make_symbol_completion_list_fn as completer.
10128         (delete_cmd): Call destroyer if one is set.
10129         * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
10130         completer member.  Add destroyer member.
10131         (set_cmd_completer): Add self parameter to
10132         completer prototype.
10133         * command.h (set_cmd_completer): Add cmd parameter to
10134         completer prototype.
10135         * completer.c (noop_completer, filename_completer,
10136         location_completer, expression_completer, command_completer): Adapt
10137         to new completer prototype.
10138         (complete_line_internal): Pass new parameter to completer function.
10139         * completer.h (noop_completer, filename_completer,
10140         location_completer, expression_completer, command_completer): Adapt
10141         prototypes to new completer prototype.
10142         * interps.c (interpreter_completer): Adapt to new completer
10143         prototype.
10144         * python/python-cmd.c: New file.
10145         * python/python-internal.h (gdbpy_initialize_commands): Add
10146         prototype.
10147         (gdbpy_doc_cst): Add forward declaration.
10148         * python/python.c (gdbpy_doc_cst): Declare.
10149         (_initialize_python): Call gdbpy_initialize_commands.  Initialize
10150         gdbpy_doc_cst.
10151         * symtab.c (make_symbol_completion_list_fn): New function.
10152         * symtab.h (make_symbol_completion_list_fn): Add prototype.
10153
10154 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
10155
10156         * target.c (target_get_osdata): Check for equal or higher than
10157         process_stratum, not dummy_stratum.
10158
10159 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
10160
10161         * remote.c (extended_remote_can_run): Delete.
10162         (init_remote_ops): Don't register it.
10163         * target.c (target_get_osdata): Don't check for target_can_run.
10164         Instead any target that has already been pushed, otherwise
10165         fallback to the default run target.
10166
10167 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
10168
10169         * target.c (target_create_inferior, target_detach)
10170         (target_mourn_inferior, target_attach, target_close): Do target
10171         debug output.
10172         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
10173         (debug_to_mourn_inferior, debug_to_close): Delete.
10174         (setup_target_debug): Adjust.
10175
10176 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
10177
10178         * target.h (target_stopped_data_address_p): Delete declaration,
10179         and don't define as macro.
10180         * target.c (target_stopped_data_address_p): Delete.
10181
10182 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10183             Tom Tromey  <tromey@redhat.com>
10184
10185         * python/python-utils.c (target_string_to_unicode): New function.
10186         * python/python-internal.h (target_string_to_unicode): New prototype.
10187         * python/python-value.c (valpy_string): New function.
10188         (value_object_methods): Add `string' entry.
10189
10190 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
10191
10192         * target.h (target_tid_to_str): Delete.
10193         * thread.c (print_thread_info, thread_apply_all_command)
10194         (thread_apply_command, thread_command, do_captured_thread_select):
10195         Use target_pid_to_str instead of target_tid_to_str.
10196         * linux-fork.c (delete_fork_command): Likewise.
10197
10198 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
10199
10200         * frame.c (has_stack_frames): Make public.
10201         (get_prev_frame): Don't allow a NULL this_frame anymore.
10202         * frame.h (has_stack_frames): Declare.
10203         * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
10204         to get_prev_frame, instead start at get_current_frame.
10205         (varobj_create): Check has_stack_frames before getting any frame;
10206         eliminate one usage of deprecated_safe_get_selected_frame.
10207
10208 2009-02-05  Tom Tromey  <tromey@redhat.com>
10209             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10210
10211         * python/python.c (GdbMethods): Move to bottom of file.
10212         (get_parameter, execute_gdb_command, gdbpy_write,
10213         gdbpy_flush): Remove forward declarations.
10214         (eval_python_from_control_command): Fix error checking of function
10215         PyRun_SimpleString.  Fix error string.
10216         (python_command): Likewise.
10217         (execute_gdb_command): Added from_tty argument.
10218
10219 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
10220
10221         * language.h (language_dfn): Add la_get_string member.
10222         (LA_GET_STRING): New macro.
10223         (default_get_string): New prototype.
10224         * language.c (default_get_string): New function.
10225         (unknown_language_defn, auto_language_defn, local_language_defn): Use
10226         default_get_string for la_get_string.
10227         * c-lang.c (c_get_string): New function.
10228         (c_language_defn, cplus_language_defn, asm_language_defn): Use
10229         c_get_string for la_get_string.
10230         (minimal_language_defn): Likewise
10231         * ada-lang.c (ada_language_defn): Likewise.
10232         * f-lang.c (f_language_defn): Use default_get_string for
10233         la_get_string.
10234         * jv-lang.c (java_language_defn): Likewise.
10235         * m2-lang.c (m2_language_defn): Likewise.
10236         * objc-lang.c (objc_language_defn): Likewise.
10237         * p-lang.c (p_language_defn): Likewise.
10238         * scm-lang.c (scm_language_defn): Likewise.
10239         * typeprint.c (type_to_string): New function.
10240         * value.h (type_to_string): New prototype.
10241         * valprint.c (val_print_string): Factor out code for reading string
10242         from the inferior into its own function.  Put 2 spaces after period
10243         in comments.
10244         (read_string): New function.
10245         * valprint.h (read_string): New prototype.
10246
10247 2009-01-07  Pierre Muller  <muller@ics.u-strasbg.fr>
10248             Tom Tromey  <tromey@redhat.com>
10249
10250         PR breakpoints/8079:
10251         * breakpoint.c (print_one_breakpoint): Use exp_string field
10252         to display expression of watchpoints.
10253         (mention): Likewise.
10254         (watch_command_1): Remove trailing whitespace from expression.
10255         * printcmd.c (struct display) <exp_string>: New field.
10256         (display_command): Set exp_string.
10257         (free_display): Free exp_string.
10258         (clear_displays): Use free_display.
10259         (do_one_display): Print exp_string.
10260         (display_info): Likewise.
10261
10262 2009-02-04  Tom Tromey  <tromey@redhat.com>
10263             Thiago Jung Bauermann  <bauerman@br.ibm.com>
10264             Phil Muldoon  <pmuldoon@redhat.com>
10265
10266         * python/python-internal.h (gdbpy_get_value_from_history): Rename
10267         prototype to gdbpy_history.
10268         (gdbpy_is_string): Declare.
10269         (python_string_to_host_string): Declare.
10270         * python/python-utils.c (gdbpy_is_string): New function.
10271         (unicode_to_encoded_string): New function.
10272         (unicode_to_target_string): Use it.
10273         (python_string_to_host_string): New function.
10274         * python/python-value.c (valpy_address): New function.
10275         (convert_value_from_python): Use gdbpy_is_string.  Change to throw
10276         Python exception instead of a GDB exception on error.  Properly check
10277         Python booleans.
10278         (valpy_getitem): Convert field name to host string.  Handle array
10279         accesses.  Adapt to new behaviour of convert_value_from_python.
10280         (valpy_new): Adapt to new behaviour of convert_value_from_python.
10281         (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
10282         VALPY_BITXOR, VALPY_BITOR>: New constants.
10283         (valpy_binop): Update.  Adapt to new behaviour of
10284         convert_value_from_python.
10285         (valpy_invert): New function.
10286         (valpy_lsh): Likewise.
10287         (valpy_rsh): Likewise.
10288         (valpy_and): Likewise.
10289         (valpy_or): Likewise.
10290         (valpy_xor): Likewise.
10291         (valpy_richcompare): Call convert_value_from_python instead of doing
10292         conversions itself.
10293         (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
10294         (gdbpy_get_value_from_history): Rename
10295         function to gdbpy_history.
10296         (gdbpy_initialize_values): Don't set tp_new.
10297         (value_object_type): Add valpy_new.
10298         (value_object_methods): Add `address' entry.
10299         (value_object_as_number): Update for new methods.
10300         * python/python.c (GdbMethods): Rename entry from
10301         `get_value_from_history' to `history'.
10302
10303 2009-02-04  Jerome Guitton  <guitton@adacore.com>
10304
10305         * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
10306         of type to guard against a crash.
10307
10308 2009-02-04  Jerome Guitton  <guitton@adacore.com>
10309
10310         * value.c (value_from_contents_and_address): Always return
10311         a lval_memory value, even if address is null.
10312
10313 2009-02-04  Tristan Gingold  <gingold@adacore.com>
10314
10315         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
10316         (amd64_darwin_sigcontext_addr): Ditto.
10317         (darwin_dwarf_signal_frame_p): Ditto.
10318         (i386_darwin_init_abi): Handle signal frames, use the const for
10319         sc_num_regs.
10320         (x86_darwin_init_abi_64): Ditto.
10321
10322 2009-02-04  Tristan Gingold  <gingold@adacore.com>
10323
10324         * i386-tdep.c (i386_sigtramp_p): Make it public.
10325         * i386-tdep.h (i386_sigtramp_p): Declare.
10326
10327 2009-02-04  Tristan Gingold  <gingold@adacore.com>
10328
10329         * machoread.c (macho_symfile_read): Read minsymtab also from
10330         shared libraries.
10331         (macho_symfile_read): Try to read dwarf2 frame info from main
10332         object file, but not from OSO files.
10333         (macho_symfile_offsets): Update section names for latest BFD
10334         changes.
10335         * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
10336         (x86_darwin_init_abi_64): Ditto.
10337         * solib-darwin.c: New file.
10338         * solib-darwin.h: New file.
10339         * configure.tgt: Add solib.o solib-darwin.o for Darwin.
10340
10341 2009-02-04  Tristan Gingold  <gingold@adacore.com>
10342
10343         * solist.h (struct target_so_ops): Comment fallback behavior for
10344         operation same.
10345
10346 2009-02-03  Tom Tromey  <tromey@redhat.com>
10347
10348         * completer.c (add_struct_fields): Check type_name against NULL
10349         before use.
10350
10351 2009-02-03  Joel Brobecker  <brobecker@adacore.com>
10352
10353         * MAINTAINERS: Update Elena's email address.
10354
10355 2009-02-02  Joel Brobecker  <brobecker@adacore.com>
10356
10357         * breakpoint (update_watchpoint): Minor comment adjustment.
10358
10359 2009-02-02  Tom Tromey  <tromey@redhat.com>
10360
10361         PR gdb/9594:
10362         * completer.c (count_struct_fields): Count method names.
10363         (add_struct_fields): Add matching method names.
10364
10365 2009-02-02  Doug Evans  <dje@google.com>
10366
10367         * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
10368         doing any further tcl/tk configury.  Don't configure gdbtk if
10369         tcl or tk check fails.
10370         * aclocal.m4: Regenerate.
10371         * configure: Regenerate.
10372
10373 2009-02-02  Tom Tromey  <tromey@redhat.com>
10374
10375         PR exp/9059:
10376         * valops.c (find_overload_match): Follow typedefs before taking
10377         address of object argument.
10378
10379 2009-02-01  Doug Evans  <dje@google.com>
10380
10381         * target.h (target_waitstatus_to_string): Declare.
10382         * target.c (target_waitstatus_to_string): New function.  Copied from
10383         debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
10384         TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
10385         TARGET_WAITKIND_NO_HISTORY.
10386         (debug_to_wait): Call it.
10387         * infrun.c (wait_for_inferior): If debug_infrun, print result of
10388         target_wait.
10389         (fetch_inferior_event): Ditto.
10390
10391 2009-01-30  Tom Tromey  <tromey@redhat.com>
10392
10393         * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
10394
10395 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10396
10397         PR 8145.
10398         * thread.c (do_captured_list_thread_ids): Report the current
10399         thread id.
10400
10401 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
10402
10403         * breakpoint.c (create_breakpoint, create_breakpoints)
10404         (break_command_really, set_breakpoint): New parameter enabled.
10405         (create_breakpoint, break_command_really): Make breakpoint
10406         disabled if so requested.
10407         * breakpoint.h (set_breakpoint): New parameter enabled.
10408         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
10409
10410 2009-01-28  Doug Evans  <dje@google.com>
10411
10412         * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
10413         (amd64_displaced_step_fixup): Declare.
10414         * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
10415         (amd64_arch_regmap): Move out of amd64_analyze_stack_align
10416         and make static global.
10417         (amd64_arch_regmap_len): New static global.
10418         (amd64_arch_reg_to_regnum): New function.
10419         (struct amd64_insn): New struct.
10420         (struct displaced_step_closure): New struct.
10421         (onebyte_has_modrm,twobyte_has_modrm): New static globals.
10422         (rex_prefix_p,skip_prefixes)
10423         (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
10424         (amd64_insn_length,amd64_get_unused_input_int_reg)
10425         (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
10426         (amd64_displaced_step_copy_insn)
10427         (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
10428         (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
10429         (amd64_displaced_step_fixup): New functions.
10430         * amd64-linux-tdep.c: #include arch-utils.h.
10431         (amd64_linux_init_abi): Install displaced stepping support.
10432
10433 2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
10434             Jerome Guitton  <guitton@adacore.com>
10435
10436         * configure, config.in: Regenerated.
10437         * configure.ac: Add --with-system-gdbinit.
10438         * main.c (get_init_files): New.
10439         (captured_main): Use get_init_files.  Load system gdbinit before
10440         $HOME/.gdbinit.
10441         (print_gdb_help): Print location of init files.
10442
10443 2009-01-28  Pedro Alves  <pedro@codesourcery.com>
10444
10445         * corefile.c (generic_search): Delete disabled code.
10446         * gdbcore.h (generic_search): Delete declaration.
10447
10448 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
10449
10450         * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
10451         parent to the child.
10452         * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
10453         * inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
10454         remove_breakpoints to remove breakpoints from the parent.
10455
10456 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
10457
10458         PR backtrace/9458, PR backtrace/8864:
10459         * frame.c (create_new_frame): Update the frame's cached PC before
10460         finding its unwinder.  Use frame_id_build to build the new frame's
10461         id.
10462         * stack.c (parse_frame_specification_1): Correct setting ``addrs''
10463         array values from the ``args'' array values.
10464
10465 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
10466
10467         * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
10468         (create_array_type, create_set_type, init_flags_type)
10469         (copy_type_recursive): Replace pairs of calls to XALLOC and memset
10470         with a call to XZALLOC or XCALLOC, and pairs of calls to
10471         obstack_alloc and memset with a call to OBSTACK_ZALLOC.
10472
10473 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
10474
10475         Add "maint set|show internal-error|internal-warning quit|corefile
10476         ask|yes|no" commands.
10477
10478         PR gdb/7580:
10479         * utils.c (internal_problem_ask, internal_problem_yes)
10480         (internal_problem_no, internal_problem_modes): New.
10481         (struct internal_problem): Remove FIXME.  Make should_quit and
10482         should_dump_core types to char *.
10483         (internal_vproblem, internal_error_problem)
10484         (internal_warning_problem): Adjust.
10485         (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
10486         functions.
10487         (add_internal_problem_command): New.
10488         (_initialize_utils): New.
10489
10490 2009-01-25  Pedro Alves  <pedro@codesourcery.com>
10491
10492         * infcmd.c (program_info): Use paddress instead of casting stop_pc
10493         to unsigned long.
10494
10495 2009-01-24  Pedro Alves  <pedro@codesourcery.com>
10496
10497         * infrun.c (normal_stop): Don't call
10498         deprecated_update_frame_pc_hack.
10499         * frame.c (deprecated_update_frame_pc_hack)
10500         (deprecated_update_frame_base_hack): Delete, and ...
10501         (create_new_frame): ... inline here.
10502         * frame.h (deprecated_update_frame_pc_hack)
10503         (deprecated_update_frame_base_hack): Delete declarations.
10504
10505 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
10506
10507         * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
10508         * cli/cli-setshow.c (do_setshow_command): Handle it.
10509         * command.h (enum var_types): Add var_zuinteger.
10510         (add_setshow_zuinteger_cmd): Declare.
10511
10512         * valprint.c (_initialize_valprint): Change the set input-radix
10513         and set output-radix commands to zuinteger type.
10514
10515 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
10516
10517         PR gdb/9664:
10518         * infrun.c (normal_stop): Tag threads as stopped, and run the
10519         hook-stop before printing the stack frame.
10520
10521 2009-01-22  Pedro Alves  <pedro@codesourcery.com>
10522
10523         PR c++/9631:
10524         * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
10525         vbasetype.
10526
10527 2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
10528
10529         * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
10530         unsigned long.
10531
10532 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
10533
10534         PR gdb/9346
10535         * infcmd.c (signal_command): Do not specify a resume PC.
10536
10537 2009-01-19  Doug Evans  <dje@google.com>
10538
10539         * dummy-frame.c (dummy_frame): Replace regcache member with
10540         caller_state.
10541         (dummy_frame_push): Replace caller_regcache arg with caller_state.
10542         All callers updated.
10543         (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
10544         (dummy_frame_pop): Rewrite.  Verify requested frame is in the
10545         dummy frame stack.  Restore program state.
10546         (cleanup_dummy_frames): Rewrite.
10547         (dummy_frame_sniffer): Update.  Make static.
10548         * dummy-frame.h (regcache,frame_info): Delete forward decls.
10549         (inferior_thread_state): New forward decl.
10550         (dummy_frame_push): Update prototype.
10551         * frame.c (frame_pop): dummy_frame_pop now does all the work for
10552         DUMMY_FRAMEs.
10553         * infcall.c (breakpoint_auto_delete_contents): Delete.
10554         (get_function_name,run_inferior_call): New fns.
10555         (call_function_by_hand): Simplify by moving some code to
10556         get_function_name, run_inferior_call.  Inferior function call wrapped
10557         in TRY_CATCH so there's less need for cleanups and all exits from
10558         proceed are handled similarily.  Detect program exit.
10559         Detect program stopping in a different thread.
10560         Make error messages more consistent.
10561         * inferior.h (inferior_thread_state): Declare (opaque type).
10562         (save_inferior_thread_state,restore_inferior_thread_state,
10563         make_cleanup_restore_inferior_thread_state,
10564         discard_inferior_thread_state, get_inferior_thread_state_regcache):
10565         Declare.
10566         (save_inferior_status): Update prototype.
10567         * infrun.c: (normal_stop): When stopped for the completion of an
10568         inferior function call, verify the expected stack frame kind.
10569         (inferior_thread_state): New struct.
10570         (save_inferior_thread_state,restore_inferior_thread_state,
10571         do_restore_inferior_thread_state_cleanup,
10572         make_cleanup_restore_inferior_thread_state,
10573         discard_inferior_thread_state,
10574         get_inferior_thread_state_regcache): New functions.
10575         (inferior_status): Move stop_signal, stop_pc, registers to
10576         inferior_thread_state.  Remove restore_stack_info.
10577         (save_inferior_status): Remove arg restore_stack_info.
10578         All callers updated.  Remove saving of state now saved by
10579         save_inferior_thread_state.
10580         (restore_inferior_status): Remove restoration of state now done by
10581         restore_inferior_thread_state.
10582         (discard_inferior_status): Remove freeing of registers, now done by
10583         discard_inferior_thread_state.
10584
10585 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
10586
10587         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
10588         at a time, times NUM_TO_SCROLL.
10589         * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
10590         fetch the selected frame if there is no stack.
10591
10592 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
10593
10594         PR gdb/9747:
10595         * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
10596         Declare.
10597         * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
10598         * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
10599         is thrown while handling an event, finish the thread state.
10600         (normal_stop): Use finish_thread_state cleanup.
10601         * infcmd.c (run_command_1): If an error is thrown while starting
10602         the inferior, finish the thread state.
10603
10604 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
10605
10606         * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
10607         skip breakpoints without a location (pending breakpoints).
10608
10609 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
10610
10611         PR build/9186:
10612         * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
10613
10614 2009-01-18  Nick Roberts  <nickrob@snap.net.nz>
10615
10616         * thread.c (thread_command): Move call to annotate_thread_changed
10617         to...
10618         (do_captured_thread_select): ... here, to avoid printing an
10619         annotation if the thread change generates an exception.
10620
10621 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
10622
10623         * NEWS: Document x86_64/MinGW as a new native configuration.
10624
10625 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
10626
10627         * NEWS: Move the documentation of "info os processes" to
10628         the appropriate section (documenting the new commands).
10629
10630 2009-01-15  Doug Evans  <dje@google.com>
10631
10632         * target.h (target_signal_to_string): Make return type const char *.
10633         (target_signal_to_name): Ditto.
10634         (target_signal_from_name): Make arg const char *.
10635         * infrun.c (sig_print_info): Update.
10636         * signals/signals.c (signals): Make array and struct members const.
10637         (target_signal_to_string): Make return type const char *.
10638         (target_signal_to_name): Ditto.
10639         (target_signal_from_name): Make arg const char *.
10640
10641 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
10642             Tristan Gingold  <gingold@adacore.com>
10643
10644         * solist.h (struct target_so_ops): New member bfd_open.
10645         (solib_find): Add prototype.
10646         (solib_bfd_fopen): Add prototype.
10647         * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
10648         from solib_bfd_open.
10649         (solib_bfd_open): Use ops->bfd_open override if present.  Call
10650         solib_find and solib_bfd_open otherwise.
10651
10652         * objfiles.h (OBJF_KEEPBFD): New define.
10653         * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
10654         objfile flag is set.
10655         * solib.c (symbol_add_stub): Do not allocate second BFD for
10656         shared library; use OBJF_KEEPBFD flag on solib objfile.
10657
10658 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
10659
10660         * frame.c (get_frame_arch): Abort if called with NULL this_frame.
10661
10662 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
10663
10664         * value.h (address_of_variable): Add prototype.
10665         (locate_var_value): Remove prototype.
10666
10667         * findvar.c (read_var_value): Do not attempt to default frame
10668         to selected frame.
10669         (locate_var_value): Remove function.
10670         * valops.c (value_of_variable): Retrieve selected frame for
10671         symbols that require a frame when called with NULL block.
10672         * valops.c (address_of_variable): New function.
10673
10674         * eval.c (evaluate_subexp_for_address): Call address_of_variable
10675         instead of calling locate_var_value.
10676         (evaluate_subexp_with_coercion): Likewise.
10677
10678 2009-01-14  Daniel Jacobowitz  <dan@codesourcery.com>
10679
10680         * NEWS: Document "define" for prefixed commands.
10681         * cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
10682         show_user_1 for prefix commands.
10683         * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
10684         * cli/cli-script.c (validate_comname): Rewrite to handle prefix
10685         commands.  Return the containing command list.
10686         (define_command, document_command): Update to handle prefix commands.
10687         (show_user_1): Add prefix and name arguments.  Handle prefix
10688         commands.
10689         * cli/cli-script.h (show_user_1): Update prototype.
10690
10691 2009-01-14  Kai Tietz  <kai.tietz@onevision.com>
10692
10693         * ser-mingw.c (console_select_thread): Add return to make
10694         compiler happy.
10695         (pipe_select_thread): Likewise.
10696         (file_select_thread): Likewise.
10697
10698 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
10699
10700         * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
10701         previous change.
10702
10703 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
10704
10705         * remote.c (extended_remote_mourn_1): Invalidate our notion of
10706         current general thread.
10707
10708 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
10709
10710         * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
10711         without a live selected thread.
10712
10713 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
10714
10715         Update the copyright notice of some of the files I missed
10716         in the previous copyright update.
10717
10718 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
10719
10720         * windows-nat.c (handle_unload_dll): Use %p to print the DLL
10721         base address instead of casting it to DWORD.
10722
10723 2009-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
10724
10725         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
10726         for NULL frame pointers.
10727
10728 2009-01-13  Mark Kettenis  <kettenis@gnu.org>
10729
10730         * utils.c (host_address_to_string): Reimplement in a way that
10731         avoids the cast of the address to long.
10732
10733 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
10734
10735         * mdebugread.c (parse_symbol): Save the symbol private data
10736         using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
10737         (psymtab_to_symtab_1): Likewise.
10738         (parse_procedure): Declare variable "e" only in the scope
10739         where it is used. Extract the symbol private data using
10740         SYMBOL_VALUE_BYTES.
10741
10742 2009-01-13  Jim Blandy  <jimb@codesourcery.com>
10743
10744         Abstract out common code for copying value locations.
10745
10746         * value.h (set_value_component_location): New declaration.
10747         * value.c (set_value_component_location): New function.
10748         (value_primitive_field): Use it.
10749         * valarith.c (value_subscript, value_subscripted_rvalue): Same.
10750         * valops.c (search_struct_field, value_slice): Same.
10751         * ada-lang.c (coerce_unspec_val_to_type)
10752         (ada_value_primitive_packed_val): Same.
10753
10754 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
10755
10756         * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
10757
10758 2009-01-12  Christopher Faylor  <me+cygwin@cgf.cx>
10759
10760         * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
10761         throughout.
10762         * i386-cygwin-tdep.c: Ditto.
10763         * i386-windows-nat.c: Ditto.
10764         * windows-nat.h: Ditto.
10765         * windows-tdep.c: Ditto.
10766         * windows-tdep.h: Ditto.
10767         * windows-nat.c: Ditto.
10768         (cygwin_load_start): Redefine as CORE_ADDR.
10769         (cygwin_load_end): Ditto.
10770         (windows_make_so): Coerce result of address arithmetic to uintptr_t
10771         before coercing to CORE_ADDR to avoid a compiler warning.
10772         (handle_exception): Define addr as CORE_ADDR and coerce
10773         ExceptionAddress to uintptr_t before assigining to avoid a compiler
10774         warning.
10775         * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
10776         files.
10777
10778 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
10779
10780         Fix linking with --enable-targets=all:
10781         * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
10782         (HFILES_NO_SRCDIR): Add windows-tdep.h.
10783         (ALLDEPFILES): Add windows-tdep.c.
10784
10785 2009-01-11  Chris Faylor  <me.gdb@cgf.cx>
10786
10787         * win32-nat.h: Delete.
10788         * windows-nat.h: Rename from win32-nat.h.
10789         * win32-nat.c: Delete.
10790         * windows-nat.c: Rename from win32-nat.c.
10791         * win32-termcap.c: Delete.
10792         * windows-termcap.c: Rename from win32-termcap.c.
10793         * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
10794         * configure.ac: Handle rename from win32-termcap.c ->
10795         windows-termcap.c.
10796         * configure: Regenerate.
10797         * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
10798         -> windows-termcap.c.
10799         * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
10800         windows-tdep.h.
10801         * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
10802         * windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
10803         windows-tdep.h.
10804         (win32_make_so): Handle cygwin compiler warning due to change of
10805         load_addr from DWORD to LPVOID.
10806         (handle_load_dll): Use %p in format string to properly print address
10807         and avoid a compiler warning.
10808         (DEBUG_EXCEPTION_SIMPLE): Ditto.
10809         (handle_exception): Ditto.
10810         * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
10811         * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
10812         windows-nat.o.
10813         * config/i386/mingw.mh: Ditto.
10814         * config/i386/mingw64.mh: Ditto.
10815
10816 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
10817
10818         * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
10819         arrayprint_recurse_level to a parameter.  Update all the callers.  New
10820         comment at autovariables.
10821
10822 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
10823
10824         * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
10825         coding style.
10826
10827 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
10828
10829         * target.c (target_xfer_partial): Use host_address_to_string to
10830         print the address of readbuf and writebuf. Cast the address of
10831         elements inside the myaddr buffer into intptr_t.
10832         (deprecated_debug_xfer_memory): Use paddress to print memaddr.
10833         Cast the address of elements inside the myaddr buffer into
10834         intptr_t.
10835
10836 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
10837
10838         * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
10839         * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
10840         * configure.host, configure.tgt: Add handling for x86_64/windows.
10841         * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
10842         and amd64-windows-tdep.c.
10843
10844 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
10845
10846         * win32-tdep.h, win32-tdep.c: New files.
10847         * i386-cygwin-tdep.h: Delete.
10848         * i386-cygwin-tdep.c: Include win32-tdep.h instead of
10849         i386-cygwin-tdep.h.
10850         (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
10851         * win32-nat.c: Likewise.
10852         * configure.tgt: Add win32-tdep.o to the list of target object
10853         files for i386-cygwin and i386-mingw targets.
10854
10855 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
10856
10857         * win32-nat.h: New file.
10858         * win32-nat.c (mappings): Initialize to NULL.
10859         (win32_set_context_register_offsets): New function.
10860         * i386-windows-nat.c: New file.
10861         (mappings): Moved here from win32-nat.c.
10862         (_initialize_i386_windows_nat): New function.
10863         * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
10864         * config/i386/cygwin.mh (NATDEPFILES): Likewise.
10865
10866 2009-01-09  Andreas Schwab  <schwab@suse.de>
10867
10868         * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
10869
10870 2009-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
10871
10872         * gdbtypes.c (append_composite_type_field): Correct the location of
10873         appended fields.
10874
10875 2009-01-09  Pedro Alves  <pedro@codesourcery.com>
10876
10877         * defs.h (deprecated_error_hook): Delete declaration.
10878         * interps.c (clear_interpreter_hooks): Adjust.
10879         * remote-sim.c (gdb_os_error): Don't try to call
10880         deprecated_error_hook.  No need to call exit anymore.
10881         * top.c (deprecated_error_hook): Delete.
10882
10883 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10884
10885         * arch-utils.c (gdbarch_update_p): Use host_address_to_string
10886         to print the address of the gdbarch pointer.
10887
10888 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10889
10890         * gdbarch.sh: Fix all the compilation errors on amd64-windows
10891         due to casting a pointer to a long when printing a function
10892         address. Instead, use host_address_to_string to convert our
10893         address to a string.
10894         * gdbarch.c: Regenerate.
10895
10896 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10897
10898         * event-top.c (async_disconnect, async_stop_sig): use "raise"
10899         instead of "kill" to raise a signal.
10900
10901 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10902
10903         * win32-nat.c (get_module_name): Change the type of parameter
10904         "base_address" to LPVOID.  Remove unnecessary cast.
10905         (struct lm_info): Change type of load_addr to LPVOID.
10906         (win32_make_so): Change the type of parameter "load_addr"
10907         to LPVOID.  Remove some unnecessary casts.
10908         (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
10909         (win32_xfer_shared_libraries): Add missing cast.
10910
10911 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10912
10913         * win32-nat.c (has_detach_ability, set_process_privilege):
10914         Cast the result of GetProcAddress to (void *) to avoid
10915         a compilation warning.
10916
10917 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10918
10919         * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
10920         already defined.
10921
10922 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10923
10924         * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
10925         definition of local variable "done".
10926         (info_w32_command, handle_exception): Remove unnecessary cast.
10927
10928 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10929
10930         * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
10931         DebugSetProcessKillOnExit.  Update all uses in this file.
10932         (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
10933         Update all uses in this file.
10934
10935 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10936
10937         * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
10938         and use it when pushing the target.
10939         (win32_attach, win32_create_inferior): Update call to
10940         do_initial_win32_stuff.
10941         (win32_detach, win32_mourn_inferior): Use our ops parameter
10942         instead of the global win32_ops to unpush the target.
10943
10944 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10945
10946         * ser-mingw.c (ser_windows_open): Use proper type when casting
10947         in call to _open_osfhandle.
10948
10949 2009-01-09  Kai Tietz  <kai.tietz@onevision.com>
10950
10951         * coff-pe-read.c (read_pe_exported_syms): Fix typo.
10952
10953 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
10954
10955         * CONTRIBUTE: Minor reformatting.
10956
10957 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
10958
10959         * MAINTAINERS: Add myself to Write After Approval.
10960         * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
10961         export directory.
10962
10963 2009-01-08  Nathan Froyd  <froydnj@codesourcery.com>
10964
10965         * remote-sim.c (gdb_os_error): Mark as a noreturn function.
10966         Call exit to make it obvious to GCC.
10967
10968 2009-01-08  Tom Tromey  <tromey@redhat.com>
10969
10970         PR breakpoints/9350:
10971         * varobj.c (varobj_invalidate): Unconditionally free
10972         all_rootvarobj.
10973         * symfile.c (syms_from_objfile): Free local_addr when returning
10974         normally.
10975         * exec.c (exec_file_attach): Do cleanups before returning.
10976         (exec_file_command): Likewise.
10977         * corefile.c (reopen_exec_file): Do cleanups before returning.
10978         * breakpoint.c (insert_breakpoint_locations): Do cleanups before
10979         returning.
10980         (do_vec_free): New function.
10981         (update_global_location_list): Make a cleanup for old_locations.
10982         Do cleanups before returning.  Remove unused variable 'e'.
10983         (find_condition_and_thread): Free result of parsing the
10984         expression.
10985         (print_it_typical): Do cleanups before returning.
10986         (breakpoint_re_set_one): Always free sals.sals.
10987
10988 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
10989             Emi Suzuki  <emi-suzuki@tjsys.co.jp>
10990
10991         * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
10992         watchpoints.
10993
10994 2009-01-07  Doug Evans  <dje@google.com>
10995
10996         * top.c (gdb_prompt_string): Delete, unused.
10997
10998 2009-01-07  Pedro Alves  <pedro@codesourcery.com>
10999
11000         Delete ONE_PROCESS_WRITETEXT leftovers.
11001
11002         * breakpoint.c (insert_bp_location): Delete process_warning
11003         argument.  Adjust.
11004         (insert_breakpoint_locations): Adjust.
11005         (reattach_breakpoints): Adjust.
11006         * infrun.c (normal_stop): Drop "It might be running in another
11007         process" notice.
11008
11009 2009-01-07  Stan Shebs  <stan@codesourcery.com>
11010
11011         * config/pa/linux.mh (XDEPFILES): Remove.
11012
11013 2009-01-07  Doug Evans  <dje@google.com>
11014
11015         * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
11016
11017 2009-01-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
11018
11019         * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
11020         spacing, a regression from 2008-04-22.
11021
11022 2009-01-07  Joel Brobecker  <brobecker@adacore.com>
11023
11024         * utils.c (gdb_print_host_address): Adjust implementation to
11025         reuse host_address_to_string. Move comment explaining the conversion
11026         from host address to string from here...
11027         (host_address_to_string): ... to there.
11028
11029 2009-01-07  Emi Suzuki  <emi-suzuki@tjsys.co.jp>
11030
11031         * MAINTAINERS: Add myself for write after approval privileges.
11032
11033 2009-01-06  Tom Tromey  <tromey@redhat.com>
11034
11035         * value.c (set_internalvar): Use value_free, not xfree.
11036
11037 2009-01-06  Jim Blandy  <jimb@red-bean.com>
11038
11039         Check return values of functions declared with warn_unused_result
11040         attribute in GLIBC 2.8.
11041         * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
11042         * inflow.c (check_syscall): New function.
11043         (new_tty): Use check_syscall to check return values from open and dup.
11044         * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
11045         * main.c (captured_main): Call cwd after setting up gdb_stderr;
11046         check for errors from getcwd.
11047         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
11048         * ui-file.c (stdio_file_write): Ignore return value from fwrite.
11049         (stdio_file_fputs): Same.
11050         * utils.c (internal_vproblem): abort if last-ditch error message
11051         write fails.
11052
11053         * top.c (gdb_init): Don't set the current directory here; that's
11054         already been done in captured_main.
11055
11056 2009-01-06  Sandra Loosemore  <sandra@codesourcery.com>
11057
11058         * ser-tcp.c: Adjust includes.
11059         (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
11060         (tcp_auto_retry, tcp_retry_limit): Declare.
11061         (TIMEOUT): Remove, in favor of tcp_retry_limit.
11062         (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
11063         (wait_for_connect): New function.
11064         (net_open): Use it.  Add auto-retry logic.
11065         (set_tcp_cmd, show_tcp_cmd): New functions.
11066         (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
11067         and "set/show tcp connect-timeout" commands.
11068         * NEWS: Document new commands.
11069
11070 2009-01-05  Tom Tromey  <tromey@redhat.com>
11071
11072         * python/python-internal.h (Py_ssize_t): Define as int.
11073
11074 2009-01-05  Jim Blandy  <jimb@red-bean.com>
11075
11076         * MAINTAINERS: Fix my e-mail address as steering committee member.
11077
11078 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
11079
11080         Updated copyright notices for most files.
11081
11082 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
11083
11084         * top.c (print_gdb_version): Update copyright year.
11085
11086 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
11087
11088         * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
11089
11090 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
11091
11092         PR breakpoints/9681:
11093         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
11094         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
11095         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
11096         retrow all other exceptions.
11097
11098 For older changes see ChangeLog-2008.
11099 \f
11100 Local Variables:
11101 mode: change-log
11102 left-margin: 8
11103 fill-column: 74
11104 version-control: never
11105 coding: utf-8
11106 End: