Breakpoint in shared library does not work on mips-irix.
[platform/upstream/binutils.git] / gdb / ChangeLog
1 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
2
3         Breakpoint in shared library does not work on mips-irix.
4         * procfs.c: #include "observer.h".
5         (procfs_inferior_created): New function, moving here the code
6         which unsets the syssgi syscall-exit notifications.
7         (procfs_create_inferior): Remove the code which unsets the syssgi
8         syscall-exit notifications. It is too early to do this here.
9         (_initialize_procfs): Attach the procfs_inferior_created observer.
10
11 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
12
13         Wrong return convention for arrays (mips-irix).
14         * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
15         128 bits or smaller are returned the same way as structs
16         and unions of the the same size.
17
18 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
19
20         Cannot set the PC on mips-irix.
21         * irix5-nat.c (fill_gregset): Check regno against the raw PC
22         register number, no the cooked one.
23
24 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
25
26         Error while loading core file on mips-irix.
27         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
28         if debugging from a core file.
29
30 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
31
32         GDB hangs when attaching to process on mips-irix.
33         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
34         attaching to a process.
35
36 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
37
38         Use the correct breakpoint instruction on mips-irix.
39         * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
40         containing the correct breakpoint instruction to use on mips-irix.
41         Use it when the osabi is GDB_OSABI_IRIX.
42
43 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
44
45         -Wunused warning in procfs.c (mips-irix only).
46         * procfs.c (gdb_praddset, gdb_prdelset): New macros.  Use them
47         throughout instead of using praddset and prdelset respectively.
48
49 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
50
51         GDB crash while stepping into function.
52         * infrun.c (handle_inferior_event): Refetch the current frame
53         after handling what.main_action, in case that pointer became
54         dangling.
55
56 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
57
58         Fix build failure of solaris-hosted cross debuggers.
59         * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
60
61 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
62
63         Fix build failure on sparc-solaris.
64         * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
65
66 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
67
68         Move some symfile code into subroutines.
69         * symfile.h (relative_addr_info_to_section_offsets)
70         (addr_info_make_relative): New prototypes.
71         * symfile.c (default_symfile_offsets): Move a part to ...
72         (relative_addr_info_to_section_offsets): ... this new function.
73         (default_symfile_offsets): Call it.
74         (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
75         this part to ...
76         (addr_info_make_relative): ... this new function.
77
78 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
79
80         Add from_tty to solib_create_inferior_hook.
81         * infcmd.c (post_create_inferior): Move solib_add after
82         solib_create_inferior_hook.  Pass from_tty to
83         solib_create_inferior_hook.  Call solib_add and SOLIB_ADD with
84         0 from_tty and comment why.
85         * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
86         * linux-nat.c (linux_child_follow_fork): Likewise.
87         * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
88         * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
89         from_tty.
90         * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
91         * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
92         * solib-null.c (null_solib_create_inferior_hook): Likewise.
93         * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
94         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
95         * solib-som.c (som_solib_create_inferior_hook): Likewise.
96         * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
97         Pass it to svr4_so_ops.solib_create_inferior_hook.
98         * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
99         from_tty.
100         * solib-svr4.c (enable_break): New parameter from_tty.  Pass it to
101         solib_add.
102         (svr4_solib_create_inferior_hook): New parameter from_tty.  Pass it to
103         enable_break.
104         * solib-target.c (solib_target_solib_create_inferior_hook): New
105         parameter from_tty.
106         * solib.c (solib_create_inferior_hook): New parameter from_tty.  Pass
107         it to ops->solib_create_inferior_hook.
108         (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
109         Move solib_add after solib_create_inferior_hook, call it now with
110         from_tty as 0.  New comment there.
111         * solib.h (solib_create_inferior_hook): New parameter from_tty.
112         * solist.h (struct target_so_ops <solib_create_inferior_hook>):
113         Likewise.
114
115 2010-01-08  Vladimir Prus  <vladimir@codesourcery.com>
116
117         Fix multiexec race.
118         * infrun.c (handle_inferior_event): Use get_thread_regcache
119         with events ptid, not get_current_regcache.
120
121 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
122
123         GDB crash with empty executable name (MinGW).
124         * source.c (openp): Add assert that parameter string is not NULL.
125         if parameter string is an empty string, then return with a failure
126         immediately.
127
128 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
129
130         Get rid of support for VAX Floats.
131         * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
132         (ada_vax_float_print_function): Delete.
133         * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
134         (ada_vax_float_print_function): Delete.
135         * ada-typeprint.c (print_vax_floating_point_type): Delete.
136         (ada_print_type): Remove support for VAX floats.
137         * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
138
139 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
140
141         * stabsread.c (read_args): Handle zero arguments.
142
143 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
144
145         Cannot find in-tree libiconv.a after reconfigure.
146         * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
147         that we can use, then cache the path to this archive.
148         * configure: Regenerate.
149
150 2010-01-07  Stan Shebs  <stan@codesourcery.com>
151
152         Make tracepoint operations go through target vector.
153         * target.h (enum trace_find_type): New enum.
154         (struct target_ops): New fields to_trace_init,
155         to_download_tracepoint, to_download_trace_state_variable,
156         to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
157         to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
158         to_set_disconnected_tracing.
159         (target_trace_init): New macro.
160         (target_download_tracepoint): New macro.
161         (target_download_trace_state_variable): New macro.
162         (target_trace_start): New macro.
163         (target_trace_set_readonly_regions): New macro.
164         (target_get_trace_status): New macro.
165         (target_trace_stop): New macro.
166         (target_trace_find): New macro.
167         (target_get_trace_state_variable_value): New macro.
168         (target_set_disconnected_tracing): New macro.
169         * target.c (update_current_target): Inherit and set defaults for
170         tracepoint operations.
171         * tracepoint.c (default_collect): Make globally visible.
172         (target_is_remote): Remove, along with all calls.
173         (tvariables_info): Call target_get_trace_state_variable_value.
174         (remote_set_transparent_ranges): Remove.
175         (trace_start_command): Call target_trace_init,
176         target_download_tracepoint, etc.
177         (download_tracepoint): Remove.
178         (trace_stop_command): Simplify.
179         (stop_tracing): Call target_trace_stop.
180         (get_trace_status): Call target_get_trace_status.
181         (trace_status_command): Add case for targets that cannot trace.
182         (finish_tfind_command): Change to take numerical arguments, call
183         target_trace_find.
184         (trace_find_command): Update call to finish_tfind_command.
185         (trace_find_pc_command): Ditto.
186         (trace_find_tracepoint_command): Ditto.
187         (trace_find_line_command): Ditto.
188         (trace_find_range_command): Ditto.
189         (trace_find_outside_command): Ditto.
190         (set_disconnected_tracing_value): Call
191         target_set_disconnected_tracing.
192         * remote.c: Add protocol encoding bits from tracepoint.c.
193         (trace_error): Move from tracepoint.c.
194         (remote_get_noisy_reply): Ditto.
195         (free_actions_list_cleanup_wrapper): Ditto.
196         (free_actions_list): Ditto.
197         (remote_trace_init): New function.
198         (remote_download_tracepoint): New function.
199         (remote_download_trace_state_variable): New function.
200         (remote_trace_set_readonly_regions): New function.
201         (remote_trace_start): New function.
202         (remote_get_trace_status): New function.
203         (remote_trace_stop): New function.
204         (remote_trace_find): New function.
205         (remote_download_trace_state_variable): New function.
206         (remote_set_disconnected_tracing): New function.
207         (init_remote_ops): Add tracepoint operations.
208
209         * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
210
211 2010-01-07  Tristan Gingold  <gingold@adacore.com>
212
213         * symfile.c (build_section_addr_info_from_objfile): New function.
214         (symbol_file_add_separate): Don't use offsets from objfile but
215         built an addr info.
216
217 2010-01-06  Stan Shebs  <stan@codesourcery.com>
218
219         Support disconnected tracing.
220         * infcmd.c (detach_command): Ask whether to stop tracing.
221         * cli/cli-cmds.c (quit_command): Ditto.
222         * breakpoint.h (struct breakpoint): New field number_on_target.
223         * breakpoint.c (create_tracepoint_from_upload): New function.
224         (get_tracepoint_by_number_on_target): New function.
225         * remote.c (struct remote): New field disconnected_tracing.
226         (remote_disconnected_tracing_feature): New function.
227         (remote_protocol_features): Add DisconnectedTracing.
228         (struct uploaded_tp): New struct.
229         (uploaded_tps): New global.
230         (get_uploaded_tp): New function.
231         (find_matching_tracepoint): New function.
232         (remote_get_tracing_state): New function.
233         (remote_start_remote): Call it.
234         * tracepoint.c (disconnected_tracing): New global.
235         (trace_start_command): Initialize number_on_target.
236         (stop_tracing): New function, split out from...
237         (trace_stop_command): Call stop_tracing.
238         (get_trace_status): New function, split out from...
239         (trace_status_command): Call get_trace_status, add info on
240         disconnection behavior.
241         (disconnect_or_stop_tracing): New function.
242         (finish_tfind_command): Translate from number on target.
243         (trace_find_tracepoint_command): Translate to number on target.
244         (send_disconnected_tracing_value): New function.
245         (set_disconnected_tracing): New function.
246         (_initialize_tracepoint): Add disconnected-tracing variable.
247         * NEWS: Mention disconnected tracing.
248
249 2010-01-06  Tristan Gingold  <gingold@adacore.com>
250
251         * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
252         parameter to main_objfile.  Iterate on all separate debug objfiles.
253         * symfile.h (symbol_file_add_separate)
254         (find_separate_debug_file_by_debuglink): Remove parameter names.
255         * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
256         (reread_symbols): Use free_objfile_separate_debug.
257         * objfiles.h (struct objfile): Add separate_debug_objfile_link.
258         Adjust comment.
259         (objfile_separate_debug_iterate, add_separate_debug_objfile)
260         (free_objfile_separate_debug): New prototypes.
261         * objfiles.c (objfile_separate_debug_iterate): New function.
262         (add_separate_debug_objfile, free_objfile_separate_debug): New
263         functions.
264         (free_objfile): Use free_objfile_separate_debug.  Adjust for
265         multiple separate debug objfile.
266         (objfile_has_symbols): Adjust comment.  Iterate on all separate
267         debug objfiles.
268         * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
269         debug objfile.
270         (lookup_minimal_symbol_text): Ditto.
271         (lookup_minimal_symbol_by_pc_name): Ditto.
272         (lookup_minimal_symbol_solib_trampoline): Ditto.
273         (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
274         debug objfiles.
275
276 2010-01-05  Stan Shebs  <stan@codesourcery.com>
277
278         Add fast tracepoints.
279         * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
280         * arch-utils.c (default_fast_tracepoint_valid_at): New function.
281         * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
282         * breakpoint.c (tracepoint_type): New function.
283         (ALL_TRACEPOINTS): Use it.
284         (should_be_inserted): Ditto.
285         (bpstat_check_location): Ditto.
286         (print_one_breakpoint_location): Ditto.
287         (user_settable_breakpoint): Ditto.
288         (set_breakpoint_location_function): Ditto.
289         (disable_breakpoints_in_shlibs): Ditto.
290         (delete_trace_command): Ditto.
291         (print_it_typical): Add bp_fast_tracepoint case.
292         (bpstat_what): Ditto.
293         (print_one_breakpoint_location): Ditto.
294         (allocate_bp_location): Ditto.
295         (mention): Ditto.
296         (breakpoint_re_set_one): Ditto.
297         (disable_command): Ditto.
298         (enable_command): Ditto.
299         (check_fast_tracepoint_sals): New function.
300         (break_command_really): Call it.
301         (ftrace_command): New function.
302         (_initialize_breakpoint): Add ftrace command.
303         * gdbarch.sh (fast_tracepoint_valid_at): New.
304         * gdbarch.h, gdbarch.c: Regenerate.
305         * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
306         (i386_gdbarch_init): Use it.
307         * remote.c (struct remote_state): New field fast_tracepoints.
308         (PACKET_FastTracepoints): New packet config type.
309         (remote_fast_tracepoint_feature): New function.
310         (remote_protocol_features): Add FastTracepoints.
311         (remote_supports_fast_tracepoints): New function.
312         (_initialize_remote): Add FastTracepoints.
313         * tracepoint.c (download_tracepoint): Add fast tracepoint option.
314         * NEWS: Mention fast tracepoints.
315
316 2010-01-06  Joel Brobecker  <brobecker@adacore.com>
317
318         * gdb-gdb.py: New file.
319
320 2010-01-05  Michael Snyder  <msnyder@vmware.com>
321
322         * infrun.c (handle_inferior_event): Fix typo in comment.
323
324 2010-01-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
325
326         * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
327
328 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
329
330         * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
331         and s390x-linux64.
332         (s390-linux32-expedite): Define.
333         (s390-linux64-expedite): Define.
334         (s390x-linux64-expedite): Define.
335         * features/s390-acr.xml: New file.
336         * features/s390-fpr.xml: New file.
337         * features/s390-core32.xml: New file.
338         * features/s390-core64.xml: New file.
339         * features/s390x-core64.xml: New file.
340         * features/s390-linux32.xml: New file.
341         * features/s390-linux64.xml: New file.
342         * features/s390x-linux64.xml: New file.
343         * features/s390-linux32.c: New generated file.
344         * features/s390-linux64.c: New generated file.
345         * features/s390x-linux64.c: New generated file.
346
347         * regformats/s390-linux32.dat: New generated file.
348         * regformats/s390-linux64.dat: New generated file.
349         * regformats/s390x-linux64.dat: New generated file.
350         * regformats/reg-s390.dat: Remove.
351         * regformats/reg-s390x.dat: Remove.
352
353         * s390-nat.c: Include "auxv.h" and <elf.h>.
354         (HWCAP_S390_HIGH_GPRS): Define if undefined.
355         (s390_target_wordsize): New function.
356         (s390_auxv_parse): Likewise.
357         (s390_get_hwcap): Likewise.
358         (s390_read_description): Likewise.
359         (_initialize_s390_nat): Install s390_auxv_parse and
360         s390_read_description.
361
362         * s390-tdep.c: Include "features/s390-linux32.c",
363         "features/s390-linux64.c", and "features/s390x-linux64.c".
364         (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
365         (s390_register_call_saved): New function.
366         (s390_register_name): Remove.
367         (s390_register_type): Remove.
368         (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
369         (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
370         (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
371         (s390_pseudo_register_name): New function.
372         (s390_pseudo_register_type): New function.
373         (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
374         Handle full GPR pesudos and varying pseudo register numbers.
375         (s390_pseudo_register_write): Likewise
376         (s390x_pseudo_register_read): Remove.
377         (s390x_pseudo_register_write): Likewise.
378         (s390_register_group): Remove.
379         (s390_pseudo_register_group): New function.
380         (s390_regmap_gregset): Add GPR upper halves.
381         (s390x_regmap_gregset): Likewise.
382         (s390_regmap_fpregset): Likewise.
383         (s390_regmap_upper): New global variable.
384         (s390_upper_regset): New global variable.
385         (s390_upper_regset_sections): New global variable.
386         (s390_regset_from_core_section): Handle GPR upper halves.
387         (s390_core_read_description): New function.
388         (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
389         register information.  Handle varying pseudo register numbers.
390         (s390_backchain_frame_unwind_cache): Likewise.
391         (s390_frame_prev_register): Unwind full GPRs to show lower halves.
392         (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
393         (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
394         PC and CC pseudos.  Unwind upper halves and full GPRs as appropriate.
395         Handle varying pseudo register numbers.
396         (s390_unwind_pc): Handle varying pseudo register numbers.
397         (s390_dwarf2_prev_register): New function.
398         (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
399         register information.  Handle varying pseudo register numbers.
400         Install s390_dwarf2_prev_register to unwind full GPRs.
401         (s390_gdbarch_init): Handle target descriptions.  Assign varying
402         pseudo register numbers.  Install s390_adjust_frame_regnum.
403         (_initialize_s390_tdep): Initialize target descriptions.
404
405         * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
406         (S390_NUM_REGS): Redefine to include upper half registers.
407         (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
408         (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
409         (tdesc_s390_linux32): Add declaration.
410         (tdesc_s390_linux64): Likewise.
411         (tdesc_s390x_linux64): Likewise.
412
413 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
414
415         * regset.h (struct core_regset_section): Add HUMAN_NAME.
416         * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
417         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
418         (ppc_linux_vmx_regset_sections): Likewise.
419         (ppc_linux_fp_regset_sections): Likewise.
420
421         * corelow.c (get_core_register_section): Constify arguments.
422         (get_core_registers): Use gdbarch_core_regset_sections instead
423         of hard-coded platform-specific register section names.
424
425 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
426
427         * dwarf2loc.c (read_pieced_value): If a piece occupies part of
428         a register, assume the least-significant part is used.
429         (write_pieced_value): Likewise.
430
431 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
432
433         * printcmd.c: Include "arch-utils.h".
434         (do_one_display): Re-parse expression if current architecture changed.
435
436 2010-01-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
437             Joel Brobecker  <brobecker@adacore.com>
438
439         * gdbtypes.c (check_typedef): New comment on type length.
440         * value.c (allocate_value_lazy): Remove the unused atype variable.  New
441         comment on type length.
442         (value_primitive_field): Keep the original TYPE value, new comment.
443
444 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
445
446         * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
447         p_start.  Change != comparisons to > and < comparisons.
448
449 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
450
451         * cli/cli-script.c (process_next_line): Check P2 overrun.
452
453 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
454
455         Update the copyright hearder to add year 2010 for most GDB files.
456
457 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
458
459         Fix build failure in inf-ptrace.c.
460         * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
461
462 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
463
464         * top.c (print_gdb_version): Update copyright year.
465
466 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
467
468         Fix break *FUN'address thread NUM.
469         * ada-lex.l (task): Expand rule to also match the thread keyword.
470
471 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
472
473         Fix break *FUN'address task NUM.
474         * ada-lex.l (task): New rule.
475         * ada-lang.c (valid_task_id): Make sure the Ada task list has
476         been built before using it.
477
478 For older changes see ChangeLog-2009.
479 \f
480 Local Variables:
481 mode: change-log
482 left-margin: 8
483 fill-column: 74
484 version-control: never
485 coding: utf-8
486 End: