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