Fix typo in ChangeLog name (non-UTF8 character).
[external/binutils.git] / gdb / ChangeLog
1 2010-04-29  Phil Muldoon  <pmuldoon@redhat.com>
2             Tom Tromey  <tromey@redhat.com>
3             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4
5         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-parameter.
6         (SUBDIR_PYTHON_SRCS): Likewise.
7         (py-parameter.o): New rule.
8         * python/py-parameter.c: New file.
9         * python/python-internal.h (gdbpy_initialize_parameter)
10         (gdbpy_parameter, gdbpy_parameter_value)
11         (gdbpy_parse_command_name): Declare.
12         * python/py-cmd.c (parse_command_name): Rename to
13         gdbpy_parse_command_name.
14         (gdbpy_parse_command_name): Accept a starting list parameter and
15         use over cmdlist.
16         (cmdpy_init): Use gdbpy_parse_command_name.
17         * python/python.c (parameter_to_python): Rename to
18         gdbpy_parameter_to_python.  Accept enum var_types and value.
19         (gdbpy_parameter): Use gdbpy_parameter_value.
20         (_initialize_python): Call gdbpy_initialize_parameters.
21
22 2010-04-29  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
23
24         * MAINTAINERS: Add myself for write after approval privileges.
25
26 2010-04-29  Mihail Zenkov  <mihail.zenkov@gmail.com>
27
28         D language support.
29         * Makefile.in (SFILES): Add d-lang.c d-valprint.c.
30         (COMMON_OBS): Add d-lang.o d-valprint.o.
31         (HFILES_NO_SRCDIR): Add d-lang.h.
32         * NEWS: Mention D language support.
33         * c-lang.c (c_emit_char, exp_descriptor_c): Make public.
34         * c-lang.h (c_emit_char, exp_descriptor_c): Add declaration.
35         * d-lang.c: New file.
36         * d-lang.h: New file.
37         * d-valprint.c: New file.
38         * defs.h (enum language): Add language_d.
39         * dwarf2read.c (set_cu_language): Add DW_LANG_D.
40         * language.c (binop_result_type, integral_type, character_type)
41         (string_type, boolean_type, structured_type): Add language_d.
42         * symfile.c (init_filename_language_table): Add language_d.
43         * symtab.c: Include d-lang.h.
44         (symbol_init_language_specific, symbol_find_demangled_name)
45         (symbol_natural_name, lookup_symbol_in_language)
46         (symbol_demangled_name, symbol_matches_domain): Add language_d.
47
48 2010-04-27  Joel Brobecker  <brobecker@adacore.com>
49
50         * solib-svr4.c (solib_svr4_r_map): Expand function description.
51
52 2010-04-27  Joel Brobecker  <brobecker@adacore.com>
53
54         * symfile.c (init_filename_language_table): Register .dg files
55         with language_ada.
56
57 2010-04-27  Joel Brobecker  <brobecker@adacore.com>
58
59         * gdbtypes.h (struct main_type): Expand comment about target_type
60         field.
61
62 2010-04-27  Pedro Alves  <pedro@codesourcery.com>
63             Tristan Gingold  <gingold@adacore.com>
64
65         * symfile.c (reread_symbols): Also search for file in libraries.
66         Update comment.
67
68 2010-04-27  Joel Brobecker  <brobecker@adacore.com>
69
70         * configure.tgt: Treat x86-lynxos targets as x86 bareboard targets
71         in terms of configuration.
72
73 2010-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
74
75         * objfiles.c: Include solist.h.
76         (free_all_objfiles): New variable so.  Check stale solist objfiles.
77         * symfile.c (symbol_file_clear): Swap the order of free_all_objfiles
78         and no_shared_libraries.
79
80 2010-04-27  Joel Brobecker  <brobecker@adacore.com>
81
82         ARI warning fix.
83         * python/py-auto-load.c (source_section_scripts): Remove trailing
84         new-line in i18n string.
85
86 2010-04-26  Doug Evans  <dje@google.com>
87
88         * serial.c (serial_write): Handle serial_debug_p akin to serial_read.
89
90 2010-04-26  Tom Tromey  <tromey@redhat.com>
91
92         * cli/cli-decode.c (complete_on_cmdlist): Make two passes over the
93         command list.
94
95 2010-04-26  Pierre Muller  <muller@ics.u-strasbg.fr>
96
97         Removal of config/i386/nm-i386sol2.h native configuration file.
98         * config/i386/nm-i386sol2.h: Remove file.
99         * config/i386/i386sol2.mh: Remove NAT_FILE definition.
100         * config/i386/sol2-64.mh: Idem.
101         * config/djgpp/fnchange.lst: Remove reference to that file.
102         * Makefile.in (HFILES_NO_SRCDIR): Idem.
103
104 2010-04-26  Pierre Muller  <muller@ics.u-strasbg.fr>
105
106         PR breakpoints/11531.
107         * config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Remove
108         macro definition and related comment.
109         * infrun.c (CANNOT_STEP_HW_WATCHPOINTS): Remove macro.
110         (resume): Remove code and comment related to this macro.
111
112 2010-04-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
113
114         * cp-namespace.c (cp_lookup_symbol_in_namespace): Fix alloca size.
115         Fix whitespace.
116
117 2010-04-24  Pedro Alves  <pedro@codesourcery.com>
118
119         * defs.h: Adjust comment.
120         * filesystem.h, filesystem.c: New files.
121         * Makefile.in (SFILES): Add filesystem.c.
122         (COMMON_OBS): Add filesystem.o.
123         * solib.c (solib_find): Handle DOS-based filesystems.  Handle
124         different target and host path flavours.
125         * arm-symbian-tdep.c (arm_symbian_init_abi): Set
126         has_dos_based_file_system on the gdbarch.
127         * arm-wince-tdep.c (arm_wince_init_abi): Ditto.
128         * i386-cygwin-tdep.c (i386_cygwin_init_abi): Ditto.
129         * i386-tdep.c (i386_go32_init_abi): Ditto.
130         * gdbarch.sh (has_dos_based_file_system): New.
131         * gdbarch.h, gdbarch.c: Regenerate.
132         * NEWS: Mention improved support for remote targets with DOS-based
133         filesystems.  Mention new `set/show target-file-system-kind'
134         commands.
135
136 2010-04-23  Stan Shebs  <stan@codesourcery.com>
137
138         * ax.h (struct agent_expr): Merge in agent_reqs fields, add some
139         comments.
140         (struct agent_reqs): Remove.
141         (ax_reg_mask): Declare.
142         * ax-general.c (new_agent_expr): Add gdbarch argument, set new fields.
143         (free_agent_expr): Free reg_mask.
144         (ax_print): Add scope and register mask info.
145         (ax_reqs): Remove agent_reqs argument, use agent expression
146         fields, and move part of register mask computation to...
147         (ax_reg_mask): New function.
148         * ax-gdb.c (gen_trace_static_fields): Call it.
149         (gen_traced_pop): Ditto.
150         (is_nontrivial_conversion): Add dummy gdbarch to new_agent_expr.
151         (gen_trace_for_var): Pass gdbarch to new_agent_expr.
152         (gen_trace_for_expr): Ditto, and clear optimized_out flag.
153         (gen_eval_for_expr): Ditto, and require an rvalue.
154         (agent_command): Call ax_reqs.
155         (agent_eval_command): Ditto.
156         * tracepoint.c (report_agent_reqs_errors): Use agent expression fields.
157         (validate_action_line): Ditto.
158         (collect_symbol): Ditto.
159         (encode_actions_1): Ditto.
160
161 2010-04-23  Daniel Jacobowitz  <dan@codesourcery.com>
162             Paul Pluzhnikov  <ppluzhnikov@google.com>
163             Jan Kratochvil  <jan.kratochvil@redhat.com>
164
165         Fix deadlock on looped list of loaded shared objects.
166         * solib-svr4.c (LM_PREV): New function.
167         (IGNORE_FIRST_LINK_MAP_ENTRY): Use it.
168         (svr4_current_sos): Check for correct l_prev.  New variables prev_lm
169         and next_lm.  Clear prev_lm for solib_svr4_r_ldsomap.
170         * config/djgpp/fnchange.lst: Add translation for solib-corrupted.exp.
171
172 2010-04-23  Doug Evans  <dje@google.com>
173
174         * configure.ac (CONFIG_SRCS): Add py-auto-load.o even if not using
175         python.
176         * configure: Regenerate.
177         * main.c: #include "python/python.h".
178         (captured_main): Defer loading auto-loaded scripts until after
179         local_gdbinit has been sourced.
180         * python/py-auto-load.c (gdbpy_global_auto_load): New global.
181         (load_auto_scripts_for_objfile): New function.
182         (auto_load_new_objfile): Call it.
183         * python/python.h (gdbpy_global_auto_load): Declare.
184         (load_auto_scripts_for_objfile): Declare.
185
186         Add support for auto-loading scripts from .debug_gdb_scripts section.
187         * NEWS: Add entry for .debug_gdb_scripts.
188         * Makefile.in SUBDIR_PYTHON_OBS): Add py-auto-load.o.
189         (SUBDIR_PYTHON_SRCS): Add py-auto-load.c.
190         (py-auto-load.o): New rule.
191         * cli/cli-cmds.c (find_and_open_script): Make externally visible.
192         * cli/cli-cmds.h (find_and_open_script): Update prototype.
193         * python/py-auto-load.c: New file.
194         * python/python-internal.h: #include <stdio.h>.
195         (set_python_list, show_python_list): Declare.
196         (gdbpy_initialize_auto_load): Declare.
197         (source_python_script_for_objfile): Declare.
198         * python/python.c: Remove #include of observer.h.
199         (gdbpy_auto_load): Moved to py-auto-load.c.
200         (GDBPY_AUTO_FILENAME): Ditto.
201         (gdbpy_new_objfile): Delete.
202         (source_python_script_for_objfile): New function.
203         (set_python_list, show_python_list): Make externally visible.
204         (_initialize_python): Move "auto-load" command to py-auto-load.c
205         and observer_attach_new_objfile to py-auto-load.c.
206
207 2010-04-23  Jerome Guitton  <guitton@adacore.com>
208     
209         * alpha-tdep.c (INSN_OPCODE, MEM_RA, MEM_RB, MEM_DISP, BR_RA)
210         (OPR_FUNCTION, OPR_HAS_IMMEDIATE, OPR_RA, OPR_RC, OPR_LIT): New macros.
211         (lda_opcode, stq_opcode, bne_opcode, subq_opcode, subq_function):
212         New constants.
213         (alpha_heuristic_analyze_probing_loop): New function.
214         (alpha_heuristic_frame_unwind_cache): In the prologue analysis, detect
215         and handle cases when a stack probe loop is generated.
216         * alpha-mdebug-tdep.c (alpha_mdebug_frameless): New function.
217         (alpha_mdebug_max_frame_size_exceeded): New function.
218         (alpha_mdebug_after_prologue): Use alpha_mdebug_frameless.
219         (alpha_mdebug_frame_sniffer, alpha_mdebug_frame_base_sniffer):
220         Return 0 when the maximum debuggable frame size has been exceeded.
221
222 2010-04-23  Joel Brobecker  <brobecker@adacore.com>
223
224         Fix ARI warning.
225         * ppc-linux-nat.c (booke_cmp_hw_point): Do not mark inline.
226
227 2010-04-20  Chris Moller  <cmoller@redhat.com>
228
229         PR 10179
230
231         * symtab.c (rbreak_command): Added code to include a filename
232         specification in the rbreak argument.
233         * NEWS: Added a brief description of filename-qualified rbreak.
234
235 2010-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
236
237         Fix crashes on dangling display expressions.
238         * ada-lang.c (ada_operator_check): New function.
239         (ada_exp_descriptor): Fill-in the field operator_check.
240         * c-lang.c (exp_descriptor_c): Fill-in the field operator_check.
241         * jv-lang.c (exp_descriptor_java): Likewise.
242         * m2-lang.c (exp_descriptor_modula2): Likewise.
243         * scm-lang.c (exp_descriptor_scm): Likewise.
244         * parse.c (exp_descriptor_standard): Likewise.
245         (operator_check_standard): New function.
246         (exp_iterate, exp_uses_objfile_iter, exp_uses_objfile): New functions.
247         * parser-defs.h (struct exp_descriptor): New field operator_check.
248         (operator_check_standard, exp_uses_objfile): New declarations.
249         * printcmd.c: Remove the inclusion of solib.h.
250         (display_uses_solib_p): Remove the function.
251         (clear_dangling_display_expressions): Call lookup_objfile_from_block
252         and exp_uses_objfile instead of display_uses_solib_p.
253         * solist.h (struct so_list) <objfile>: New comment.
254         * symtab.c (lookup_objfile_from_block): Remove the static qualifier.
255         * symtab.h (lookup_objfile_from_block): New declaration.
256         (struct general_symbol_info) <obj_section>: Extend the comment.
257
258 2010-04-22  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
259             Thiago Jung Bauermann  <bauerman@br.ibm.com>
260
261         * ppc-linux-nat.c (PTRACE_GET_DEBUGREG): Update comment.
262         (PPC_PTRACE_GETWDBGINFO, PPC_PTRACE_SETHWDEBUG, PPC_PTRACE_DELHWDEBUG,
263         ppc_debug_info, PPC_DEBUG_FEATURE_INSN_BP_RANGE,
264         PPC_DEBUG_FEATURE_INSN_BP_MASK, PPC_DEBUG_FEATURE_DATA_BP_RANGE,
265         PPC_DEBUG_FEATURE_DATA_BP_MASK, ppc_hw_breakpoint,
266         PPC_BREAKPOINT_TRIGGER_EXECUTE, PPC_BREAKPOINT_TRIGGER READ,
267         PPC_BREAKPOINT_TRIGGER_WRITE, PPC_BREAKPOINT_TRIGGER_RW,
268         PPC_BREAKPOINT_MODE_EXACT PPC_BREAKPOINT_MODE_RANGE_INCLUSIVE,
269         PPC_BREAKPOINT_MODE_RANGE_EXCLUSIVE, PPC_BREAKPOINT_MODE_MASK,
270         PPC_BREAKPOINT_CONDITION_NONE, PPC_BREAKPOINT_CONDITION_AND,
271         PPC_BREAKPOINT_CONDITION_EXACT, PPC_BREAKPOINT_CONDITION_OR,
272         PPC_BREAKPOINT_CONDITION_AND_OR, PPC_BREAKPOINT_CONDITION_BE_ALL,
273         PPC_BREAKPOINT_CONDITION_BE_SHIFT, PPC_BREAKPOINT_CONDITION_BE):
274         Define, in case <ptrace.h> doesn't provide it.
275         (booke_debug_info): New variable.
276         (max_slots_number): Ditto.
277         (hw_break_tuple): New struct.
278         (thread_points): Ditto.
279         (ppc_threads): New variable.
280         (PPC_DEBUG_CURRENT_VERSION): New define.
281         (have_ptrace_new_debug_booke): New function.
282         (ppc_linux_check_watch_resources): Renamed to ...
283         (ppc_linux_can_use_hw_breakpoint): ... this.  Handle BookE processors.
284         (ppc_linux_region_ok_for_hw_watchpoint): Handle BookE processors.
285         (booke_cmp_hw_point): New function.
286         (booke_find_thread_points_by_tid): Ditto.
287         (booke_insert_point): Ditto.
288         (booke_remove_point): Ditto.
289         (ppc_linux_insert_hw_breakpoint): Ditto.
290         (ppc_linux_remove_hw_breakpoint): Ditto.
291         (get_trigger_type): Ditto.
292         (ppc_linux_insert_watchpoint): Handle BookE processors.
293         (ppc_linux_remove_watchpoint): Ditto.
294         (ppc_linux_new_thread): Ditto.
295         (ppc_linux_thread_exit): New function..
296         (ppc_linux_stopped_data_address): Handle BookE processors.
297         (ppc_linux_watchpoint_addr_within_range): Ditto.
298         (_initialize_ppc_linux_nat): Initialize to_insert_hw_breakpoint and
299         to_remove_hw_breakpoint fields of the target operations struct.
300         Add observe for the thread_exit event.
301
302 2010-04-22  H.J. Lu  <hongjiu.lu@intel.com>
303
304         * i386-linux-nat.c (regmap): Removed.
305         (fetch_register): Replace regmap with
306         i386_linux_gregset_reg_offset.
307         (store_register): Likewise.
308         (supply_gregset): Likewise.
309         (fill_gregset): Likewise.
310
311         * i386-linux-tdep.c (i386_linux_gregset_reg_offset): Make it
312         global.
313
314         * i386-linux-tdep.h (i386_linux_gregset_reg_offset): New.
315
316 2010-04-22  Chris Moller  <cmoller@redhat.com>
317
318         * cp-valprint.c (cp_print_value_fields): Replaced obstack_base()
319         method of popping recursion-detection stack with a method based on
320         obstack_object_size().  (Similar to the PR9167 patch below, but for
321         the static array obstack rather than the static member obstack.)
322
323 2010-04-22  H.J. Lu  <hongjiu.lu@intel.com>
324
325         * amd64-linux-nat.c (amd64_linux_gregset64_reg_offset): Removed.
326         (_initialize_amd64_linux_nat): Replace
327         amd64_linux_gregset64_reg_offset with
328         amd64_linux_gregset_reg_offset.
329
330         * amd64-linux-tdep.c (amd64_linux_gregset_reg_offset): Make it
331         global.
332
333         * amd64-tdep.h (amd64_linux_gregset_reg_offset): New.
334
335 2010-04-22  Pierre Muller  <muller@ics.u-strasbg.fr>
336
337         PR stabs/11479.
338         * stabsread.c (set_length_in_type_chain): New function.
339         (read_struct_type): Call set_length_in_type_chain function.
340         (read_enum_type): Idem.
341
342 2010-04-21  Stan Shebs  <stan@codesourcery.com>
343             Nathan Sidwell  <nathan@codesourcery.com>
344
345         * tracepoint.c (trace_save): Open in binary mode.
346
347 2010-04-22  Pierre Muller  <muller@ics.u-strasbg.fr>
348
349         * gdbtypes.h (builtin_type): Add builtin_char16 and builtin_char32
350         fields.
351         * gdbtypes.c (gdbtypes_post_init): Set builtin_char16 and 
352         builtin_char32 fields.
353         * printcmd.c (decode_format): Set char size to '\0'
354         for strings unless explicit size is given.
355         (print_formatted): Correct calculation of NEXT_ADDRESS
356         for 16 or 32 bit strings.
357         (do_examine): Do not force byte size for strings.
358         Use builtin_char16 and builtin_char32 types to display
359         16 or 32 bit-wide strings. 
360         (x_command): Set LAST_SIZE to 'b' for string type.
361
362 2010-04-21  H.J. Lu  <hongjiu.lu@intel.com>
363
364         PR corefiles/11523
365         * amd64-linux-tdep.c (amd64_linux_core_read_description): Check
366         XCR0 first.
367
368         * i386-linux-tdep.c (i386_linux_core_read_xcr0): Return 0 if
369         there is no .reg-xstate section.
370         (i386_linux_core_read_description): Check XCR0 first.
371
372 2010-04-21  Mike Frysinger  <vapier@gentoo.org>
373
374         * gdb/sparc-tdep.c (sparc32_store_return_value): Add gdb_assert ()
375         for len <= 8.
376
377 2010-04-21  Chris Moller  <cmoller@redhat.com>
378
379         PR 9167
380         * cp-valprint.c (cp_print_value_fields): Replaced obstack_base()
381         method of popping recursion-detection stack with a method based on
382         obstack_object_size().
383
384 2010-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
385
386         PR pascal/11492.
387         * p-valprint.c (pascal_val_print): Fix default printing of integer
388         arrays.
389
390 2010-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
391
392         Fix compilation warning on gcc-4.1.2.
393         * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Initialize
394         local variable`pc' to zero.
395
396 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
397
398         Implement thread support with core files on alpha-tru64.
399         * dec-thread.c (dec_thread_find_new_threads): New function,
400         extracted from resync_thread_list.
401         (resync_thread_list): Add OPS parameter.  Replace extracted-out
402         code by call to dec_thread_find_new_threads.
403         (dec_thread_wait): Update call to resync_thread_list.
404         (init_dec_thread_ops): Set dec_thread_ops.to_find_new_threads.
405
406 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
407
408         * ada-lang.c (value_pointer): New function.
409         (make_array_descriptor): Call value_pointer to convert addresses to
410         pointers.
411
412 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
413
414         * rs6000-aix-tdep.c: #include exceptions.h.
415         (rs6000_convert_from_func_ptr_addr): If an exception is thrown
416         while reading the memory at ADDR, then ADDR cannot be a function
417         descriptor.
418
419 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
420
421         * ada-typeprint.c (ada_print_typedef): New function.
422         * ada-lang.h (ada_print_typedef): Add declaration.
423         * ada-lang.c (ada_language_defn): set la_print_typdef field
424         to ada_print_typedef.
425
426 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
427
428         * procfs.c (procfs_address_to_host_pointer): Only define when used.
429
430 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
431
432         * procfs.c (iterate_over_mappings_cb_ftype): New typedef.
433         (iterate_over_mappings): Adjust function profile. Add declaration.
434         (insert_dbx_link_bpt_in_region, info_mappings_callback):
435         Adjust accordingly.
436
437 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
438
439         * procfs.c (solib_mappings_callback): Move function up to avoid
440         a compiler warning.
441
442 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
443
444         * procfs.c (find_signalled_thread, find_stop_signal): Move
445         these functions down to define them only when used.
446
447 2010-04-20  Joel Brobecker  <brobecker@adacore.com>
448
449         * valprint.c (common_val_print): Fix the value before extracting
450         its contents.
451         * ada-lang.c (ada_to_fixed_value): Make this function extern.
452         * ada-lang.h (ada_to_fixed_value): New function declaration.
453         * ada-valprint.c (ada_value_print): Use ada_to_fixed_value
454         to avoid code duplication and fix a bug in the handling of
455         fixed types contents.
456
457 2010-04-20  Tom Tromey  <tromey@redhat.com>
458
459         * dwarf2read.c (dwarf2_compute_name): Handle DW_AT_linkage_name.
460         (read_partial_die): Likewise.
461         (dwarf_attr_name): Likewise.
462
463 2010-04-20  Chris Moller  <cmoller@redhat.com>
464         
465         PR 10867
466
467         * cp-valprint.c (global): Adding new static array recursion
468         detection obstack.
469         (cp_print_value_fields, cp_print_static_field): Added new static
470         array recursion detection code.
471
472 2010-04-20  Mark Kettenis  <kettenis@gnu.org>
473
474         * i386-linux-tdep.c (i386_linux_regset_sections): Size of the
475         general-purpose register set should be 68 instead of 144.
476         (i386_linux_sse_regset_sections): Likewise.
477         (i386_linux_avx_regset_sections): Likewise.
478
479 2010-04-20  Stan Shebs  <stan@codesourcery.com>
480             Nathan Sidwell  <nathan@codesourcery.com>
481
482         * dwarf2loc.c (struct axs_var_loc): New struct.
483         (dwarf2_tracepoint_var_loc): New function.
484         (dwarf2_tracepoint_var_access): New function.
485         (dwarf2_tracepoint_var_ref): Use dwarf2_tracepoint_var_loc, deal
486         with DW_OP_piece.
487         (locexpr_describe_location_piece): New function.
488         (locexpr_describe_location_1): New function.
489         (locexpr_describe_location): Call it, update signature.
490         (loclist_describe_location): Rewrite to loop over locations,
491         update signature.
492         * symtab.h (struct symbol_computed_ops): Add address to
493         describe_location arguments, return void.
494         * printcmd.c (address_info): Get context PC, pass to computed
495         location description.
496         * tracepoint.c (scope_info): Ditto.
497         * ax-gdb.c (trace_kludge): Export.
498
499 2010-04-20  Tom Tromey  <tromey@redhat.com>
500
501         * dwarf2-frame.c (decode_frame_entry_1): Handle CIE version 4.
502         (struct dwarf2_cie) <segment_size>: New field.
503         * dwarf2read.c (partial_read_comp_unit_head): Accept DWARF 4.
504         (skip_one_die): Handle DW_FORM_flag_present, DW_FORM_sec_offset,
505         DW_FORM_exprloc.
506         (read_attribute_value): Handle DW_FORM_flag_present,
507         DW_FORM_sec_offset, DW_FORM_exprloc.
508         (dump_die_shallow): Likewise.
509         (attr_form_is_section_offset): Handle DW_FORM_sec_offset.
510         (dwarf2_const_value): Handle DW_FORM_exprloc.
511         (attr_form_is_block): Likewise.
512         (struct line_header) <maximum_ops_per_instruction>: New field.
513         (dwarf_decode_line_header): Set new field.
514         (dwarf_decode_lines): Handle new field.
515
516 2010-04-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
517
518         * f-exp.y: Add new production to recognize the `logical*8' type.
519         (LOGICAL_S8_KEYWORD): New token.
520         * f-lang.c (enum f_primitive_types)
521         <f_primitive_type_logical_s8>: New field.
522         (f_language_arch_info): Handling `logical*8' type.
523         (build_fortran_types): Building `logical*8' type.
524         * f-lang.h (struct builtin_f_type) <builtin_logical_s8>: New field.
525
526 2010-04-19  Doug Evans  <dje@google.com>
527
528         * ser-base.c (generic_readchar): Watch for EOF in read of error_fd.
529         * ser-pipe.c (pipe_open): Fix file descriptor leaks.
530         (pipe_close): Ditto.
531
532 2010-04-19  Pierre Muller  <muller@ics.u-strasbg.fr>
533
534         * configure.tgt (x86_64-*-mingw*): Set BUILD_GDBSERVER to yes.
535
536 2010-04-19  Pierre Muller  <muller@ics.u-strasbg.fr>
537
538         * windows-tdep.c (windows_get_tlb_type): Change current_seh.handle
539         type to void function.
540
541 2010-04-19  Stan Shebs  <stan@codesourcery.com>
542             Vladimir Prus  <vladimir@codesourcery.com>
543
544         * tracepoint.c (tfind_1): Add missing newline, report exit from
545         tfind mode as such.
546         * target.c (update_current_target): Make default
547         to_trace_find return -1.
548
549 2010-04-19  Mike Frysinger  <vapier@gentoo.org>
550
551         * objc-lang.c (find_methods): Move symname check up.
552
553 2010-04-19  Pedro Alves  <pedro@codesourcery.com>
554
555         * ada-lang.c (print_recreate_exception)
556         <ex_catch_exception_unhandled>: It's "catch exception unhandled",
557         not "catch unhandled".
558
559 2010-04-19  Pedro Alves  <pedro@codesourcery.com>
560
561         PR breakpoints/8554.
562
563         Implement `save-breakpoints'.
564
565         * breakpoint.c (save_cmdlist): New.
566         (breakpoint_set_cmdlist, breakpoint_show_cmdlist): Moved up close
567         to save_cmdlist.
568         (print_recreate_catch_fork): New.
569         (catch_fork_breakpoint_ops): Install it.
570         (print_recreate_catch_vfork): New.
571         (catch_vfork_breakpoint_ops): Install it.
572         (print_recreate_catch_syscall): New.
573         (catch_syscall_breakpoint_ops): Install it.
574         (print_recreate_catch_exec): New.
575         (catch_exec_breakpoint_ops): Install it.
576         (print_recreate_exception_catchpoint): New.
577         (gnu_v3_exception_catchpoint_ops): Install it.
578         (save_breakpoints): New, based on tracepoint_save_command, but
579         handle all breakpoint types.
580         (save_breakpoints_command): New.
581         (tracepoint_save_command): Rename to...
582         (save_tracepoints_command): ... this, and reimplement using
583         save_breakpoints.
584         (save_command): New.
585         (_initialize_breakpoints): Install the "save" command prefix.
586         Install the "save breakpoints" command.  Make "save-tracepoints" a
587         deprecated alias for "save tracepoints".
588         * breakpoint.h (struct breakpoint_ops): New field `print_recreate'.
589         * ada-lang.c (print_recreate_exception): New.
590         (print_recreate_catch_exception): New.
591         (catch_exception_breakpoint_ops): Install it.
592         (print_recreate_catch_exception_unhandled): New.
593         (catch_exception_unhandled_breakpoint_ops): Install it.
594         (print_recreate_catch_assert): New.
595         (catch_assert_breakpoint_ops): Install it.
596
597         * NEWS: Mention the new `save breakpoints' command.  Mention the
598         new `save tracepoints' alias and that `save-tracepoints' is now
599         deprecated.
600
601 2010-04-18  Pedro Alves  <pedro@codesourcery.com>
602
603         PR tui/9217
604
605         * tui/tui-out.c: Include cli-out.h.
606         (tui_table_begin, tui_table_body, tui_table_end, tui_table_header)
607         (tui_begin, tui_end, tui_field_int, tui_field_skip)
608         (tui_field_string, tui_field_fmt, tui_spaces, tui_text)
609         (tui_message, tui_wrap_hint, tui_flush): Delete forward
610         declarations.
611         (struct ui_out_data): Rename to...
612         (struct tui_ui_out_data): ... this.  Remove `stream' and
613         `suppress_output' fields, and inherit cli_ui_out_data.
614         (tui_out_data): New typedef.
615         (tui_ui_out_impl): Don't initialize fields staticaly.
616         (tui_table_begin, tui_table_body, tui_table_end, tui_table_header)
617         (tui_begin, tui_end): Delete.
618         (tui_field_int): Adjust to delegate most work to the base type.
619         (tui_field_skip): Delete.
620         (tui_field_string, tui_field_fmt): Adjust comment.  Adjust to
621         delegate most work to the base type.
622         (tui_spaces): Delete.
623         (tui_text): Adjust to delegate most work to the base type.
624         (tui_message): Delete.
625         (tui_wrap_hint): Delete.
626         (tui_flush): Delete.
627         (out_field_fmt): Delete.
628         (field_separator): Delete.
629         (tui_out_new): Adjust to initialize the base type.
630         (_initialize_tui_out): Initialize tui_ui_out_impl.
631         * cli-out.c (struct ui_out_data): Moved out to cli-out.h, renamed
632         cli_ui_out_data.
633         (cli_out_data): Adjust.
634         (cli_ui_out_impl): Make extern.
635         (cli_table_header, cli_field_int, cli_field_skip): Use
636         uo_field_string instead of cli_field_string.
637         (cli_redirect): Adjust to use cli_out_data.
638         (cli_out_data_ctor): New.
639         (cli_out_new): Use it.
640         * cli-out.h (struct ui_file): Remove forward declaration.
641         (struct cli_ui_out_data): New, moved from cli-out.c, and renamed.
642         (cli_ui_out_impl): Declare.
643         (cli_out_data_ctor): Declare.
644         * ui-out.c (struct ui_out) <data>: Change type to void pointer.
645         (uo_field_string): No longer static.
646         (ui_out_data): Change return type to void pointer.
647         (ui_out_new): Change `data' parameter type to void pointer.
648         * ui-out.h (struct ui_out_data): Don't forward declare.
649         (ui_out_data): Change return type to void pointer.
650         (ui_out_new): Change `data' parameter type to void pointer.
651         (uo_field_string): Declare.
652
653 2010-04-17  Pedro Alves  <pedro@codesourcery.com>
654
655         * ui-file.c (tee_file_isatty): Return whether `tee->one' is a tty,
656         instead of always false.
657
658 2010-04-17  H.J. Lu  <hongjiu.lu@intel.com>
659
660         PR corefiles/11511
661         * amd64-linux-tdep.c (amd64_linux_gregset_reg_offset): Support
662         orig_rax.
663
664 2010-04-17  Pedro Alves  <pedro@codesourcery.com>
665
666         * breakpoint.c (watchpoints_triggered): Use
667         is_hardware_watchpoint.
668         (watchpoints_triggered): Ditto.
669         (bpstat_check_location): Use is_watchpoint and
670         is_hardware_watchpoint.
671         (bpstat_check_watchpoint): Use is_watchpoint and
672         is_hardware_watchpoint.
673         (bpstat_stop_status): Fix comment.
674         (user_settable_breakpoint): Use is_watchpoint.
675         (hw_watchpoint_used_count): Use is_hardware_watchpoint.
676         (disable_watchpoints_before_interactive_call_start): Use
677         is_watchpoint.
678         (enable_watchpoints_after_interactive_call_stop): Use
679         is_watchpoint.
680         (clear_command): Use is_watchpoint.
681         (do_enable_breakpoint): Use is_watchpoint.
682
683 2010-04-16  Mike Frysinger  <vapier@gentoo.org>
684
685         * solib-frv.c (enable_break1_done): Delete.
686         (enable_break2): Do not check enable_break1_done.  Move the
687         enable_break2_done setting and call to
688         remove_solib_event_breakpoints() to the end.  Return without
689         warning when the contents of _dl_debug_addr are 0.
690         (enable_break): Do not set enable_break1_done.
691         (frv_clear_solib): Likewise.
692
693 2010-04-16  Kevin Buettner  <kevinb@redhat.com>
694
695         * m32c-tdep.c (m32c_m16c_address_to_pointer): Print warning
696         instead of an error if no PLT entry is found.  Return a
697         potentially useful result.
698         (m32c_m16c_pointer_to_address): Add code to search for function
699         address when no .plt entry is found.
700
701 2010-04-16  Stan Shebs  <stan@codesourcery.com>
702
703         * tracepoint.c (trace_variable_command): Run a cleanup.
704
705 2010-04-16  Pierre Muller  <muller@ics.u-strasbg.fr>
706
707         * p-lang.c (pascal_one_char): Do not restrict C to 0..255 range.
708
709 2010-04-16  Pierre Muller  <muller@ics.u-strasbg.fr>
710
711         Support for Windows OS Thread Information Block.
712         * NEWS: Document new feature.
713         * remote.c (PACKET_qGetTIBAddr): New enum element.
714         (remote_get_tib_address): New function.
715         (init_remote_ops): Set to_get_tib_address field
716         to remote_get_tib_address.
717         (_initialize_remote): Add add_packet_config_cmd
718         for PACKET_qGetTIBAddr.
719         * target.c (update_current_target): Set default value for
720         new to_get_tib_address field.
721         * target.h (target_ops): New field to_get_tib_address.
722         (target_get_tib_address): New macro.
723         * windows-nat.c (thread_info): Add thread_local_base field.
724         (windows_add_thread): Add tlb argument of type 'void *'.
725         (fake_create_process): Adapt windows_add_thread call.
726         (get_windows_debug_event): Idem.
727         (windows_get_tib_address): New function.
728         (init_windows_ops): Set to_get_tib_address field
729         to remote_get_tib_address.
730         (_initialize_windows_nat): Replace info_w32_cmdlist
731         initialization by a call to init_w32_command_list.
732         (info_w32_command, info_w32_cmdlist): Removed from here...
733         to windows-tdep.c file.
734         * windows-tdep.h (info_w32_cmdlist): Declare.
735         (init_w32_command_list): New external function 
736         declaration.
737         * windows-tdep.c: Add several headers.
738         (info_w32_cmdlist): to here, made global.
739         (thread_information_32): New struct.
740         (thread_information_64): New struct.
741         (TIB_NAME): New char array.
742         (MAX_TIB32, MAX_TIB64, FULL_TIB_SIZE): New constants.
743         (maint_display_all_tib): New static variable.
744         (windows_get_tlb_type): New function.
745         (tlb_value_read, tlb_value_write): New functions.
746         (tlb_value_funcs): New static struct.
747         (tlb_make_value): New function.
748         (display_one_tib): New function.
749         (display_tib): New function.
750         (show_maint_show_all_tib):New function.
751         (info_w32_command): Moved from windows-nat.c.
752         (init_w32_command_list): New function.
753         (_initialize_windows_tdep): New function.
754         New "maint set/show show-all-tib" command
755         New "$_tlb" internal variable.
756
757 2010-04-16  Joel Brobecker  <brobecker@adacore.com>
758
759         * tui/tui-regs.c (tui_display_register): Add comment about
760         a couple of casts.
761         * tui/tui-stack.c (tui_show_locator_content): Ditto.
762
763 2010-04-15  Stan Shebs  <stan@codesourcery.com>
764
765         * frame.c: Include tracepoint.h.
766         (get_current_frame): Allow a trace frame to be an alternate source
767         of stack frame data.
768         * tracepoint.c (tfind_1): Don't try to get current stack frame if
769         it won't succeed.
770
771 2010-04-15  Pedro Alves  <pedro@codesourcery.com>
772
773         * ppc-linux-tdep.c (bsd_uthread_solib_loaded): Always pass 0 for
774         flags.
775         * solib-spu.c (spu_solib_loaded): Always pass 0 for flags.
776
777 2010-04-15  Doug Evans  <dje@google.com>
778
779         * NEWS: Add entry for python program space support.
780         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-progspace.o.
781         (SUBDIR_PYTHON_SRCS): Add py-progspace.c.
782         (py-progspace.o): New rule.
783         * python/py-prettyprint.c (find_pretty_printer_from_objfiles): New
784         function.
785         (find_pretty_printer_from_progspace): New function.
786         (find_pretty_printer_from_gdb): New function.
787         (find_pretty_printer): Rewrite.
788         * python/py-progspace.c: New file.
789         * python/python-internal.h (program_space): Add forward decl.
790         (pspace_to_pspace_object, pspy_get_printers): Declare.
791         (gdbpy_initialize_pspace): Declare.
792         * python/python.c: #include "progspace.h".
793         (gdbpy_get_current_progspace, gdbpy_progspaces): New functions.
794         (_initialize_python): Call gdbpy_initialize_pspace.
795         (GdbMethods): Add current_progspace, progspaces.
796
797         Add -s option to source command.
798         * NEWS: Document new option.
799         * cli/cli-cmds.c (find_and_open_script): Add function comment.
800         Delete from_tty and cleanupp args.  Split filep arg into file and
801         full_pathp.  New arg search_path.
802         (source_script_from_stream): New function.
803         (source_script_with_search): New function.
804         (source_script): Rewrite.
805         (source_command): Parse "-s" option.
806         (init_cli_cmds): Add "-s" docs to source command help, and reformat.
807         * python/python.c (source_python_script): Make file arg a const char *.
808         Don't call fclose, leave for caller.
809         * python/python.h (source_python_script): Update.
810
811 2010-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
812             Pedro Alves  <pedro@codesourcery.com>
813
814         Avoid rereading shared libraries that haven't changed.
815
816         * solib.c (free_so_symbols): New function, from ...
817         (free_so): ... here.  Call it.
818         (solib_read_symbols): Don't warn here if symbols have already been
819         loaded.
820         (solib_add): Warn here instead, if a pattern was specified.
821         (reload_shared_libraries_1): New.
822         (reload_shared_libraries): Rewrite to not fetch the library list.
823
824 2010-04-14  Doug Evans  <dje@google.com>
825
826         * source.c (openp): Strip DOS drive letter if present before
827         concatenating string to search path.
828
829 2010-04-14  Pedro Alves  <pedro@codesourcery.com>
830
831         * objfiles.h (gdb_bfd_close_or_warn): Declare.
832         * objfiles.c (gdb_bfd_close_or_warn): New.
833         * corelow.c: Include objfiles.h
834         (core_close): Use gdb_bfd_close_or_warn.
835         * elfread.c (build_id_verify): Ditto.
836         * exec.c (exec_close, exec_close_1): Ditto.
837
838 2010-04-14  Daniel Jacobowitz  <dan@codesourcery.com>
839             Pedro Alves  <pedro@codesourcery.com>
840
841         Group errors for many missing shared libraries.
842
843         * solist.h (struct so_list): Remove from_tty.
844         * solib.c (solib_bfd_open): Return NULL if we failed to open a BFD.
845         (solib_map_sections): Take so_list argument.  Return 0 if we
846         failed to open a BFD.  Add target sections here.
847         (symbol_add_stub): Delete.
848         (solib_read_symbols): Inline symbol_add_stub.  Use current flags,
849         not from_tty copied from the so_list.  Don't warn a second time
850         for a missing library.
851         (update_solib_list): Don't save from_tty.  Use TRY_CATCH.  Do not
852         add to the section table here.  Print out a single warning for all
853         missing libraries.
854         * bsd-uthread.c (bsd_uthread_solib_loaded): Always pass 0 for
855         flags.
856
857 2010-04-14  Phil Muldoon  <pmuldoon@redhat.com>
858
859         * python/py-block.c (gdbpy_block_for_pc): Use i8n to encompass
860         error/warning messages.  Capitalize and use complete sentences.
861         (blpy_block_syms_iternext): Likewise.
862         * python/py-cmd.c (parse_command_name, cmdpy_init): Likewise.
863         * python/py-frame.c (FRAPY_REQUIRE_VALID, frapy_block)
864         (frame_info_to_frame_object, frapy_read_var)
865         (gdbpy_frame_stop_reason_string): Likewise.
866         * python/py-lazy-string.c (stpy_convert_to_value)
867         (gdbpy_create_lazy_string_object): Likewise.
868         * python/py-objfile.c (objfpy_set_printers): Likewise.
869         * python/py-prettyprint.c (gdbpy_default_visualizer): Likewise.
870         * python/python.c (parameter_to_python): Likewise.
871         * python/py-type.c (typy_range, typy_target): Likewise.
872         * python/py-value.c (valpy_cast, valpy_length, valpy_getitem)
873         (valpy_richcompare, valpy_int, valpy_long, valpy_float): Likewise.
874
875
876 2010-04-14  Phil Muldoon  <pmuldoon@redhat.com>
877
878         PR python/11381
879
880         * python/py-prettyprint.c (pretty_print_one_value): Test for
881         Py_None.
882         (print_string_repr): Test for Py_None.  Set flags accordingly.
883         Return value depending on return type.
884         (print_children): Take a value indicating whether data was printed
885         before this function was called.  Alter output accordingly.
886         (apply_val_pretty_printer): Capture return value from
887         print_string_repr and pass to print_children.
888
889 2010-04-13  Mark Kettenis  <kettenis@gnu.org>
890
891         PR corefiles/11481
892         * i386-linux-tdep.c (i386_linux_regset_sections): Remove extended
893         register note sections.
894         (i386_linux_sse_regset_sections, i386_linux_avx_regset_sections):
895         New variables.
896         (i386_linux_init_abi): Install list of supported register note
897         sections that matches the target description.
898
899 2010-04-13  Pedro Alves  <pedro@codesourcery.com>
900
901         * remote.c (remote_get_noisy_reply): Don't error out on empty
902         replies.
903         (remote_start_remote): Update and merge tracepoints and trace
904         state variables as long as the target supports tracepoints.
905         (remote_trace_init): Fix prototype.
906         (remote_download_trace_state_variable): Validate reply.
907         (remote_trace_set_readonly_regions): Fix prototype.
908         (remote_trace_start): Fix prototype.  Check for empty reply.
909         (remote_get_trace_status): Small cleanup.
910         (remote_trace_stop): Fix prototype.  Check for empty reply.
911         (remote_trace_find): Check for empty reply.
912         (remote_save_trace_data): Validate reply.
913         (remote_set_disconnected_tracing): Check for empty reply, and
914         validate reply.
915         (remote_set_circular_trace_buffer): Ditto.
916
917 2010-04-13  Pierre Muller  <muller@ics.u-strasbg.fr>
918
919         Suppress unused value warning during compilation.
920         * tui/tui-regs.c (tui_display_register): Cast wstandout and wstandend
921         calls to void.
922         * tui/tui-stack.c (tui_show_locator_content): Likewise.
923
924 2010-04-12  Stan Shebs  <stan@codesourcery.com>
925
926         * tracepoint.c (tfile_xfer_partial): Check read result.
927
928 2010-04-12  Mike Frysinger  <vapier@gentoo.org>
929
930         * remote-m32r-sdi.c (m32r_files_info): Add const to local "file" var.
931         * remote-sim.c (gdbsim_files_info): Likewise.
932
933 2010-04-12  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
934
935         * arm-tdep.h (gdb_regnum): Add ARM_FPSCR_REGNUM
936         * arm-linux-nat.c (arm_linux_vfp_register_count): New
937         variable.
938         (fetch_vfp_registers): New function to fetch VFP registers.
939         (store_vfp_registers): New function to store VFP registers.
940         (arm_linux_fetch_inferior_registers): Add support for VFP
941         registers.
942         (arm_linux_store_inferior_registers): Likewise.
943         (arm_linux_read_description): Likewise.
944         (_initialize_arm_linux_nat): Delay initialising iWMMX tdesc
945         until we need it.
946
947 2010-04-11  H.J. Lu  <hongjiu.lu@intel.com>
948
949         * amd64-tdep.c (amd64_supply_xstateregset): Remove the unused
950         tdep.
951         (amd64_collect_xstateregset): Likewise.
952
953 2010-04-09  Stan Shebs  <stan@codesourcery.com>
954
955         * tracepoint.c (trace_status_mi): Report frames created.
956
957         * tracepoint.c (trace_dump_command): Include default-collect
958         expressions.
959
960 2010-04-09  Ulrich Weigand  <uweigand@de.ibm.com>
961
962         * symtab.c (find_function_start_sal): Never return SAL pointing
963         before function start address, even if line info is missing.
964
965 2010-04-09  Pedro Alves  <pedro@codesourcery.com>
966
967         * NEWS: Mention tracepoints support.
968
969 2010-04-09  Pedro Alves  <pedro@codesourcery.com>
970
971         * tracepoint.c (trace_status_mi): Report disconnected tracing and
972         circular trace buffer statuses.
973
974 2010-04-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
975
976         * config/djgpp/fnchange.lst: Fix typo in translations for
977         symbol-without-target_section.exp and symbol-without-target_section.c.
978
979 2010-04-09  Pedro Alves  <pedro@codesourcery.com>
980
981         * breakpoint.c (condition_command): Pass condition expression to
982         set_breakpoint_condition stripped from breakpoint number.
983
984 2010-04-09  Phil Muldoon  <pmuldoon@redhat.com>
985             Thiago Jung Bauermann  <bauerman@br.ibm.com>
986             Tom Tromey  <tromey@redhat.com>
987
988         * breakpoint.c (condition_command): Simplify.  Move condition
989         setting code to ...
990         (set_breakpoint_condition): ... here.  New function.
991         * breakpoint.h  (set_breakpoint_condition): Declare.
992         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-breakpoint.
993         (SUBDIR_PYTHON_SRCS): Likewise.
994         (py-breakpoint.o): New rule.
995         * python/py-breakpoint.c: New file.
996         * python/python-internal.h (gdbpy_breakpoints)
997         (gdbpy_initialize_breakpoints): Declare.
998         (GDB_PY_SET_HANDLE_EXCEPTION) Define.
999
1000 2010-04-09  Pedro Alves  <pedro@codesourcery.com>
1001
1002         * regformats/regdat.sh: Include server.h.  Don't include
1003         regcache.h.
1004
1005 2010-04-08  Stan Shebs  <stan@codesourcery.com>
1006             Pedro Alves  <pedro@codesourcery.com>
1007
1008         * tracepoint.h (struct trace_status): New fields disconnected_tracing
1009         and circular_buffer.
1010         (disconnect_tracing): Rename from disconnect_or_stop_tracing.
1011         * tracepoint.c (trace_status_command): Display target's status for
1012         disconnected tracing and circular buffer.
1013         (disconnect_tracing): Rename from disconnect_or_stop_tracing, add
1014         query for non-disconnected-tracing case, remove the stop_tracing
1015         call.
1016         (tfile_open): Clear disconnected and circular buffer status.
1017         (trace_save): Save disconnected and circular buffer status.
1018         (parse_trace_status): Parse disconnected and circular buffer status,
1019         also recognize disconnected as a stop reason.
1020         * remote.c (remote_set_disconnected_tracing): Only set
1021         QTDisconnected if the remote end supports disconnected tracing.
1022         Warn otherwise, if trying to enable disconnected tracing.
1023         * infcmd.c (detach_command): Update disconnect_tracing call.
1024         * cli/cli-cmds.c (quit_command): Ditto.
1025
1026 2010-04-08  H.J. Lu  <hongjiu.lu@intel.com>
1027
1028         * i387-tdep.c (i387_collect_xsave): Replace abort with
1029         internal_error.
1030
1031 2010-04-08  Stan Shebs  <stan@codesourcery.com>
1032
1033         * breakpoint.c (default_collect_info): New function.
1034         (breakpoints_info): Call it.
1035         (maintenance_info_breakpoints): Ditto.
1036         (tracepoints_info): Ditto.
1037
1038 2010-04-08  H.J. Lu  <hongjiu.lu@intel.com>
1039
1040         * i387-tdep.c (i387_collect_xsave): Re-indent.
1041
1042 2010-04-08  H.J. Lu  <hongjiu.lu@intel.com>
1043
1044         * i386-linux-nat.c (have_ptrace_getfpxregs): Initialize to -1
1045         if HAVE_PTRACE_GETFPXREGS is defined.
1046         (i386_linux_read_description): Set have_ptrace_getfpxregs and
1047         have_ptrace_getregset to 0 if ptrace PTRACE_GETFPXREGS failed.
1048
1049         * i386-linux-tdep.c: Include "features/i386/i386-mmx-linux.c"
1050         (i386_linux_core_read_description): Return tdesc_i386_mmx_linux
1051         if .reg-xfp section doesn't exist.
1052         (_initialize_i386_linux_tdep): Call initialize_tdesc_i386_mmx_linux.
1053
1054         * i386-linux-tdep.h (tdesc_i386_mmx_linux): New.
1055
1056         * i386-tdep.c: Include "features/i386/i386-mmx.c".
1057         (i386_go32_init_abi): Set tdesc to tdesc_i386_mmx.
1058         (i386_validate_tdesc_p): Make org.gnu.gdb.i386.sse optional.  Set
1059         xcr0 to I386_XSTATE_X87_MASK if SSE isn't available.
1060         (i386_gdbarch_init): Update comments.
1061         (_initialize_i386_tdep): Call initialize_tdesc_i386_mmx.
1062
1063         * common/i386-xstate.h (I386_XSTATE_X87_MASK): New.
1064
1065         * config/djgpp/fnchange.lst: Add i386 MMX XML files.
1066
1067         * features/Makefile (i386/i386-mmx-expedite): New.
1068         (i386/i386-mmx-linux-expedite): Likewise.
1069         ($(outdir)/i386/i386-mmx.dat): Likewise.
1070         ($(outdir)/i386/i386-mmx-linux.dat): Likewise.
1071
1072         * features/i386/i386-mmx-linux.c: New.
1073         * features/i386/i386-mmx-linux.xml: Likewise.
1074         * features/i386/i386-mmx.c: Likewise.
1075         * features/i386/i386-mmx.xml: Likewise.
1076         * regformats/i386/i386-mmx-linux.dat: Likewise.
1077         * regformats/i386/i386-mmx.dat: Likewise.
1078
1079         * features/Makefile (WHICH): Add i386/i386-mmx and
1080         i386/i386-mmx-linux.
1081
1082 2010-04-08  Doug Evans  <dje@google.com>
1083
1084         * source.c (openp): Skip $cdir in PATH.
1085
1086 2010-04-08  Phil Muldoon  <pmuldoon@redhat.com>
1087
1088         PR python/11417
1089         * python/py-lazy-string.c (stpy_convert_to_value): Check for
1090         a NULL address.
1091         (gdbpy_create_lazy_string_object): Allow strings with a NULL
1092         address and a zero length.
1093
1094 2010-04-08  Hui Zhu  <teawater@gmail.com>
1095
1096         * i386-tdep.c (i386_process_record): Add support for insn
1097         rdtsc.
1098
1099 2010-04-07  Doug Evans  <dje@google.com>
1100
1101         * python/python.c (source_python_script): Use ensure_python_env
1102         to prepare environment for script.
1103
1104 2010-04-07  H.J. Lu  <hongjiu.lu@intel.com>
1105
1106         * amd64-linux-nat.c: Include "regset.h", "elf/common.h",
1107         <sys/uio.h> and "i386-xstate.h".
1108         (PTRACE_GETREGSET): New.
1109         (PTRACE_SETREGSET): Likewise.
1110         (have_ptrace_getregset): Likewise.
1111         (amd64_linux_gregset64_reg_offset): Include 16 upper YMM
1112         registers.
1113         (amd64_linux_gregset32_reg_offset): Include 8 upper YMM
1114         registers.
1115         (amd64_linux_fetch_inferior_registers): Support PTRACE_GETFPREGS.
1116         (amd64_linux_store_inferior_registers): Likewise.
1117         (amd64_linux_read_description): Check and enable AVX target
1118         descriptions.
1119
1120         * amd64-linux-tdep.c: Include "regset.h", "i386-linux-tdep.h"
1121         and "features/i386/amd64-avx-linux.c".
1122         (amd64_linux_regset_sections): New.
1123         (amd64_linux_core_read_description): Check and enable AVX
1124         target description.
1125         (amd64_linux_init_abi): Set xsave_xcr0_offset.  Call
1126         set_gdbarch_core_regset_sections.
1127         (_initialize_amd64_linux_tdep): Call
1128         initialize_tdesc_amd64_avx_linux.
1129
1130         * amd64-linux-tdep.h (AMD64_LINUX_ORIG_RAX_REGNUM): Replace
1131         AMD64_MXCSR_REGNUM with AMD64_YMM15H_REGNUM.
1132         (tdesc_amd64_avx_linux): New.
1133         (amd64_linux_update_xstateregset): Likewise.
1134
1135         * amd64-tdep.c: Include "features/i386/amd64-avx.c".
1136         (amd64_ymm_names): New.
1137         (amd64_ymmh_names): Likewise.
1138         (amd64_register_name): Likewise.
1139         (amd64_supply_xstateregset): Likewise.
1140         (amd64_collect_xstateregset): Likewise.
1141         (amd64_supply_xsave): Likewise.
1142         (amd64_collect_xsave): Likewise.
1143         (AMD64_NUM_REGS): Removed.
1144         (amd64_dwarf_reg_to_regnum): Return %ymmN register number for
1145         %xmmN if AVX is available.
1146         (amd64_pseudo_register_name): Support pseudo YMM registers.
1147         (amd64_regset_from_core_section): Support .reg-xstate section.
1148         (amd64_init_abi): Set ymmh_register_names, num_ymm_regs
1149         and ymm0h_regnum.  Call set_gdbarch_register_name.
1150         (amd64_init_abi): Call initialize_tdesc_amd64_avx.
1151
1152         * amd64-tdep.h (amd64_regnum): Add AMD64_YMM0H_REGNUM and
1153         AMD64_YMM15H_REGNUM.
1154         (AMD64_NUM_REGS): New.
1155         (amd64_supply_xsave): Likewise.
1156         (amd64_collect_xsave): Likewise.
1157         (amd64_register_name): Removed.
1158         (amd64_register_type): Likewise.
1159
1160 2010-04-07  H.J. Lu  <hongjiu.lu@intel.com>
1161
1162         * i387-tdep.c: Include "i386-xstate.h".
1163         (XSAVE_XSTATE_BV_ADDR): New.
1164         (xsave_avxh_offset): Likewise.
1165         (XSAVE_AVXH_ADDR): Likewise.
1166         (i387_supply_xsave): Likewise.
1167         (i387_collect_xsave): Likewise.
1168
1169         * i387-tdep.h (I387_NUM_YMM_REGS): New.
1170         (I387_YMM0H_REGNUM): Likewise.
1171         (I387_YMMENDH_REGNUM): Likewise.
1172         (i387_supply_xsave): Likewise.
1173         (i387_collect_xsave): Likewise.
1174
1175 2010-04-07  H.J. Lu  <hongjiu.lu@intel.com>
1176
1177         * i386-linux-nat.c: Include "regset.h", "elf/common.h",
1178         <sys/uio.h> and "i386-xstate.h".
1179         (PTRACE_GETREGSET): New.
1180         (PTRACE_SETREGSET): Likewise.
1181         (fetch_xstateregs): Likewise.
1182         (store_xstateregs): Likewise.
1183         (GETXSTATEREGS_SUPPLIES): Likewise.
1184         (regmap): Include 8 upper YMM registers.
1185         (i386_linux_fetch_inferior_registers): Support XSAVE extended
1186         state.
1187         (i386_linux_store_inferior_registers): Likewise.
1188         (i386_linux_read_description): Check and enable AVX target
1189         descriptions.
1190
1191         * i386-linux-tdep.c: Include "regset.h", "i387-tdep.h",
1192         "i386-xstate.h" and "features/i386/i386-avx-linux.c".
1193         (i386_linux_regset_sections): Add ".reg-xstate".
1194         (i386_linux_gregset_reg_offset): Include 8 upper YMM registers.
1195         (i386_linux_core_read_xcr0): New.
1196         (i386_linux_core_read_description): Check and enable AVX target
1197         description.
1198         (i386_linux_init_abi): Set xsave_xcr0_offset.
1199         (_initialize_i386_linux_tdep): Call
1200         initialize_tdesc_i386_avx_linux.
1201
1202         * i386-linux-tdep.h (I386_LINUX_ORIG_EAX_REGNUM): Replace
1203         I386_SSE_NUM_REGS with I386_AVX_NUM_REGS.
1204         (i386_linux_core_read_xcr0): New.
1205         (tdesc_i386_avx_linux): Likewise.
1206         (I386_LINUX_XSAVE_XCR0_OFFSET): Likewise.
1207
1208         * i386-tdep.c: Include "i386-xstate.h" and
1209         "features/i386/i386-avx.c".
1210         (i386_ymm_names): New.
1211         (i386_ymmh_names): Likewise.
1212         (i386_ymmh_regnum_p): Likewise.
1213         (i386_ymm_regnum_p): Likewise.
1214         (i386_xmm_regnum_p): Likewise.
1215         (i386_register_name): Likewise.
1216         (i386_ymm_type): Likewise.
1217         (i386_supply_xstateregset): Likewise.
1218         (i386_collect_xstateregset): Likewise.
1219         (i386_sse_regnum_p): Removed.
1220         (i386_pseudo_register_name): Support pseudo YMM registers.
1221         (i386_pseudo_register_type): Likewise.
1222         (i386_pseudo_register_read): Likewise.
1223         (i386_pseudo_register_write): Likewise.
1224         (i386_dbx_reg_to_regnum): Return %ymmN register number for
1225         %xmmN if AVX is available.
1226         (i386_regset_from_core_section): Support .reg-xstate section.
1227         (i386_register_reggroup_p): Supper upper YMM and YMM registers.
1228         (i386_process_record): Replace i386_sse_regnum_p with
1229         i386_xmm_regnum_p.
1230         (i386_validate_tdesc_p): Support org.gnu.gdb.i386.avx feature.
1231         Set ymmh_register_names, num_ymm_regs, ymm0h_regnum and xcr0.
1232         (i386_gdbarch_init): Set xstateregset.  Set xsave_xcr0_offset.
1233         Call set_gdbarch_register_name.  Replace I386_SSE_NUM_REGS with
1234         I386_AVX_NUM_REGS.  Set ymmh_register_names, ymm0h_regnum and
1235         num_ymm_regs.  Add num_ymm_regs to set_gdbarch_num_pseudo_regs.
1236         Set ymm0_regnum.
1237         (_initialize_i386_tdep): Call initialize_tdesc_i386_avx.
1238
1239         * i386-tdep.h (gdbarch_tdep): Add xstateregset, ymm0_regnum,
1240         xcr0, xsave_xcr0_offset, ymm0h_regnum, ymmh_register_names and
1241         i386_ymm_type.
1242         (i386_regnum): Add I386_YMM0H_REGNUM, and I386_YMM7H_REGNUM.
1243         (I386_AVX_NUM_REGS): New.
1244         (i386_xmm_regnum_p): Likewise.
1245         (i386_ymm_regnum_p): Likewise.
1246         (i386_ymmh_regnum_p): Likewise.
1247
1248         * common/i386-xstate.h: New.
1249
1250 2010-04-07  H.J. Lu  <hongjiu.lu@intel.com>
1251
1252         * config/djgpp/fnchange.lst: Add x86 AVX XML files.
1253
1254         * features/Makefile (WHICH): Add i386/i386-avx,
1255         i386/i386-avx-linux, i386/x86-64-avx and i386/x86-64-avx-linux.
1256         (i386/i386-avx-expedite): New.
1257         (i386/i386-avx-linux-expedite): Likewise.
1258         (i386/x86-64-avx-expedite):Likewise.
1259         (i386/x86-64-avx-linux-expedite): Likewise.
1260         ($(outdir)/i386/i386-avx.dat): New dependency.
1261         ($(outdir)/i386/i386-avx-linux.dat): Likewise.
1262         ($(outdir)/i386/x86-avx-64.dat): Likewise.
1263         ($(outdir)/i386/x86-64-avx-linux.dat): Likewise.
1264
1265         * features/i386/32bit-avx.xml: New.
1266         * features/i386/64bit-avx.xml: Likewise.
1267         * features/i386/i386-avx-linux.c: Likewise.
1268         * features/i386/i386-avx-linux.xml: Likewise.
1269         * features/i386/i386-avx.c: Likewise.
1270         * features/i386/i386-avx.xml: Likewise.
1271         * features/i386/x86-64-avx-linux.c: Likewise.
1272         * features/i386/x86-64-avx-linux.xml: Likewise.
1273         * features/i386/x86-64-avx.c: Likewise.
1274         * features/i386/x86-64-avx.xml: Likewise.
1275         * regformats/i386/i386-avx-linux.dat: Likewise.
1276         * regformats/i386/i386-avx.dat: Likewise.
1277         * regformats/i386/x86-64-avx-linux.dat: Likewise.
1278         * regformats/i386/x86-64-avx.dat: Likewise.
1279
1280 2010-04-07  Doug Evans  <dje@google.com>
1281
1282         * top.c (source_file_name): Make const char *.
1283         * top.h (source_file_name): Update.
1284         * cli/cli-script.c (source_cleanup_lines_args): Make old_file
1285         const char *.
1286         (script_from_file): Change `file' arg to const char *.
1287         * cli/cli-script.h (script_from_file): Update.
1288
1289 2010-04-06  Doug Evans  <dje@google.com>
1290
1291         * cli/cli-cmds.c (source_command): Run cleanups.
1292
1293 2010-04-06  Stan Shebs  <stan@codesourcery.com>
1294
1295         * defs.h (char_ptr): Move typedef here from...
1296         * ada-lang.c (char_ptr): Remove.
1297         * charset.c (char_ptr): Remove.
1298         * tracepoint.h (struct uploaded_string): Remove.
1299         (struct uploaded_tp): Use vectors for string arrays.
1300         * tracepoint.c (trace_save): Use vectors of actions.
1301         (parse_tracepoint_definition): Ditto.
1302         (get_uploaded_tp): Clear vectors.
1303         * breakpoint.c (create_tracepoint_from_upload): Use vectors.
1304         (next_cmd): Change to an int.
1305         (read_next_cmd): Use vector of command strings.
1306
1307 2010-04-06  Doug Evans  <dje@google.com>
1308
1309         * top.h (source_script, cd_command): Delete.
1310         * main.c: #include "cli/cli-cmds.h"
1311
1312 2010-04-06  Kevin Buettner  <kevinb@redhat.com>
1313
1314         * m32c-tdep.c (make_types): When calling `arch_type', pass size of
1315         type in bytes, not bits.
1316
1317 2010-04-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1318
1319         * stabsread.c (define_symbol): Add support for char
1320         and string constants.
1321
1322 2010-04-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1323
1324         Remove remaining "%ll" uses.
1325         * go32-nat.c (go32_pte_for_address): Replace "0x%llx" using
1326         hex_string call.
1327         * rs6000-nat.c (rs6000_ptrace64): Idem.
1328         * solib-pa64.c (pa64_current_sos): Idem.
1329         * solib-spu.c (spu_current_sos): Idem.
1330         * linux-nat.c (linux_nat_find_memory_regions): Replace "%lld" using
1331         plongest call.
1332         * nto-procfs.c (procfs_meminfo): Replace "0x%016llx" using
1333         phex (VAR, 8) call.
1334         * sh64-tdep.c (sh64_show_media_regs): Idem.
1335
1336 2010-04-05  Stan Shebs  <stan@codesourcery.com>
1337
1338         * tracepoint.c: Include gdbcore.h.
1339         (tfile_xfer_partial): Return partial results, also try reading
1340         from executable.
1341         (tfile_has_all_memory): New function.
1342         (init_tfile_ops): Use it.
1343
1344 2010-04-05  Sergio Durigan Junior  <sergiodj@redhat.com>
1345
1346         PR gdb/10736:
1347         * xml-syscall.c (my_gdb_datadir): New variable to keep track of
1348         the changes in data-directory.
1349         (init_sysinfo): Reload the syscall XML file if the data-directory
1350         has changed.
1351
1352 2010-04-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
1353
1354         Code cleanup.
1355         * breakpoint.c (bpstat_stop_status): Use bpstat_causes_stop.
1356
1357 2010-04-04  Stan Shebs  <stan@codesourcery.com>
1358             Nathan Sidwell  <nathan@codesourcery.com>
1359
1360         * breakpoint.c (breakpoint_1): Add filter argument, return number of
1361         breakpoints printed.
1362         (is_hardware_watchpoint): Make argument const.
1363         (is_watchpoint): Ditto.
1364         (is_tracepoint): Merge of tracepoint_type and breakpoint_is_tracepoint,
1365         use it everywhere.
1366         (breakpoints_info): Pass NULL to breakpoint_1.
1367         (maintenance_info_breakpoints): Ditto.
1368         (watchpoints_info): New function.
1369         (tracepoints_info): Use breakpoint_1 filter.
1370         (set_ignore_count): Warn that tracepoint ignore count will be ignored.
1371         (_initialize_breakpoint): Make "info watchpoints" its own command.
1372         * breakpoint.h (is_tracepoint): Rename from breakpoint_is_tracepoint.
1373         * mi/mi-cmd-break.c (mi_cmd_break_commands): Use is_tracepoint.
1374
1375 2010-04-04  Stan Shebs  <stan@codesourcery.com>
1376
1377         * tracepoint.c (tfile_fetch_registers): Add fallback case.
1378
1379 2010-04-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
1380
1381         * infcmd.c (run_command_1): Call proceed with regcache_read_pc address.
1382         * config/djgpp/fnchange.lst: Add translation for break-entry.exp.
1383
1384 2010-04-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
1385
1386         * breakpoint.c (bpstat_find_step_resume_breakpoint): Remove.
1387         * breakpoint.h (bpstat_find_step_resume_breakpoint): Remove.
1388
1389 2010-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1390
1391         * dwarf2read.c (read_namespace_type): Use common "return set_die_type"
1392         code form.
1393
1394 2010-04-02  Hui Zhu  <teawater@gmail.com>
1395
1396         * i386-tdep.c (OT_DQUAD): New enum.
1397         (i386_process_record): Add code for MMX, 3DNow!, SSE, SSE2,
1398         SSE3, SSSE3 and SSE4.
1399
1400 2010-04-02  Hui Zhu  <teawater@gmail.com>
1401
1402         * i386-tdep.c (i386_record_lea_modrm_addr): Remove useless
1403         "*addr = 0".
1404
1405 2010-04-02  Pedro Alves  <pedro@codesourcery.com>
1406
1407         * tracepoint.c (trace_dump_actions): New, factored out from
1408         trace_dump_command, and adjusted to recurse into while-stepping's
1409         action list.
1410         (trace_dump_command): Use it.
1411
1412 2010-04-02  Pedro Alves  <pedro@codesourcery.com>
1413
1414         * breakpoint.h (struct counted_command_line): Moved definition to
1415         breakpoint.c, and forward declare.
1416         (breakpoint_commands): Declare.
1417         * breakpoint.c (struct counted_command_line): Moved here.
1418         (breakpoint_commands): New.
1419         * tracepoint.c (encode_actions): Use breakpoint_commands.
1420         * remote.c (remote_download_tracepoint): Ditto.
1421
1422 2010-04-01  H.J. Lu  <hongjiu.lu@intel.com>
1423
1424         * remote.c (remote_parse_stop_reply): Use hex_string instead
1425         of phex_nz for error.
1426
1427 2010-04-01  Stan Shebs  <stan@codesourcery.com>
1428             Nathan Sidwell  <nathan@codesourcery.com>
1429
1430         * tracepoint.h (enum actionline_type): Remove.
1431         (validate_actionline): Change return to void.
1432         * tracepoint.c (report_agent_reqs_errors): New function.
1433         (validate_actionline): Call it, change return to void, report errors
1434         more consistently.
1435         (collect_symbol): Call report_agent_reqs_errors.
1436         (encode_actions_1): Ditto.
1437         (encode_actions): Don't expect a result from validate_actionline.
1438
1439 2010-04-01  Stan Shebs  <stan@codesourcery.com>
1440
1441         * tracepoint.c (trace_start_command): Confirm if trace is running.
1442         (trace_stop_command): Error if trace not running.
1443
1444 2010-04-01  H.J. Lu  <hongjiu.lu@intel.com>
1445
1446         * amd64-tdep.c (amd64_byte_names): Add "ah", "bh", "ch", "dh".
1447         (AMD64_NUM_LOWER_BYTE_REGS): New.
1448         (amd64_pseudo_register_read): Handle "ah", "bh", "ch", "dh".
1449         (amd64_pseudo_register_write): Likewise.
1450         (amd64_init_abi): Set num_byte_regs to 20.
1451
1452 2010-04-01  Pedro Alves  <pedro@codesourcery.com>
1453
1454         * breakpoint.c (multi_start, multi_end, last_was_multi): Delete.
1455         (prev_breakpoint_count): New.
1456         (set_breakpoint_count): Adjust.
1457         (rbreak_start_breakpoint_count): New.
1458         (start_rbreak_breakpoints): Adjust.
1459         (end_rbreak_breakpoints): Adjust.
1460         (struct commands_info) <arg>: New field.
1461         (do_map_commands_command): Tweak output to include breakpoint spec
1462         range.
1463         (commands_command_1): Adjust.  Avoid setting an xfree cleanup if
1464         ARG was empty on entry.  Set INFO's arg.
1465         (create_breakpoint): Adjust.
1466
1467         * NEWS: Clarify `commands' changes.
1468
1469 2010-04-01  Pedro Alves  <pedro@codesourcery.com>
1470
1471         * tracepoint.c: Include stack.h.
1472         (struct add_local_symbols_data): New.
1473         (do_collect_symbol): New.
1474         (add_local_symbols): Rewrite using iterate_over_block_arg_vars and
1475         iterate_over_block_local_vars.
1476         * stack.c (print_block_frame_locals): Rewrite as ...
1477         (iterate_over_block_locals): ... this.  Take a callback function
1478         pointer and generic data pointer, and call that instead of
1479         print_variable_and_value.
1480         (struct print_variable_and_value_data): New.
1481         (do_print_variable_and_value): New.
1482         (iterate_over_block_local_vars): New, abstracted out from
1483         print_frame_local_vars.
1484         (print_frame_local_vars): Rewrite using
1485         iterate_over_block_local_vars.
1486         (iterate_over_block_arg_vars): New, abstracted out from
1487         print_frame_arg_vars.
1488         (print_frame_arg_vars): Rewrite using iterate_over_block_arg_vars.
1489         * stack.h (iterate_over_block_arg_local_vars_cb): New typedef.
1490         (iterate_over_block_arg_vars, iterate_over_block_local_vars): Declare.
1491
1492 2010-03-31  Richard Earnshaw  <rearnsha@arm.com>
1493
1494         * arm-tdep.c (thumb_get_next_pc_raw): Correctly detect TBH
1495         instructions.  Use the PC+4 if the base of the TBB or TBH is the
1496         PC register.
1497
1498 2010-03-31  Jan Kratochvil  <jan.kratochvil@redhat.com>
1499
1500         Fix crash on reading wrong function declaration DWARF.
1501         * dwarf2read.c (read_subroutine_type): New variable void_type.
1502         Pre-fill all TYPE_FIELD_TYPEs.  Move nparams and iparams initialization
1503         more close to their use.
1504
1505 2010-03-31  Stan Shebs  <stan@codesourcery.com>
1506
1507         * breakpoint.c (tracepoint_save_command): Include variables,
1508         conditionals, tracepoint types, and default-collect.
1509         * tracepoint.c (save_trace_state_variables): New function.
1510         * tracepoint.h (save_trace_state_variables): Declare it.
1511
1512 2010-03-31  Pierre Muller  <muller@ics.u-strasbg.fr>
1513
1514         * remote.c (end_thread): ARI fix: Use xstrdup instead of strdup.
1515
1516 2010-03-30  Keith Seitz  <keiths@redhat.com>
1517
1518         * c-typeprint.c (c_type_print_args): Don't print "void"
1519         for java, regardless of whether it is TYPE_PROTOTYPED.
1520         Use the passed-in language instead of current_language.
1521         (c_type_print_varspec_suffix): Use current_language instead
1522         of assuming language_c.
1523         * jv-typeprint.c (java_type_print_base): (bz 9320) Strip off
1524         any return type specifier from the physname.
1525
1526 2010-03-30  Pedro Alves  <pedro@codesourcery.com>
1527
1528         * tui/tui-interp.c (tui_is_toplevel): New.
1529         (tui_init): Set it.
1530         (tui_allowed_p): New.
1531         * tui/tui.c (tui_enable): Check if the TUI is allowed before
1532         enabling it.
1533         * tui/tui.h (tui_allowed_p): Declare.
1534
1535 2010-03-30  Ozkan Sezer  <sezeroz@gmail.com>
1536
1537         * serial.h: Include winsock2.h before windows.h.
1538
1539 2010-03-30  H.J. Lu  <hongjiu.lu@intel.com>
1540
1541         * NEWS: Mention xmlRegisters= in qSupported packet.
1542
1543         * i386-tdep.c: Include "remote.h".
1544         (_initialize_i386_tdep): Call register_remote_support_xml.
1545
1546         * remote.c (remote_support_xml): New.
1547         (register_remote_support_xml): Likewise.
1548         (remote_query_supported_append): Likewise.
1549         (remote_query_supported): Support remote_support_xml.
1550
1551         * remote.h (register_remote_support_xml): New.
1552
1553 2010-03-29  Stan Shebs  <stan@codesourcery.com>
1554
1555         * tracepoint.c (trace_find_line_command): Remove dead code.
1556
1557         * tracepoint.h (struct uploaded_string): New struct.
1558         (struct uploaded_tp): New fields for source strings.
1559         * breakpoint.c (this_utp, next_cmd): New globals.
1560         (read_uploaded_action): New function.
1561         (create_tracepoint_from_upload): Fill in more parts
1562         of a tracepoint.
1563         * tracepoint.c (encode_source_string): New function.
1564         (trace_save): Write out source strings, fix error checks.
1565         (parse_tracepoint_definition): Add source string parsing.
1566         * remote.c (PACKET_TracepointSource): New packet type.
1567         (remote_download_command_source): New function.
1568         (remote_download_tracepoint): Download source pieces also.
1569         (_initialize_remote): Add packet config command.
1570
1571         * tracepoint.c (collect_symbol): Send LOC_UNRESOLVED symbols to
1572         expression handler.
1573
1574         * tracepoint.c (start_tracing): Check tracepoints before sending
1575         commands to target, don't start if all tracepoints disabled.
1576
1577 2010-03-28  Pedro Alves  <pedro@codesourcery.com>
1578
1579         * cli/cli-script.c (process_next_line): Handle 'stepping'.
1580
1581 2010-03-26  Stan Shebs  <stan@codesourcery.com>
1582
1583         * tracepoint.c (disconnect_or_stop_tracing): Get out of tfind mode.
1584
1585 2010-03-26  Tom Tromey  <tromey@redhat.com>
1586
1587         * breakpoint.c (commands_command_1): Duplicate 'arg'.
1588
1589 2010-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
1590
1591         * breakpoint.c (expand_line_sal_maybe): Always call skip_prologue_sal.
1592         (skip_prologue_sal): Remove local definition.
1593         (resolve_sal_pc): Remove now unnecessary code.
1594         * linespec.c (minsym_found): Call skip_prologue_sal.
1595         * symtab.c (find_function_start_pc): Remove.
1596         (find_function_start_sal): Extract prologue skipping into ...
1597         (skip_prologue_sal): ... this new function.  Handle code both
1598         with and without debug info.  Respect SAL's explicit_pc and
1599         explicit_line flags.  Inline old find_function_start_pc.
1600         * symtab.h (find_function_start_pc): Remove.
1601         (skip_prologue_sal): Add prototype.
1602
1603 2010-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
1604
1605         * dwarf2read.c (read_func_scope): Also scan specification DIEs
1606         for DW_TAG_imported_module children.
1607
1608 2010-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
1609
1610         * dwarf2read.c (dwarf2_name): Work around GCC bugzilla debug/41828 by
1611         ignoring spurious DW_AT_name attributes for unnamed structs or unions.
1612         * completer.c (add_struct_fields): Fix inverted logic.
1613
1614 2010-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
1615
1616         * breakpoint.c (bpstat_clear_actions): Reset bs->commands_left.
1617
1618 2010-03-26  Pedro Alves  <pedro@codesourcery.com>
1619
1620         * tracepoint.c (current_trace_status): Don't make sure error_desc
1621         is non-NULL here.
1622         (parse_trace_status): Release a previous error_desc string, and
1623         set it to NULL by default.  If stop reason is tracepoint_error,
1624         make sure error_desc is not left NULL.
1625
1626 2010-03-26  Pedro Alves  <pedro@codesourcery.com>
1627
1628         * tracepoint.c (trace_save): Remove X from tracepoint error
1629         description.
1630
1631 2010-03-26  Pedro Alves  <pedro@codesourcery.com>
1632
1633         * tracepoint.c (parse_trace_status): Don't allow plain strings in
1634         the terror description.  Don't expect an X prefix.
1635
1636 2010-03-25  Stan Shebs  <stan@codesourcery.com>
1637
1638         * tracepoint.h (trace_stop_reason): Add tracepoint_error.
1639         (struct trace_status): New field error_desc.
1640         * tracepoint.c (stop_reason_names): Add terror.
1641         (current_trace_status): Ensure non-NULL error description.
1642         (trace_status_command): Add error report.
1643         (trace_status_mi): Ditto.
1644         (trace_save): Add special case for error description.
1645         (parse_trace_status): Add case for errors.
1646
1647 2010-03-25  Keith Seitz  <keiths@redhat.com>
1648
1649         * dwarf2read.c (read_subroutine_type): If the compilation unit
1650         language is Java, mark any formal parameter named "this" as
1651         artificial (GCC/43521).
1652         (dwarf2_name): Add special handling for Java constructors.
1653
1654 2010-03-25  Tom Tromey  <tromey@redhat.com>
1655
1656         PR gdb/11327, PR gdb/11328, PR breakpoints/11368:
1657         * infrun.c (handle_inferior_event): Change initialization of
1658         stop_stack_dummy.
1659         (handle_inferior_event): Change assignment to stop_stack_dummy.
1660         (normal_stop): Update use of stop_stack_dummy.
1661         (struct inferior_status) <stop_stack_dummy>: Change type.
1662         * inferior.h (stop_stack_dummy): Update.
1663         * infcmd.c (stop_stack_dummy): Change type.
1664         * infcall.c (cleanup_delete_std_terminate_breakpoint): New
1665         function.
1666         (call_function_by_hand): Call set_std_terminate_breakpoint.
1667         Rewrite std::terminate handling.
1668         * breakpoint.h (enum bptype) <bp_std_terminate,
1669         bp_std_terminate_master>: New.
1670         (enum stop_stack_kind): New.
1671         (struct bpstat_what) <call_dummy>: Change type.
1672         (set_std_terminate_breakpoint, delete_std_terminate_breakpoint):
1673         Declare.
1674         * breakpoint.c (create_std_terminate_master_breakpoint): New
1675         function.
1676         (update_breakpoints_after_exec): Handle bp_std_terminate_master.
1677         Call create_std_terminate_master_breakpoint.
1678         (print_it_typical): Handle new breakpoint kinds.
1679         (bpstat_stop_status): Handle bp_std_terminate_master.
1680         (bpstat_what): Correctly set call_dummy field.  Handle
1681         bp_std_terminate_master and bp_std_terminate.
1682         (print_one_breakpoint_location): Update.
1683         (allocate_bp_location): Update.
1684         (set_std_terminate_breakpoint): New function.
1685         (delete_std_terminate_breakpoint): Likewise.
1686         (create_thread_event_breakpoint): Update.
1687         (delete_command): Update.
1688         (breakpoint_re_set_one): Update.
1689         (breakpoint_re_set): Call create_std_terminate_master_breakpoint.
1690
1691 2010-03-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
1692
1693         * symfile.c (build_section_addr_info_from_bfd): New.
1694         (build_section_addr_info_from_objfile): Base it on
1695         build_section_addr_info_from_bfd.
1696         (addrs_section_compar, addrs_section_sort): New.
1697         (addr_info_make_relative): New variables my_cleanup, abfd_addrs,
1698         addrs_sorted, abfd_addrs_sorted and addrs_to_abfd_addrs.  Build
1699         addrs_to_abfd_addrs.  Use it for recalculating ADDRS.
1700
1701 2010-03-24  Michael Snyder  <msnyder@localhost.localdomain>
1702
1703         * elfread.c (find_separate_debug_file_by_buildid):
1704         Remove unused local variable.
1705
1706 2010-03-24  Tom Tromey  <tromey@redhat.com>
1707
1708         PR breakpoints/9352:
1709         * NEWS: Mention changes to `commands' and `rbreak'.
1710         * symtab.c (do_end_rbreak_breakpoints): New function.
1711         (rbreak_command): Call start_rbreak_breakpoints; arrange to call
1712         end_rbreak_breakpoints.
1713         * breakpoint.c (breakpoint_count, tracepoint_count): Now static.
1714         (set_breakpoint_count): Likewise.  Clear last_was_multi.
1715         (multi_start, multi_end, last_was_multi): New globals.
1716         (start_rbreak_breakpoints, end_rbreak_breakpoints): New
1717         functions.
1718         (struct commands_info): New
1719         (do_map_commands_command): New function.
1720         (commands_command_1): New function.
1721         (commands_command): Use it.
1722         (commands_from_control_command): Likewise.
1723         (do_delete_breakpoint): New function.
1724         (delete_command): Use it.
1725         (map_breakpoint_numbers): Add 'data' argument.  Pass to callback.
1726         (do_map_disable_breakpoint): New function.
1727         (disable_command): Use it.
1728         (do_map_enable_breakpoint): New function.
1729         (enable_command): Use it.
1730         (enable_once_breakpoint): Add argument.
1731         (enable_once_command): Update.
1732         (enable_delete_breakpoint): Add argument.
1733         (enable_delete_command): Update.
1734         (break_command_really): Set last_was_multi when needed.
1735         (check_tracepoint_command): Fix formatting.
1736         (validate_commands_for_breakpoint): New function.
1737         (breakpoint_set_commands): Use it.
1738         (tracepoint_save_command): Update.
1739         * breakpoint.h (start_rbreak_breakpoints, end_rbreak_breakpoints):
1740         Declare.
1741
1742 2010-03-24  Tom Tromey  <tromey@redhat.com>
1743
1744         * breakpoint.h (struct counted_command_line): New struct.
1745         (struct breakpoint) <commands>: Change type.
1746         (struct bpstats) <commands>: Change type.
1747         <commands_left>: New field.
1748         * breakpoint.c (alloc_counted_command_line): New function.
1749         (incref_counted_command_line): Likewise.
1750         (decref_counted_command_line): Likewise.
1751         (do_cleanup_counted_command_line): Likewise.
1752         (make_cleanup_decref_counted_command_line): Likewise.
1753         (breakpoint_set_commands): Use decref_counted_command_line and
1754         alloc_counted_command_line.
1755         (commands_command): Don't error if breakpoint commands are
1756         executing.
1757         (commands_from_control_command): Likewise.
1758         (bpstat_free): Update.
1759         (bpstat_copy): Likewise.
1760         (bpstat_clear_actions): Likewise.
1761         (bpstat_do_actions_1): Likewise.
1762         (bpstat_stop_status): Likewise.
1763         (print_one_breakpoint_location): Likewise.
1764         (delete_breakpoint): Likewise.
1765         (bpstat_alloc): Initialize new field.
1766         (tracepoint_save_command): Update.
1767         * tracepoint.c (encode_actions): Update.
1768         (trace_dump_command): Update.
1769
1770 2010-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
1771
1772         * dwarf2-frame.c (dwarf2_frame_find_quirks): Use producer_is_realview.
1773         * dwarf2read.c (load_full_comp_unit): Read DW_AT_producer.
1774         (read_structure_type): For RealView, set TYPE_STUB on structures with
1775         no byte size and no children.
1776         (read_subroutine_type): Mark functions as prototyped by default.
1777         * symtab.c (producer_is_realview): New function.
1778         * symtab.h (expand_line_sal): Fix declaration formatting.
1779         (producer_is_realview): Declare.
1780
1781 2010-03-24  Daniel Jacobowitz  <dan@codesourcery.com>
1782
1783         * arm-tdep.c (skip_prologue_function): New function.
1784         (submask, bit, bits, sbits, BranchDest): Move higher in the file.
1785         (thumb_analyze_prologue): Document return value.  Recognize more
1786         Thumb instructions, skippable calls, and some Thumb-2 instructions.
1787         Add debug output.
1788         (arm_skip_prologue): Remove call dummy check.  Check the prologue
1789         for non-GNU compilers.
1790         (arm_instruction_changes_pc): New function.
1791         (arm_analyze_prologue): New function, broken out from
1792         arm_scan_prologue.  Recognize more ARM instructions and skippable
1793         calls.  Update comments.  Handle NULL cache.  Return the address
1794         of the first unrecognized instruction.  Do not skip past other
1795         instructions which change control flow.  Add debug output.
1796         (arm_scan_prologue): Use arm_analyze_prologue.
1797         (ARM_PC_32): Delete.
1798         (shifted_reg_val): Simplify ARM_PC_32 check.
1799
1800 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1801
1802         * tracepoint.c (tvariables_info_1): Actually compute
1803         the number of rows in the result.
1804
1805 2010-03-24  Pedro Alves  <pedro@codesourcery.com>
1806
1807         * remote.c (crc32): Constify `buf' parameter.
1808         (remote_verify_memory): New, abstracted out from...
1809         (compare_sections_command): ... this.  Remove hardcoded target
1810         checks.
1811         (init_remote_ops): Install remote_verify_memory.
1812         * target.c (target_verify_memory): New.
1813         * target.h (struct target_ops) <to_verify_memory>: New field.
1814         (target_verify_memory): Declare.
1815
1816 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1817
1818         Implement -trace-save.
1819
1820         * mi-cmds.h (mi_cmds_trace_save): Declare.
1821         * mi-cmds.c (mi_cmds): Register -trace-save.
1822         * mi/mi-main.c (mi_cmd_trace_save): New.
1823         * remote.c (remote_save_trace_data): Take const parameter.
1824         * target.h (struct target_ops::to_save_trace_data): Take
1825         const parameter.
1826         * target.c (update_current_target): Adjust to the above.
1827         * tracepoint.c (trave_save): New, extracted from
1828         (trace_save_command): ...this.
1829         (tfile_trace_find): Remove message that is unnecessary now
1830         that 'tfind' reports found frame.
1831         * tracepoint.h (trace_save): Declare.
1832
1833 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1834
1835         Implement -trace-find.
1836
1837         * mi/mi-cmds.c (mi_cmds): Register -trace-find.
1838         * mi/mi-cmds.h (mi_cmd_trace_find): Declare.
1839         * mi/mi-main.c (mi_cmd_trace_find): New.
1840         * target.h (struct target_ops): Document to_trace_find.
1841         * tracepoint.h (tfind_1): Declare.
1842         * tracepoint.c (finish_tfind_command): Rename to...
1843         (tfind_1): ...this.
1844         * remote.c (remote_trace_find): Return -1 if target say
1845         there's no frame.  Improve error diagnostics.
1846
1847 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1848
1849         -trace-define-variable and -trace-list-variables.
1850
1851         * tracepoint.c (create_trace_state_variable): Make
1852         private copy of name, as opposed to assuming the
1853         pointer lives forever.
1854         (tvariables_info_1): New.
1855         (tvariables_info): Use the above.
1856         * tracepoint.h (create_trace_state_variable, tvariables_info_1):
1857         Declare.
1858         * mi/mi-cmds.c (mi_cmds): Register -trace-define-variable
1859         and -trace-list-variables.
1860         * mi/mi-cmds.h (mi_cmd_trace_define_variable)
1861         (mi_cmd_trace_list_variables): New.
1862         * mi/mi-main.c (mi_cmd_trace_define_variable)
1863         (mi_cmd_trace_list_variables): New.
1864
1865 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1866
1867         Implement -break-passcount.
1868
1869         * mi/mi-cmd-break.c (mi_cmd_break_passcount): New.
1870         * mi/mi-cmds.c (mi_cmds): Register -break-passcount.
1871         * mi/mi-cmds.h (mi_cmd_break_passcount): Declare.
1872
1873 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1874
1875         -trace-start/-trace-end/-trace-status.
1876
1877         * mi/mi-cmds.c (mi_cmds): Register -trace-start, -trace-status
1878         and -trace-stop.
1879         * mi/mi-cmds.h (mi_cmd_trace_start, mi_cmd_trace_status)
1880         (mi_cmd_trace_stop): Declare.
1881         * mi/mi-main.c (mi_cmd_trace_start, mi_cmd_trace_status)
1882         (mi_cmd_trace_stop): New.
1883         * tracepoint.c (start_tracing): New, extracted from...
1884         (trace_start_command): ...this.
1885         (trace_status_mi): New.
1886         * tracepoint.h (struct trace_status): Document
1887         stopping_tracepoint.
1888         (start_tracing, stop_tracing, trace_status_mi): Declare.
1889
1890 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1891
1892         Implement creating tracepoints with -break-insert.
1893
1894         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle -a
1895         to mean that tracepoint should be created.
1896
1897 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1898
1899         * breakpoint.c (check_no_tracepoint_commands): Use
1900         current spelling of 'teval'.
1901
1902 2010-03-24  Vladimir Prus  <vladimir@codesourcery.com>
1903
1904         Unify actions and commands
1905
1906         * defs.h (read_command_lines, read_command_lines_1): New
1907         parameters validator and closure.
1908         * tracepoint.h (struct action_line): Remove.
1909         * breakpoint.h (struct breakpoint): Remove the 'actions'
1910         field.
1911         * defs.h (enum command_control_type): New value
1912         while_stepping_control.
1913         (struct command_line): Add comments.
1914         * breakpoint.c (breakoint_is_tracepoint): New.
1915         (breakpoint_set_commands): For tracepoints,
1916         verify the commands are permissible.
1917         (check_tracepoint_commands): New.
1918         (commands_command): Require that each new line is validated using
1919         check_tracepoint_command, if we set commands for a tracepoint.
1920         (create_tracepoint_from_upload): Likewise.
1921         (print_one_breakpoint_location): Remove the code to print
1922         actions specifically.
1923         (tracepoint_save_command): Relay to print_command_lines.
1924         * cli/cli-script.c (process_next_line): New parameters validator
1925         and closure. Handle 'while-stepping'. Call validator if not null.
1926         (read_command_lines, read_command_lines1): Likewise.
1927         (recurse_read_control_structure): New parameters validator and
1928         closure. Handle while_stepping_control.
1929         (print_command_lines): Handle while-stepping.
1930         (get_command_line, define_command, document_command): Adjust.
1931         * remote.c (remote_download_tracepoint): Adjust.
1932         * tracepoint.c (make_cleanup_free_actions, read_actions)
1933         (free_actions, do_free_actions_cleanup): Remove.
1934         (trace_actions_command): Use read_command_lines.
1935         (validate_actionline): Use error in one place.
1936         (encode_actions_1): New, extracted from...
1937         (encode_actions): ...this. Also use cleanups for exception
1938         safety.
1939         (trace_dump_command): Adjust.
1940         * mi/mi-cmd-break (mi_cmd_break_commands): Validate commands if
1941         it's tracepoint.
1942
1943 2010-03-23  Mike Frysinger  <vapier@gentoo.org>
1944
1945         * Makefile.in (OPCODES_CFLAGS): Add -I$(OPCODES_SRC)/..
1946
1947 2010-03-22  Stan Shebs  <stan@codesourcery.com>
1948
1949         * value.c (value_static_field): Be lazy about the field's value.
1950
1951 2010-03-22  Reid Kleckner  <reid@kleckner.net>
1952
1953         PR gdb/11094
1954         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Add
1955         bp_jit_event.
1956         (disable_breakpoints_in_shlibs): Likewise.
1957
1958 2010-03-22  Ulrich Weigand  <uweigand@de.ibm.com>
1959
1960         * dwarf2read.c (partial_die_parent_scope): Work around buggy
1961         GCC 4.1 debug info generation (GCC PR c++/28460).
1962         (determine_prefix): Likewise.
1963
1964 2010-03-20  Daniel Jacobowitz  <dan@codesourcery.com>
1965
1966         * tui/tui-disasm.c (tui_get_begin_asm_address): Default to
1967         get_current_arch.
1968         * tui/tui-layout.c (extract_display_start_addr): Likewise.
1969
1970 2010-03-19  Stan Shebs  <stan@codesourcery.com>
1971
1972         * ax-gdb.c (gen_fetch): Handle bool.
1973         (gen_usual_unary): Ditto.
1974         (gen_cast): Ditto.
1975         (gen_equal): New function.
1976         (gen_less): New function.
1977         (gen_expr_binop_rest): Call them, also return integer type from
1978         logical operations.
1979         (gen_expr): Ditto.
1980
1981 2010-03-19  Tom Tromey  <tromey@redhat.com>
1982
1983         * jv-lang.c (jv_dynamics_objfile_data_key)
1984         (jv_type_objfile_data_key): New globals.
1985         (class_symtab): Move earlier.
1986         (jv_per_objfile_free): New function.
1987         (get_dynamics_objfile): Call set_objfile_data.  Add 'gdbarch'
1988         parameter.
1989         Remove ancient #if 1.
1990         (add_class_symbol): Remove redundant declaration.
1991         (java_lookup_class): Use alloc_type, not alloc_type_arch.
1992         (java_link_class_type): Mark as static.  Update.
1993         (jv_clear_object_type): New function.
1994         (set_java_object_type): Likewise.
1995         (get_java_object_type): Use set_java_object_type.
1996         (is_object_type): Likewise.
1997         (_initialize_java_language): Register new objfile keys.
1998         (get_java_class_symtab): Add 'gdbarch' parameter.
1999         (add_class_symtab_symbol): Update.
2000         (type_from_class): Update.
2001
2002 2010-03-19  Stan Shebs  <stan@codesourcery.com>
2003
2004         * ax-general.c (ax_const_l): Fix a sizing bug.
2005
2006 2010-03-18  Joel Brobecker  <brobecker@adacore.com>
2007
2008         GDB 7.1 released.
2009
2010 2010-03-18  Stan Shebs  <stan@codesourcery.com>
2011             Pedro Alves  <pedro@codesourcery.com>
2012
2013         * target.h (struct target_ops): New method
2014         to_set_circular_trace_buffer.
2015         (target_set_circular_trace_buffer): New macro.
2016         * target.c (update_current_target): Add
2017         to_set_circular_trace_buffer, fix to_set_disconnected_tracing
2018         default behavior.
2019         * remote.c (remote_set_circular_trace_buffer): New function.
2020         (init_remote_ops): Add it to vector.
2021         * tracepoint.h (struct trace_status): New field traceframes_created,
2022         change buffer_size and buffer_free to int.
2023         * tracepoint.c (circular_trace_buffer): New global.
2024         (start_tracing): Send values of disconnected tracing and circular
2025         trace buffer settings.
2026         (set_circular_trace_buffer): New function.
2027         (parse_trace_state): Handle total space and frames created.
2028         (trace_status_command): Display total space and total frames
2029         created.
2030         (trace_save): Write out new status values.
2031         (parse_trace_status): Set traceframe_count, traceframes_created,
2032         buffer_free and buffer_size to -1 by default.
2033         (_initialize_tracepoint): New setshow for circular-trace-buffer.
2034         * NEWS: Mention the circular trace buffer option.
2035
2036 2010-03-18  Tom Tromey  <tromey@redhat.com>
2037
2038         * infcmd.c (finish_command_continuation): Wrap print_return_value
2039         in TRY_CATCH.
2040
2041 2010-03-18  Joel Brobecker  <brobecker@adacore.com>
2042
2043         * dwarf2read.c (add_partial_subprogram): Make sure the subprogram
2044         DIE has a name before creating the associated partial symbol.
2045         (read_func_scope): Emit a complaint if the subprogram does not
2046         have a name or when we can't extract the subprogram PC bounds.
2047
2048 2010-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
2049
2050         * mi/mi-main.c (mi_cmd_list_thread_groups): Use get_current_arch
2051         instead of selected frame architecture.
2052
2053 2010-03-18  Pedro Alves  <pedro@codesourcery.com>
2054
2055         * infcmd.c (until_command): Use ERROR_NO_INFERIOR.  Ensure there's
2056         a valid selected thread, and that it is not running.
2057         (advance_command): Ditto.
2058         (finish_command): Ditto.
2059
2060 2010-03-17 Stan Shebs  <stan@codesourcery.com>
2061
2062         * ax-gdb.c (require_rvalue): Disallow non-scalars.
2063
2064         * infcall.c: Include tracepoint.h.
2065         (call_function_by_hand): Disallow calls in tfind mode.
2066         * infcmd.c: Include tracepoint.h.
2067         (ensure_not_tfind_mode): New function.
2068         (continue_1): Call it.
2069         (step_1) Ditto.
2070         (jump_command): Ditto.
2071         (signal_command): Ditto.
2072         (advance_command): Ditto.
2073         (until_command): Ditto.
2074         (finish_command): Ditto.
2075         * tracepoint.h (disconnect_or_stop_tracing): Declare.
2076
2077         * ax-gdb.h (struct axs_value): New field optimized_out.
2078         (gen_trace_for_var): Add gdbarch argument.
2079         * ax-gdb.c (gen_trace_static_fields): New function.
2080         (gen_traced_pop): Call it, add gdbarch argument.
2081         (gen_trace_for_expr): Update call to it.
2082         (gen_trace_for_var): Ditto, and report optimized-out variables.
2083         (gen_struct_ref_recursive): Check for optimized-out value.
2084         (gen_struct_elt_for_reference): Ditto.
2085         (gen_static_field): Pass gdbarch instead of expression, assume
2086         optimization if field not found.
2087         (gen_var_ref): Set the optimized_out flag.
2088         (gen_expr): Error on optimized-out variable.
2089         * tracepoint.c (collect_symbol): Handle struct-valued vars as
2090         expressions, skip optimized-out variables with computed locations.
2091         * dwarf2loc.c (dwarf2_tracepoint_var_ref): Flag instead of
2092         erroring out if location expression missing.
2093         (loclist_tracepoint_var_ref): Don't error out here.
2094
2095 2010-03-17  Tom Tromey  <tromey@redhat.com>
2096
2097         * dwarf2read.c (dwarf2_get_section_info): Handle case where no
2098         DWARF data is available.
2099
2100 2010-03-17  Daniel Jacobowitz  <dan@codesourcery.com>
2101
2102         * symfile.c (generic_load): Reset breakpoints after loading.
2103
2104 2010-03-17  Tom Tromey  <tromey@redhat.com>
2105
2106         * linux-nat.c (linux_nat_detach): Check debug_linux_nat.
2107
2108 2010-03-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
2109
2110         * spu-tdep.c (spu_catch_start): Replace set_breakpoint call with the
2111         create_breakpoint call, adjust the parameters.
2112
2113 2010-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
2114             Chandru <chandru@in.ibm.com>
2115
2116         * dwarf2read.c (read_subrange_type): Set TYPE_HIGH_BOUND_UNDEFINED.
2117         * valarith.c (value_subscripted_rvalue): Suppress error if
2118         TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
2119
2120 2010-03-16  Holger Hans Peter Freyther  <zecke@selfish.org>
2121
2122         * linux-record.c (record_linux_msghdr): Remove unintended semicolons.
2123
2124 2010-03-16  Joel Brobecker  <brobecker@adacore.com>
2125
2126         * ada-tasks.c (task_command_1): Check that the task ptid is valid
2127         before doing the associated thread switch.
2128
2129 2010-03-16  Daniel Jacobowitz  <dan@codesourcery.com>
2130
2131         * MAINTAINERS: Update my email address.
2132
2133 2010-03-16  Vladimir Prus  <vladimir@codesourcery.com>
2134
2135         Simplify MI breakpoint setting.
2136
2137         * breakpoint.c (break_command_really): Make nonstatic and
2138         rename to...
2139         (create_breakpoint): ...this. Rename prior function by this name
2140         to...
2141         (create_breakpoint_sal): ...this.
2142         (create_breakpoints): Rename to...
2143         (create_breakpoints_sal): ...this.
2144         (set_breakpoint): Remove.
2145         * breakpoint.h: Adjust to above changes.
2146         * mi/mi-cmd-break.c (mi_cmd_break_insert): Simplify.
2147
2148 2010-03-15 Stan Shebs  <stan@codesourcery.com>
2149
2150         * ax-gdb.c: Include cp-support.h.
2151         (find_field): Remove.
2152         (gen_primitive_field): New function.
2153         (gen_struct_ref_recursive): New function.
2154         (gen_struct_ref): Rewrite to call gen_struct_ref_recursive instead
2155         of find_field.
2156         (gen_static_field): New function.
2157         (gen_struct_elt_for_reference): New.
2158         (gen_namespace_elt): New.
2159         (gen_maybe_namespace_elt): New.
2160         (gen_aggregate_elt_ref): New.
2161         (gen_expr): Add OP_SCOPE, display opcode name in error message.
2162
2163 2010-03-15  Tom Tromey  <tromey@redhat.com>
2164
2165         * dwarf2read.c (die_needs_namespace): Also return 0 for
2166         DW_TAG_subprogram.
2167
2168 2010-03-15  Sami Wagiaalla  <swagiaal@redhat.com>
2169
2170         PR c++/7936:
2171         * cp-support.h: Added char *declaration element to using_direct
2172         data struct.
2173         (cp_add_using): Added char *declaration argument.
2174         (cp_add_using_directive): Ditto.
2175         (cp_lookup_symbol_imports): made extern.
2176         * cp-namespace.c: Updated with the above changes.
2177         * dwarf2read.c (read_import_statement): Ditto.
2178         (read_namespace): Ditto.
2179         (read_import_statement): Support import declarations.
2180         * cp-namespace.c (cp_lookup_symbol_imports): Check for imported
2181         declarations.
2182         Added support for 'declaration_only' search.
2183         (cp_lookup_symbol_namespace): Attempt to search for the name as
2184         is before consideration of imports.
2185         * symtab.c (lookup_symbol_aux_local): Added a 'declaration_only'
2186         search at every block level search.
2187         Now takes language argument.
2188         (lookup_symbol_aux): Updated.
2189
2190 2010-03-15  Tom Tromey  <tromey@redhat.com>
2191
2192         * c-exp.y (name_not_typename): Add 'operator' clause.
2193
2194 2010-03-15  Ralf Corsepius  <ralf.corsepius@rtems.org>  (tiny change)
2195
2196         * configure.ac: Exit if ${gdb_target_obs}" is not set.
2197         * configure: Regenerate.
2198
2199 2010-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
2200
2201         * symfile.c (addr_info_make_relative): Ignore also missing ".dynbss"
2202         and ".sdynbss".  Update the comment.
2203
2204 2010-03-15  Jie Zhang  <jie@codesourcery.com>
2205
2206         * MAINTAINERS: Update my email address.
2207
2208 2010-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
2209
2210         * gdbtypes.h (TYPE_IS_OPAQUE): Correct HAVE_CPLUS_STRUCT check.
2211
2212 2010-03-14  Daniel Jacobowitz  <dan@codesourcery.com>
2213
2214         * charset.c [USE_WIN32API]: Include <windows.h>.
2215          (_initialize_charset): Correct type of w32_host_default_charset.
2216
2217 2010-03-14  Pedro Alves  <pedro@codesourcery.com>
2218
2219         * infrun.c (ptid_match): Don't assert that PTID is not a pid ptid.
2220
2221 2010-03-12  Tom Tromey  <tromey@redhat.com>
2222
2223         PR c++/9708:
2224         * dwarf2read.c (die_needs_namespace) <DW_TAG_variable>: A variable
2225         in a lexical block does not need a namespace.
2226         (new_symbol) <DW_TAG_variable>: Put extern variables on
2227         list_in_scope in all cases.
2228
2229 2010-03-12 Stan Shebs  <stan@codesourcery.com>
2230
2231         * ax-gdb.c (gen_expr): Add shift expressions.
2232         (gen_expr_binop_rest): Ditto.
2233
2234 2010-03-12  Sami Wagiaalla  <swagiaal@redhat.com>
2235
2236         * buildsym.c (finish_block): Reset using_directives pointer
2237         after block initialization.
2238
2239 2010-03-12  H.J. Lu  <hongjiu.lu@intel.com>
2240
2241         * amd64-tdep.c (amd64_word_names): Replace "sp" with "".
2242         * i386-tdep.c (i386_word_names): Likewise.
2243
2244 2010-03-12  Pedro Alves  <pedro@codesourcery.com>
2245
2246         * target.c (memory_xfer_partial): Don't use the stack cache if
2247         inspecting trace frames.
2248         * tracepoint.c (finish_tfind_command): Invalidate the target
2249         dcache.
2250
2251 2010-03-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
2252
2253         * solib-svr4.c (LM_ADDR_CHECK) <info_verbose>: Use printf_unfiltered
2254         for the PIC displacement, print also the displacement value.
2255         (svr4_exec_displacement):  Print DISPLACEMENT if INFO_VERBOSE.
2256
2257 2010-03-10  Kevin Buettner  <kevinb@redhat.com>
2258
2259         * remote-mips.c (close_ports, mips_initialize_cleanups)
2260         (mips_exit_cleanups, mips_send_command, mips_open, pmon_open)
2261         (ddb_open, lsi_open, mips_remove_breakpoint, mips_remove_watchpoint)
2262         (mips_stopped_by_watchpoint, send_srec, pmon_checkset)
2263         (pmon_make_fastrec, pmon_check_ack, mips_expect_download)
2264         (pmon_check_entry_address, pmon_check_total, pmon_end_download)
2265         (pmon_download, pmon_load_fast, _initialize_remote_mips): Add
2266         comments describing each of these functions.
2267         (mips_enter_debug, mips_exit_debug, common_open)
2268         (mips_signal_from_protocol, pmon_makeb64, pmon_zeroset): Add
2269         blank line after the comment describing the function.
2270
2271 2010-03-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
2272
2273         * solib-svr4.c (svr4_exec_displacement): Return now success, new
2274         parameter displacementp.  Update comment.
2275         (svr4_relocate_main_executable): Return if non-zero SECTION_OFFSETS
2276         element exists.  Return if svr4_exec_displacement was not successful.
2277         Update comment.
2278
2279 2010-03-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
2280             Daniel Jacobowitz  <dan@codesourcery.com>
2281
2282         * solib-svr4.c (read_program_header): Support type == -1 to read
2283         all program headers.
2284         (read_program_headers_from_bfd): New function.
2285         (svr4_static_exec_displacement): Remove and move the comment ...
2286         (svr4_exec_displacement): ... here.  Remove variable found.  New
2287         variable displacement.  Check also DYNAMIC.  Verify DISPLACEMENT
2288         alignment for ELF targets.  Compare target vs. exec_bfd PHDRs for ELF
2289         targets using read_program_headers_from_bfd.  Remove the call of
2290         svr4_static_exec_displacement.
2291
2292 2010-03-10  Tom Tromey  <tromey@redhat.com>
2293
2294         * dwarf2read.c (struct pubnames_header): Remove.
2295         (_PUBNAMES_HEADER): Remove.
2296         (_ACTUAL_PUBNAMES_HEADER_SIZE): Remove.
2297         (struct aranges_header): Remove.
2298         (_ARANGES_HEADER, _ACTUAL_ARANGES_HEADER_SIZE): Remove.
2299         (struct dwarf2_per_objfile) <pubnames, aranges>: Remove.
2300         (PUBNAMES_SECTION): Remove.
2301         (ARANGES_SECTION): Remove.
2302         (dwarf2_locate_sections): Don't handle pubnames or aranges.
2303         (dwarf2_build_psymtabs): Remove dead code.
2304         (dwarf2_build_psymtabs_easy): Remove.
2305
2306 2010-03-10  Tom Tromey  <tromey@redhat.com>
2307
2308         * elfread.c (elf_symfile_read): Don't call
2309         dwarf2_build_frame_info.
2310         * dwarf2read.c (struct dwarf2_section_info) <readin>: New field.
2311         (struct dwarf2_per_objfile) <objfile>: New field.
2312         (dwarf2_has_info): Now idempotent.  Set objfile field.
2313         (dwarf2_read_section): Check and set readin field.  Call
2314         posix_madvise.
2315         (dwarf2_build_psymtabs): Don't read all sections.
2316         (read_type_comp_unit_head): Read types section.
2317         (create_debug_types_hash_table): Likewise.
2318         (init_cu_die_reader): Add asserts.
2319         (process_type_comp_unit): Add assert.
2320         (dwarf2_build_psymtabs_hard): Read info section.
2321         (load_partial_comp_unit): Add assert.
2322         (create_all_comp_units): Read info section.
2323         (load_full_comp_unit): Likewise.
2324         (dwarf2_ranges_read): Read ranges section.
2325         (dwarf2_record_block_ranges): Add assert.
2326         (dwarf2_read_abbrevs): Read abbrev section.
2327         (read_indirect_string): Read str section.
2328         (dwarf_decode_line_header): Read line section.
2329         (read_signatured_type_at_offset): Read types section.
2330         (dwarf_decode_macros): Read macinfo section.
2331         (dwarf2_symbol_mark_computed): Read loc section.
2332         * dwarf2-frame.c (dwarf2_frame_find_fde): Call
2333         dwarf2_build_frame_info.
2334         (dwarf2_build_frame_info): Unconditionally set
2335         dwarf2_frame_objfile_data on the objfile.
2336         * configure.ac: Check for posix_madvise.
2337         * config.in, configure: Rebuild.
2338
2339 2010-03-10  Tom Tromey  <tromey@redhat.com>
2340
2341         * xcoffread.c (xcoff_start_psymtab): Update.
2342         (xcoff_end_psymtab): Update.
2343         * psymtab.c (allocate_psymtab): Remove dead code.
2344         * psympriv.h (struct partial_symtab) <read_symtab_private>: Now
2345         void*.
2346         * mdebugread.c (parse_partial_symbols): Update.
2347         (new_psymtab): Likewise.
2348         * dwarf2read.c (process_psymtab_comp_unit): Update.
2349         (psymtab_to_symtab_1): Update.
2350         * dbxread.c (start_psymtab): Update.
2351         (end_psymtab): Likewise.
2352
2353 2010-03-10  Tom Tromey  <tromey@redhat.com>
2354
2355         * xcoffread.c: Include psymtab.h.
2356         (xcoff_sym_fns): Update.
2357         * symtab.h (struct partial_symbol): Remove.
2358         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.
2359         (struct partial_symtab): Remove.
2360         (PSYMTAB_TO_SYMTAB): Remove.
2361         (lookup_partial_symbol, lookup_partial_symtab, find_pc_psymtab)
2362         (find_pc_sect_psymtab): Remove.
2363         (find_pc_sect_symtab_via_partial): Declare.
2364         (find_pc_psymtab, find_pc_sect_psymbol, psymtab_to_symtab)
2365         (find_main_psymtab): Remove.
2366         (find_main_filename): Declare.
2367         (fixup_psymbol_section): Remove.
2368         (fixup_section): Declare.
2369         * symtab.c: Include psymtab.h.
2370         (lookup_symtab): Use lookup_symtab method.
2371         (lookup_partial_symtab): Remove.
2372         (find_pc_sect_psymtab_closer): Remove.
2373         (find_pc_sect_psymtab): Remove.
2374         (find_pc_sect_symtab_via_partial): New function.
2375         (find_pc_psymtab, find_pc_sect_psymbol, find_pc_psymbol): Remove.
2376         (fixup_section): No longer static.
2377         (fixup_psymbol_section): Remove.
2378         (lookup_symbol_aux): Use lookup_symbol_aux_quick.
2379         (lookup_global_symbol_from_objfile): Likewise.
2380         (lookup_symbol_aux_psymtabs): Remove.
2381         (lookup_symbol_aux_quick): New function.
2382         (lookup_symbol_global): Use lookup_symbol_aux_quick.
2383         (lookup_partial_symbol): Remove.
2384         (basic_lookup_transparent_type_quick): New function.
2385         (basic_lookup_transparent_type): Use it.
2386         (find_main_psymtab): Remove.
2387         (find_main_filename): New function.
2388         (find_pc_sect_symtab): Use find_pc_sect_symtab method.
2389         (find_line_symtab): Use expand_symtabs_with_filename method.
2390         (output_partial_symbol_filename): New function.
2391         (sources_info): Use map_partial_symbol_filenames.
2392         (struct search_symbols_data): New type.
2393         (search_symbols_file_matches): New function.
2394         (search_symbols_name_matches): Likewise.
2395         (search_symbols): Use expand_symtabs_matching method.
2396         (struct add_name_data): Rename from add_macro_name_data.
2397         (add_macro_name): Update.
2398         (add_partial_symbol_name): New function.
2399         (default_make_symbol_completion_list): Use
2400         map_partial_symbol_names.
2401         (struct add_partial_symbol_name): New type.
2402         (maybe_add_partial_symtab_filename): New function.
2403         (make_source_files_completion_list): Use
2404         map_partial_symbol_filenames.
2405         (expand_line_sal): Use expand_symtabs_with_filename method.
2406         * symmisc.c: Include psymtab.h.
2407         (print_objfile_statistics): Use print_stats method.
2408         (dump_objfile): Use dump method.
2409         (dump_psymtab, maintenance_print_psymbols)
2410         (maintenance_info_psymtabs, maintenance_check_symtabs)
2411         (extend_psymbol_list): Remove.
2412         * symfile.h (struct quick_symbol_functions): New struct.
2413         (struct sym_fns) <qf>: New field.
2414         (sort_pst_symbols): Remove.
2415         (increment_reading_symtab): Declare.
2416         * symfile.c: Include psymtab.h.
2417         (compare_psymbols, sort_pst_symbols): Remove.
2418         (psymtab_to_symtab): Remove.
2419         (increment_reading_symtab): New function.
2420         (symbol_file_add_with_addrs_or_offsets): Use expand_all_symtabs
2421         method.
2422         (set_initial_language): Use find_main_filename.
2423         (allocate_psymtab, discard_psymtab, cashier_psymtab): Remove.
2424         (free_named_symtabs): Remove unused code.
2425         (start_psymtab_common, add_psymbol_to_bcache)
2426         (append_psymbol_to_list, add_psymbol_to_list, init_psymbol_list):
2427         Remove.
2428         * stack.c: Include psymtab.h, symfile.h.
2429         (backtrace_command_1): Use find_pc_sect_symtab_via_partial.
2430         * source.h (psymtab_to_fullname): Don't declare.
2431         * source.c: Include psymtab.h.
2432         (select_source_symtab): Use find_last_source_symtab method.
2433         (forget_cached_source_info): Use forget_cached_source_info
2434         method.
2435         (find_and_open_source): No longer static.
2436         (psymtab_to_fullname): Remove.
2437         * somread.c: Include psymtab.h.
2438         (som_sym_fns): Update.
2439         * psympriv.h: New file.
2440         * psymtab.h: New file.
2441         * psymtab.c: New file.
2442         * objfiles.h: (ALL_OBJFILE_PSYMTABS): Remove.
2443         (ALL_PSYMTABS, ALL_PSPACE_PSYMTABS): Likewise.
2444         * objfiles.c: Include psymtab.h.
2445         (objfile_relocate1): Use relocate method.
2446         (objfile_has_partial_symbols): Use has_symbols method.
2447         * mipsread.c: Include psymtab.h.
2448         (ecoff_sym_fns): Update.
2449         * mi/mi-cmd-file.c: Include psymtab.h.
2450         (print_partial_file_name): New function.
2451         (mi_cmd_file_list_exec_source_files): Use
2452         map_partial_symbol_filenames.
2453         * mdebugread.c: Include psympriv.h.
2454         * machoread.c: Include psympriv.h.
2455         (macho_sym_fns): Update.
2456         * m2-exp.y (yylex): Use lookup_symtab.
2457         * elfread.c: Include psympriv.h.
2458         (elf_sym_fns): Update.
2459         * dwarf2read.c: Include psympriv.h.
2460         * dbxread.c: Include psympriv.h.
2461         (aout_sym_fns): Update.
2462         * cp-support.c: Include psymtab.h.
2463         (read_in_psymtabs): Remove.
2464         (make_symbol_overload_list_qualified): Use
2465         expand_symtabs_for_function method.
2466         * coffread.c: Include psympriv.h.
2467         (coff_sym_fns): Update.
2468         * blockframe.c: Include psymtab.h.
2469         (find_pc_partial_function): Use find_pc_sect_symtab method.
2470         * ada-lang.h (ada_update_initial_language): Update.
2471         * ada-lang.c: Include psymtab.h.
2472         (ada_update_initial_language): Remove 'main_pst' argument.
2473         (ada_lookup_partial_symbol): Remove.
2474         (struct ada_psym_data): New type.
2475         (ada_add_psyms): New function.
2476         (ada_add_non_local_symbols): Use map_ada_symtabs method.
2477         (struct add_partial_datum): New type.
2478         (ada_add_partial_symbol_completions): New function.
2479         (ada_make_symbol_completion_list): Use map_partial_symbol_names.
2480         (ada_exception_support_info_sniffer): Update.
2481         * Makefile.in (SFILES): Add psymtab.c.
2482         (COMMON_OBS): Add psymtab.o.
2483         (HFILES_NO_SRCDIR): Add psymtab.h, psympriv.h.
2484
2485 2010-03-10  Pierre Muller  <muller@ics.u-strasbg.fr>
2486
2487         * remote-fileio.c (cygwin_conv_path): Define macro for old cygwin API.
2488
2489 2010-03-10  Sami Wagiaalla  <swagiaal@redhat.com>
2490
2491         PR C++/11236:
2492         * cp-namespace.c (cp_add_using): Deleted.
2493         (cp_add_using_directive): Use obstack allocations.
2494         Merged the function cp_add_using into this one.
2495         Added 'struct obstack *' argument.
2496         (cp_scan_for_anonymous_namespaces): Updated.
2497         * cp-support.h: Updated.
2498         * dwarf2read.c (read_import_statement): Updated.
2499         (read_namespace): Updated.
2500
2501 2010-03-10  Pierre Muller  <muller@ics.u-strasbg.fr>
2502
2503         * windows-nat.c (cygwin_conv_path): Remove old macro.
2504
2505 2010-03-10  Pedro Alves  <pedro@codesourcery.com>
2506
2507         * breakpoint.c (condition_command): Handle watchpoint conditions.
2508         (is_hardware_watchpoint): Add comment.
2509         (is_watchpoint): New.
2510         (update_watchpoint): Don't reparse the watchpoint's condition
2511         unless necessary.
2512         (WP_IGNORE): New.
2513         (watchpoint_check): Use it.
2514         (bpstat_check_watchpoint): Handle it.
2515         (bpstat_check_breakpoint_conditions): Evaluate watchpoint local
2516         conditions in a frame where it makes sense.
2517         (watch_command_1): Store the innermost block of the condition
2518         expression.
2519         (delete_breakpoint): Delete the watchpoint condition expression.
2520         * breakpoint.h (struct bp_location) <cond>: Update comment.
2521         (struct breakpoint): New field `cond_exp_valid_block'.
2522
2523 2010-03-09  Joel Brobecker  <brobecker@adacore.com>
2524
2525         Adjust handling of Ada DIEs after dwarf2_physname patch.
2526         * dwarf2read.c (dwarf2_compute_name): Add handling of Ada DIEs.
2527
2528 2010-03-09  Christopher Faylor  <me+cygwin@cgf.cx>
2529             Pierre Muller  <muller@ics.u-strasbg.fr>
2530
2531         * windows-nat.c (cygwin_conv_path): Redefine to properly convert
2532         from/to posix/win32.
2533         (windows_make_so): Use non-Cygwin 1.7 specific function.
2534         (windows_create_inferior): Make sure that cygallargs points to
2535         original args in non Cygwin 1.7. case.
2536
2537 2010-03-09  Michael Snyder  <msnyder@vmware.com>
2538
2539         * i386-tdep.c (i386_record_lea_modrm_addr): Use extract_signed_int
2540         after target_read_memory to get host byte order.
2541         (i386_process_record): Ditto.
2542
2543 2010-03-09  Keith Seitz  <keiths@redhat.com>
2544
2545         Based on work from Daniel Jacobowitz  <dan@codesourcery.com>
2546         * c-typeprint.c (cp_type_print_method_args): For non-static methods,
2547         print out const or volatile qualifiers, too.
2548         (c_type_print_args): Add parameters show_artificial and language.
2549         Skip artificial parameters when requested.
2550         Use the appropriate language printer.
2551         (c_type_print_varspec): Tell c_type_print_args to skip artificial
2552         parameters and pass language_c.
2553         * dwarf2read.c (die_list): New file global.
2554         (struct partial_die_info): Update comments for name field.
2555         (pdi_needs_namespace): Renamed to ...
2556         (die_needs_namespace): ... this. Rewrite.
2557         (dwarf2_linkage_name): Remove.
2558         (add_partial_symbol): Do not predicate the call to
2559         partial_die_full_name based on pdi_needs_namespace.
2560         Remove call to cp_check_possible_namespace_symbols and associated
2561         outdated comments.
2562         (guess_structure_name): Do not inspect child subprogram DIEs.
2563         (dwarf2_fullname): Update comments.
2564         Use die_needs_namespace to assist in computing the name.
2565         (read_func_scope): Use dwarf2_name to get the DIE's name.
2566         Use dwarf2_physname to get the "linkage name" of the DIE.
2567         (dwarf2_add_member_field): Use dwarf2_physname instead of
2568         dwarf2_linkage_name.
2569         (read_structure_type): For structs and classes, set TYPE_NAME, too.
2570         (determine_class): Remove.
2571         (read_partial_die): Ignore DW_AT_MIPS_linkage_name for all languages
2572         except Ada.
2573         (new_symbol): Unconditionally call dwarf2_name.
2574         Compute the "linkage name" using dwarf2_physname.
2575         Use dwarf2_name instead of dwarf2_full_name for enumerator DIEs.
2576         When determining to scan for anonymous C++ namespaces, ignore
2577         the linkage name.
2578         (dwarf2_physname): New function.
2579         (dwarf2_full_name): Move content to new function and call
2580         that.
2581         (dwarf2_compute_name): "New" function.
2582         (_initialize_dwarf2_read): Initialize die_list.
2583         * gnu-v3-eabi.c (gnu_v3_find_method_in): Remove unused variable
2584         physname.
2585         (gnu_v3_print_method_ptr): Use the physname for virtual methods
2586         without a demangled name.
2587         Print out type information for non-virtual methods.
2588         * linespec.c (decode_line_1): Force ANY string using "::" (or
2589         "." for java) to use decode_compound, and clean up any stray quoting.
2590         If we found a file symtab, re-evaluate whether the remainder is_quoted.
2591         (decode_compound): Stop consuming at an open parenthesis.
2592         Keep template parameters.
2593         Keep any overload information.
2594         Keep keywords like "const".
2595         Remove paren_pointer.
2596         Move is_quoted check from set_flags to here.
2597         Remove #if 0 code from 2000. Ten years is long enough.
2598         (find_method): Before comparing symbol names, canonicalize the string
2599         from the user.
2600         If a specific overload is requested, find it. Otherwise throw an error.
2601         (find_method_overload_end): New function.
2602         (set_flags): Remove.
2603         (decode_compound): Assume that parentheses are matched.
2604         It's a lot easier.
2605         * symtab.c (symbol_find_demangled_name): Add DMGL_VERBOSE flag
2606         to cplus_demangle.
2607         * linespec.c (decode_line_1): Keep important keywords like
2608         "const" and "volatile".
2609         * symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): Remove.
2610         * typeprint.h (c_type_print_args): Add declaration.
2611         * ui-file.c (do_ui_file_obsavestring): New function.
2612         (ui_file_obsavestring): New function.
2613         * ui-file.h (ui_file_obsavestring): Add declaration.
2614         * valops.c (find_overload_match): Resolve the object to
2615         a non-pointer type.
2616         If the object is a data member, search the object for the member
2617         and return with staticp set.
2618         Use SYMBOL_NATURAL_NAME instead of SYMBOL_CPLUS_DEMANGLED_NAME.
2619         Do not attempt to extract a function name from non-function types.
2620         If the extracted function name and the original name are the same,
2621         we don't have a C++ method.
2622
2623         From Jan Kratochvil  <jan.kratochvil@redhat.com>:
2624         * dwarf2read.c (new_symbol <DW_TAG_enumerator>): Call dwarf2_full_name.
2625
2626         * ada-lang.c (ada_lookup_symbol): Remove linkage_name parameters
2627         and arguments from symbol lookups.
2628         * ax-gdb.c (gen_expr): Likewise.
2629         * cp-namespace.c (cp_lookup_symbol_nonlocal, lookup_namespace_scope,
2630         cp_lookup_symbol_namespace, lookup_symbol_file, lookup_nested_type,
2631         lookup_possible_namespace_symbol): Likewise.
2632         * cp-support.c (read_in_psymtabs): Likewise.
2633         * cp-support.h (cp_lookup_symbol_nonlocal): Likewise.
2634         * language.h (la_lookup_symbol_nonlocal): Likewise.
2635         * scm-valprint.c (scm_inferior_print): Likewise.
2636         * solib-darwin.c (darwin_relocate_section_addresses): Likewise.
2637         * solib-svr.c (elf_lookup_lib): Likewise.
2638         * solib.c (show_auto_solib_add): Likewise.
2639         * solist.h (lookup_lib_global, solib_global_lookup): Likewise.
2640         * symmisc.c (maintenance_check_symtabs): Likewise.
2641         * symtab.c (lookup_symbol_in_language, lookup_symbol_aux,
2642         lookup_symbol_aux_local, lookup_symbol_aux_block,
2643         lookup_symbol_from_objfile, lookup_symbol_aux_symtabs,
2644         lookup_symbol_aux_psymtabs,basic_lookup_symbol_nonlocal,
2645         lookup_symbol_static, lookup_symbol_global, symbol_matches_domain,
2646         basic_lookup_transparent_type, find_main_psymtab,
2647         lookup_block_symbol): Likewise.
2648         * symtab.h (basic_lookp_symbol_nonlocal, lookup_symbol_static,
2649         lookup_symbol_global, lookup_symbol_aux_block,
2650         lookup_symbol_partial_symbol, lookup_block_symbol,
2651         lookup_global_symbol, value_maybe_namespace_elt): Likewise.
2652
2653 2010-03-09  Pierre Muller  <muller@ics.u-strasbg.fr>
2654
2655         * python/python-internal.h: Include symtab.h.
2656
2657 2010-03-09  Joel Brobecker  <brobecker@adacore.com>
2658             Pierre Muller  <muller@ics.u-strasbg.fr>
2659
2660         * p-lang.c (is_pascal_string_type): Remove unneeded parentheses.
2661         * p-valprint.c (pascal_val_print): Remove undeed block and fix
2662         indentation.
2663
2664 2010-03-08  Tom Tromey  <tromey@redhat.com>
2665
2666         * breakpoint.c (breakpoint_1): Add "QUIT".
2667
2668 2010-03-08  Daniel Jacobowitz  <dan@codesourcery.com>
2669             Pedro Alves  <pedro@codesourcery.com>
2670
2671         * solib.c (solib_find): Replace extension if
2672         solib_symbols_extension is set in the target gdbarch.
2673         * arm-symbian-tdep.c (arm_symbian_init_abi): Set
2674         solib_symbols_extension to "sym".
2675         * gdbarch.sh (solib_symbols_extension): New variable.
2676         (pstring): New function.
2677         * gdbarch.h, gdbarch.c: Regenerate.
2678
2679 2010-03-08  Tom Tromey  <tromey@redhat.com>
2680
2681         PR cli/9591:
2682         * NEWS: Update.
2683         * utils.c: Include main.h.
2684         (fputs_maybe_filtered): Don't paginate if `batch_flag'.
2685         (defaulted_query): Use default answer if `batch_flag'.
2686         * main.h (batch_flag): Declare.
2687         * main.c (batch_flag): New global.
2688         (captured_main): Remove 'batch'.  Update.
2689
2690 2010-03-08  Kevin Buettner  <kevinb@redhat.com>
2691
2692         From Richard Sandiford, Martin M. Hunt, Corinna Vinschen,
2693         and Kevin Buettner:
2694
2695         * remote-mips.c (rockhopper_ops): New target_ops struct.
2696         (MON_ROCKHOPPER): New mips_monitor_type.
2697         (read_hex_value): New function.
2698         (mips_request): Send 8-byte values with a 'T' packet.  Read the
2699         packet argument as a string and use read_hex_value to parse it.
2700         (mips_exit_debug): Wait for response when using MON_ROCKHOPPER.
2701         (rockhopper_open): New function.
2702         (mips_wait): Read the PC, FP and SP fields as strings.  Use
2703         read_hex_value to parse them and mips_set_register to commit them.
2704         (mips_set_register): New function.
2705         (mips_fetch_registers): Do not cast register value to "unsigned"
2706         when reading a MON_ROCKHOPPER 't' packet.  Use mips_set_register.
2707         (mips_store_registers): Use a 'T' packet to set registers when
2708         using MON_ROCKHOPPER.
2709         (pmon_end_download): Don't run initEther if using MON_ROCKHOPPER
2710         and expect the total to be printed before the entry address.
2711         (_initialize_remote_mips): Initialize and add rockhopper_ops.
2712
2713 2010-03-08  Kevin Buettner  <kevinb@redhat.com>
2714
2715         * remote-mips.c (mips_fetch_word): Add new parameter, `valp'.
2716         Change return value to int.  Store value fetched in location
2717         addressed by `val'.  Use function's return value as success
2718         or failure indicator.  Adjust all callers.
2719
2720 2010-03-08  Pierre Muller  <muller@ics.u-strasbg.fr>
2721
2722         * p-lang.c (is_pascal_string_type): Check that TYPE arg is non NULL.
2723
2724 2010-03-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2725             Hui Zhu  <teawater@gmail.com>
2726
2727         * record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and
2728         tmp_to_stopped_data_address.
2729         (record_open): Reset tmp_to_stopped_by_watchpoint and
2730         tmp_to_stopped_data_address.
2731         * target.c (init_dummy_target): Add to_stopped_by_watchpoint and
2732         to_stopped_data_address.
2733
2734 2010-03-08  Hui Zhu  <teawater@gmail.com>
2735
2736         * i386-tdep.c (i386_process_record): Initialize regnum.
2737
2738 2010-03-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2739
2740         * symfile.c (addr_info_make_relative): New variable sect_name, use it.
2741         Do not warn on ".gnu.liblist" and ".gnu.conflict".
2742
2743 2010-03-08  Joel Brobecker  <brobecker@adacore.com>
2744
2745         Memory error when reading wrong core file.
2746         * solib-svr4.c (solib_svr4_r_map): catch and print all exception
2747         errors while reading the inferior memory, and return zero if
2748         an exception was raised.
2749
2750 2010-03-07  Michael Snyder  <msnyder@vmware.com>
2751
2752         * record.c (record_restore): Rename tmpu8 to rectype.
2753
2754         * i386-tdep.c (i386_record_lea_modrm_addr): Rename local variables
2755         tmpu8, tmpi16, tmpi32, tmpulongest to addr8, addr16, addr32, addr64.
2756
2757         (i386_record_push): Rename local tmpulongest to addr.
2758
2759         (i386_process_record): Rename local tmpulongest to addr.
2760
2761         Rename local variables tmpu16, tmpu32, tmpu64 to addr16, addr32,
2762         addr64.
2763
2764         Rename local variable tmpu8 to opcode8 and regnum.
2765
2766 2010-03-07  Joel Brobecker  <brobecker@adacore.com>
2767
2768         * remote.c (remote_get_ada_task_ptid): New function.
2769         (init_remote_ops): Set remote_ops.to_get_ada_task_ptid.
2770
2771 2010-03-06  Christopher Faylor  <me+cygwin@cgf.cx>
2772
2773         * windows-nat.c: Reorganize #ifdef __CYGWIN__ considerations into one
2774         block.  Define helper macros to reduce ifdefs in code.
2775         (get_module_name): Use cygwin_buf_t for buffer and __PMAX for buffer
2776         size.  Call unadorned GetModuleFileNameEx rather than
2777         GetModuleFileNameEx*.
2778         (windows_make_so): Use __PMAX to denote maximum buffer size and
2779         cygwin_buf_t for buffer type.  Use GetSystemDirectory{W,A} as
2780         appropriate.
2781         (get_image_name): Use __PMAX to denote maximum buffer size.
2782         (handle_load_dll): Likewise.
2783         (windows_pid_to_exec_file): Likewise.
2784         (windows_create_inferior): Add many accommodations for older Cygwin and
2785         non-Cygwin.
2786         (bad_GetModuleFileNameExW): Control inclusion of this function based on
2787         __USEWIDE conditional.
2788         (bad_GetModuleFileNameExA): Likewise.
2789         (_initialize_loadable): Just use real function names without the dyn_
2790         part since they are defined earlier.
2791
2792 2010-03-05  Corinna Vinschen  <vinschen@redhat.com>
2793             Tom Tromey  <tromey@redhat.com>
2794
2795         * utils.c (host_char_to_target): Add 'gdbarch' argument.
2796         (parse_escape): Likewise.
2797         * python/py-utils.c (unicode_to_target_string): Update.
2798         (unicode_to_target_python_string): Update.
2799         (target_string_to_unicode): Update.
2800         * printcmd.c (printf_command): Update.
2801         * p-exp.y (yylex): Update.
2802         * objc-exp.y (yylex): Update.
2803         * mi/mi-parse.c: Include charset.h.
2804         (mi_parse_escape): New function.
2805         (mi_parse_argv): Use it.
2806         * jv-exp.y (yylex): Update.
2807         * i386-cygwin-tdep.c (i386_cygwin_auto_wide_charset): New
2808         function.
2809         (i386_cygwin_init_abi): Call set_gdbarch_auto_wide_charset.
2810         * gdbarch.sh (auto_charset, auto_wide_charset): New.
2811         * gdbarch.c: Rebuild.
2812         * gdbarch.h: Rebuild.
2813         * defs.h (parse_escape): Update.
2814         * cli/cli-setshow.c: Include arch-utils.h.
2815         (do_setshow_command): Update.
2816         * cli/cli-cmds.c (echo_command): Update.
2817         * charset.h (target_charset, target_wide_charset): Update.
2818         * charset.c: Include arch-utils.h.
2819         (target_charset_name): Default to "auto".
2820         (target_wide_charset_name): Likewise.
2821         (show_target_charset_name): Handle "auto".
2822         (show_target_wide_charset_name): Likewise.
2823         (be_le_arch): New global.
2824         (set_be_le_names): Add 'gdbarch' argument.
2825         (validate): Likewise.  Don't call set_be_le_names.
2826         (set_charset_sfunc, set_host_charset_sfunc)
2827         (set_target_charset_sfunc, set_target_wide_charset_sfunc):
2828         Update.
2829         (target_charset): Add 'gdbarch' argument.
2830         (target_wide_charset): Likewise.  Remove 'byte_order' argument.
2831         (auto_target_charset_name): New global.
2832         (default_auto_charset, default_auto_wide_charset): New functions.
2833         (_initialize_charset): Set auto_target_charset_name.  Allow "auto"
2834         for target charsets.  Copy result of nl_langinfo.  Use GetACP if
2835         USE_WIN32API.
2836         * c-lang.c (charset_for_string_type): Add 'gdbarch' argument,
2837         remove 'byte_order' argument.  Update.
2838         (classify_type): Likewise.
2839         (c_emit_char): Update.
2840         (c_printchar): Update.
2841         (c_printstr): Update.
2842         (c_get_string): Update.
2843         (evaluate_subexp_c): Update.
2844         * arch-utils.h (default_auto_charset, default_auto_wide_charset):
2845         Declare.
2846         * python/python.c (gdbpy_target_charset): New function.
2847         (gdbpy_target_wide_charset): Likewise.
2848         (GdbMethods): Update.
2849         * NEWS: Update.
2850
2851 2010-03-05  Ulrich Weigand  <uweigand@de.ibm.com>
2852
2853         * symfile.c (build_section_addr_info_from_objfile): Do not mask
2854         off high address bits.
2855
2856 2010-03-05  Ulrich Weigand  <uweigand@de.ibm.com>
2857
2858         * python/py-lazy-string.c (gdbpy_extract_lazy_string): Extract
2859         address as UnsignedLongLong, not LongLong.
2860
2861 2010-03-05  Kevin Buettner  <kevinb@redhat.com>
2862             Pedro Alves  <pedro@codesourcery.com>
2863
2864         * remote-mips.c (gdbthread.h): Include.
2865         (remote_mips_ptid): Declare.
2866         (mips_error): Only mourn the inferior when inferior_ptid is non-null.
2867         (common_open): Set inferior_ptid, add it as an inferior, and
2868         as a thread too.  Delete FIXME comment regarding start_remote().
2869         (mips_close): Invoke generic_mourn_inferior().
2870         (mips_kill): Make sure that target_mourn_inferior is invoked.
2871         (mips_mourn_inferior): Don't invoke generic_mourn_inferior, as
2872         it's now invoked from mips_close().
2873         (mips_load): Don't null out inferior_ptid.  Don't call
2874         clear_symtab_users().
2875         (mips_thread_alive, mips_pid_to_str): New functions.
2876         (_initialize_remote_mips): Initialize remote_mips_ptid.  Initialize
2877         to_thread_alive and to_pid_to_str operations.
2878
2879 2010-03-04  Tom Tromey  <tromey@redhat.com>
2880
2881         * dwarf2read.c (skip_one_die) <DW_FORM_ref_addr>: Use offset size
2882         in DWARF 3 and later.
2883         (read_attribute_value) <DW_FORM_ref_addr>: Likewise.
2884
2885 2010-03-04  Keith Seitz  <keiths@redhat.com>
2886
2887         * linespec.c (decode_line_1): Update comments for is_quote_enclosed.
2888         If the filename portion of the linespec was quoted, recheck the
2889         remainder for additional quoting.
2890         (locate_first_half): Skip over completer chars, too.
2891
2892 2010-03-04  Tom Tromey  <tromey@redhat.com>
2893
2894         * printcmd.c (printf_command): Pass dummy argument to
2895         printf_filtered.
2896
2897 2010-03-04  Doug Evans  <dje@google.com>
2898
2899         * arm-tdep.c (arm_make_stub_cache): Delete unused locals reg,
2900         unwound_fp.
2901
2902         * arm-tdep.c (arm_stub_unwind_sniffer): Add comment.
2903
2904 2010-03-04  Pedro Alves  <pedro@codesourcery.com>
2905
2906         * breakpoint.c (update_watchpoint): Create a sentinel location if
2907         the software watchpoint isn't watching any memory.
2908         (breakpoint_address_bits): Skip dummy software watchpoint locations.
2909
2910 2010-03-04  Pedro Alves  <pedro@codesourcery.com>
2911
2912         * utils.c (fputs_maybe_filtered): Check if there's already a top
2913         level interpreter before dereferencing it.  If there isn't one,
2914         don't paginate either.
2915
2916 2010-03-04  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
2917
2918         * arm-tdep.c (arm_pc_is_thumb): Add heuristic that tries to get
2919         the state right when single stepping.
2920         (arm_get_next_pc_raw, thumb_get_next_pc_raw): New functions.
2921         Get the next PC along with the instruction state.
2922         (thumb_get_next_pc): Remove.
2923         (arm_get_next_pc): Modified to use arm_get_next_pc_raw.
2924
2925 2010-03-04  Hui Zhu  <teawater@gmail.com>
2926
2927         * i386-tdep.c (i386_process_record): Change "addr" to "tmpu64".
2928
2929 2010-03-03  Pedro Alves  <pedro@codesourcery.com>
2930
2931         * utils.c (fputs_maybe_filtered): Always disable pagination if the
2932         top level interpreter is MI.
2933
2934 2010-03-03 Stan Shebs  <stan@codesourcery.com>
2935
2936         * remote.c (remote_download_tracepoint): Iterate over locations.
2937         * tracepoint.c (validate_actionline): Ditto.
2938         (encode_actions): Add location argument.
2939         (trace_dump_command): Check all locations to see if stepping
2940         frame.
2941
2942 2010-03-03  H.J. Lu  <hongjiu.lu@intel.com>
2943             Eli Zaretskii  <eliz@gnu.org>
2944
2945         * NEWS: Add X86 general purpose registers section.
2946
2947 2010-03-03  Tom Tromey  <tromey@redhat.com>
2948
2949         PR mi/11098:
2950         * varobj.c (install_new_value): Handle case where new print_value
2951         is NULL.
2952
2953 2010-03-03  Dainis Jonitis  <jonitis@gmail.com>
2954
2955         PR gdb/11345:
2956         * printcmd.c (printf_command): Print end of format string using
2957         printf_filtered.
2958
2959 2010-03-02  Tom Tromey  <tromey@redhat.com>
2960
2961         * mi/mi-cmd-break.c (mi_read_next_line): Add missing 'void'.
2962         * defs.h (read_command_lines_1): Add missing 'void'.
2963         * cli/cli-script.c (recurse_read_control_structure): Add missing
2964         'void'.
2965         (read_next_line): Likewise.
2966         (read_command_lines_1): Likewise.
2967
2968 2010-03-02  Ulrich Weigand  <uweigand@de.ibm.com>
2969
2970         * spu-tdep.c (spu_analyze_prologue): Track instruction to
2971         store backchain as part of prologue.
2972
2973 2010-03-02  Daniel Jacobowitz  <dan@codesourcery.com>
2974
2975         * progspace.c (update_address_spaces): Update inferior address spaces
2976         also.
2977
2978 2010-03-02  Doug Evans  <dje@google.com>
2979
2980         * dwarf2read.c (add_partial_subprogram): Add missing baseaddr to
2981         lowpc,highpc args to addrmap_set_empty.
2982
2983 2010-03-02  H.J. Lu  <hongjiu.lu@intel.com>
2984
2985         * amd64-tdep.c (amd64_byte_names): New.
2986         (amd64_word_names): Likewise.
2987         (amd64_dword_names): Likewise.
2988         (amd64_pseudo_register_name): Likewise.
2989         (amd64_pseudo_register_read): Likewise.
2990         (amd64_pseudo_register_write): Likewise.
2991         (amd64_init_abi): Set num_byte_regs, num_word_regs, num_dword_regs
2992         and num_mmx_regs.  Call set_gdbarch_pseudo_register_read,
2993         set_gdbarch_pseudo_register_write and
2994         set_tdesc_pseudo_register_name.  Don't call
2995         set_gdbarch_num_pseudo_regs.  Don't set mm0_regnum.
2996
2997         * i386-tdep.c (i386_num_mmx_regs): Removed.
2998         (i386_num_pseudo_regs): Likewise.
2999         (i386_byte_names): New.
3000         (i386_word_names): Likewise.
3001         (i386_byte_regnum_p): Likewise.
3002         (i386_word_regnum_p): Likewise.
3003         (i386_mmx_regnum_p): Updated.
3004         (i386_pseudo_register_name): Make it global.  Handle byte and
3005         word pseudo-registers.
3006         (i386_pseudo_register_read): Likewise.
3007         (i386_pseudo_register_write): Likewise.
3008         (i386_pseudo_register_type): Handle byte, word and dword
3009         pseudo-registers
3010         (i386_register_reggroup_p): Don't include pseudo
3011         registers, except for MXX, in any register groups.  Don't
3012         include pseudo byte, word, dword registers in general_reggroup.
3013         (i386_gdbarch_init): Set num_byte_regs, num_word_regs,
3014         num_dword_regs, al_regnum, ax_regnum and eax_regnum.  Put MMX
3015         pseudo-registers after word pseudo-registers.  Call
3016         set_gdbarch_num_pseudo_regs after calling gdbarch_init_osabi.
3017
3018         * i386-tdep.h (gdbarch_tdep): Add num_mmx_regs, num_byte_regs,
3019         al_regnum, num_word_regs, ax_regnum, num_dword_regs and
3020         eax_regnum.
3021         (i386_byte_regnum_p): New.
3022         (i386_word_regnum_p): Likewise.
3023         (i386_dword_regnum_p): Likewise.
3024         (i386_pseudo_register_name): Likewise.
3025         (i386_pseudo_register_read): Likewise.
3026         (i386_pseudo_register_write): Likewise.
3027
3028 2010-03-01  H.J. Lu  <hongjiu.lu@intel.com>
3029
3030         * target-descriptions.c (tdesc_type): Remove
3031         TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
3032         (tdesc_predefined_types): Likewise.
3033         (tdesc_gdb_type): Likewise.  Pass NULL to append_flags_type_flag
3034         if flag name is empty.
3035         (maint_print_c_tdesc_cmd): Handle TDESC_TYPE_FLAGS.
3036
3037         * features/i386/32bit-core.xml: Define i386_eflags.
3038         * features/i386/64bit-core.xml: Likewise.
3039
3040         * features/i386/32bit-sse.xml: Define i386_mxcsr.
3041         * features/i386/64bit-sse.xml: Likewise.
3042
3043         * features/i386/amd64-linux.c: Regenerated.
3044         * features/i386/amd64.c: Likewise.
3045         * features/i386/i386-linux.c: Likewise.
3046         * features/i386/i386.c: Likewise.
3047
3048 2010-03-01  Daniel Jacobowitz  <dan@codesourcery.com>
3049
3050         * gdbtypes.c (append_composite_type_field_raw): New.
3051         (append_composite_type_field_aligned): Use the new function.
3052         * gdbtypes.h (append_composite_type_field_raw): Declare.
3053         * target-descriptions.c (struct tdesc_type_field): Add start and end.
3054         (struct tdesc_type_flag): New type.
3055         (struct tdesc_type): Add TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS to
3056         kind.  Add size to u.u.  Add u.f for flags.
3057         (tdesc_gdb_type): Handle TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS.
3058         (tdesc_free_type): Likewise.
3059         (tdesc_create_struct, tdesc_set_struct_size, tdesc_create_flags): New.
3060         (tdesc_add_field): Handle TDESC_TYPE_STRUCT.
3061         (tdesc_add_bitfield, tdesc_add_flag): New.
3062         * target-descriptions.h (tdesc_create_struct, tdesc_set_struct_size)
3063         (tdesc_create_flags, tdesc_add_bitfield, tdesc_add_flag): Declare.
3064         * xml-tdesc.c (struct tdesc_parsing_data): Rename current_union to
3065         current_type.  Add current_type_size and current_type_is_flags.
3066         (tdesc_start_union): Clear the new fields.
3067         (tdesc_start_struct, tdesc_start_flags): New.
3068         (tdesc_start_field): Handle struct fields, including bitfields.
3069         (field_attributes): Make type optional.  Add start and end.
3070         (union_children): Rename to struct_union_children.
3071         (union_attributes): Rename to struct_union_attributes.  Add optional
3072         size.
3073         (flags_attributes): New.
3074         (feature_children): Add struct and flags.
3075         * features/gdb-target.dtd: Add flags and struct to features.
3076         Make field type optional.  Add field start and end.
3077
3078 2010-03-01  H.J. Lu  <hongjiu.lu@intel.com>
3079
3080         * amd64-linux-nat.c (AMD64_LINUX_USER64_CS): New.
3081         (amd64_linux_read_description): Likewise.
3082         (_initialize_amd64_linux_nat): Set to_read_description to
3083         amd64_linux_read_description.
3084
3085         * amd64-linux-tdep.c: Include "features/i386/amd64-linux.c".
3086         (amd64_linux_register_name): Removed.
3087         (amd64_linux_register_type): Likewise.
3088         (amd64_linux_core_read_description): New.
3089         (amd64_linux_init_abi): Set target description to
3090         tdesc_amd64_linux if needed.  Support orig_rax in target
3091         description.  Don't call set_gdbarch_register_name nor
3092         set_gdbarch_register_type.  Call
3093         set_gdbarch_core_read_description.
3094         (_initialize_amd64_linux_tdep): Call
3095         initialize_tdesc_amd64_linux.
3096
3097         * amd64-linux-tdep.h (tdesc_amd64_linux): New.
3098
3099         * amd64-tdep.c:  Include "features/i386/amd64.c".
3100         (amd64_register_names): Removed.
3101         (amd64_register_name): Likewise.
3102         (amd64_register_type): Likewise.
3103         (amd64_init_abi):  Set num_core_regs and register_names.  Set
3104         target description to tdesc_amd64 if needed.  Don't call
3105         set_gdbarch_register_name nor set_gdbarch_register_type.
3106         (_initialize_amd64_tdep): New.
3107
3108         * i386-linux-nat.c (i386_linux_read_description): New.
3109         (_initialize_i386_linux_nat): Set to_read_description to
3110         i386_linux_read_description.
3111
3112         * i386-linux-tdep.c: Include "features/i386/i386-linux.c".
3113         (i386_linux_register_name): Removed.
3114         (i386_linux_core_read_description): New.
3115         (i386_linux_read_description): Likewise.
3116         (i386_linux_init_abi): Don't call set_gdbarch_register_name.
3117         Set target description to tdesc_i386_linux if needed.  Support
3118         orig_eax.  Set register_reggroup_p.  Call
3119         set_gdbarch_core_read_description.
3120         (_initialize_i386_linux_tdep): Call initialize_tdesc_i386_linux.
3121
3122         * i386-linux-tdep.h (tdesc_i386_linux): New.
3123
3124         * i386-nto-tdep.c (i386nto_regset_id): Replace I386_NUM_FREGS
3125         with I387_NUM_REGS.
3126
3127         * i386-tdep.c: Include "features/i386/i386.c".
3128         (i386_register_names): Make it const.
3129         (i386_mmx_names): Likewise.
3130         (i386_num_register_names): Removed.
3131         (i386_register_name): Likewise.
3132         (i386_eflags_type): Likewise.
3133         (i386_mxcsr_type): Likewise.
3134         (i386_sse_type): Likewise.
3135         (i386_register_type): Likewise.
3136         (i387_ext_type): Call tdesc_find_type instead of arch_float_type.
3137         (i386_pseudo_register_name): New.
3138         (i386_pseudo_register_type): Likewise.
3139         (i386_mmx_type): Make it static.
3140         (i386_gdbarch_init): Check arch.  Replace I386_NUM_FREGS with
3141         I387_NUM_REGS.  Set num_core_regs and register_names.  Don't
3142         call set_gdbarch_register_name nor set_gdbarch_register_type.
3143         Set register_reggroup_p.  Set target description to tdesc_i386
3144         if needed.  Call set_tdesc_pseudo_register_type,
3145         set_tdesc_pseudo_register_name and tdesc_use_registers.
3146         (_initialize_i386_tdep): Call initialize_tdesc_i386.
3147         initialize_tdesc_x86_64.
3148
3149         * i386-tdep.h (gdbarch_tdep): Remove i386_eflags_type,
3150         i386_mxcsr_type and i386_sse_type.  Add num_core_regs,
3151         register_names, tdesc and register_reggroup_p.
3152         (I386_NUM_FREGS): Removed.
3153         (i386_eflags_type): Likewise.
3154         (i386_mxcsr_type): Likewise.
3155         (i386_mmx_type): Likewise.
3156         (i386_sse_type): Likewise.
3157         (i386_register_name): Likewise.
3158         (i386_regnum): Add I386_MXCSR_REGNUM.
3159         (I386_SSE_NUM_REGS): Defined with I386_MXCSR_REGNUM.
3160
3161         * i387-tdep.h (I387_NUM_REGS): New.
3162
3163         * regformats/i386/i386-linux.dat: Generated.
3164         * regformats/i386/i386.dat: Likewise.
3165         * regformats/i386/amd64-linux.dat: Likewise.
3166         * regformats/i386/amd64.dat: Likewise.
3167
3168         * regformats/reg-i386-linux.dat: Removed.
3169         * regformats/reg-i386.dat: Likewise.
3170         * regformats/reg-x86-64-linux.dat: Likewise.
3171         * regformats/reg-x86-64.dat: Likewise.
3172
3173 2010-03-01  Corinna Vinschen  <vinschen@redhat.com>
3174
3175         * remote-fileio.c (remote_fileio_func_rename): Use Cygwin 1.7
3176         cygwin_conv_path API rather than the deprecated
3177         cygwin_conv_to_full_posix_path.
3178         * windows-nat.c:
3179         (GetModuleFileNameExA): Undefine for Cygwin.
3180         (GetModuleFileNameExW): Define for Cygwin.
3181         (get_module_name): Change size of pathbuf to PATH_MAX for Cygwin.
3182         Call GetModuleFileNameExW and convert path to POSIX using
3183         cygwin_conv_path.
3184         (windows_make_so): Always define p.  Drop unused variable m.
3185         Don't use Win32 functions to check file existance, rather use
3186         access on Cygwin.  Fetch system directory using GetSystemDirectoryW.
3187         Use canonicalize_file_name to get full path.
3188         (get_image_name): Use wcstombs, rather than WideCharToMultiByte
3189         to convert Unicode pathname to multibyte on Cygwin.  Otherwise,
3190         use correct target buffer size in call to WideCharToMultiByte.
3191         (handle_load_dll): Change size of dll_buf to PATH_MAX for Cygwin.
3192         (windows_pid_to_exec_file): Change size of path to PATH_MAX for Cygwin.
3193         (windows_create_inferior): Convert all paths and arguments to wchar_t
3194         and use CreateProcessW on Cygwin.
3195         (_initialize_windows_nat): Disable DOS-style path warning on Cygwin.
3196         (bad_GetModuleFileNameExA): Undefine for Cygwin.
3197         (bad_GetModuleFileNameExW): Define for Cygwin.
3198         (_initialize_loadable): Load GetModuleFileNameExW into
3199         dyn_GetModuleFileNameExW on Cygwin.  Don't load ANSI function on Cygwin.
3200
3201 2010-02-28  Phil Muldoon  <pmuldoon@redhat.com>
3202
3203         PR python/11036
3204         * python/py-frame.c (frapy_read_var): Add block argument and logic
3205         to cope with user provided blocks.
3206
3207 2010-02-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
3208
3209         * infcall.c (call_function_by_hand): Remove gdb_assert on sp and old_sp.
3210         New comment.
3211
3212 2010-02-28  Corinna Vinschen  <vinschen@redhat.com>
3213
3214         * Makefile.in (SUBDIR_MI_OBS): Move mi-common.o from here...
3215         (COMMON_OBS): ... to here since it's used unconditionally.
3216         (SUBDIR_MI_SRCS): Move mi/mi-common.c from here...
3217         (SFILES): To here.
3218
3219 2010-02-26  David Daney  <ddaney@caviumnetworks.com>
3220
3221         * mips-linux-tdep.c: Update struct sigframe comments.
3222         (SIGFRAME_CODE_OFFSET): Delete macro.
3223         (mips_linux_o32_sigframe_init): Calculate sigcontext_base using
3224         this_frame's sp.
3225         (mips_linux_n32n64_sigframe_init): Same.
3226
3227 2010-02-26  Kevin Buettner  <kevinb@redhat.com>
3228
3229         * remote-mips.c (mips_load): Don't use pseudo-register when
3230         invalidating regcache.
3231
3232 2010-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
3233
3234         * arm-tdep.c (thumb_get_next_pc): Correct conditional branch opcode.
3235
3236 2010-02-26  Pedro Alves  <pedro@codesourcery.com>
3237
3238         * NEWS: Add "New targets" section, and mention ARM Symbian
3239         support.
3240
3241 2010-02-26  Ulrich Weigand  <uweigand@de.ibm.com>
3242
3243         * dwarf2loc.c (struct piece_closure): Remove ARCH member,
3244         add ADDR_SIZE member.
3245         (allocate_piece_closure): Update.
3246         (copy_pieced_value_closure): Likewise.
3247         (dwarf2_evaluate_loc_desc): Likewise.
3248         (read_pieced_value): Use DWARF address size instead of
3249         GDB's gdbarch_addr_bit as size of values on the DWARF stack.
3250
3251 2010-02-26  Phil Muldoon  <pmuldoon@redhat.com>
3252             Tom Tromey  <tromey@redhat.com>
3253
3254         * python/py-type.c (typy_lookup_typename): Add in block argument.
3255         If provided restrict lookup to specified blocks.
3256         (gdbpy_lookup_type): Likewise.
3257         (typy_lookup_type): Likewise.
3258
3259 2010-02-25  Daniel Jacobowitz  <dan@codesourcery.com>
3260
3261         Symbian config
3262
3263         gdb/
3264         * arm-symbian-tdep.c: New.
3265         * configure.tgt (arm*-*-symbianelf*): New target.
3266         (*-*-symbianelf*): New OS.
3267         * osabi.c (gdb_osabi_names): Add Symbian.
3268         * defs.h (gdb_osabi): Add GDB_OSABI_SYMBIAN.
3269         * Makefile.in (ALL_TARGET_OBJS): Add arm-symbian-tdep.o.
3270         (ALLDEPFILES): Add arm-symbian-tdep.c.
3271
3272 2010-02-25  Daniel Jacobowitz  <dan@codesourcery.com>
3273
3274         * symfile.c (find_lowest_section): Include SEC_ALLOC sections.
3275
3276 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
3277
3278         * mi/mi-main.c (mi_cmd_execute): Fix typo.
3279
3280 2010-02-24  Phil Muldoon  <pmuldoon@redhat.com>
3281             Tom Tromey  <tromey@redhat.com>
3282             Thiago Jung Bauermann  <bauerman@br.ibm.com>
3283
3284         * python/python.c (_initialize_python): Call
3285         gdbpy_initialize_symtabs, gdbpy_initialize_symbols and
3286         gdbpy_initialize_blocks.
3287         * python/python-internal.h: Declare struct symbol, block and
3288         symtab_and_line.  Declare block_object_type and
3289         symbol_object_type
3290         (gdbpy_lookup_symbol gdbpy_block_for_pc)
3291         (symtab_and_line_to_sal_object, symtab_to_symtab_object)
3292         (symbol_to_symbol_object,  block_to_block_object)
3293         (gdbpy_initialize_symtabs,gdbpy_initialize_symbols)
3294         (gdbpy_initialize_blocks ): Declare.
3295         * python/py-frame.c (frapy_block, frapy_function, frapy_find_sal)
3296         (frapy_select): Add methods.
3297         (frapy_read_var): Add symbol branch.
3298         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-symbol, py-symtab,
3299         py-block.
3300         (SUBDIR_PYTHON_SRCS): Likewise.
3301         (py-symbol.o): New rule.
3302         (py-symtab.o): Likewise.
3303         (py-block.o): Likewise.
3304         * python/py-symbol.c: New file.
3305         * python/py-symtab.c: Likewise.
3306         * python/py-block.c: Likewise.
3307
3308 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
3309
3310         PR gdb/11321
3311
3312         * inferior.h (prepare_for_detach): Declare.
3313         (struct inferior) <detaching>: New field.
3314         * infrun.c (prepare_for_detach): New.
3315         (handle_inferior_event) <random signal>: Don't stop if detaching.
3316         * target.c (target_detach): Call prepare_for_detach.
3317
3318 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
3319
3320         Per-process displaced stepping queue.
3321
3322         * infrun.c (displaced_step_ptid, displaced_step_request_queue)
3323         (displaced_step_gdbarch, displaced_step_closure,
3324         (displaced_step_original, displaced_step_copy): Move globals to
3325         this...
3326         (struct displaced_step_inferior_state): ... new structure.
3327         (displaced_step_inferior_states): New global.
3328         (get_displaced_stepping_state, add_displaced_stepping_state)
3329         (remove_displaced_stepping_state, infrun_inferior_exit): New
3330         functions.
3331         (displaced_step_clear): Add displaced_step_inferior_state
3332         parameter, and adjust to handle it.
3333         (displaced_step_clear_cleanup): Parameter is now a
3334         displaced_step_inferior_state.  Adjust.
3335         (displaced_step_prepare): Adjust.
3336         (displaced_step_fixup, displaced_step_fixup)
3337         (infrun_thread_ptid_changed, resume): Adjust.
3338         (init_wait_for_inferior): Don't call displaced_step_clear.
3339         (infrun_thread_stop_requested): Rewrite.
3340         (_initialize_infrun): Install infrun_inferior_exit as
3341         inferior_exit observer.
3342
3343 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
3344
3345         * inferior.h (ptid_match): Declare.
3346         * infrun.c (ptid_match): New.
3347         * remote.c (queued_stop_reply): Rewrite and use ptid_match.
3348         (handle_notification): Add debug output.
3349         * linux-nat.c (ptid_match): Delete.
3350
3351 2010-02-24  David S. Miller  <davem@davemloft.net>
3352
3353         * gdb_ptrace.h (PT_SYSCALL): If PTRACE_SYSCALL is available, use it.
3354         * syscalls/sparc-linux.xml: New.
3355         * syscalls/sparc64-linux.xml: New.
3356         * Makefile.in (XML_SYSCALL_FILES): Add new syscall XML files.
3357         * sparc-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC32): Define.
3358         (sparc32_linux_get_syscall_number): New function.
3359         (sparc32_linux_init_abi): Set syscall XML file name and hook up
3360         syscall number fetcher.
3361         * sparc64-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC64): Define.
3362         (sparc64_linux_get_syscall_number): New function.
3363         (sparc64_linux_init_abi): Set syscall XML file name and hook up
3364         syscall number fetcher.
3365
3366 2010-02-24  Vladimir Prus  <vladimir@codesourcery.com>
3367
3368         Multiexec MI
3369
3370         * breakpoint.c (clear_syscall_counts): Take struct inferior*.
3371         * inferior.c (add_inferior_silent): Notify inferior_added
3372         observer.
3373         (delete_inferior_1): Notify inferior_removed observer.
3374         (exit_inferior_1): Pass inferior, not pid, to observer.
3375         (inferior_appeared): Likewise.
3376         (add_inferior_with_spaces): New.
3377         (add_inferior_command): Use the above.
3378         * inferior.h (delete_inferior_1, add_inferior_with_spaces):
3379         Declare.
3380
3381         * inflow.c (inflow_inferior_exit): Likewise.
3382         * jit.c (jit_inferior_exit_hook): Likewise.
3383
3384         * mi/mi-cmds.c (mi_cmds): Register add-inferior and
3385         remove-inferior.
3386         * mi/mi-cmds.h (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
3387         * mi/mi-interp.c (mi_inferior_added, mi_inferior_removed): New.
3388         (report_initial_inferior): New.
3389         (mi_inferior_removed): Register the above. Make sure
3390         inferior_added observer is called on the first inferior.
3391         (mi_new_thread, mi_thread_exit): Thread group is now identified by
3392         inferior number, not pid.
3393         (mi_solib_loaded, mi_solib_unloaded): Report which inferiors are
3394         affected.
3395         * mi/mi-main.c (current_context): New.
3396         (proceed_thread_callback): Use typed closure.
3397         Proceed everything if pid is 0. Most implementation split into
3398         (proceed_thread): ... this.
3399         (run_one_inferior): New.
3400         (mi_cmd_exec_continue, mi_cmd_exec_interrupt, mi_cmd_exec_run):
3401         Adjust for multiexec behaviour.
3402         (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
3403         (mi_cmd_execute): Handle the 'thread-group' option here.
3404         Do some extra checks.
3405         * mi-parse.c (mi_parse): Handle the --all and --thread-group
3406         options.
3407         * mi-parse.h (struct mi_parse): New fields all and thread_group.
3408
3409 2010-02-24  Vladimir Prus  <vladimir@codesourcery.com>
3410
3411         Make -exec-run a proper MI commands.
3412
3413         * mi/mi-cmds.h (mi_cmd_exec_run): Declare.
3414         * mi/mi-cmds.c (mi_cmds): Adjust.
3415         * mi/mi-main.c (mi_cmd_exec_run): New.
3416
3417 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
3418             Stan Shebs  <stan@codesourcery.com>
3419
3420         * tracepoint.h (set_traceframe_number)
3421         (cleanup_restore_current_traceframe): Declare.
3422         * tracepoint.c (set_traceframe_number): New.
3423         (struct current_traceframe_cleanup): New.
3424         (do_restore_current_traceframe_cleanup)
3425         (restore_current_traceframe_cleanup_dtor)
3426         (make_cleanup_restore_current_traceframe): New.
3427         * infrun.c: Include tracepoint.h.
3428         (fetch_inferior_event): Switch out and in of tfind mode.
3429
3430 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
3431
3432         * breakpoint.c (breakpoint_init_inferior): Also delete
3433         bp_shlib_event breakpoints.
3434         * solib-frv.c (enable_break): Remove call to
3435         remove_solib_event_breakpoints.
3436         * solib-svr4.c (enable_break): Ditto.
3437         * solib-darwin.c (darwin_solib_create_inferior_hook): Ditto.
3438         * solib-pa64.c (pa64_solib_create_inferior_hook): Ditto.
3439         * solib-som.c (som_solib_create_inferior_hook): Ditto.
3440         * solib-spu.c (spu_enable_break): Ditto.
3441
3442 2010-02-23  Harald Koenig  <H.Koenig@science-computing.de>
3443
3444         * c-exp.y (token_and_value): s/union YYSTYPE/YYSTYPE.
3445
3446 2010-02-23  Harald Koenig  <H.Koenig@science-computing.de>
3447
3448         * varobj.c (varobj_update): Avoid non-constants in initializers.
3449
3450 2010-02-23  Tom Tromey  <tromey@redhat.com>
3451
3452         * dwarf2loc.c (read_pieced_value) <DWARF_VALUE_STACK>: Correctly
3453         handle big-endian values.
3454         (dwarf2_evaluate_loc_desc) <DWARF_VALUE_STACK>: Likewise.
3455
3456 2010-02-22  Pedro Alves  <pedro@codesourcery.com>
3457
3458         PR9605
3459
3460         gdb/
3461         * breakpoint.c (insert_bp_location): If inserting the read
3462         watchpoint failed, fallback to an access watchpoint.
3463         (bpstat_check_watchpoint): Stop for read watchpoint triggers even
3464         if the value changed, if not watching the same memory for writes.
3465         (watchpoint_locations_match): Add comment.
3466         (update_global_location_list): Copy the location's watchpoint type.
3467         * i386-nat.c (i386_length_and_rw_bits): It's an internal error to
3468         handle read watchpoints here.
3469         (i386_insert_watchpoint): Read watchpoints aren't supported.
3470         * remote.c (remote_insert_watchpoint): Return 1 for unsupported
3471         packets.
3472         * target.h (target_insert_watchpoint): Update description.
3473
3474 2010-02-19  Tom Tromey  <tromey@redhat.com>
3475
3476         * p-typeprint.c (pascal_type_print_varspec_prefix): Update.
3477         * m2-typeprint.c (m2_print_type): Update.
3478         * gdbtypes.c (recursive_dump_type): Update.
3479         (copy_type_recursive): Update.
3480         * c-typeprint.c (c_type_print_varspec_prefix): Update.
3481         (c_type_print_base): Update.
3482         * gdbtypes.h (TYPE_CODE_TEMPLATE, TYPE_CODE_TEMPLATE_ARG):
3483         Remove.
3484         (struct cplus_struct_type) <ntemplate_args>: Remove.
3485         <struct template_arg>: Remove.
3486         <is_dynamic>: Move earlier.
3487         (TYPE_TEMPLATE_ARGS): Remove.
3488         (TYPE_NTEMPLATE_ARGS): Remove.
3489         (TYPE_TEMPLATE_ARG): Remove.
3490
3491 2010-02-19  Tom Tromey  <tromey@redhat.com>
3492
3493         PR c++/8693, PR c++/9496:
3494         * cp-namespace.c (cp_lookup_nested_type): Handle TYPE_CODE_UNION.
3495         * c-exp.y (lex_one_token): Rename from yylex.  Don't call
3496         write_dollar_variable.  Don't try to classify NAME tokens.
3497         (token_and_value): New type.
3498         (token_fifo, popping, name_obstack): New globals.
3499         (classify_name): New function.
3500         (classify_inner_name): Likewise.
3501         (yylex): Likewise.
3502         (VARIABLE): Now has type sval.
3503         (exp : VARIABLE): Call write_dollar_variable.
3504         (qualified_name): Use TYPENAME, not typebase.  Add production for
3505         multiple "::" instances.
3506         (variable): Use name_not_typename.
3507         (qualified_type): Remove.
3508         (typebase): Update.
3509
3510 2010-02-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
3511
3512         * symfile.c (addr_info_make_relative): Extend comment.  Move SECT to
3513         a more inner block.  Initialize ADDR by LOWER_OFFSET only if it was
3514         found by bfd_get_section_by_name.
3515         * symfile.h (struct section_addr_info) <sectindex>: New comment.
3516
3517 2010-02-19  Joel Brobecker  <brobecker@adacore.com>
3518
3519         * NEWS: Add new "[...] since 7.1" section.  Rename the "[...] since
3520         7.0 section" into "Changes in 7.1".
3521
3522 2010-02-19  Joel Brobecker  <brobecker@adacore.com>
3523
3524         GDB 7.1 branch created (branch timestamp: 2010-02-18 20:00 UTC)
3525         * version.in: Bump version to 7.1.50.20100219-cvs.
3526
3527 2010-02-18  Harald Koenig  <H.Koenig@science-computing.de>
3528
3529         * mi/mi-main.c (mi_cmd_exec_jump): Drop unneeded `return'.
3530         * symfile.c (symfile_map_offsets_to_segments): Fix assertion.
3531
3532 2010-02-17  Tom Tromey  <tromey@redhat.com>
3533
3534         * NEWS: Add Python API Improvements section.
3535
3536 2010-02-18  Daniel Jacobowitz  <dan@codesourcery.com>
3537
3538         * NEWS: Correct typo.
3539
3540 2010-02-17  Tom Tromey  <tromey@redhat.com>
3541
3542         * objfiles.c (gdb_bfd_ref): Handle abfd==NULL.
3543
3544 2010-02-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
3545
3546         * symfile.c (build_section_addr_info_from_objfile): Include sections
3547         only if they are SEC_ALLOC or SEC_LOAD.
3548
3549 2010-02-17  H.J. Lu  <hongjiu.lu@intel.com>
3550
3551         PR shlibs/11293
3552         * solib-svr4.c (enable_break): Check size of CORE_ADDR instead
3553         of ULONGEST for address size.
3554
3555 2010-02-17  Tom Tromey  <tromey@redhat.com>
3556
3557         * NEWS: Add C++ improvements section.
3558
3559 2010-02-17  Ulrich Weigand  <uweigand@de.ibm.com>
3560
3561         * python/python-internal.h [!WITH_THREAD] (PyGILState_Release,
3562         PyThreadState_Swap): Avoid "statement with no effect" warning.
3563
3564 2010-02-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
3565
3566         * solib-svr4.c (enable_break <target_auxv_search>): New variable
3567         addr_bit.  Adjust LOAD_ADDR sign for cross-arch inferiors.
3568
3569 2010-02-17  Tristan Gingold  <gingold@adacore.com>
3570             Petr Hluzin  <petr.hluzin@gmail.com>
3571
3572         * avr-tdep.c (avr_scan_prologue): Convert an if statement to a
3573         gdb_assert.  Fix info->size for SIG prologue.
3574
3575 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
3576
3577         * infcmd.c (show_inferior_tty_command): Check for NULL.
3578         Correct output message.
3579
3580 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
3581
3582         * linespec.c (decode_line_1): Handle FILE:FUNCTION even if
3583         FUNCTION contains parentheses.  Improve removal of a trailing
3584         single quote.
3585
3586 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
3587
3588         * gcore.c (do_bfd_delete_cleanup): New function.
3589         (gcore_command): Use it.  Discard the cleanup after success.
3590         (gcore_copy_callback): Delete dead code.
3591
3592 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
3593
3594         * symfile.c (addr_info_make_relative): Always use
3595         find_lowest_section.
3596
3597 2010-02-16  Sami Wagiaalla <swagiaal@redhat.com>
3598
3599         * NEWS: Added entry for namespace fixes.
3600
3601 2010-02-15  Tom Tromey  <tromey@redhat.com>
3602
3603         * dwarf2read.c (guess_structure_name): Allocate name on the
3604         objfile obstack.
3605
3606 2010-02-15  Tom Tromey  <tromey@redhat.com>
3607
3608         * c-typeprint.c (c_type_print_base): Reverse order of test.
3609
3610 2010-02-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
3611
3612         * solib-svr4.c (LM_ADDR_CHECK): New variable minpagesize.  Optionally
3613         initialize it from ELF BFD.  Extend the prelink condition by it.
3614
3615 2010-02-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
3616
3617         * defs.h (parse_pid_to_attach): New.
3618         * utils.c (parse_pid_to_attach): New.
3619         * darwin-nat.c (darwin_attach): Replace ARGS parsing by parse_pid.
3620         * gnu-nat.c (gnu_attach): Likewise.
3621         * nto-procfs.c (procfs_attach): Likewise.
3622         * procfs.c (procfs_attach): Likewise.
3623         * windows-nat.c (windows_attach): Likewise.
3624         * inf-ptrace.c (inf_ptrace_attach): Likewise.  Remove variable dummy.
3625         * inf-ttrace.c (inf_ttrace_attach): Likewise.
3626         * remote.c (extended_remote_attach_1): Likewise.  New comment on getpid
3627         check.
3628
3629 2010-02-14  Masaki Muranaka  <monaka@monami-software.com>
3630
3631         * MAINTAINERS: Add myself for write after approval privileges.
3632
3633 2010-02-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
3634
3635         * solib-svr4.c: (LM_ADDR_CHECK): Move variable align to a more inner
3636         block.
3637
3638 2010-02-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
3639
3640         * solib-svr4.c: (LM_ADDR_CHECK): Print successful prelink adjustment
3641         only if INFO_VERBOSE.
3642
3643 2010-02-12  Tomas Holmberg <th@virtutech.com>
3644
3645         * mi/mi-main.c: Added the --reverse flag to the following MI
3646         commands: exec-continue, exec-finish, exec-next, exec-step,
3647         exec-next-instruction, exec-step-instruction. This is to
3648         support reverse execution over the MI interface to gdb.
3649
3650 2010-02-12  Pedro Alves  <pedro@codesourcery.com>
3651
3652         * tracepoint.c (_initialize_tracepoint): Specify that the address
3653         range of `tfind outsize' is exclusive, and that the address range
3654         of `tfind range' is inclusive, in the commands' help strings.
3655
3656 2010-02-12  Joel Brobecker  <brobecker@adacore.com>
3657
3658         Spurious "dll not found" error messages on x64-windows.
3659         * windows-nat.c: Add include of complaints.h.
3660         (handle_unload_dll): Change dll-not-found error into a complaint.
3661
3662 2010-02-12  Pedro Alves  <pedro@codesourcery.com>
3663
3664         * breakpoint.c (allocate_bp_location): Use bp_loc_other for
3665         bp_tracepoint and bp_fast_tracepoint, not
3666         bp_loc_software_breakpoint.
3667         (update_global_location_list): Tracepoints are never duplicates of
3668         anything.
3669
3670 2010-02-12  Pedro Alves  <pedro@codesourcery.com>
3671
3672         * breakpoint.c (break_command_really): Change return type to int.
3673         Return false if no breakpoint was created, true otherwise.
3674         (trace_command): Don't set the tracepoint count if no tracepoint
3675         was created.
3676         (ftrace_command): Ditto.
3677         (create_tracepoint_from_upload): Bail out if the tracepoint wasn't
3678         created in the breakpoints table.
3679
3680 2010-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
3681             Ulrich Weigand  <uweigand@de.ibm.com>
3682
3683         * solib-svr4.c (LM_ADDR_CHECK): New comment on PPC-aware condition.
3684
3685 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
3686
3687         * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out if
3688         the offset value isn't of integral type.
3689
3690 2010-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
3691
3692         * breakpoint.c (delete_breakpoint) <bpt->related_breakpoint != NULL>:
3693         New.
3694
3695 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
3696
3697         * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out on
3698         non-subscriptable types.
3699         * valarith.c (binop_types_user_defined_p): New, abstracted out
3700         from ...
3701         (binop_user_defined_p): ... this.
3702         * value.h (binop_types_user_defined_p): Declare.
3703
3704 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
3705
3706         * tracepoint.c (tfile_open): Remove spurious discard_cleanups.
3707         Merge uploaded TSVs before merging uploaded tracepoints.
3708
3709 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
3710
3711         * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers.
3712
3713 2010-02-11  Vladimir Prus  <vladimir@codesourcery.com>
3714
3715         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra
3716         whitespace character after a dot in comment.
3717         (mi_cmd_stack_list_arguments, mi_cmd_stack_list_variables):
3718         Likewise.
3719         (list_args_or_locals): For the 'all' (that is
3720         -stack-list-variables) case, always output list of tuples.
3721         Output 'arg' field if variable is argument.
3722
3723 2010-02-10  Tom Tromey  <tromey@redhat.com>
3724
3725         * parser-defs.h (parser_debug): Declare.
3726         * parse.c (_initialize_parse): Install "debug parser" set/show
3727         command.
3728         (parser_debug): New global.
3729         (show_parserdebug): New function.
3730         * c-exp.y (c_parse): Set yydebug.
3731
3732 2010-02-10  H.J. Lu  <hongjiu.lu@intel.com>
3733
3734         * target-descriptions.c (tdesc_type): Add TDESC_TYPE_I387_EXT,
3735         TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
3736         (tdesc_predefined_types): Add i387_ext, i386_eflags and
3737         i386_mxcsr.
3738         (tdesc_find_type): New.
3739         (tdesc_gdb_type): Use tdesc_find_type.  Handle TDESC_TYPE_I387_EXT,
3740         TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
3741
3742         * target-descriptions.h (tdesc_find_type): New.
3743
3744 2010-02-10  Michael Snyder  <msnyder@vmware.com>
3745
3746         * gdb-gdb.py: Comment fix.
3747
3748 2010-02-09  Tristan Gingold  <gingold@adacore.com>
3749
3750         * machoread.c (macho_symfile_relocate): New function.
3751         (macho_sym_fns): Use macho_symfile_relocate instead of
3752         default_symfile_relocate.
3753         (macho_oso_data): New type.
3754         (current_oso): New variable.
3755         (macho_add_oso_symfile): Do not compute section_addr_info, but
3756         instead set vma of sections.
3757         Do not set SYMFILE_VERBOSE to call symbol_file_add_from_bfd.
3758         Set and clear current_oso.
3759
3760 2010-02-09  Joel Brobecker  <brobecker@adacore.com>
3761
3762         Wrong type description for tagged type parameter.
3763         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: When noside is
3764         EVAL_AVOID_SIDE_EFFECTS, also handle the case when type is a
3765         reference to a tagged type.
3766
3767 2010-02-09  Tristan Gingold  <gingold@adacore.com>
3768
3769         * objfiles.c (objfile_separate_debug_iterate): Do not iterate on
3770         brothers of the parent.
3771
3772 2010-02-08  Tom Tromey  <tromey@redhat.com>
3773
3774         PR c++/8017:
3775         * value.h: Update.
3776         * valops.c (search_struct_field): Make 'name' const.
3777         (search_struct_method): Likewise.
3778         (find_method_list): Make 'method' const.
3779         (value_struct_elt): Make 'name' and 'err' const.
3780         (value_find_oload_method_list): Make 'method' const.
3781         (find_overload_match): Make 'name' const.
3782         * eval.c (evaluate_subexp_standard): New locals function,
3783         function_name.
3784         <OP_FUNCALL>: Handle OP_SCOPE specially.
3785
3786 2010-02-08  Ulrich Weigand  <uweigand@de.ibm.com>
3787
3788         * infrun.c (handle_inferior_event): Do not look up regcache
3789         for exited processes.
3790
3791 2010-02-08  Chris Moller  <moller@mollerware.com>
3792
3793         PR gdb/10728
3794         * valarith.c (value_ptrdiff): Added a test for a zero type length,
3795         warn if found, and assume length = 1.
3796
3797 2010-02-08  Chris Moller  <cmoller@redhat.com>
3798
3799         PR gdb/9067
3800         * cp-valprint.c (cp_print_value_fields) Fix use of obstacks.
3801         cp_print_static_field)  Fix use of obstacks.
3802
3803 2010-02-08  Pedro Alves  <pedro@codesourcery.com>
3804
3805         * linux-nat.c (linux_nat_resume): In non-stop, also only tag
3806         resumed LWPs as resumed.
3807         (linux_nat_wait_1): If there's no resumed LWP in the set of LWPs
3808         we're waiting for, bail out with TARGET_WAITKIND_IGNORE, instead
3809         of throwing an internal error.  If an LWP of a process we're not
3810         waiting for reports a signal, don't force collecting a SIGSTOP,
3811         and if it was breakpoint hit in non-stop mode, cancel it.  Don't
3812         go through all LWPs cancelling breakpoints in non-stop mode.
3813         (resume_stopped_resumed_lwps): New.
3814         (linux_nat_wait): Use it.
3815
3816 2010-02-07  H.J. Lu  <hongjiu.lu@intel.com>
3817
3818         * features/Makefile (WHICH): Add i386/i386, i386/i386-linux,
3819         i386/amd64 and i386/amd64-linux.
3820         (i386/i386-expedite): New.
3821         (i386/i386-linux-expedite): Likewise.
3822         (i386/amd64-expedite):Likewise.
3823         (i386/amd64-linux-expedite): Likewise.
3824         ($(outdir)/i386/i386-linux.dat): Likewise.
3825         ($(outdir)/i386/amd64.dat): Likewise.
3826         ($(outdir)/i386/amd64-linux.dat): Likewise.
3827
3828         * features/i386/32bit-core.xml: New.
3829         * features/i386/32bit-linux.xml: Likewise.
3830         * features/i386/32bit-sse.xml: Likewise.
3831         * features/i386/64bit-core.xml: Likewise.
3832         * features/i386/64bit-linux.xml: Likewise.
3833         * features/i386/64bit-sse.xml: Likewise.
3834         * features/i386/i386-linux.xml: Likewise.
3835         * features/i386/i386.xml: Likewise.
3836         * features/i386/amd64-linux.xml: Likewise.
3837         * features/i386/amd64.xml: Likewise.
3838         * features/i386/i386-linux.c: Likewise.
3839         * features/i386/i386.c: Likewise.
3840         * features/i386/amd64-linux.c: Likewise.
3841         * features/i386/amd64.c: Likewise.
3842
3843 2010-02-05  Sami Wagiaalla  <swagiaal@redhat.com>
3844
3845         PR c++/7935:
3846         * cp-support.h: Added char* alias element to using_direct data
3847         struct.
3848         (cp_add_using): Added char* alias argument.
3849         (cp_add_using_directive): Ditto.
3850         * cp-namespace.c: Updated with the above changes.
3851         (cp_lookup_symbol_imports): Check for aliases.
3852         * dwarf2read.c (read_import_statement): Figure out local alias
3853         for the import and pass it on to cp_add_using.
3854         (read_namespace): Pass alias argument to cp_add_using.
3855
3856 2010-02-05  Hui Zhu  <teawater@gmail.com>
3857
3858         * defs.h (gdb_bfd_errmsg): New extern.
3859         * exec.c (exec_file_attach): Change bfd_errmsg to
3860         gdb_bfd_errmsg.
3861         * utils.c (AMBIGUOUS_MESS1): New macro.
3862         (AMBIGUOUS_MESS2): New macro.
3863         (gdb_bfd_errmsg): New function.
3864
3865 2010-02-04  Doug Evans  <dje@google.com>
3866
3867         * solib-svr4.c (enable_break): Add comment.
3868
3869 2010-02-04  Anthony Green  <green@moxielogic.com>
3870
3871         * moxie-tdep.c (moxie_analyze_prologue): Fail protocol analysis
3872         gracefully.
3873
3874 2010-02-04  Tom Tromey  <tromey@redhat.com>
3875
3876         * valops.c (search_struct_field): Account for
3877         value_embedded_offset.  Fix check for virtual base past the end of
3878         the object.  Use value_copy when making a slice of the value.
3879
3880 2010-02-04  H.J. Lu  <hongjiu.lu@intel.com>
3881
3882         PR tui/9622
3883         * tui/tui-interp.c (tui_init): Call tui_initialize_readline
3884         only if gdb_stdout is a tty.
3885
3886 2010-02-04  H.J. Lu  <hongjiu.lu@intel.com>
3887
3888         * target-descriptions.c: Include "osabi.h".
3889         (maint_print_c_tdesc_cmd): Generate set_tdesc_osabi for valid
3890         OSABI.
3891
3892 2010-02-04  Tristan Gingold  <gingold@adacore.com>
3893
3894         * machoread.c (macho_add_oso): Renamed to macho_register_oso.
3895         (macho_symtab_read): Adjust calls to macho_add_oso.
3896         (macho_oso_symfile): Renamed to macho_symfile_read_all_oso.
3897         (macho_symfile_read): Adjust call to macho_oso_symfile.
3898         (macho_new_init): Move this function after declarations.
3899         (macho_symfile_init): Ditto.
3900         * darwin-nat-info.c (darwin_lib_gdb_ports): Remove.
3901         * darwin-nat.c (darwin_lookup_task): Remove unused prototype.
3902
3903 2010-02-04  Vladimir Prus  <vladimir@codesourcery.com>
3904
3905         Include MI command in remotelog.
3906
3907         * mi/mi-main.c (mi_execute_command): Call target_log_command.
3908
3909 2010-02-03  H.J. Lu  <hongjiu.lu@intel.com>
3910
3911         * remote.c (remote_state): Remove gdbarch.
3912         (init_remote_state): Don't set gdbarch.
3913         (remote_query_supported): Pass target_gdbarch instead of
3914         rs->gdbarch to gdbarch_qsupported.
3915
3916 2010-02-03  H.J. Lu  <hongjiu.lu@intel.com>
3917
3918         * gdbarch.sh: Add qsupported.
3919
3920         * gdbarch.c: Regenerated.
3921         * gdbarch.h: Likewise.
3922
3923         * remote.c (remote_state): Add gdbarch.
3924         (init_remote_state): Set gdbarch.
3925         (remote_query_supported): Support gdbarch_qsupported.
3926
3927 2010-02-03  Daniel Jacobowitz  <dan@codesourcery.com>
3928
3929         * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Also check for
3930         __FreeBSD_kernel_version.
3931
3932 2010-02-03  Tristan Gingold  <gingold@adacore.com>
3933
3934         * symfile.h (struct sym_fns): Add sym_relocate field.
3935         (default_symfile_relocate): New prototype.
3936         (symfile_relocate_debug_section): First argument is now an objfile.
3937         * symfile.c (default_symfile_relocate): Rename from
3938         symfile_relocate_debug_section, first argument is now an objfile.
3939         (symfile_relocate_debug_section): New function.
3940         * coffread.c (coff_sym_fns): Set sym_relocate field.
3941         * somread.c (som_sym_fns): Ditto.
3942         * mipsread.c (ecoff_sym_fns): Ditto.
3943         * machoread.c (macho_sym_fns): Ditto.
3944         * elfread.c (elf_sym_fns): Ditto.
3945         * dwarf2read.c (dwarf2_read_section): Ditto.
3946         * xcoffread.c (xcoff_sym_fns): Ditto.
3947         * dbxread.c (aout_sym_fns): Ditto.
3948         (dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
3949         (elfstab_build_psymtabs): Ditto.
3950
3951 2010-02-03  H.J. Lu  <hongjiu.lu@intel.com>
3952
3953         * defs.h (MAX_REGISTER_SIZE): Increase to 32.
3954
3955 2010-02-02  Tom Tromey  <tromey@redhat.com>
3956
3957         * valops.c (value_cast_structs): Try downcasting using the RTTI
3958         type.
3959
3960 2010-02-02  Tom Tromey  <tromey@redhat.com>
3961
3962         * gnu-v2-abi.c: Don't include gnu-v2-abi.h.
3963         (gnuv2_baseclass_offset): Now static.
3964         * Makefile.in (HFILES_NO_SRCDIR): Remove gnu-v2-abi.h.
3965         * gnu-v2-abi.h: Remove.
3966
3967 2010-02-02  Tom Tromey  <tromey@redhat.com>
3968
3969         * m2-typeprint.c (m2_record_fields): Don't use
3970         TYPE_DECLARED_TYPE.
3971         * gdbtypes.h (TYPE_DECLARED_CLASS): New macro.
3972         (struct main_type) <flag_declared_class>: New field.
3973         (struct cplus_struct_type) <declared_type>: Remove.
3974         <ntemplate_args>: Move earlier.
3975         (DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT)
3976         (DECLARED_TYPE_TEMPLATE): Remove.
3977         (TYPE_DECLARED_TYPE): Remove.
3978         * gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE.
3979         * dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS.
3980         * c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not
3981         TYPE_DECLARED_TYPE.
3982
3983 2010-02-02  Tom Tromey  <tromey@redhat.com>
3984
3985         PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
3986         * valops.c (search_struct_field): Compute nbases after calling
3987         CHECK_TYPEDEF.
3988         (check_field): Call CHECK_TYPEDEF.
3989         * cp-valprint.c (cp_print_value): Pass correct address to
3990         baseclass_offset.  Fix check for virtual base past the end of the
3991         object.  Don't offset address passed to cp_print_value_fields or
3992         apply_val_pretty_printer.
3993         (cp_print_value_fields): Fix call to val_print.
3994         (cp_print_value_fields_rtti): New function.
3995         * c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
3996         * p-valprint.c (pascal_object_print_value_fields): Fix call to
3997         val_print.
3998         * python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
3999         offset to address.
4000         * language.h (struct language_defn) <la_val_print>: Document.
4001         * c-lang.h (cp_print_value_fields_rtti): Declare.
4002
4003 2010-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
4004
4005         PR libc/11214:
4006         * linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
4007         (linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
4008         (linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.
4009
4010 2010-02-01  Michael Matz  <matz@suse.de>
4011             Daniel Jacobowitz  <dan@codesourcery.com>
4012
4013         * i386-tdep.c (i386_frame_cache): Assume valid anonymous
4014         functions use a frame pointer.
4015
4016 2010-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
4017
4018         * solib-svr4.c (scan_dyntag): New variable dyn_addr.  Replace gdb_assert
4019         by a conditional setting DYN_ADDR.  Use DYN_ADDR.
4020         * config/djgpp/fnchange.lst: Add translations for
4021         symbol-without-target_section.exp and symbol-without-target_section.c.
4022
4023 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
4024
4025         * gdbarch.sh: Set LANG and LC_ALL to C, not c.
4026         (remote_breakpoint_for_pc): Correct invalid_p check.
4027         * gdbarch.c: Regenerated.
4028
4029 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
4030
4031         * arm-tdep.c (arm_find_mapping_symbol): New function, from
4032         arm_pc_is_thumb.
4033         (arm_pc_is_thumb): Use arm_find_mapping_symbol.
4034         (extend_buffer_earlier): New function.
4035         (MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
4036         (arm_adjust_breakpoint_address): New function.
4037         (arm_gdbarch_init): Register arm_adjust_breakpoint_address.
4038
4039 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
4040
4041         * arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
4042         (arm_linux_thumb2_le_breakpoint): New constants.
4043         (arm_linux_init_abi): Set thumb2_breakpoint and
4044         thumb2_breakpoint_size.
4045         * arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
4046         (thumb_get_next_pc): Add a comment.  Rename IT to ITSTATE.
4047         Implement support for single stepping through IT blocks if
4048         a 32-bit Thumb breakpoint instruction is available.
4049         (arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
4050         is available, use it when needed.
4051         (arm_remote_breakpoint_from_pc): New function.
4052         (arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
4053         * arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
4054         comment.  Add thumb2_breakpoint and thumb2_breakpoint_size.
4055
4056 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
4057
4058         * arch-utils.c (default_remote_breakpoint_from_pc): New function.
4059         * arch-utils.h (default_remote_breakpoint_from_pc): Declare.
4060         * gdbarch.c, gdbarch.h: Regenerated.
4061         * gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
4062         * remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
4063         gdbarch_remote_breakpoint_from_pc.
4064
4065 2010-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
4066
4067         * infrun.c (prepare_to_proceed): Handle other signals which might
4068         match a breakpoint.
4069         (handle_inferior_event): Move the check for unusual breakpoint
4070         signals earlier.
4071
4072 2010-01-29  Paul Hilfinger  <hilfinger@adacore.com>
4073
4074         amd64 - function returning record with field straddling 2 registers.
4075         * amd64-tdep.c (amd_classify_aggregate): Handle the case of
4076         a record of length <= 16 in which a field straddles the two
4077         eightbytes.
4078
4079 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
4080
4081         Implement return values on amd64-windows.
4082         * amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
4083         (amd64_windows_return_value): New function.
4084         (amd64_windows_init_abi): Call set_gdbarch_return_value with
4085         amd64_windows_return_value.
4086
4087 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
4088
4089         amd64-windows: 32 bytes allocated on stack by caller for integer
4090         parameter registers.
4091         * i386-tdep.h (struct gdbarch_tdep): Add new field
4092         integer_param_regs_saved_in_caller_frame.
4093         * amd64-windows-tdep.c (amd64_windows_init_abi): Set
4094         tdep->integer_param_regs_saved_in_caller_frame to 1.
4095         * amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
4096         stack if tdep->integer_param_regs_saved_in_caller_frame is set.
4097
4098 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
4099
4100         amd64-windows: memory args passed by pointer during function calls.
4101         * i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
4102         * amd64-tdep.c (amd64_push_arguments): Add handling of architectures
4103         where tdep->memory_args_by_pointer is non-zero.
4104         * amd64-windows-tdep.c (amd64_windows_init_abi): Set
4105         tdep->memory_args_by_pointer to 1.
4106
4107 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
4108
4109         amd64-windows: Integer parameters in function calls.
4110         * i386-tdep.h (enum amd64_reg_class): New, moved here from
4111         amd64-tdep.c.
4112         (struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
4113         call_dummy_integer_regs, and classify.
4114         * amd64-tdep.h (amd64_classify): Add declaration.
4115         * amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
4116         (amd64_reg_class): Delete, moved to i386-tdep.h.
4117         (amd64_classify): Make non-static.  Move declaration to amd64-tdep.h.
4118         Replace call to amd64_classify by call to tdep->classify.
4119         (amd64_push_arguments): Get the list of registers to use for
4120         passing integer parameters from the gdbarch tdep structure,
4121         rather than using a hardcoded one.  Replace calls to amd64_classify
4122         by calls to tdep->classify.
4123         (amd64_push_dummy_call): Get the register number used for
4124         the "hidden" argument from tdep->call_dummy_integer_regs.
4125         (amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
4126         and tdep->call_dummy_integer_regs.  Set tdep->classify.
4127         * amd64-windows-tdep.c: Add include of gdbtypes.h.
4128         (amd64_windows_dummy_call_integer_regs): New static global.
4129         (amd64_windows_classify): New function.
4130         (amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
4131         tdep->call_dummy_integer_regs and tdep->classify.
4132
4133 2010-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
4134
4135         * regcache.c (regcache_xmalloc): Add aspace argument.  Use it
4136         for the new regcache.  All callers updated.
4137         (regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
4138         (get_thread_arch_regcache): Do not set aspace here.
4139         * regcache.h (regcache_xmalloc): Update declaration.
4140
4141         * frame.c, infcall.c, ppc-linux-tdep.c: Calls to
4142         regcache_xmalloc updated.
4143
4144 2010-01-28  Joel Brobecker  <brobecker@adacore.com>
4145
4146         Another -Wunused-function error in procfs.c (sparc-solaris)
4147         * procfs.c (insert_dbx_link_breakpoint): Delete declaration.  Move up.
4148         Only define if SYS_syssgi is defined.
4149         (remove_dbx_link_breakpoint): Delete declaration.  Move up.
4150         (dbx_link_addr, insert_dbx_link_bpt_in_file)
4151         (insert_dbx_link_bpt_in_region): Move up.  Only define if SYS_syssgi
4152         is itself defined.
4153
4154 2010-01-27  Christopher Faylor  <me+cygwin@cgf.cx>
4155
4156         * windows-nat.c (windows_initialization_done): New variable.
4157         (get_windows_debug_event): Issue error when process dies before
4158         completely initializing.
4159         (do_initial_windows_stuff): Set flag to indicate when we are done with
4160         the initial steps of attaching to the child.
4161
4162 2010-01-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
4163
4164         * symtab.h (struct symbol <symtab>): New comment on NULL values.
4165
4166 2010-01-27  Doug Evans  <dje@google.com>
4167
4168         * solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity.
4169
4170         * breakpoint.c (bpstat_stop_status): Delete useless code.
4171
4172 2010-01-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
4173
4174         * printcmd.c (display_uses_solib_p): Remove variable section.  Access
4175         objfile via SYMBOL_SYMTAB.
4176
4177 2010-01-26  Tom Tromey  <tromey@redhat.com>
4178
4179         PR exp/7643:
4180         * eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
4181         coerce_array on result.
4182
4183 2010-01-26  Sami Wagiaalla  <swagiaal@redhat.com>
4184
4185         * cp-namespace.c (cp_lookup_symbol_namespace): Added
4186         search_parent argument.
4187         (cp_add_using): Initialize 'searched' field.
4188         (reset_directive_searched): New function.
4189         * cp-support.h: Add 'searched' field to using_direct struct.
4190         (cp_lookup_symbol_imports): Ditto.
4191         * cp-namespace.c (cp_lookup_symbol_imports): Ditto.
4192         Perform recursive search.
4193         Implement non parent search.
4194         * valops.c (value_maybe_namespace_elt): Updated.
4195
4196 2010-01-26  Sami Wagiaalla  <swagiaal@redhat.com>
4197
4198         PR gdb/10929:
4199         * dwarf2read.c (read_lexical_block_scope): Create blocks for
4200         scopes which contain using directives even if they contain no
4201         declarations.
4202         * symtab.c (lookup_symbol_aux): Pass lowest level block to
4203         la_lookup_symbol_nonlocal.
4204         * cp-namespace.c (cp_lookup_symbol_nonlocal): call
4205         cp_lookup_symbol_namespace.
4206         (cp_lookup_symbol_namespace): Perform an import lookup at every
4207         block level.
4208         (cp_lookup_symbol_imports): New function.
4209         (cp_lookup_symbol_in_namespace): New function.
4210
4211 2010-01-25  Tom Tromey  <tromey@redhat.com>
4212
4213         PR gdb/11049:
4214         * c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
4215         result.
4216
4217 2010-01-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4218
4219         * configure.ac: Only use host_os part when disabling TUI on osf.
4220         Use test to check variables, prefix strings with x.
4221         * configure: Regenerate.
4222
4223         * solib-osf.c (osf_current_sos): Initialize tail.
4224
4225 2010-01-25  gingold  <gingold@adacore.com>
4226
4227         * windows-nat.c (windows_continue): Use %x to print thread id.
4228         (get_windows_debug_event): Ditto.
4229
4230 2010-01-22  Tom Tromey  <tromey@redhat.com>
4231
4232         PR symtab/11199:
4233         * dwarf2read.c (quirk_gcc_member_function_pointer): Change return
4234         type and arguments.  Use smash_to_methodptr_type.
4235         (read_structure_type): Call quirk_gcc_member_function_pointer
4236         later.
4237         * gdbtypes.h (smash_to_methodptr_type): Declare.
4238         * gdbtypes.c (smash_to_methodptr_type): New function.
4239         (lookup_methodptr_type): Use it.
4240
4241 2010-01-21  Tom Tromey  <tromey@redhat.com>
4242
4243         PR symtab/11198:
4244         * symtab.h (lookup_minimal_symbol_and_objfile): Declare.
4245         * minsyms.c (lookup_minimal_symbol_and_objfile): New function.
4246         * glibc-tdep.c (find_minsym_and_objfile): Remove.
4247         (glibc_skip_solib_resolver): Use
4248         lookup_minimal_symbol_and_objfile.
4249
4250 2010-01-21  Kai Tietz  <kai.tietz@onevision.com>
4251
4252         * inflow.c (check_syscall): Guard by #if clause for GO32 and
4253         WIN32 targets.
4254
4255 2010-01-20  Tom Tromey  <tromey@redhat.com>
4256
4257         PR backtrace/10770:
4258         * valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and
4259         BINOP_GEQ.  Handle BINOP_NOTEQUAL in the signed case.
4260         * dwarf2expr.c (new_dwarf_expr_context): Allocate
4261         dwarf_stack_values, not CORE_ADDRs.
4262         (execute_stack_op): Change DW_OP_div and comparison operators to
4263         use signed operands.
4264
4265 2010-01-20  Vladimir Prus  <vladimir@codesourcery.com>
4266
4267         Per-inferior args and tty and environment.
4268
4269         * infcmd.c (inferior_args): Rename to ...
4270         (inferior_args_scratch): ... this.
4271         (inferior_io_terminal): Rename to ...
4272         (inferior_io_terminal_scratch): ... this.
4273         (inferior_argc, inferior_argv): Remove.
4274         (set_inferior_io_terminal, get_inferior_io_terminal): Store
4275         inside current_inferior().
4276         (set_inferior_tty_command, show_inferior_tty_command): New.
4277         (get_inferior_args, set_inferior_args): Store inside
4278         current_inferior().
4279         (notice_args_set): Likewise and rename to...
4280         (set_args_command): ... this.
4281         (set_inferior_args_vector): Likewise.
4282         (notice_args_read): Rename to...
4283         (show_args_command): ...new.
4284         (tty_command): Remove.
4285         (run_command_1): Don't free old args, as they are freed by
4286         set_inferior_arg now.
4287         (run_no_args_command): Likewise.
4288         (inferior_environ): Remove.
4289         (run_command_1): Use environment of the current inferior.
4290         (environment_info, set_environment_command)
4291         (unset_environment_command, path_info, path_command): Likewise.
4292         (_initialize_infcmd): Adjust for function and variable renames.
4293         Do not init inferior_environ.
4294         * inferior.h (set_inferior_arg): Adjust prototype.
4295         (struct inferior): New fields args, argc, argv, terminal, environment.
4296         (inferior_environ): Remove declaration.
4297         * inferior.c (free_inferior): Free new fields.
4298         (add_inferior_silent): Initialize 'environment' field.
4299         * main.c (captured_main): Set arguments only after the initial
4300         inferior has been created.  Set set_inferior_io_terminal,
4301         not tty_command.
4302         * mi/mi-main.c (mi_cmd_env_path): Use environment of the current
4303         inferior.
4304         (_initialize_mi_cmd_env): Adjust for disappearance of global
4305         inferior_environ.
4306         * solib.c (solib_find): Use environment of the current inferior.
4307
4308 2010-01-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
4309
4310         * varobj.c (varobj_add_child, install_dynamic_child): Wrap into #if
4311         HAVE_PYTHON.
4312         (instantiate_pretty_printer): Move HAVE_PYTHON outside of the function.
4313
4314 2010-01-20  Joel Brobecker  <brobecker@adacore.com>
4315
4316         Get rid of ada-lang.c:function_name_from_pc.
4317         * ada-lang.c: Add "stack.h" #include.
4318         (function_name_from_pc): Delete.
4319         (is_known_support_routine): Replace call to function_name_from_pc
4320         by call to find_frame_funname.
4321         (ada_unhandled_exception_name_addr_from_raise): Likewise.
4322
4323 2010-01-19  Tom Tromey  <tromey@redhat.com>
4324
4325         PR c++/11026:
4326         * dwarf2read.c (read_partial_die): Allocate partial DIE's name on
4327         objfile obstack.
4328
4329 2010-01-19  Tom Tromey  <tromey@redhat.com>
4330
4331         * top.c (stop_sig, float_handler, do_nothing): Remove.
4332
4333 2010-01-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
4334
4335         * breakpoint.c (watchpoint_check): Check the call
4336         gdbarch_in_function_epilogue_p before calling frame_find_by_id.
4337         Extend the comment.
4338         * config/djgpp/fnchange.lst: Add translations for
4339         watchpoint-cond-gone.exp, watchpoint-cond-gone.c and
4340         watchpoint-cond-gone-stripped.c.
4341
4342 2010-01-19  Tom Tromey  <tromey@redhat.com>
4343
4344         PR c++/8000:
4345         * dwarf2read.c (partial_die_parent_scope): Put enumeration type
4346         into parent scope, and enumerator into grandparent scope.
4347
4348 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4349
4350         * NEWS: Add entry for "set/show ada trust-PAD-over-XVS" commands.
4351
4352 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4353
4354         * configure.host: Make x86_64-*-solaris2.1[0-9]* an alias of
4355         i[34567]86-*-solaris2.1[0-9]*.
4356         * configure.tgt: Likewise.
4357
4358 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4359
4360         * NEWS: Document the source command enhancement allowing it
4361         to load Python scripts. Document the "set/show script-extension"
4362         commands.
4363
4364 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4365
4366         Add -Wunused-function to compile flags.
4367         * configure.ac: Add -Wunused-function to build_warnings.
4368         * configure: Regenerate.
4369
4370 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4371
4372         "delete" ada-lex.c:input function, not used.
4373         * ada-lex.l: #define YY_NO_INPUT.
4374
4375 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4376
4377         Delete free_named_symtabs and associated cleanup.
4378         * symfile.h (free_named_symtabs): Delete declaration.
4379         * symfile.c: Remove some commented out code (clear_symtab_users_once).
4380         (cashier_psymtab): Comment function out.
4381         Delete declaration.
4382         (free_named_symtabs): Delete.
4383         * coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
4384         * dbxread.c (end_psymtab): Likewise.
4385         * dwarf2read.c (process_psymtab_comp_unit): Ditto.
4386         * exec.c (exec_close_1): Ditto.
4387         * xcoffread.c (xcoff_end_psymtab): Likewise.
4388
4389 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4390
4391         * stack.c (print_block_frame_labels): Comment function out.
4392
4393 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
4394
4395         Delete unused or undefined functions.
4396         * breakpoint.c (ep_parse_optional_filename): Delete.
4397         * dcache.c (dcache_write_line): Remove declaration.
4398         * infrun.c (build_infrun): Remove declaration.
4399         * tracepoint.c (tracepoint_save_command): Remove declaration.
4400         * linux-nat.c (init_lwp_list): Delete. No longer used.
4401         * event-loop.c (check_async_signal_handlers): Delete declaration.
4402         * infrun.c (init_execution_control_state): Delete.
4403         (proceed): Update comment to avoid mentioning
4404         init_execution_control_state.
4405         * target.c (kill_or_be_killed, nosupport_runtime): Delete.
4406         * ada-lang.c (ada_to_static_fixed_value): Delete.
4407         * scm-lang.c (evaluate_subexp_scm): Delete declaration.
4408         * cp-namespace.c (cp_copy_usings): Delete.
4409         * xml-syscall.c (xml_number_of_syscalls): Delete.
4410         * progspace.c (find_program_space_by_num): Delete.
4411         * inflow.c (handle_sigio): Delete declaration.
4412         * hppa-tdep.c (hppa_alignof): Delete.
4413         * mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset)
4414         (mipsnbsd_core_osabi_sniffer): Delete.
4415
4416 2010-01-18  Tom Tromey  <tromey@redhat.com>
4417
4418         PR c++/9680:
4419         * c-exp.y (REINTERPRET_CAST, DYNAMIC_CAST, STATIC_CAST)
4420         (CONST_CAST): New tokens.
4421         (exp): Add new productions.
4422         (ident_tokens): Add const_cast, dynamic_cast, static_cast, and
4423         reinterpret_cast.
4424         (is_cast_operator): New function.
4425         (yylex): Handle cast operators specially.
4426         * eval.c (evaluate_subexp_standard) <UNOP_DYNAMIC_CAST,
4427         UNOP_REINTERPRET_CAST>: New cases.
4428         * expprint.c (print_subexp_standard): Likewise.
4429         (op_name_standard): Likewise.
4430         (dump_subexp_body_standard): Likewise.
4431         * parse.c (operator_length_standard): Likewise.
4432         * expression.h (enum exp_opcode): New constants UNOP_DYNAMIC_CAST,
4433         UNOP_REINTERPRET_CAST.
4434         * gdbtypes.c (class_types_same_p): New function.
4435         (is_ancestor): Use it.
4436         (is_public_ancestor): New function.
4437         (is_unique_ancestor_worker): Likewise.
4438         (is_unique_ancestor): Likewise.
4439         * gdbtypes.h (class_types_same_p, is_public_ancestor)
4440         (is_unique_ancestor): Declare.
4441         * valops.c (value_reinterpret_cast): New function.
4442         (dynamic_cast_check_1): Likewise.
4443         (dynamic_cast_check_2): Likewise.
4444         (value_dynamic_cast): Likewise.
4445         * value.h (value_reinterpret_cast, value_dynamic_cast): Declare.
4446
4447 2010-01-18  Joel Brobecker  <brobecker@adacore.com>
4448
4449         Fix build failure when building without Python support.
4450         * python/python.c: Always include exceptions.h, even when HAVE_PYTHON
4451         is not defined.
4452
4453 2010-01-18  Joel Brobecker  <brobecker@adacore.com>
4454
4455         Use XVS field type instead of doing a parallel lookup.
4456         * ada-lang.c (ada_get_base_type): Follow the XVS field type
4457         if it is a reference type instead of doing a type lookup using
4458         the XVS field name.
4459
4460 2010-01-18  Joel Brobecker  <brobecker@adacore.com>
4461
4462         Trust PAD types instead of using PAD___XVS.
4463         * ada-lang.c (trust_pad_over_xvs): New static variable.
4464         (ada_is_aligner_type): If !trust_pad_over_xvs and there is a
4465         parallel XVS type, follow the XVS type instead of the PAD type.
4466         (unwrap_value): Make sure that there is no parallel XVE type
4467         before returning the value as is.
4468         (set_ada_list, show_ada_list): New static variables.
4469         (set_ada_command, show_ada_command): New functions.
4470         (_initialize_ada_language): Add new "set/show ada" prefix commands.
4471         Add new "set/show ada trust-PAD-over-XVS" setting.
4472
4473 2010-01-18  Tom Tromey  <tromey@redhat.com>
4474             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4475
4476         Allow "source" to load python scripts.
4477         * exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
4478         * python/python.c (source_python_script): New function.
4479         * python/python.h (source_python_script): Add declaration.
4480         * cli/cli-cmds.c: #include exceptions.h and python/python.h.
4481         (script_ext_off, script_ext_soft, script_ext_strict)
4482         (script_ext_enums, script_ext_mode): New static constants.
4483         (show_script_ext_mode, find_and_open_script): New functions.
4484         (source_script): Enhance to handle Python scripts.
4485         (init_cli_cmds): Add set/show script-extension commands.
4486
4487 2010-01-16  Stan Shebs  <stan@codesourcery.com>
4488
4489         * tracepoint.h (struct trace_status): Use unsigned long long
4490         instead of size_t.
4491         * tracepoint.c (trace_status_command): Fix printf directive.
4492         (trace_save_command): Check fwrite returns, fix printf directive.
4493         (trace_filename): New global.
4494         (tfile_open): Set it, check read returns.
4495         (tfile_close): Free trace_filename.
4496         (tfile_get_traceframe_address): Check read returns.
4497         (tfile_trace_find): Ditto.
4498         (tfile_fetch_registers): Ditto.
4499         (tfile_xfer_partial): Ditto.
4500         (tfile_get_trace_state_variable_value): Ditto.
4501
4502 2010-01-15  Stan Shebs  <stan@codesourcery.com>
4503
4504         Add trace file support.
4505         * tracepoint.h (enum trace_stop_reason): New enum.
4506         (struct trace_status): New struct.
4507         (parse_trace_status): Declare.
4508         (struct uploaded_tp): Move here from remote.c,
4509         add fields for actions.
4510         (struct uploaded_tsv): New struct.
4511         * tracepoint.c (tfile_ops): New target vector.
4512         (trace_fd): New global.
4513         (tfile_open): New function.
4514         (tfile_close): New function.
4515         (tfile_files_info): New function.
4516         (tfile_get_trace_status): New function.
4517         (tfile_get_traceframe_address): New function.
4518         (tfile_trace_find): New function.
4519         (tfile_fetch_registers): New function.
4520         (tfile_xfer_partial): New function.
4521         (tfile_get_trace_state_variable_value): New function.
4522         (init_tfile_ops): New function.
4523         (_initialize_tracepoint): Call it, add tfile target.
4524         (trace_status): New global.
4525         (current_trace_status): New function.
4526         (trace_running_p): Remove, change all users to get from
4527         current_trace_status()->running.
4528         (get_trace_status): Remove.
4529         (trace_status_command): Call target_get_trace_status directly,
4530         report more detail including tracing stop reasons.
4531         (trace_find_command): Always allow tfind on a file.
4532         (trace_find_pc_command): Ditto.
4533         (trace_find_tracepoint_command): Ditto.
4534         (trace_find_line_command): Ditto.
4535         (trace_find_range_command): Ditto.
4536         (trace_find_outside_command): Ditto.
4537         (trace_frames_offset, cur_offset): Declare as off_t.
4538         (trace_regblock_size): Rename from reg_size, update users.
4539         (parse_trace_status): New function.
4540         (tfile_interp_line): New function.
4541         (disconnect_or_stop_tracing): Ensure current trace
4542         status before asking what to do.
4543         (stop_reason_names): New global.
4544         (trace_save_command): New command.
4545         (get_uploaded_tp): Move here from remote.c.
4546         (find_matching_tracepoint): Ditto.
4547         (merge_uploaded_tracepoints): New function.
4548         (parse_trace_status): Use stop_reason_names.
4549         (_initialize_tracepoint): Define tsave command.
4550         * target.h (target_ops): New fields to_save_trace_data,
4551         to_upload_tracepoints, to_upload_trace_state_variables,
4552         to_get_raw_trace_data, change to_get_trace_status
4553         to take a pointer to a status struct.
4554         (target_save_trace_data): New macro.
4555         (target_upload_tracepoints): New macro.
4556         (target_upload_trace_state_variables): New macro.
4557         (target_get_raw_trace_data): New macro.
4558         * target.c (update_current_target): Add new methods, change
4559         signature of to_get_trace_status.
4560         * remote.c (hex2bin): Make globally visible.
4561         (bin2hex): Ditto.
4562         (remote_download_trace_state_variable): Download name also.
4563         (remote_get_trace_status): Update parameter, use
4564         parse_trace_status.
4565         (remote_save_trace_data): New function.
4566         (remote_upload_tracepoints): New function.
4567         (remote_upload_trace_state_variables): New function.
4568         (remote_get_raw_trace_data): New function.
4569         (remote_start_remote): Use them.
4570         (_initialize_remote_ops): Add operations.
4571         * ax-gdb.c: Include breakpoint.h.
4572         * breakpoint.c (create_tracepoint_from_upload): Use
4573         break_command_really, return tracepoint, warn about unimplemented
4574         parts.
4575         * NEWS: Mention trace file addition.
4576
4577 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
4578
4579         Fix compilation warning on gcc-3.4.
4580         * exec.c (print_section_info): Move the `displacement' variable
4581         initialization to its declaration.
4582
4583 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
4584
4585         * gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
4586         comparison.
4587
4588 2010-01-15  Eric Botcazou  <botcazou@adacore.com>
4589
4590         "info tasks" broken by typedefs in ATCB type definitions.
4591         * ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
4592         ada_check_typedef before retrieving the length of the type for
4593         regular fields.
4594
4595 2010-01-15  Joel Brobecker  <brobecker@adacore.com>
4596
4597         Do not use name-based lookup for unconstrained packed arrays.
4598         * ada-lang.c (find_parallel_type_by_descriptive_type):
4599         Limit the fallback to name-based lookups to the case where
4600         the type is a constrained packed array.
4601
4602 2010-01-15  Joel Brobecker  <brobecker@adacore.com>
4603
4604         Enhance gdb-gdb.py to handle main_type.type_specific.
4605         * gdb-gdb.py: Print the type-specific part of struct main_type.
4606
4607 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
4608
4609         * configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
4610         * configure: Regenerate.
4611         * config.in: Regenerate.
4612         * utils.c: Include sys/resource.h.
4613         (dump_core, can_dump_core): New.
4614         (internal_vproblem): Update the comment.  Check can_dump_core while
4615         setting dump_core_p.  Replace two abort calls by dump_core calls.
4616
4617 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4618             Eli Zaretskii  <eliz@gnu.org>
4619
4620         * NEWS: Document the PIE support.
4621
4622 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4623
4624         * linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
4625         (check_is_pie_binary, _initialize_linux_tdep): Remove.
4626
4627 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4628
4629         * solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
4630         Replace exec_entry_point call by bfd_get_start_address.
4631
4632 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4633
4634         Support Valgrind attachments broken by the PIE support.
4635         * auxv.c: Include gdbcore.h.
4636         (procfs_xfer_auxv): Make static.  Reduce its comment.  Drop its
4637         parameters ops, object and annex.  Remove their assertions.
4638         (ld_so_xfer_auxv, memory_xfer_auxv): New function.
4639         * auxv.h (procfs_xfer_auxv): Remove comment.  Rename to ...
4640         (memory_xfer_auxv): ... here.
4641         * linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
4642         memory_xfer_auxv.
4643         * procfs.c (procfs_xfer_partial): Likewise.
4644         * solib-svr4.c (svr4_relocate_main_executable): New prototype.
4645         (svr4_special_symbol_handling): Call svr4_relocate_main_executable.
4646         (svr4_solib_create_inferior_hook): Conditionalize the
4647         svr4_relocate_main_executable call.
4648
4649 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4650
4651         * solib-svr4.c (scan_dyntag): Remove variable dyn_addr.  New variable
4652         target_section.  Find SECT in current_target_sections, gdb_assert it.
4653         (elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
4654         New variable abfd.
4655         * symtab.c (lookup_objfile_from_block): Return the binary file instead
4656         of separate debug info file.
4657
4658 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4659
4660         Support PIEs with no symfile_objfile.
4661         * exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
4662         * solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
4663
4664 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
4665
4666         * solib-svr4.c (svr4_relocate_main_executable): Move the static exec
4667         code part to ...
4668         (svr4_static_exec_displacement): ... a new function.
4669         (svr4_exec_displacement): New function.
4670         (svr4_relocate_main_executable): Call svr4_exec_displacement.  Allocate
4671         new_offsets using alloca now.  Remove variable old_chain and changed.
4672         Call objfile_relocate unconditionally now.
4673
4674 2010-01-14  Doug Evans  <dje@google.com>
4675
4676         * gdbtypes.c (arch_flags_type): Fix comment.
4677         * gdbtypes.h (arch_composite_type): Fix comment.
4678
4679 2009-01-14  Tristan Gingold  <gingold@adacore.com>
4680
4681         * machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
4682         Call xstrdup for abfd->filename.  Pass symfile_flags and objfile flags
4683         to symbol_file_add_from_bfd.  Add OSO as separate objfile.
4684         (macho_oso_symfile): Add symfile_flags parameter.  Pass it to
4685         macho_add_oso_symfile.
4686         (macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
4687
4688 2010-01-14  Joel Brobecker  <brobecker@adacore.com>
4689
4690         Tru64: Dead threads are never deleted.
4691         * dec-thread.c (dec_thread_ptid_is_alive): New function.
4692         (dec_thread_count_gdb_threads): Fix counter increment.
4693         (dec_thread_add_gdb_thread): Fix *listp increment.
4694         (resync_thread_list): Fix bug in deletion of dead threads that
4695         caused all threads to be deleted, instead of just the dead ones.
4696
4697 2010-01-13  Phil Muldoon  <pmuldoon@redhat.com>
4698
4699         PR python/10705
4700
4701         * python/python-internal.h: Add lazy_string_object_type
4702         definition.
4703         (create_lazy_string_object, gdbpy_initialize_lazy_string)
4704         (gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
4705         * python/py-value.c (valpy_lazy_string): New function.
4706         (convert_value_from_python): Add lazy string conversion.
4707         * python/py-prettyprint.c (pretty_print_one_value): Check if
4708         return is also a lazy string.
4709         (print_string_repr): Add lazy string printing branch.
4710         (print_children): Likewise.
4711         * python/py-lazy-string.c: New file. Implement lazy strings.
4712         * python/python.c (_initialize_python): Call
4713         gdbpy_initialize_lazy_string.
4714         * varobj.c (value_get_print_value): Add lazy string printing
4715         branch.  Account for encoding.
4716         * c-lang.c (c_printstr): Account for new encoding argument.  If
4717         encoding is NULL, find encoding suited for type, otherwise use
4718         user encoding.
4719         * language.h (language_defn): Add encoding argument.
4720         (LA_PRINT_STRING): Likewise.
4721         * language.c (unk_lang_printstr): Update to reflect new encoding
4722         argument to language_defn.
4723         * ada-lang.h (ada_printstr): Likewise.
4724         * c-lang.h (c_printstr): Likewise.
4725         * p-lang.h (pascal_printstr);
4726         * f-lang.c (f_printstr): Likewise.
4727         * m2-lang.c (m2_printstr): Likewise.
4728         * objc-lang.c (objc_printstr): Likewise.
4729         * p-lang.c (pascal_printstr): Likewise.
4730         * scm-lang.c (scm_printstr): Likewise.
4731         * c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
4732         encoding argument.
4733         * ada-valprint.c (ada_printstr): Likewise.
4734         * f-valprint.c (f_val_print): Likewise
4735         * m2-valprint.c (m2_val_print): Likewise.
4736         * p-valprint.c (pascal_val_print): Likewise.
4737         * expprint.c (print_subexp_standard): Likewise.
4738         * valprint.c (val_print_string): Likewise.
4739         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
4740         (SUBDIR_PYTHON_SRCS): Likewise.
4741         (py-lazy-string.o): New rule.
4742
4743 2010-01-13  Doug Evans  <dje@google.com>
4744
4745         * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
4746         uninitialized" warning from gcc on local `tree'.
4747
4748 2010-01-13  Vladimir Prus  <vladimir@codesourcery.com>
4749
4750         Implement core awareness.
4751
4752         * bcache.c (compare_ints): Remove
4753         (print_percentage): Use compare_positive_ints.
4754         * defs.h (compare_positive_ints): Declare.
4755         * linux-nat.h (struct lin_lwp): New field core.
4756         (linux_nat_core_of_thread_1): Declare.
4757         * linux-nat.c (add_lwp): Init the 'core' field.
4758         (linux_nat_wait_1): Record the core.
4759         (linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
4760         (linux_nat_add_target): Register the above.
4761         * linux-thread-db.c (update_thread_core): New.
4762         (thread_db_find_new_threads): Update core information for
4763         every thread.
4764         * remote.c (struct private_thread_info): New.
4765         (free_private_thread_info, demand_private_info): New.
4766         (PACKET_qXfer_threads, use_osdata_threads): New.
4767         (struct thread_item, threads_parsing_context
4768         (start_thread, end_thread, thread_attributes)
4769         (thread_children, threads_children, threads_elements): New.
4770         (remote_threads_info): Try qXfer:threads before anything
4771         else.
4772         (remote_protocol_packets): Register qXfer:threads.
4773         (remote_open_1): Init use_osdata_threads.
4774         (struct stop_reply): New field 'core'.
4775         (remote_parse_stop_reply): Parse core number.
4776         (process_stop_reply): Record core number.
4777         (remote_xfer_partial): Handle qXfer:threads.
4778         (remote_core_of_thread): New.
4779         (init_remote_ops): Register remote_core_of_thread.
4780         (_initialize_remote): Register qXfer:read.
4781         * target.c (target_core_of_thread): New
4782         * target.h (enum target_object): New value TARGET_OBJECT_THREADS.
4783         (struct target_ops): New field to_core_of_threads.
4784         (target_core_of_thread): Declare.
4785         * gdbthread.h (struct thread_info): New field private_dtor.
4786         * thread.c (print_thread_info): Report the core.
4787         * ui-out.c (MAX_UI_OUT_LEVELS): Increase.
4788         * utils.c (compare_positive_ints): New.
4789         * features/threads.dtd: New.
4790         * mi/mi-interp.c (mi_on_normal_stop): Report the core.
4791         * mi/mi-main.c (struct collect_cores_data, collect_cores)
4792         (do_nothing, free_vector_of_osdata_items)
4793         (splay_tree_int_comparator, free_splay_tree): New.
4794         (print_one_inferior_data): Implemented printing of selected
4795         inferiors.  Collect and print cores.
4796         (output_cores): New.
4797         (mi_cmd_list_thread_groups): Support --recurse.  Permit specifying
4798         thread groups together with --available.
4799
4800 2010-01-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
4801
4802         * configure: Regenerate (for _STRUCTURED_PROC).
4803
4804 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
4805
4806         Delete dead function.
4807         * ada-lang.c (extract_string): Delete.  No longer used.
4808
4809 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
4810
4811         Fix -Wunused warning in dec-thread.c.
4812         * dec-thread.c (dec_thread_count_gdb_threads)
4813         (dec_thread_add_gdb_thread): Prevent -Wunused warning.
4814
4815 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
4816
4817         * ada-valprint.c (ada_print_floating): Remove trailing space.
4818
4819 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
4820
4821         Add support for DW_AT_GNAT_descriptive_type.
4822         * gdbtypes.h (enum type_specific_kind): New enum.
4823         (struct main_type) [type_specific_field]: New component.
4824         [type_specific]: Add new component "gnat_stuff".
4825         (struct gnat_aux_type): New type.
4826         (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
4827         (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
4828         (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
4829         (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
4830         (TYPE_SPECIFIC_FIELD): New macros.
4831         (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
4832         type does not hold any cplus-specific data.
4833         (TYPE_RAW_CPLUS_SPECIFIC): New macro.
4834         (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
4835         (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
4836         cplus-specific data.
4837         * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
4838         Set new component TYPE_SPECIFIC_FIELD (type).
4839         (gnat_aux_default): New constant.
4840         (allocate_gnat_aux_type): New function.
4841         (init_type): Add initialization the type-specific stuff for
4842         TYPE_CODE_FLT and TYPE_CODE_FUNC types.
4843         (print_gnat_stuff): New function.
4844         (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
4845         specific data.  Adjust code that prints the contents of the
4846         type-specific union using the TYPE_SPECIFIC_FIELD value.
4847         * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
4848         the type cplus stuff for Ada types.
4849         (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
4850         Error out if these routines are called with an Ada type.
4851         (read_structure_type, read_array_type, read_subrange_type):
4852         Add call to set_descriptive_type.
4853         (set_die_type): Initialize the gnat-specific data if necessary.
4854         (need_gnat_info, die_descriptive_type, set_descriptive_type):
4855         New functions.
4856         * ada-lang.c (decode_constrained_packed_array_type): Use
4857         decode_constrained_packed_array_type instead of doing a standard
4858         lookup to locate a parallel type.
4859         (find_parallel_type_by_descriptive_type): New function.
4860         (ada_find_parallel_type_with_name): New function.
4861         (ada_find_parallel_type): Reimplement using
4862         ada_find_parallel_type_with_name.
4863         * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
4864         to check if type has a cplus stuff.
4865         * linespec.c (total_number_of_methods): Likewise.
4866         * mdebugread.c (new_type): Likewise.
4867
4868 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
4869
4870         * NEWS: Document the 0b binary number prefix parsing.
4871
4872 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
4873
4874         * objfiles.c (objfile_relocate1): Change the return type to int.
4875         Describe the new return value.  Return non-zero if data changed.
4876         (objfile_relocate): New variable changed.  Set it.  Call
4877         breakpoint_re_set depending on CHANGED.
4878
4879 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
4880
4881         Implement binary numbers parsing.
4882         * c-exp.y (parse_number): New case 'b' and 'B'.
4883
4884 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
4885             Tristan Gingold  <gingold@adacore.com>
4886
4887         * solib.c (info_sharedlibrary_command): Replace
4888         objfile_has_partial_symbols and objfile_has_full_symbols calls by
4889         objfile_has_symbols.
4890
4891 2010-01-10  Joel Brobecker  <brobecker@adacore.com>
4892
4893         * NEWS: Document the improvements made to the mips-irix port.
4894
4895 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4896
4897         Fix the documentation of valprint.c:value_print.
4898         * valprint.c (value_print): Update the function description to
4899         mention that the syntax of the output follows the current_language,
4900         not necessarily C.
4901
4902 2010-01-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
4903
4904         Fix displacement of separate debug info files.
4905         * objfiles.c (objfile_relocate): Rename to ...
4906         (objfile_relocate1): ... here and make it static.  Extend the comment.
4907         (objfile_relocate): New function.
4908         * solib-spu.c (spu_relocate_main_executable): Explicitly check if
4909         SYMFILE_OBJFILE is NULL.  Remove variables objfile and old_chain.
4910         Remove following of SEPARATE_DEBUG_OBJFILE.  new_offsets is now
4911         allocated using alloca.
4912         * symfile.c (copy_section_addr_info): Remove.
4913         (build_section_addr_info_from_objfile): Make it global.  New variables
4914         addr_bit and mask, use them.
4915         * symfile.h (build_section_addr_info_from_objfile): New prototype.
4916         (copy_section_addr_info): Remove.
4917
4918 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4919
4920         Signal unwinder for mips-irix N32.
4921         * mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
4922         tramp-frame.h.
4923         (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
4924         (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
4925         (SIGCONTEXT_LO_OFF): New macros.
4926         (mips_irix_n32_tramp_frame_init): New function.
4927         (mips_irix_n32_tramp_frame): New static constant.
4928         (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
4929
4930 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4931
4932         Breakpoint in shared library does not work on mips-irix.
4933         * procfs.c: #include "observer.h".
4934         (procfs_inferior_created): New function, moving here the code
4935         which unsets the syssgi syscall-exit notifications.
4936         (procfs_create_inferior): Remove the code which unsets the syssgi
4937         syscall-exit notifications. It is too early to do this here.
4938         (_initialize_procfs): Attach the procfs_inferior_created observer.
4939
4940 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4941
4942         Wrong return convention for arrays (mips-irix).
4943         * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
4944         128 bits or smaller are returned the same way as structs
4945         and unions of the the same size.
4946
4947 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4948
4949         Cannot set the PC on mips-irix.
4950         * irix5-nat.c (fill_gregset): Check regno against the raw PC
4951         register number, no the cooked one.
4952
4953 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4954
4955         Error while loading core file on mips-irix.
4956         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
4957         if debugging from a core file.
4958
4959 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4960
4961         GDB hangs when attaching to process on mips-irix.
4962         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
4963         attaching to a process.
4964
4965 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4966
4967         Use the correct breakpoint instruction on mips-irix.
4968         * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
4969         containing the correct breakpoint instruction to use on mips-irix.
4970         Use it when the osabi is GDB_OSABI_IRIX.
4971
4972 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4973
4974         -Wunused warning in procfs.c (mips-irix only).
4975         * procfs.c (gdb_praddset, gdb_prdelset): New macros.  Use them
4976         throughout instead of using praddset and prdelset respectively.
4977
4978 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4979
4980         GDB crash while stepping into function.
4981         * infrun.c (handle_inferior_event): Refetch the current frame
4982         after handling what.main_action, in case that pointer became
4983         dangling.
4984
4985 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
4986
4987         Fix build failure of solaris-hosted cross debuggers.
4988         * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
4989
4990 2010-01-09  Daniel Gutson  <dgutson@codesourcery.com>
4991
4992         Fix build failure on sparc-solaris.
4993         * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
4994
4995 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
4996
4997         Move some symfile code into subroutines.
4998         * symfile.h (relative_addr_info_to_section_offsets)
4999         (addr_info_make_relative): New prototypes.
5000         * symfile.c (default_symfile_offsets): Move a part to ...
5001         (relative_addr_info_to_section_offsets): ... this new function.
5002         (default_symfile_offsets): Call it.
5003         (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
5004         this part to ...
5005         (addr_info_make_relative): ... this new function.
5006
5007 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
5008
5009         Add from_tty to solib_create_inferior_hook.
5010         * infcmd.c (post_create_inferior): Move solib_add after
5011         solib_create_inferior_hook.  Pass from_tty to
5012         solib_create_inferior_hook.  Call solib_add and SOLIB_ADD with
5013         0 from_tty and comment why.
5014         * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
5015         * linux-nat.c (linux_child_follow_fork): Likewise.
5016         * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
5017         * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
5018         from_tty.
5019         * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
5020         * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
5021         * solib-null.c (null_solib_create_inferior_hook): Likewise.
5022         * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
5023         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
5024         * solib-som.c (som_solib_create_inferior_hook): Likewise.
5025         * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
5026         Pass it to svr4_so_ops.solib_create_inferior_hook.
5027         * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
5028         from_tty.
5029         * solib-svr4.c (enable_break): New parameter from_tty.  Pass it to
5030         solib_add.
5031         (svr4_solib_create_inferior_hook): New parameter from_tty.  Pass it to
5032         enable_break.
5033         * solib-target.c (solib_target_solib_create_inferior_hook): New
5034         parameter from_tty.
5035         * solib.c (solib_create_inferior_hook): New parameter from_tty.  Pass
5036         it to ops->solib_create_inferior_hook.
5037         (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
5038         Move solib_add after solib_create_inferior_hook, call it now with
5039         from_tty as 0.  New comment there.
5040         * solib.h (solib_create_inferior_hook): New parameter from_tty.
5041         * solist.h (struct target_so_ops <solib_create_inferior_hook>):
5042         Likewise.
5043
5044 2010-01-08  Vladimir Prus  <vladimir@codesourcery.com>
5045
5046         Fix multiexec race.
5047         * infrun.c (handle_inferior_event): Use get_thread_regcache
5048         with events ptid, not get_current_regcache.
5049
5050 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
5051
5052         GDB crash with empty executable name (MinGW).
5053         * source.c (openp): Add assert that parameter string is not NULL.
5054         if parameter string is an empty string, then return with a failure
5055         immediately.
5056
5057 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
5058
5059         Get rid of support for VAX Floats.
5060         * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
5061         (ada_vax_float_print_function): Delete.
5062         * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
5063         (ada_vax_float_print_function): Delete.
5064         * ada-typeprint.c (print_vax_floating_point_type): Delete.
5065         (ada_print_type): Remove support for VAX floats.
5066         * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
5067
5068 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
5069
5070         * stabsread.c (read_args): Handle zero arguments.
5071
5072 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
5073
5074         Cannot find in-tree libiconv.a after reconfigure.
5075         * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
5076         that we can use, then cache the path to this archive.
5077         * configure: Regenerate.
5078
5079 2010-01-07  Stan Shebs  <stan@codesourcery.com>
5080
5081         Make tracepoint operations go through target vector.
5082         * target.h (enum trace_find_type): New enum.
5083         (struct target_ops): New fields to_trace_init,
5084         to_download_tracepoint, to_download_trace_state_variable,
5085         to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
5086         to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
5087         to_set_disconnected_tracing.
5088         (target_trace_init): New macro.
5089         (target_download_tracepoint): New macro.
5090         (target_download_trace_state_variable): New macro.
5091         (target_trace_start): New macro.
5092         (target_trace_set_readonly_regions): New macro.
5093         (target_get_trace_status): New macro.
5094         (target_trace_stop): New macro.
5095         (target_trace_find): New macro.
5096         (target_get_trace_state_variable_value): New macro.
5097         (target_set_disconnected_tracing): New macro.
5098         * target.c (update_current_target): Inherit and set defaults for
5099         tracepoint operations.
5100         * tracepoint.c (default_collect): Make globally visible.
5101         (target_is_remote): Remove, along with all calls.
5102         (tvariables_info): Call target_get_trace_state_variable_value.
5103         (remote_set_transparent_ranges): Remove.
5104         (trace_start_command): Call target_trace_init,
5105         target_download_tracepoint, etc.
5106         (download_tracepoint): Remove.
5107         (trace_stop_command): Simplify.
5108         (stop_tracing): Call target_trace_stop.
5109         (get_trace_status): Call target_get_trace_status.
5110         (trace_status_command): Add case for targets that cannot trace.
5111         (finish_tfind_command): Change to take numerical arguments, call
5112         target_trace_find.
5113         (trace_find_command): Update call to finish_tfind_command.
5114         (trace_find_pc_command): Ditto.
5115         (trace_find_tracepoint_command): Ditto.
5116         (trace_find_line_command): Ditto.
5117         (trace_find_range_command): Ditto.
5118         (trace_find_outside_command): Ditto.
5119         (set_disconnected_tracing_value): Call
5120         target_set_disconnected_tracing.
5121         * remote.c: Add protocol encoding bits from tracepoint.c.
5122         (trace_error): Move from tracepoint.c.
5123         (remote_get_noisy_reply): Ditto.
5124         (free_actions_list_cleanup_wrapper): Ditto.
5125         (free_actions_list): Ditto.
5126         (remote_trace_init): New function.
5127         (remote_download_tracepoint): New function.
5128         (remote_download_trace_state_variable): New function.
5129         (remote_trace_set_readonly_regions): New function.
5130         (remote_trace_start): New function.
5131         (remote_get_trace_status): New function.
5132         (remote_trace_stop): New function.
5133         (remote_trace_find): New function.
5134         (remote_download_trace_state_variable): New function.
5135         (remote_set_disconnected_tracing): New function.
5136         (init_remote_ops): Add tracepoint operations.
5137
5138         * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
5139
5140 2010-01-07  Tristan Gingold  <gingold@adacore.com>
5141
5142         * symfile.c (build_section_addr_info_from_objfile): New function.
5143         (symbol_file_add_separate): Don't use offsets from objfile but
5144         built an addr info.
5145
5146 2010-01-06  Stan Shebs  <stan@codesourcery.com>
5147
5148         Support disconnected tracing.
5149         * infcmd.c (detach_command): Ask whether to stop tracing.
5150         * cli/cli-cmds.c (quit_command): Ditto.
5151         * breakpoint.h (struct breakpoint): New field number_on_target.
5152         * breakpoint.c (create_tracepoint_from_upload): New function.
5153         (get_tracepoint_by_number_on_target): New function.
5154         * remote.c (struct remote): New field disconnected_tracing.
5155         (remote_disconnected_tracing_feature): New function.
5156         (remote_protocol_features): Add DisconnectedTracing.
5157         (struct uploaded_tp): New struct.
5158         (uploaded_tps): New global.
5159         (get_uploaded_tp): New function.
5160         (find_matching_tracepoint): New function.
5161         (remote_get_tracing_state): New function.
5162         (remote_start_remote): Call it.
5163         * tracepoint.c (disconnected_tracing): New global.
5164         (trace_start_command): Initialize number_on_target.
5165         (stop_tracing): New function, split out from...
5166         (trace_stop_command): Call stop_tracing.
5167         (get_trace_status): New function, split out from...
5168         (trace_status_command): Call get_trace_status, add info on
5169         disconnection behavior.
5170         (disconnect_or_stop_tracing): New function.
5171         (finish_tfind_command): Translate from number on target.
5172         (trace_find_tracepoint_command): Translate to number on target.
5173         (send_disconnected_tracing_value): New function.
5174         (set_disconnected_tracing): New function.
5175         (_initialize_tracepoint): Add disconnected-tracing variable.
5176         * NEWS: Mention disconnected tracing.
5177
5178 2010-01-06  Tristan Gingold  <gingold@adacore.com>
5179
5180         * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
5181         parameter to main_objfile.  Iterate on all separate debug objfiles.
5182         * symfile.h (symbol_file_add_separate)
5183         (find_separate_debug_file_by_debuglink): Remove parameter names.
5184         * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
5185         (reread_symbols): Use free_objfile_separate_debug.
5186         * objfiles.h (struct objfile): Add separate_debug_objfile_link.
5187         Adjust comment.
5188         (objfile_separate_debug_iterate, add_separate_debug_objfile)
5189         (free_objfile_separate_debug): New prototypes.
5190         * objfiles.c (objfile_separate_debug_iterate): New function.
5191         (add_separate_debug_objfile, free_objfile_separate_debug): New
5192         functions.
5193         (free_objfile): Use free_objfile_separate_debug.  Adjust for
5194         multiple separate debug objfile.
5195         (objfile_has_symbols): Adjust comment.  Iterate on all separate
5196         debug objfiles.
5197         * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
5198         debug objfile.
5199         (lookup_minimal_symbol_text): Ditto.
5200         (lookup_minimal_symbol_by_pc_name): Ditto.
5201         (lookup_minimal_symbol_solib_trampoline): Ditto.
5202         (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
5203         debug objfiles.
5204
5205 2010-01-05  Stan Shebs  <stan@codesourcery.com>
5206
5207         Add fast tracepoints.
5208         * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
5209         * arch-utils.c (default_fast_tracepoint_valid_at): New function.
5210         * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
5211         * breakpoint.c (tracepoint_type): New function.
5212         (ALL_TRACEPOINTS): Use it.
5213         (should_be_inserted): Ditto.
5214         (bpstat_check_location): Ditto.
5215         (print_one_breakpoint_location): Ditto.
5216         (user_settable_breakpoint): Ditto.
5217         (set_breakpoint_location_function): Ditto.
5218         (disable_breakpoints_in_shlibs): Ditto.
5219         (delete_trace_command): Ditto.
5220         (print_it_typical): Add bp_fast_tracepoint case.
5221         (bpstat_what): Ditto.
5222         (print_one_breakpoint_location): Ditto.
5223         (allocate_bp_location): Ditto.
5224         (mention): Ditto.
5225         (breakpoint_re_set_one): Ditto.
5226         (disable_command): Ditto.
5227         (enable_command): Ditto.
5228         (check_fast_tracepoint_sals): New function.
5229         (break_command_really): Call it.
5230         (ftrace_command): New function.
5231         (_initialize_breakpoint): Add ftrace command.
5232         * gdbarch.sh (fast_tracepoint_valid_at): New.
5233         * gdbarch.h, gdbarch.c: Regenerate.
5234         * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
5235         (i386_gdbarch_init): Use it.
5236         * remote.c (struct remote_state): New field fast_tracepoints.
5237         (PACKET_FastTracepoints): New packet config type.
5238         (remote_fast_tracepoint_feature): New function.
5239         (remote_protocol_features): Add FastTracepoints.
5240         (remote_supports_fast_tracepoints): New function.
5241         (_initialize_remote): Add FastTracepoints.
5242         * tracepoint.c (download_tracepoint): Add fast tracepoint option.
5243         * NEWS: Mention fast tracepoints.
5244
5245 2010-01-06  Joel Brobecker  <brobecker@adacore.com>
5246
5247         * gdb-gdb.py: New file.
5248
5249 2010-01-05  Michael Snyder  <msnyder@vmware.com>
5250
5251         * infrun.c (handle_inferior_event): Fix typo in comment.
5252
5253 2010-01-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
5254
5255         * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
5256
5257 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
5258
5259         * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
5260         and s390x-linux64.
5261         (s390-linux32-expedite): Define.
5262         (s390-linux64-expedite): Define.
5263         (s390x-linux64-expedite): Define.
5264         * features/s390-acr.xml: New file.
5265         * features/s390-fpr.xml: New file.
5266         * features/s390-core32.xml: New file.
5267         * features/s390-core64.xml: New file.
5268         * features/s390x-core64.xml: New file.
5269         * features/s390-linux32.xml: New file.
5270         * features/s390-linux64.xml: New file.
5271         * features/s390x-linux64.xml: New file.
5272         * features/s390-linux32.c: New generated file.
5273         * features/s390-linux64.c: New generated file.
5274         * features/s390x-linux64.c: New generated file.
5275
5276         * regformats/s390-linux32.dat: New generated file.
5277         * regformats/s390-linux64.dat: New generated file.
5278         * regformats/s390x-linux64.dat: New generated file.
5279         * regformats/reg-s390.dat: Remove.
5280         * regformats/reg-s390x.dat: Remove.
5281
5282         * s390-nat.c: Include "auxv.h" and <elf.h>.
5283         (HWCAP_S390_HIGH_GPRS): Define if undefined.
5284         (s390_target_wordsize): New function.
5285         (s390_auxv_parse): Likewise.
5286         (s390_get_hwcap): Likewise.
5287         (s390_read_description): Likewise.
5288         (_initialize_s390_nat): Install s390_auxv_parse and
5289         s390_read_description.
5290
5291         * s390-tdep.c: Include "features/s390-linux32.c",
5292         "features/s390-linux64.c", and "features/s390x-linux64.c".
5293         (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
5294         (s390_register_call_saved): New function.
5295         (s390_register_name): Remove.
5296         (s390_register_type): Remove.
5297         (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
5298         (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
5299         (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
5300         (s390_pseudo_register_name): New function.
5301         (s390_pseudo_register_type): New function.
5302         (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
5303         Handle full GPR pesudos and varying pseudo register numbers.
5304         (s390_pseudo_register_write): Likewise
5305         (s390x_pseudo_register_read): Remove.
5306         (s390x_pseudo_register_write): Likewise.
5307         (s390_register_group): Remove.
5308         (s390_pseudo_register_group): New function.
5309         (s390_regmap_gregset): Add GPR upper halves.
5310         (s390x_regmap_gregset): Likewise.
5311         (s390_regmap_fpregset): Likewise.
5312         (s390_regmap_upper): New global variable.
5313         (s390_upper_regset): New global variable.
5314         (s390_upper_regset_sections): New global variable.
5315         (s390_regset_from_core_section): Handle GPR upper halves.
5316         (s390_core_read_description): New function.
5317         (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
5318         register information.  Handle varying pseudo register numbers.
5319         (s390_backchain_frame_unwind_cache): Likewise.
5320         (s390_frame_prev_register): Unwind full GPRs to show lower halves.
5321         (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
5322         (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
5323         PC and CC pseudos.  Unwind upper halves and full GPRs as appropriate.
5324         Handle varying pseudo register numbers.
5325         (s390_unwind_pc): Handle varying pseudo register numbers.
5326         (s390_dwarf2_prev_register): New function.
5327         (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
5328         register information.  Handle varying pseudo register numbers.
5329         Install s390_dwarf2_prev_register to unwind full GPRs.
5330         (s390_gdbarch_init): Handle target descriptions.  Assign varying
5331         pseudo register numbers.  Install s390_adjust_frame_regnum.
5332         (_initialize_s390_tdep): Initialize target descriptions.
5333
5334         * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
5335         (S390_NUM_REGS): Redefine to include upper half registers.
5336         (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
5337         (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
5338         (tdesc_s390_linux32): Add declaration.
5339         (tdesc_s390_linux64): Likewise.
5340         (tdesc_s390x_linux64): Likewise.
5341
5342 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
5343
5344         * regset.h (struct core_regset_section): Add HUMAN_NAME.
5345         * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
5346         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
5347         (ppc_linux_vmx_regset_sections): Likewise.
5348         (ppc_linux_fp_regset_sections): Likewise.
5349
5350         * corelow.c (get_core_register_section): Constify arguments.
5351         (get_core_registers): Use gdbarch_core_regset_sections instead
5352         of hard-coded platform-specific register section names.
5353
5354 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
5355
5356         * dwarf2loc.c (read_pieced_value): If a piece occupies part of
5357         a register, assume the least-significant part is used.
5358         (write_pieced_value): Likewise.
5359
5360 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
5361
5362         * printcmd.c: Include "arch-utils.h".
5363         (do_one_display): Re-parse expression if current architecture changed.
5364
5365 2010-01-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
5366             Joel Brobecker  <brobecker@adacore.com>
5367
5368         * gdbtypes.c (check_typedef): New comment on type length.
5369         * value.c (allocate_value_lazy): Remove the unused atype variable.  New
5370         comment on type length.
5371         (value_primitive_field): Keep the original TYPE value, new comment.
5372
5373 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
5374
5375         * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
5376         p_start.  Change != comparisons to > and < comparisons.
5377
5378 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
5379
5380         * cli/cli-script.c (process_next_line): Check P2 overrun.
5381
5382 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
5383
5384         Update the copyright hearder to add year 2010 for most GDB files.
5385
5386 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
5387
5388         Fix build failure in inf-ptrace.c.
5389         * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
5390
5391 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
5392
5393         * top.c (print_gdb_version): Update copyright year.
5394
5395 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
5396
5397         Fix break *FUN'address thread NUM.
5398         * ada-lex.l (task): Expand rule to also match the thread keyword.
5399
5400 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
5401
5402         Fix break *FUN'address task NUM.
5403         * ada-lex.l (task): New rule.
5404         * ada-lang.c (valid_task_id): Make sure the Ada task list has
5405         been built before using it.
5406
5407 For older changes see ChangeLog-2009.
5408 \f
5409 Local Variables:
5410 mode: change-log
5411 left-margin: 8
5412 fill-column: 74
5413 version-control: never
5414 coding: utf-8
5415 End: