Add trace file support.
[external/binutils.git] / gdb / ChangeLog
1 2010-01-15  Stan Shebs  <stan@codesourcery.com>
2
3         Add trace file support.
4         * tracepoint.h (enum trace_stop_reason): New enum.
5         (struct trace_status): New struct.
6         (parse_trace_status): Declare.
7         (struct uploaded_tp): Move here from remote.c,
8         add fields for actions.
9         (struct uploaded_tsv): New struct.
10         * tracepoint.c (tfile_ops): New target vector.
11         (trace_fd): New global.
12         (tfile_open): New function.
13         (tfile_close): New function.
14         (tfile_files_info): New function.
15         (tfile_get_trace_status): New function.
16         (tfile_get_traceframe_address): New function.
17         (tfile_trace_find): New function.
18         (tfile_fetch_registers): New function.
19         (tfile_xfer_partial): New function.
20         (tfile_get_trace_state_variable_value): New function.
21         (init_tfile_ops): New function.
22         (_initialize_tracepoint): Call it, add tfile target.
23         (trace_status): New global.
24         (current_trace_status): New function.
25         (trace_running_p): Remove, change all users to get from
26         current_trace_status()->running.
27         (get_trace_status): Remove.
28         (trace_status_command): Call target_get_trace_status directly,
29         report more detail including tracing stop reasons.
30         (trace_find_command): Always allow tfind on a file.
31         (trace_find_pc_command): Ditto.
32         (trace_find_tracepoint_command): Ditto.
33         (trace_find_line_command): Ditto.
34         (trace_find_range_command): Ditto.
35         (trace_find_outside_command): Ditto.
36         (trace_frames_offset, cur_offset): Declare as off_t.
37         (trace_regblock_size): Rename from reg_size, update users.
38         (parse_trace_status): New function.
39         (tfile_interp_line): New function.
40         (disconnect_or_stop_tracing): Ensure current trace
41         status before asking what to do.
42         (stop_reason_names): New global.
43         (trace_save_command): New command.
44         (get_uploaded_tp): Move here from remote.c.
45         (find_matching_tracepoint): Ditto.
46         (merge_uploaded_tracepoints): New function.
47         (parse_trace_status): Use stop_reason_names.
48         (_initialize_tracepoint): Define tsave command.
49         * target.h (target_ops): New fields to_save_trace_data,
50         to_upload_tracepoints, to_upload_trace_state_variables,
51         to_get_raw_trace_data, change to_get_trace_status
52         to take a pointer to a status struct.
53         (target_save_trace_data): New macro.
54         (target_upload_tracepoints): New macro.
55         (target_upload_trace_state_variables): New macro.
56         (target_get_raw_trace_data): New macro.
57         * target.c (update_current_target): Add new methods, change
58         signature of to_get_trace_status.
59         * remote.c (hex2bin): Make globally visible.
60         (bin2hex): Ditto.
61         (remote_download_trace_state_variable): Download name also.
62         (remote_get_trace_status): Update parameter, use
63         parse_trace_status.
64         (remote_save_trace_data): New function.
65         (remote_upload_tracepoints): New function.
66         (remote_upload_trace_state_variables): New function.
67         (remote_get_raw_trace_data): New function.
68         (remote_start_remote): Use them.
69         (_initialize_remote_ops): Add operations.
70         * ax-gdb.c: Include breakpoint.h.
71         * breakpoint.c (create_tracepoint_from_upload): Use
72         break_command_really, return tracepoint, warn about unimplemented
73         parts.
74         * NEWS: Mention trace file addition.
75
76 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
77
78         Fix compilation warning on gcc-3.4.
79         * exec.c (print_section_info): Move the `displacement' variable
80         initialization to its declaration.
81
82 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
83
84         * gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
85         comparison.
86
87 2010-01-15  Eric Botcazou  <botcazou@adacore.com>
88
89         "info tasks" broken by typedefs in ATCB type definitions.
90         * ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
91         ada_check_typedef before retrieving the length of the type for
92         regular fields.
93
94 2010-01-15  Joel Brobecker  <brobecker@adacore.com>
95
96         Do not use name-based lookup for unconstrained packed arrays.
97         * ada-lang.c (find_parallel_type_by_descriptive_type):
98         Limit the fallback to name-based lookups to the case where
99         the type is a constrained packed array.
100
101 2010-01-15  Joel Brobecker  <brobecker@adacore.com>
102
103         Enhance gdb-gdb.py to handle main_type.type_specific.
104         * gdb-gdb.py: Print the type-specific part of struct main_type.
105
106 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
107
108         * configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
109         * configure: Regenerate.
110         * config.in: Regenerate.
111         * utils.c: Include sys/resource.h.
112         (dump_core, can_dump_core): New.
113         (internal_vproblem): Update the comment.  Check can_dump_core while
114         setting dump_core_p.  Replace two abort calls by dump_core calls.
115
116 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
117             Eli Zaretskii  <eliz@gnu.org>
118
119         * NEWS: Document the PIE support.
120
121 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
122
123         * linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
124         (check_is_pie_binary, _initialize_linux_tdep): Remove.
125
126 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
127
128         * solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
129         Replace exec_entry_point call by bfd_get_start_address.
130
131 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
132
133         Support Valgrind attachments broken by the PIE support.
134         * auxv.c: Include gdbcore.h.
135         (procfs_xfer_auxv): Make static.  Reduce its comment.  Drop its
136         parameters ops, object and annex.  Remove their assertions.
137         (ld_so_xfer_auxv, memory_xfer_auxv): New function.
138         * auxv.h (procfs_xfer_auxv): Remove comment.  Rename to ...
139         (memory_xfer_auxv): ... here.
140         * linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
141         memory_xfer_auxv.
142         * procfs.c (procfs_xfer_partial): Likewise.
143         * solib-svr4.c (svr4_relocate_main_executable): New prototype.
144         (svr4_special_symbol_handling): Call svr4_relocate_main_executable.
145         (svr4_solib_create_inferior_hook): Conditionalize the
146         svr4_relocate_main_executable call.
147
148 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
149
150         * solib-svr4.c (scan_dyntag): Remove variable dyn_addr.  New variable
151         target_section.  Find SECT in current_target_sections, gdb_assert it.
152         (elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
153         New variable abfd.
154         * symtab.c (lookup_objfile_from_block): Return the binary file instead
155         of separate debug info file.
156
157 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
158
159         Support PIEs with no symfile_objfile.
160         * exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
161         * solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
162
163 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
164
165         * solib-svr4.c (svr4_relocate_main_executable): Move the static exec
166         code part to ...
167         (svr4_static_exec_displacement): ... a new function.
168         (svr4_exec_displacement): New function.
169         (svr4_relocate_main_executable): Call svr4_exec_displacement.  Allocate
170         new_offsets using alloca now.  Remove variable old_chain and changed.
171         Call objfile_relocate unconditionally now.
172
173 2010-01-14  Doug Evans  <dje@google.com>
174
175         * gdbtypes.c (arch_flags_type): Fix comment.
176         * gdbtypes.h (arch_composite_type): Fix comment.
177
178 2009-01-14  Tristan Gingold  <gingold@adacore.com>
179
180         * machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
181         Call xstrdup for abfd->filename.  Pass symfile_flags and objfile flags
182         to symbol_file_add_from_bfd.  Add OSO as separate objfile.
183         (macho_oso_symfile): Add symfile_flags parameter.  Pass it to
184         macho_add_oso_symfile.
185         (macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
186
187 2010-01-14  Joel Brobecker  <brobecker@adacore.com>
188
189         Tru64: Dead threads are never deleted.
190         * dec-thread.c (dec_thread_ptid_is_alive): New function.
191         (dec_thread_count_gdb_threads): Fix counter increment.
192         (dec_thread_add_gdb_thread): Fix *listp increment.
193         (resync_thread_list): Fix bug in deletion of dead threads that
194         caused all threads to be deleted, instead of just the dead ones.
195
196 2010-01-13  Phil Muldoon  <pmuldoon@redhat.com>
197
198         PR python/10705
199
200         * python/python-internal.h: Add lazy_string_object_type
201         definition.
202         (create_lazy_string_object, gdbpy_initialize_lazy_string)
203         (gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
204         * python/py-value.c (valpy_lazy_string): New function.
205         (convert_value_from_python): Add lazy string conversion.
206         * python/py-prettyprint.c (pretty_print_one_value): Check if
207         return is also a lazy string.
208         (print_string_repr): Add lazy string printing branch.
209         (print_children): Likewise.
210         * python/py-lazy-string.c: New file. Implement lazy strings.
211         * python/python.c (_initialize_python): Call
212         gdbpy_initialize_lazy_string.
213         * varobj.c (value_get_print_value): Add lazy string printing
214         branch.  Account for encoding.
215         * c-lang.c (c_printstr): Account for new encoding argument.  If
216         encoding is NULL, find encoding suited for type, otherwise use
217         user encoding.
218         * language.h (language_defn): Add encoding argument.
219         (LA_PRINT_STRING): Likewise.
220         * language.c (unk_lang_printstr): Update to reflect new encoding
221         argument to language_defn.
222         * ada-lang.h (ada_printstr): Likewise.
223         * c-lang.h (c_printstr): Likewise.
224         * p-lang.h (pascal_printstr);
225         * f-lang.c (f_printstr): Likewise.
226         * m2-lang.c (m2_printstr): Likewise.
227         * objc-lang.c (objc_printstr): Likewise.
228         * p-lang.c (pascal_printstr): Likewise.
229         * scm-lang.c (scm_printstr): Likewise.
230         * c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
231         encoding argument.
232         * ada-valprint.c (ada_printstr): Likewise.
233         * f-valprint.c (f_val_print): Likewise
234         * m2-valprint.c (m2_val_print): Likewise.
235         * p-valprint.c (pascal_val_print): Likewise.
236         * expprint.c (print_subexp_standard): Likewise.
237         * valprint.c (val_print_string): Likewise.
238         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
239         (SUBDIR_PYTHON_SRCS): Likewise.
240         (py-lazy-string.o): New rule.
241
242 2010-01-13  Doug Evans  <dje@google.com>
243
244         * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
245         uninitialized" warning from gcc on local `tree'.
246
247 2010-01-13  Vladimir Prus  <vladimir@codesourcery.com>
248
249         Implement core awareness.
250
251         * bcache.c (compare_ints): Remove
252         (print_percentage): Use compare_positive_ints.
253         * defs.h (compare_positive_ints): Declare.
254         * linux-nat.h (struct lin_lwp): New field core.
255         (linux_nat_core_of_thread_1): Declare.
256         * linux-nat.c (add_lwp): Init the 'core' field.
257         (linux_nat_wait_1): Record the core.
258         (linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
259         (linux_nat_add_target): Register the above.
260         * linux-thread-db.c (update_thread_core): New.
261         (thread_db_find_new_threads): Update core information for
262         every thread.
263         * remote.c (struct private_thread_info): New.
264         (free_private_thread_info, demand_private_info): New.
265         (PACKET_qXfer_threads, use_osdata_threads): New.
266         (struct thread_item, threads_parsing_context
267         (start_thread, end_thread, thread_attributes)
268         (thread_children, threads_children, threads_elements): New.
269         (remote_threads_info): Try qXfer:threads before anything
270         else.
271         (remote_protocol_packets): Register qXfer:threads.
272         (remote_open_1): Init use_osdata_threads.
273         (struct stop_reply): New field 'core'.
274         (remote_parse_stop_reply): Parse core number.
275         (process_stop_reply): Record core number.
276         (remote_xfer_partial): Handle qXfer:threads.
277         (remote_core_of_thread): New.
278         (init_remote_ops): Register remote_core_of_thread.
279         (_initialize_remote): Register qXfer:read.
280         * target.c (target_core_of_thread): New
281         * target.h (enum target_object): New value TARGET_OBJECT_THREADS.
282         (struct target_ops): New field to_core_of_threads.
283         (target_core_of_thread): Declare.
284         * gdbthread.h (struct thread_info): New field private_dtor.
285         * thread.c (print_thread_info): Report the core.
286         * ui-out.c (MAX_UI_OUT_LEVELS): Increase.
287         * utils.c (compare_positive_ints): New.
288         * features/threads.dtd: New.
289         * mi/mi-interp.c (mi_on_normal_stop): Report the core.
290         * mi/mi-main.c (struct collect_cores_data, collect_cores)
291         (do_nothing, free_vector_of_osdata_items)
292         (splay_tree_int_comparator, free_splay_tree): New.
293         (print_one_inferior_data): Implemented printing of selected
294         inferiors.  Collect and print cores.
295         (output_cores): New.
296         (mi_cmd_list_thread_groups): Support --recurse.  Permit specifying
297         thread groups together with --available.
298
299 2010-01-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
300
301         * configure: Regenerate (for _STRUCTURED_PROC).
302
303 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
304
305         Delete dead function.
306         * ada-lang.c (extract_string): Delete.  No longer used.
307
308 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
309
310         Fix -Wunused warning in dec-thread.c.
311         * dec-thread.c (dec_thread_count_gdb_threads)
312         (dec_thread_add_gdb_thread): Prevent -Wunused warning.
313
314 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
315
316         * ada-valprint.c (ada_print_floating): Remove trailing space.
317
318 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
319
320         Add support for DW_AT_GNAT_descriptive_type.
321         * gdbtypes.h (enum type_specific_kind): New enum.
322         (struct main_type) [type_specific_field]: New component.
323         [type_specific]: Add new component "gnat_stuff".
324         (struct gnat_aux_type): New type.
325         (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
326         (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
327         (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
328         (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
329         (TYPE_SPECIFIC_FIELD): New macros.
330         (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
331         type does not hold any cplus-specific data.
332         (TYPE_RAW_CPLUS_SPECIFIC): New macro.
333         (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
334         (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
335         cplus-specific data.
336         * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
337         Set new component TYPE_SPECIFIC_FIELD (type).
338         (gnat_aux_default): New constant.
339         (allocate_gnat_aux_type): New function.
340         (init_type): Add initialization the type-specific stuff for
341         TYPE_CODE_FLT and TYPE_CODE_FUNC types.
342         (print_gnat_stuff): New function.
343         (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
344         specific data.  Adjust code that prints the contents of the
345         type-specific union using the TYPE_SPECIFIC_FIELD value.
346         * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
347         the type cplus stuff for Ada types.
348         (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
349         Error out if these routines are called with an Ada type.
350         (read_structure_type, read_array_type, read_subrange_type):
351         Add call to set_descriptive_type.
352         (set_die_type): Initialize the gnat-specific data if necessary.
353         (need_gnat_info, die_descriptive_type, set_descriptive_type):
354         New functions.
355         * ada-lang.c (decode_constrained_packed_array_type): Use
356         decode_constrained_packed_array_type instead of doing a standard
357         lookup to locate a parallel type.
358         (find_parallel_type_by_descriptive_type): New function.
359         (ada_find_parallel_type_with_name): New function.
360         (ada_find_parallel_type): Reimplement using
361         ada_find_parallel_type_with_name.
362         * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
363         to check if type has a cplus stuff.
364         * linespec.c (total_number_of_methods): Likewise.
365         * mdebugread.c (new_type): Likewise.
366
367 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
368
369         * NEWS: Document the 0b binary number prefix parsing.
370
371 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
372
373         * objfiles.c (objfile_relocate1): Change the return type to int.
374         Describe the new return value.  Return non-zero if data changed.
375         (objfile_relocate): New variable changed.  Set it.  Call
376         breakpoint_re_set depending on CHANGED.
377
378 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
379
380         Implement binary numbers parsing.
381         * c-exp.y (parse_number): New case 'b' and 'B'.
382
383 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
384             Tristan Gingold  <gingold@adacore.com>
385
386         * solib.c (info_sharedlibrary_command): Replace
387         objfile_has_partial_symbols and objfile_has_full_symbols calls by
388         objfile_has_symbols.
389
390 2010-01-10  Joel Brobecker  <brobecker@adacore.com>
391
392         * NEWS: Document the improvements made to the mips-irix port.
393
394 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
395
396         Fix the documentation of valprint.c:value_print.
397         * valprint.c (value_print): Update the function description to
398         mention that the syntax of the output follows the current_language,
399         not necessarily C.
400
401 2010-01-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
402
403         Fix displacement of separate debug info files.
404         * objfiles.c (objfile_relocate): Rename to ...
405         (objfile_relocate1): ... here and make it static.  Extend the comment.
406         (objfile_relocate): New function.
407         * solib-spu.c (spu_relocate_main_executable): Explicitly check if
408         SYMFILE_OBJFILE is NULL.  Remove variables objfile and old_chain.
409         Remove following of SEPARATE_DEBUG_OBJFILE.  new_offsets is now
410         allocated using alloca.
411         * symfile.c (copy_section_addr_info): Remove.
412         (build_section_addr_info_from_objfile): Make it global.  New variables
413         addr_bit and mask, use them.
414         * symfile.h (build_section_addr_info_from_objfile): New prototype.
415         (copy_section_addr_info): Remove.
416
417 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
418
419         Signal unwinder for mips-irix N32.
420         * mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
421         tramp-frame.h.
422         (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
423         (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
424         (SIGCONTEXT_LO_OFF): New macros. 
425         (mips_irix_n32_tramp_frame_init): New function. 
426         (mips_irix_n32_tramp_frame): New static constant.
427         (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
428
429 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
430
431         Breakpoint in shared library does not work on mips-irix.
432         * procfs.c: #include "observer.h".
433         (procfs_inferior_created): New function, moving here the code
434         which unsets the syssgi syscall-exit notifications.
435         (procfs_create_inferior): Remove the code which unsets the syssgi
436         syscall-exit notifications. It is too early to do this here.
437         (_initialize_procfs): Attach the procfs_inferior_created observer.
438
439 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
440
441         Wrong return convention for arrays (mips-irix).
442         * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
443         128 bits or smaller are returned the same way as structs
444         and unions of the the same size.
445
446 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
447
448         Cannot set the PC on mips-irix.
449         * irix5-nat.c (fill_gregset): Check regno against the raw PC
450         register number, no the cooked one.
451
452 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
453
454         Error while loading core file on mips-irix.
455         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
456         if debugging from a core file.
457
458 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
459
460         GDB hangs when attaching to process on mips-irix.
461         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
462         attaching to a process.
463
464 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
465
466         Use the correct breakpoint instruction on mips-irix.
467         * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
468         containing the correct breakpoint instruction to use on mips-irix.
469         Use it when the osabi is GDB_OSABI_IRIX.
470
471 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
472
473         -Wunused warning in procfs.c (mips-irix only).
474         * procfs.c (gdb_praddset, gdb_prdelset): New macros.  Use them
475         throughout instead of using praddset and prdelset respectively.
476
477 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
478
479         GDB crash while stepping into function.
480         * infrun.c (handle_inferior_event): Refetch the current frame
481         after handling what.main_action, in case that pointer became
482         dangling.
483
484 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
485
486         Fix build failure of solaris-hosted cross debuggers.
487         * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
488
489 2010-01-09  Daniel Gutson  <dgutson@codesourcery.com>
490
491         Fix build failure on sparc-solaris.
492         * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
493
494 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
495
496         Move some symfile code into subroutines.
497         * symfile.h (relative_addr_info_to_section_offsets)
498         (addr_info_make_relative): New prototypes.
499         * symfile.c (default_symfile_offsets): Move a part to ...
500         (relative_addr_info_to_section_offsets): ... this new function.
501         (default_symfile_offsets): Call it.
502         (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
503         this part to ...
504         (addr_info_make_relative): ... this new function.
505
506 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
507
508         Add from_tty to solib_create_inferior_hook.
509         * infcmd.c (post_create_inferior): Move solib_add after
510         solib_create_inferior_hook.  Pass from_tty to
511         solib_create_inferior_hook.  Call solib_add and SOLIB_ADD with
512         0 from_tty and comment why.
513         * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
514         * linux-nat.c (linux_child_follow_fork): Likewise.
515         * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
516         * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
517         from_tty.
518         * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
519         * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
520         * solib-null.c (null_solib_create_inferior_hook): Likewise.
521         * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
522         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
523         * solib-som.c (som_solib_create_inferior_hook): Likewise.
524         * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
525         Pass it to svr4_so_ops.solib_create_inferior_hook.
526         * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
527         from_tty.
528         * solib-svr4.c (enable_break): New parameter from_tty.  Pass it to
529         solib_add.
530         (svr4_solib_create_inferior_hook): New parameter from_tty.  Pass it to
531         enable_break.
532         * solib-target.c (solib_target_solib_create_inferior_hook): New
533         parameter from_tty.
534         * solib.c (solib_create_inferior_hook): New parameter from_tty.  Pass
535         it to ops->solib_create_inferior_hook.
536         (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
537         Move solib_add after solib_create_inferior_hook, call it now with
538         from_tty as 0.  New comment there.
539         * solib.h (solib_create_inferior_hook): New parameter from_tty.
540         * solist.h (struct target_so_ops <solib_create_inferior_hook>):
541         Likewise.
542
543 2010-01-08  Vladimir Prus  <vladimir@codesourcery.com>
544
545         Fix multiexec race.
546         * infrun.c (handle_inferior_event): Use get_thread_regcache
547         with events ptid, not get_current_regcache.
548
549 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
550
551         GDB crash with empty executable name (MinGW).
552         * source.c (openp): Add assert that parameter string is not NULL.
553         if parameter string is an empty string, then return with a failure
554         immediately.
555
556 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
557
558         Get rid of support for VAX Floats.
559         * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
560         (ada_vax_float_print_function): Delete.
561         * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
562         (ada_vax_float_print_function): Delete.
563         * ada-typeprint.c (print_vax_floating_point_type): Delete.
564         (ada_print_type): Remove support for VAX floats.
565         * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
566
567 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
568
569         * stabsread.c (read_args): Handle zero arguments.
570
571 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
572
573         Cannot find in-tree libiconv.a after reconfigure.
574         * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
575         that we can use, then cache the path to this archive.
576         * configure: Regenerate.
577
578 2010-01-07  Stan Shebs  <stan@codesourcery.com>
579
580         Make tracepoint operations go through target vector.
581         * target.h (enum trace_find_type): New enum.
582         (struct target_ops): New fields to_trace_init,
583         to_download_tracepoint, to_download_trace_state_variable,
584         to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
585         to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
586         to_set_disconnected_tracing.
587         (target_trace_init): New macro.
588         (target_download_tracepoint): New macro.
589         (target_download_trace_state_variable): New macro.
590         (target_trace_start): New macro.
591         (target_trace_set_readonly_regions): New macro.
592         (target_get_trace_status): New macro.
593         (target_trace_stop): New macro.
594         (target_trace_find): New macro.
595         (target_get_trace_state_variable_value): New macro.
596         (target_set_disconnected_tracing): New macro.
597         * target.c (update_current_target): Inherit and set defaults for
598         tracepoint operations.
599         * tracepoint.c (default_collect): Make globally visible.
600         (target_is_remote): Remove, along with all calls.
601         (tvariables_info): Call target_get_trace_state_variable_value.
602         (remote_set_transparent_ranges): Remove.
603         (trace_start_command): Call target_trace_init,
604         target_download_tracepoint, etc.
605         (download_tracepoint): Remove.
606         (trace_stop_command): Simplify.
607         (stop_tracing): Call target_trace_stop.
608         (get_trace_status): Call target_get_trace_status.
609         (trace_status_command): Add case for targets that cannot trace.
610         (finish_tfind_command): Change to take numerical arguments, call
611         target_trace_find.
612         (trace_find_command): Update call to finish_tfind_command.
613         (trace_find_pc_command): Ditto.
614         (trace_find_tracepoint_command): Ditto.
615         (trace_find_line_command): Ditto.
616         (trace_find_range_command): Ditto.
617         (trace_find_outside_command): Ditto.
618         (set_disconnected_tracing_value): Call
619         target_set_disconnected_tracing.
620         * remote.c: Add protocol encoding bits from tracepoint.c.
621         (trace_error): Move from tracepoint.c.
622         (remote_get_noisy_reply): Ditto.
623         (free_actions_list_cleanup_wrapper): Ditto.
624         (free_actions_list): Ditto.
625         (remote_trace_init): New function.
626         (remote_download_tracepoint): New function.
627         (remote_download_trace_state_variable): New function.
628         (remote_trace_set_readonly_regions): New function.
629         (remote_trace_start): New function.
630         (remote_get_trace_status): New function.
631         (remote_trace_stop): New function.
632         (remote_trace_find): New function.
633         (remote_download_trace_state_variable): New function.
634         (remote_set_disconnected_tracing): New function.
635         (init_remote_ops): Add tracepoint operations.
636
637         * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
638
639 2010-01-07  Tristan Gingold  <gingold@adacore.com>
640
641         * symfile.c (build_section_addr_info_from_objfile): New function.
642         (symbol_file_add_separate): Don't use offsets from objfile but
643         built an addr info.
644
645 2010-01-06  Stan Shebs  <stan@codesourcery.com>
646
647         Support disconnected tracing.
648         * infcmd.c (detach_command): Ask whether to stop tracing.
649         * cli/cli-cmds.c (quit_command): Ditto.
650         * breakpoint.h (struct breakpoint): New field number_on_target.
651         * breakpoint.c (create_tracepoint_from_upload): New function.
652         (get_tracepoint_by_number_on_target): New function.
653         * remote.c (struct remote): New field disconnected_tracing.
654         (remote_disconnected_tracing_feature): New function.
655         (remote_protocol_features): Add DisconnectedTracing.
656         (struct uploaded_tp): New struct.
657         (uploaded_tps): New global.
658         (get_uploaded_tp): New function.
659         (find_matching_tracepoint): New function.
660         (remote_get_tracing_state): New function.
661         (remote_start_remote): Call it.
662         * tracepoint.c (disconnected_tracing): New global.
663         (trace_start_command): Initialize number_on_target.
664         (stop_tracing): New function, split out from...
665         (trace_stop_command): Call stop_tracing.
666         (get_trace_status): New function, split out from...
667         (trace_status_command): Call get_trace_status, add info on
668         disconnection behavior.
669         (disconnect_or_stop_tracing): New function.
670         (finish_tfind_command): Translate from number on target.
671         (trace_find_tracepoint_command): Translate to number on target.
672         (send_disconnected_tracing_value): New function.
673         (set_disconnected_tracing): New function.
674         (_initialize_tracepoint): Add disconnected-tracing variable.
675         * NEWS: Mention disconnected tracing.
676
677 2010-01-06  Tristan Gingold  <gingold@adacore.com>
678
679         * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
680         parameter to main_objfile.  Iterate on all separate debug objfiles.
681         * symfile.h (symbol_file_add_separate)
682         (find_separate_debug_file_by_debuglink): Remove parameter names.
683         * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
684         (reread_symbols): Use free_objfile_separate_debug.
685         * objfiles.h (struct objfile): Add separate_debug_objfile_link.
686         Adjust comment.
687         (objfile_separate_debug_iterate, add_separate_debug_objfile)
688         (free_objfile_separate_debug): New prototypes.
689         * objfiles.c (objfile_separate_debug_iterate): New function.
690         (add_separate_debug_objfile, free_objfile_separate_debug): New
691         functions.
692         (free_objfile): Use free_objfile_separate_debug.  Adjust for
693         multiple separate debug objfile.
694         (objfile_has_symbols): Adjust comment.  Iterate on all separate
695         debug objfiles.
696         * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
697         debug objfile.
698         (lookup_minimal_symbol_text): Ditto.
699         (lookup_minimal_symbol_by_pc_name): Ditto.
700         (lookup_minimal_symbol_solib_trampoline): Ditto.
701         (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
702         debug objfiles.
703
704 2010-01-05  Stan Shebs  <stan@codesourcery.com>
705
706         Add fast tracepoints.
707         * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
708         * arch-utils.c (default_fast_tracepoint_valid_at): New function.
709         * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
710         * breakpoint.c (tracepoint_type): New function.
711         (ALL_TRACEPOINTS): Use it.
712         (should_be_inserted): Ditto.
713         (bpstat_check_location): Ditto.
714         (print_one_breakpoint_location): Ditto.
715         (user_settable_breakpoint): Ditto.
716         (set_breakpoint_location_function): Ditto.
717         (disable_breakpoints_in_shlibs): Ditto.
718         (delete_trace_command): Ditto.
719         (print_it_typical): Add bp_fast_tracepoint case.
720         (bpstat_what): Ditto.
721         (print_one_breakpoint_location): Ditto.
722         (allocate_bp_location): Ditto.
723         (mention): Ditto.
724         (breakpoint_re_set_one): Ditto.
725         (disable_command): Ditto.
726         (enable_command): Ditto.
727         (check_fast_tracepoint_sals): New function.
728         (break_command_really): Call it.
729         (ftrace_command): New function.
730         (_initialize_breakpoint): Add ftrace command.
731         * gdbarch.sh (fast_tracepoint_valid_at): New.
732         * gdbarch.h, gdbarch.c: Regenerate.
733         * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
734         (i386_gdbarch_init): Use it.
735         * remote.c (struct remote_state): New field fast_tracepoints.
736         (PACKET_FastTracepoints): New packet config type.
737         (remote_fast_tracepoint_feature): New function.
738         (remote_protocol_features): Add FastTracepoints.
739         (remote_supports_fast_tracepoints): New function.
740         (_initialize_remote): Add FastTracepoints.
741         * tracepoint.c (download_tracepoint): Add fast tracepoint option.
742         * NEWS: Mention fast tracepoints.
743
744 2010-01-06  Joel Brobecker  <brobecker@adacore.com>
745
746         * gdb-gdb.py: New file.
747
748 2010-01-05  Michael Snyder  <msnyder@vmware.com>
749
750         * infrun.c (handle_inferior_event): Fix typo in comment.
751
752 2010-01-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
753
754         * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
755
756 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
757
758         * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
759         and s390x-linux64.
760         (s390-linux32-expedite): Define.
761         (s390-linux64-expedite): Define.
762         (s390x-linux64-expedite): Define.
763         * features/s390-acr.xml: New file.
764         * features/s390-fpr.xml: New file.
765         * features/s390-core32.xml: New file.
766         * features/s390-core64.xml: New file.
767         * features/s390x-core64.xml: New file.
768         * features/s390-linux32.xml: New file.
769         * features/s390-linux64.xml: New file.
770         * features/s390x-linux64.xml: New file.
771         * features/s390-linux32.c: New generated file.
772         * features/s390-linux64.c: New generated file.
773         * features/s390x-linux64.c: New generated file.
774
775         * regformats/s390-linux32.dat: New generated file.
776         * regformats/s390-linux64.dat: New generated file.
777         * regformats/s390x-linux64.dat: New generated file.
778         * regformats/reg-s390.dat: Remove.
779         * regformats/reg-s390x.dat: Remove.
780
781         * s390-nat.c: Include "auxv.h" and <elf.h>.
782         (HWCAP_S390_HIGH_GPRS): Define if undefined.
783         (s390_target_wordsize): New function.
784         (s390_auxv_parse): Likewise.
785         (s390_get_hwcap): Likewise.
786         (s390_read_description): Likewise.
787         (_initialize_s390_nat): Install s390_auxv_parse and
788         s390_read_description.
789
790         * s390-tdep.c: Include "features/s390-linux32.c",
791         "features/s390-linux64.c", and "features/s390x-linux64.c".
792         (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
793         (s390_register_call_saved): New function.
794         (s390_register_name): Remove.
795         (s390_register_type): Remove.
796         (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
797         (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
798         (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
799         (s390_pseudo_register_name): New function.
800         (s390_pseudo_register_type): New function.
801         (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
802         Handle full GPR pesudos and varying pseudo register numbers.
803         (s390_pseudo_register_write): Likewise
804         (s390x_pseudo_register_read): Remove.
805         (s390x_pseudo_register_write): Likewise.
806         (s390_register_group): Remove.
807         (s390_pseudo_register_group): New function.
808         (s390_regmap_gregset): Add GPR upper halves.
809         (s390x_regmap_gregset): Likewise.
810         (s390_regmap_fpregset): Likewise.
811         (s390_regmap_upper): New global variable.
812         (s390_upper_regset): New global variable.
813         (s390_upper_regset_sections): New global variable.
814         (s390_regset_from_core_section): Handle GPR upper halves.
815         (s390_core_read_description): New function.
816         (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
817         register information.  Handle varying pseudo register numbers.
818         (s390_backchain_frame_unwind_cache): Likewise.
819         (s390_frame_prev_register): Unwind full GPRs to show lower halves.
820         (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
821         (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
822         PC and CC pseudos.  Unwind upper halves and full GPRs as appropriate.
823         Handle varying pseudo register numbers.
824         (s390_unwind_pc): Handle varying pseudo register numbers.
825         (s390_dwarf2_prev_register): New function.
826         (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
827         register information.  Handle varying pseudo register numbers.
828         Install s390_dwarf2_prev_register to unwind full GPRs.
829         (s390_gdbarch_init): Handle target descriptions.  Assign varying
830         pseudo register numbers.  Install s390_adjust_frame_regnum.
831         (_initialize_s390_tdep): Initialize target descriptions.
832
833         * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
834         (S390_NUM_REGS): Redefine to include upper half registers.
835         (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
836         (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
837         (tdesc_s390_linux32): Add declaration.
838         (tdesc_s390_linux64): Likewise.
839         (tdesc_s390x_linux64): Likewise.
840
841 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
842
843         * regset.h (struct core_regset_section): Add HUMAN_NAME.
844         * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
845         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
846         (ppc_linux_vmx_regset_sections): Likewise.
847         (ppc_linux_fp_regset_sections): Likewise.
848
849         * corelow.c (get_core_register_section): Constify arguments.
850         (get_core_registers): Use gdbarch_core_regset_sections instead
851         of hard-coded platform-specific register section names.
852
853 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
854
855         * dwarf2loc.c (read_pieced_value): If a piece occupies part of
856         a register, assume the least-significant part is used.
857         (write_pieced_value): Likewise.
858
859 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
860
861         * printcmd.c: Include "arch-utils.h".
862         (do_one_display): Re-parse expression if current architecture changed.
863
864 2010-01-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
865             Joel Brobecker  <brobecker@adacore.com>
866
867         * gdbtypes.c (check_typedef): New comment on type length.
868         * value.c (allocate_value_lazy): Remove the unused atype variable.  New
869         comment on type length.
870         (value_primitive_field): Keep the original TYPE value, new comment.
871
872 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
873
874         * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
875         p_start.  Change != comparisons to > and < comparisons.
876
877 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
878
879         * cli/cli-script.c (process_next_line): Check P2 overrun.
880
881 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
882
883         Update the copyright hearder to add year 2010 for most GDB files.
884
885 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
886
887         Fix build failure in inf-ptrace.c.
888         * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
889
890 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
891
892         * top.c (print_gdb_version): Update copyright year.
893
894 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
895
896         Fix break *FUN'address thread NUM.
897         * ada-lex.l (task): Expand rule to also match the thread keyword.
898
899 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
900
901         Fix break *FUN'address task NUM.
902         * ada-lex.l (task): New rule.
903         * ada-lang.c (valid_task_id): Make sure the Ada task list has
904         been built before using it.
905
906 For older changes see ChangeLog-2009.
907 \f
908 Local Variables:
909 mode: change-log
910 left-margin: 8
911 fill-column: 74
912 version-control: never
913 coding: utf-8
914 End: