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