* gdbtypes.c (append_composite_type_field_raw): New.
[external/binutils.git] / gdb / ChangeLog
1 2010-03-01  Daniel Jacobowitz  <dan@codesourcery.com>
2
3         * gdbtypes.c (append_composite_type_field_raw): New.
4         (append_composite_type_field_aligned): Use the new function.
5         * gdbtypes.h (append_composite_type_field_raw): Declare.
6         * target-descriptions.c (struct tdesc_type_field): Add start and end.
7         (struct tdesc_type_flag): New type.
8         (struct tdesc_type): Add TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS to
9         kind.  Add size to u.u.  Add u.f for flags.
10         (tdesc_gdb_type): Handle TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS.
11         (tdesc_free_type): Likewise.
12         (tdesc_create_struct, tdesc_set_struct_size, tdesc_create_flags): New.
13         (tdesc_add_field): Handle TDESC_TYPE_STRUCT.
14         (tdesc_add_bitfield, tdesc_add_flag): New.
15         * target-descriptions.h (tdesc_create_struct, tdesc_set_struct_size)
16         (tdesc_create_flags, tdesc_add_bitfield, tdesc_add_flag): Declare.
17         * xml-tdesc.c (struct tdesc_parsing_data): Rename current_union to
18         current_type.  Add current_type_size and current_type_is_flags.
19         (tdesc_start_union): Clear the new fields.
20         (tdesc_start_struct, tdesc_start_flags): New.
21         (tdesc_start_field): Handle struct fields, including bitfields.
22         (field_attributes): Make type optional.  Add start and end.
23         (union_children): Rename to struct_union_children.
24         (union_attributes): Rename to struct_union_attributes.  Add optional
25         size.
26         (flags_attributes): New.
27         (feature_children): Add struct and flags.
28         * features/gdb-target.dtd: Add flags and struct to features.
29         Make field type optional.  Add field start and end.
30
31 2010-03-01  H.J. Lu  <hongjiu.lu@intel.com>
32
33         * amd64-linux-nat.c (AMD64_LINUX_USER64_CS): New.
34         (amd64_linux_read_description): Likewise.
35         (_initialize_amd64_linux_nat): Set to_read_description to
36         amd64_linux_read_description.
37
38         * amd64-linux-tdep.c: Include "features/i386/amd64-linux.c".
39         (amd64_linux_register_name): Removed.
40         (amd64_linux_register_type): Likewise.
41         (amd64_linux_core_read_description): New.
42         (amd64_linux_init_abi): Set target description to
43         tdesc_amd64_linux if needed.  Support orig_rax in target
44         description.  Don't call set_gdbarch_register_name nor
45         set_gdbarch_register_type.  Call
46         set_gdbarch_core_read_description.
47         (_initialize_amd64_linux_tdep): Call
48         initialize_tdesc_amd64_linux.
49
50         * amd64-linux-tdep.h (tdesc_amd64_linux): New.
51
52         * amd64-tdep.c:  Include "features/i386/amd64.c".
53         (amd64_register_names): Removed.
54         (amd64_register_name): Likewise.
55         (amd64_register_type): Likewise.
56         (amd64_init_abi):  Set num_core_regs and register_names.  Set
57         target description to tdesc_amd64 if needed.  Don't call 
58         set_gdbarch_register_name nor set_gdbarch_register_type.
59         (_initialize_amd64_tdep): New.
60
61         * i386-linux-nat.c (i386_linux_read_description): New.
62         (_initialize_i386_linux_nat): Set to_read_description to
63         i386_linux_read_description.
64
65         * i386-linux-tdep.c: Include "features/i386/i386-linux.c".
66         (i386_linux_register_name): Removed.
67         (i386_linux_core_read_description): New.
68         (i386_linux_read_description): Likewise.
69         (i386_linux_init_abi): Don't call set_gdbarch_register_name.
70         Set target description to tdesc_i386_linux if needed.  Support
71         orig_eax.  Set register_reggroup_p.  Call
72         set_gdbarch_core_read_description.
73         (_initialize_i386_linux_tdep): Call initialize_tdesc_i386_linux.
74
75         * i386-linux-tdep.h (tdesc_i386_linux): New.
76
77         * i386-nto-tdep.c (i386nto_regset_id): Replace I386_NUM_FREGS
78         with I387_NUM_REGS.
79
80         * i386-tdep.c: Include "features/i386/i386.c".
81         (i386_register_names): Make it const.
82         (i386_mmx_names): Likewise.
83         (i386_num_register_names): Removed.
84         (i386_register_name): Likewise.
85         (i386_eflags_type): Likewise.
86         (i386_mxcsr_type): Likewise.
87         (i386_sse_type): Likewise.
88         (i386_register_type): Likewise.
89         (i387_ext_type): Call tdesc_find_type instead of arch_float_type.
90         (i386_pseudo_register_name): New.
91         (i386_pseudo_register_type): Likewise.
92         (i386_mmx_type): Make it static.
93         (i386_gdbarch_init): Check arch.  Replace I386_NUM_FREGS with
94         I387_NUM_REGS.  Set num_core_regs and register_names.  Don't
95         call set_gdbarch_register_name nor set_gdbarch_register_type.
96         Set register_reggroup_p.  Set target description to tdesc_i386
97         if needed.  Call set_tdesc_pseudo_register_type,
98         set_tdesc_pseudo_register_name and tdesc_use_registers.
99         (_initialize_i386_tdep): Call initialize_tdesc_i386.
100         initialize_tdesc_x86_64.
101
102         * i386-tdep.h (gdbarch_tdep): Remove i386_eflags_type,
103         i386_mxcsr_type and i386_sse_type.  Add num_core_regs,
104         register_names, tdesc and register_reggroup_p.
105         (I386_NUM_FREGS): Removed.
106         (i386_eflags_type): Likewise.
107         (i386_mxcsr_type): Likewise.
108         (i386_mmx_type): Likewise.
109         (i386_sse_type): Likewise.
110         (i386_register_name): Likewise.
111         (i386_regnum): Add I386_MXCSR_REGNUM.
112         (I386_SSE_NUM_REGS): Defined with I386_MXCSR_REGNUM.
113
114         * i387-tdep.h (I387_NUM_REGS): New.
115
116         * regformats/i386/i386-linux.dat: Generated.
117         * regformats/i386/i386.dat: Likewise.
118         * regformats/i386/amd64-linux.dat: Likewise.
119         * regformats/i386/amd64.dat: Likewise.
120
121         * regformats/reg-i386-linux.dat: Removed.
122         * regformats/reg-i386.dat: Likewise.
123         * regformats/reg-x86-64-linux.dat: Likewise.
124         * regformats/reg-x86-64.dat: Likewise.
125
126 2010-03-01  Corinna Vinschen  <vinschen@redhat.com>
127
128         * remote-fileio.c (remote_fileio_func_rename): Use Cygwin 1.7
129         cygwin_conv_path API rather than the deprecated
130         cygwin_conv_to_full_posix_path.
131         * windows-nat.c:
132         (GetModuleFileNameExA): Undefine for Cygwin.
133         (GetModuleFileNameExW): Define for Cygwin.
134         (get_module_name): Change size of pathbuf to PATH_MAX for Cygwin.
135         Call GetModuleFileNameExW and convert path to POSIX using
136         cygwin_conv_path.
137         (windows_make_so): Always define p.  Drop unused variable m.
138         Don't use Win32 functions to check file existance, rather use
139         access on Cygwin.  Fetch system directory using GetSystemDirectoryW.
140         Use canonicalize_file_name to get full path.
141         (get_image_name): Use wcstombs, rather than WideCharToMultiByte
142         to convert Unicode pathname to multibyte on Cygwin.  Otherwise,
143         use correct target buffer size in call to WideCharToMultiByte.
144         (handle_load_dll): Change size of dll_buf to PATH_MAX for Cygwin.
145         (windows_pid_to_exec_file): Change size of path to PATH_MAX for Cygwin.
146         (windows_create_inferior): Convert all paths and arguments to wchar_t
147         and use CreateProcessW on Cygwin.
148         (_initialize_windows_nat): Disable DOS-style path warning on Cygwin.
149         (bad_GetModuleFileNameExA): Undefine for Cygwin.
150         (bad_GetModuleFileNameExW): Define for Cygwin.
151         (_initialize_loadable): Load GetModuleFileNameExW into
152         dyn_GetModuleFileNameExW on Cygwin.  Don't load ANSI function on Cygwin.
153
154 2010-02-28  Phil Muldoon  <pmuldoon@redhat.com>
155
156         PR python/11036
157         * python/py-frame.c (frapy_read_var): Add block argument and logic
158         to cope with user provided blocks.
159
160 2010-02-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
161
162         * infcall.c (call_function_by_hand): Remove gdb_assert on sp and old_sp.
163         New comment.
164
165 2010-02-28  Corinna Vinschen  <vinschen@redhat.com>
166
167         * Makefile.in (SUBDIR_MI_OBS): Move mi-common.o from here...
168         (COMMON_OBS): ... to here since it's used unconditionally.
169         (SUBDIR_MI_SRCS): Move mi/mi-common.c from here...
170         (SFILES): To here.
171
172 2010-02-26  David Daney  <ddaney@caviumnetworks.com>
173
174         * mips-linux-tdep.c: Update struct sigframe comments.
175         (SIGFRAME_CODE_OFFSET): Delete macro.
176         (mips_linux_o32_sigframe_init): Calculate sigcontext_base using
177         this_frame's sp.
178         (mips_linux_n32n64_sigframe_init): Same.
179
180 2010-02-26  Kevin Buettner  <kevinb@redhat.com>
181
182         * remote-mips.c (mips_load): Don't use pseudo-register when
183         invalidating regcache.
184
185 2010-02-26  Daniel Jacobowitz  <dan@codesourcery.com>
186
187         * arm-tdep.c (thumb_get_next_pc): Correct conditional branch opcode.
188
189 2010-02-26  Pedro Alves  <pedro@codesourcery.com>
190
191         * NEWS: Add "New targets" section, and mention ARM Symbian
192         support.
193
194 2010-02-26  Ulrich Weigand  <uweigand@de.ibm.com>
195
196         * dwarf2loc.c (struct piece_closure): Remove ARCH member,
197         add ADDR_SIZE member.
198         (allocate_piece_closure): Update.
199         (copy_pieced_value_closure): Likewise.
200         (dwarf2_evaluate_loc_desc): Likewise.
201         (read_pieced_value): Use DWARF address size instead of
202         GDB's gdbarch_addr_bit as size of values on the DWARF stack.
203
204 2010-02-26  Phil Muldoon  <pmuldoon@redhat.com>
205             Tom Tromey  <tromey@redhat.com>
206
207         * python/py-type.c (typy_lookup_typename): Add in block argument.
208         If provided restrict lookup to specified blocks.
209         (gdbpy_lookup_type): Likewise.
210         (typy_lookup_type): Likewise.
211
212 2010-02-25  Daniel Jacobowitz  <dan@codesourcery.com>
213  
214         Symbian config
215
216         gdb/
217         * arm-symbian-tdep.c: New.
218         * configure.tgt (arm*-*-symbianelf*): New target.
219         (*-*-symbianelf*): New OS.
220         * osabi.c (gdb_osabi_names): Add Symbian.
221         * defs.h (gdb_osabi): Add GDB_OSABI_SYMBIAN.
222         * Makefile.in (ALL_TARGET_OBJS): Add arm-symbian-tdep.o.
223         (ALLDEPFILES): Add arm-symbian-tdep.c.
224
225 2010-02-25  Daniel Jacobowitz  <dan@codesourcery.com>
226
227         * symfile.c (find_lowest_section): Include SEC_ALLOC sections.
228
229 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
230
231         * mi/mi-main.c (mi_cmd_execute): Fix typo.
232
233 2010-02-24  Phil Muldoon  <pmuldoon@redhat.com>
234             Tom Tromey  <tromey@redhat.com>
235             Thiago Jung Bauermann  <bauerman@br.ibm.com>
236
237         * python/python.c (_initialize_python): Call
238         gdbpy_initialize_symtabs, gdbpy_initialize_symbols and
239         gdbpy_initialize_blocks.
240         * python/python-internal.h: Declare struct symbol, block and
241         symtab_and_line.  Declare block_object_type and
242         symbol_object_type
243         (gdbpy_lookup_symbol gdbpy_block_for_pc)
244         (symtab_and_line_to_sal_object, symtab_to_symtab_object)
245         (symbol_to_symbol_object,  block_to_block_object)
246         (gdbpy_initialize_symtabs,gdbpy_initialize_symbols)
247         (gdbpy_initialize_blocks ): Declare.
248         * python/py-frame.c (frapy_block, frapy_function, frapy_find_sal)
249         (frapy_select): Add methods.
250         (frapy_read_var): Add symbol branch.
251         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-symbol, py-symtab,
252         py-block.
253         (SUBDIR_PYTHON_SRCS): Likewise.
254         (py-symbol.o): New rule.
255         (py-symtab.o): Likewise.
256         (py-block.o): Likewise.
257         * python/py-symbol.c: New file.
258         * python/py-symtab.c: Likewise.
259         * python/py-block.c: Likewise.
260
261 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
262
263         PR gdb/11321
264
265         * inferior.h (prepare_for_detach): Declare.
266         (struct inferior) <detaching>: New field.
267         * infrun.c (prepare_for_detach): New.
268         (handle_inferior_event) <random signal>: Don't stop if detaching.
269         * target.c (target_detach): Call prepare_for_detach.
270
271 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
272
273         Per-process displaced stepping queue.
274
275         * infrun.c (displaced_step_ptid, displaced_step_request_queue)
276         (displaced_step_gdbarch, displaced_step_closure,
277         (displaced_step_original, displaced_step_copy): Move globals to
278         this...
279         (struct displaced_step_inferior_state): ... new structure.
280         (displaced_step_inferior_states): New global.
281         (get_displaced_stepping_state, add_displaced_stepping_state)
282         (remove_displaced_stepping_state, infrun_inferior_exit): New
283         functions.
284         (displaced_step_clear): Add displaced_step_inferior_state
285         parameter, and adjust to handle it.
286         (displaced_step_clear_cleanup): Parameter is now a
287         displaced_step_inferior_state.  Adjust.
288         (displaced_step_prepare): Adjust.
289         (displaced_step_fixup, displaced_step_fixup)
290         (infrun_thread_ptid_changed, resume): Adjust.
291         (init_wait_for_inferior): Don't call displaced_step_clear.
292         (infrun_thread_stop_requested): Rewrite.
293         (_initialize_infrun): Install infrun_inferior_exit as
294         inferior_exit observer.
295
296 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
297
298         * inferior.h (ptid_match): Declare.
299         * infrun.c (ptid_match): New.
300         * remote.c (queued_stop_reply): Rewrite and use ptid_match.
301         (handle_notification): Add debug output.
302         * linux-nat.c (ptid_match): Delete.
303
304 2010-02-24  David S. Miller  <davem@davemloft.net>
305
306         * gdb_ptrace.h (PT_SYSCALL): If PTRACE_SYSCALL is available, use it.
307         * syscalls/sparc-linux.xml: New.
308         * syscalls/sparc64-linux.xml: New.
309         * Makefile.in (XML_SYSCALL_FILES): Add new syscall XML files.
310         * sparc-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC32): Define.
311         (sparc32_linux_get_syscall_number): New function.
312         (sparc32_linux_init_abi): Set syscall XML file name and hook up
313         syscall number fetcher.
314         * sparc64-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC64): Define.
315         (sparc64_linux_get_syscall_number): New function.
316         (sparc64_linux_init_abi): Set syscall XML file name and hook up
317         syscall number fetcher.
318
319 2010-02-24  Vladimir Prus  <vladimir@codesourcery.com>
320
321         Multiexec MI
322
323         * breakpoint.c (clear_syscall_counts): Take struct inferior*.
324         * inferior.c (add_inferior_silent): Notify inferior_added
325         observer.
326         (delete_inferior_1): Notify inferior_removed observer.
327         (exit_inferior_1): Pass inferior, not pid, to observer.
328         (inferior_appeared): Likewise.
329         (add_inferior_with_spaces): New.
330         (add_inferior_command): Use the above.
331         * inferior.h (delete_inferior_1, add_inferior_with_spaces):
332         Declare.
333
334         * inflow.c (inflow_inferior_exit): Likewise.
335         * jit.c (jit_inferior_exit_hook): Likewise.
336
337         * mi/mi-cmds.c (mi_cmds): Register add-inferior and
338         remove-inferior.
339         * mi/mi-cmds.h (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
340         * mi/mi-interp.c (mi_inferior_added, mi_inferior_removed): New.
341         (report_initial_inferior): New.
342         (mi_inferior_removed): Register the above. Make sure
343         inferior_added observer is called on the first inferior.
344         (mi_new_thread, mi_thread_exit): Thread group is now identified by
345         inferior number, not pid.
346         (mi_solib_loaded, mi_solib_unloaded): Report which inferiors are
347         affected.
348         * mi/mi-main.c (current_context): New.
349         (proceed_thread_callback): Use typed closure.
350         Proceed everything if pid is 0. Most implementation split into
351         (proceed_thread): ... this.
352         (run_one_inferior): New.
353         (mi_cmd_exec_continue, mi_cmd_exec_interrupt, mi_cmd_exec_run):
354         Adjust for multiexec behaviour.
355         (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
356         (mi_cmd_execute): Handle the 'thread-group' option here.
357         Do some extra checks.
358         * mi-parse.c (mi_parse): Handle the --all and --thread-group
359         options.
360         * mi-parse.h (struct mi_parse): New fields all and thread_group.
361
362 2010-02-24  Vladimir Prus  <vladimir@codesourcery.com>
363
364         Make -exec-run a proper MI commands.
365
366         * mi/mi-cmds.h (mi_cmd_exec_run): Declare.
367         * mi/mi-cmds.c (mi_cmds): Adjust.
368         * mi/mi-main.c (mi_cmd_exec_run): New.
369
370 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
371             Stan Shebs  <stan@codesourcery.com>
372
373         * tracepoint.h (set_traceframe_number)
374         (cleanup_restore_current_traceframe): Declare.
375         * tracepoint.c (set_traceframe_number): New.
376         (struct current_traceframe_cleanup): New.
377         (do_restore_current_traceframe_cleanup)
378         (restore_current_traceframe_cleanup_dtor)
379         (make_cleanup_restore_current_traceframe): New.
380         * infrun.c: Include tracepoint.h.
381         (fetch_inferior_event): Switch out and in of tfind mode.
382
383 2010-02-24  Pedro Alves  <pedro@codesourcery.com>
384
385         * breakpoint.c (breakpoint_init_inferior): Also delete
386         bp_shlib_event breakpoints.
387         * solib-frv.c (enable_break): Remove call to
388         remove_solib_event_breakpoints.
389         * solib-svr4.c (enable_break): Ditto.
390         * solib-darwin.c (darwin_solib_create_inferior_hook): Ditto.
391         * solib-pa64.c (pa64_solib_create_inferior_hook): Ditto.
392         * solib-som.c (som_solib_create_inferior_hook): Ditto.
393         * solib-spu.c (spu_enable_break): Ditto.
394
395 2010-02-23  Harald Koenig  <H.Koenig@science-computing.de>
396
397         * c-exp.y (token_and_value): s/union YYSTYPE/YYSTYPE.
398
399 2010-02-23  Harald Koenig  <H.Koenig@science-computing.de>
400
401         * varobj.c (varobj_update): Avoid non-constants in initializers.
402
403 2010-02-23  Tom Tromey  <tromey@redhat.com>
404
405         * dwarf2loc.c (read_pieced_value) <DWARF_VALUE_STACK>: Correctly
406         handle big-endian values.
407         (dwarf2_evaluate_loc_desc) <DWARF_VALUE_STACK>: Likewise.
408
409 2010-02-22  Pedro Alves  <pedro@codesourcery.com>
410
411         PR9605
412
413         gdb/
414         * breakpoint.c (insert_bp_location): If inserting the read
415         watchpoint failed, fallback to an access watchpoint.
416         (bpstat_check_watchpoint): Stop for read watchpoint triggers even
417         if the value changed, if not watching the same memory for writes.
418         (watchpoint_locations_match): Add comment.
419         (update_global_location_list): Copy the location's watchpoint type.
420         * i386-nat.c (i386_length_and_rw_bits): It's an internal error to
421         handle read watchpoints here.
422         (i386_insert_watchpoint): Read watchpoints aren't supported.
423         * remote.c (remote_insert_watchpoint): Return 1 for unsupported
424         packets.
425         * target.h (target_insert_watchpoint): Update description.
426
427 2010-02-19  Tom Tromey  <tromey@redhat.com>
428
429         * p-typeprint.c (pascal_type_print_varspec_prefix): Update.
430         * m2-typeprint.c (m2_print_type): Update.
431         * gdbtypes.c (recursive_dump_type): Update.
432         (copy_type_recursive): Update.
433         * c-typeprint.c (c_type_print_varspec_prefix): Update.
434         (c_type_print_base): Update.
435         * gdbtypes.h (TYPE_CODE_TEMPLATE, TYPE_CODE_TEMPLATE_ARG):
436         Remove.
437         (struct cplus_struct_type) <ntemplate_args>: Remove.
438         <struct template_arg>: Remove.
439         <is_dynamic>: Move earlier.
440         (TYPE_TEMPLATE_ARGS): Remove.
441         (TYPE_NTEMPLATE_ARGS): Remove.
442         (TYPE_TEMPLATE_ARG): Remove.
443
444 2010-02-19  Tom Tromey  <tromey@redhat.com>
445
446         PR c++/8693, PR c++/9496:
447         * cp-namespace.c (cp_lookup_nested_type): Handle TYPE_CODE_UNION.
448         * c-exp.y (lex_one_token): Rename from yylex.  Don't call
449         write_dollar_variable.  Don't try to classify NAME tokens.
450         (token_and_value): New type.
451         (token_fifo, popping, name_obstack): New globals.
452         (classify_name): New function.
453         (classify_inner_name): Likewise.
454         (yylex): Likewise.
455         (VARIABLE): Now has type sval.
456         (exp : VARIABLE): Call write_dollar_variable.
457         (qualified_name): Use TYPENAME, not typebase.  Add production for
458         multiple "::" instances.
459         (variable): Use name_not_typename.
460         (qualified_type): Remove.
461         (typebase): Update.
462
463 2010-02-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
464
465         * symfile.c (addr_info_make_relative): Extend comment.  Move SECT to
466         a more inner block.  Initialize ADDR by LOWER_OFFSET only if it was
467         found by bfd_get_section_by_name.
468         * symfile.h (struct section_addr_info) <sectindex>: New comment.
469
470 2010-02-19  Joel Brobecker  <brobecker@adacore.com>
471
472         * NEWS: Add new "[...] since 7.1" section.  Rename the "[...] since
473         7.0 section" into "Changes in 7.1".
474
475 2010-02-19  Joel Brobecker  <brobecker@adacore.com>
476
477         GDB 7.1 branch created (branch timestamp: 2010-02-18 20:00 UTC)
478         * version.in: Bump version to 7.1.50.20100219-cvs.
479
480 2010-02-18  Harald Koenig  <H.Koenig@science-computing.de>
481
482         * mi/mi-main.c (mi_cmd_exec_jump): Drop unneeded `return'.
483         * symfile.c (symfile_map_offsets_to_segments): Fix assertion.
484
485 2010-02-17  Tom Tromey  <tromey@redhat.com>
486
487         * NEWS: Add Python API Improvements section.
488
489 2010-02-18  Daniel Jacobowitz  <dan@codesourcery.com>
490
491         * NEWS: Correct typo.
492
493 2010-02-17  Tom Tromey  <tromey@redhat.com>
494
495         * objfiles.c (gdb_bfd_ref): Handle abfd==NULL.
496
497 2010-02-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
498
499         * symfile.c (build_section_addr_info_from_objfile): Include sections
500         only if they are SEC_ALLOC or SEC_LOAD.
501
502 2010-02-17  H.J. Lu  <hongjiu.lu@intel.com>
503
504         PR shlibs/11293
505         * solib-svr4.c (enable_break): Check size of CORE_ADDR instead
506         of ULONGEST for address size.
507
508 2010-02-17  Tom Tromey  <tromey@redhat.com>
509
510         * NEWS: Add C++ improvements section.
511
512 2010-02-17  Ulrich Weigand  <uweigand@de.ibm.com>
513
514         * python/python-internal.h [!WITH_THREAD] (PyGILState_Release,
515         PyThreadState_Swap): Avoid "statement with no effect" warning.
516
517 2010-02-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
518
519         * solib-svr4.c (enable_break <target_auxv_search>): New variable
520         addr_bit.  Adjust LOAD_ADDR sign for cross-arch inferiors.
521
522 2010-02-17  Tristan Gingold  <gingold@adacore.com>
523             Petr Hluzín <petr.hluzin@gmail.com>
524
525         * avr-tdep.c (avr_scan_prologue): Convert an if statement to a
526         gdb_assert.  Fix info->size for SIG prologue.
527
528 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
529
530         * infcmd.c (show_inferior_tty_command): Check for NULL.
531         Correct output message.
532
533 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
534
535         * linespec.c (decode_line_1): Handle FILE:FUNCTION even if
536         FUNCTION contains parentheses.  Improve removal of a trailing
537         single quote.
538
539 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
540
541         * gcore.c (do_bfd_delete_cleanup): New function.
542         (gcore_command): Use it.  Discard the cleanup after success.
543         (gcore_copy_callback): Delete dead code.
544
545 2010-02-16  Daniel Jacobowitz  <dan@codesourcery.com>
546
547         * symfile.c (addr_info_make_relative): Always use
548         find_lowest_section.
549
550 2010-02-16  Sami Wagiaalla <swagiaal@redhat.com>
551
552         * NEWS: Added entry for namespace fixes.
553
554 2010-02-15  Tom Tromey  <tromey@redhat.com>
555
556         * dwarf2read.c (guess_structure_name): Allocate name on the
557         objfile obstack.
558
559 2010-02-15  Tom Tromey  <tromey@redhat.com>
560
561         * c-typeprint.c (c_type_print_base): Reverse order of test.
562
563 2010-02-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
564
565         * solib-svr4.c (LM_ADDR_CHECK): New variable minpagesize.  Optionally
566         initialize it from ELF BFD.  Extend the prelink condition by it.
567
568 2010-02-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
569
570         * defs.h (parse_pid_to_attach): New.
571         * utils.c (parse_pid_to_attach): New.
572         * darwin-nat.c (darwin_attach): Replace ARGS parsing by parse_pid.
573         * gnu-nat.c (gnu_attach): Likewise.
574         * nto-procfs.c (procfs_attach): Likewise.
575         * procfs.c (procfs_attach): Likewise.
576         * windows-nat.c (windows_attach): Likewise.
577         * inf-ptrace.c (inf_ptrace_attach): Likewise.  Remove variable dummy.
578         * inf-ttrace.c (inf_ttrace_attach): Likewise.
579         * remote.c (extended_remote_attach_1): Likewise.  New comment on getpid
580         check.
581
582 2010-02-14  Masaki Muranaka  <monaka@monami-software.com>
583
584         * MAINTAINERS: Add myself for write after approval privileges.
585
586 2010-02-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
587
588         * solib-svr4.c: (LM_ADDR_CHECK): Move variable align to a more inner
589         block.
590
591 2010-02-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
592
593         * solib-svr4.c: (LM_ADDR_CHECK): Print successful prelink adjustment
594         only if INFO_VERBOSE.
595
596 2010-02-12  Tomas Holmberg <th@virtutech.com>
597
598         * mi/mi-main.c: Added the --reverse flag to the following MI
599         commands: exec-continue, exec-finish, exec-next, exec-step,
600         exec-next-instruction, exec-step-instruction. This is to
601         support reverse execution over the MI interface to gdb.
602
603 2010-02-12  Pedro Alves  <pedro@codesourcery.com>
604
605         * tracepoint.c (_initialize_tracepoint): Specify that the address
606         range of `tfind outsize' is exclusive, and that the address range
607         of `tfind range' is inclusive, in the commands' help strings.
608
609 2010-02-12  Joel Brobecker  <brobecker@adacore.com>
610
611         Spurious "dll not found" error messages on x64-windows.
612         * windows-nat.c: Add include of complaints.h.
613         (handle_unload_dll): Change dll-not-found error into a complaint.
614
615 2010-02-12  Pedro Alves  <pedro@codesourcery.com>
616
617         * breakpoint.c (allocate_bp_location): Use bp_loc_other for
618         bp_tracepoint and bp_fast_tracepoint, not
619         bp_loc_software_breakpoint.
620         (update_global_location_list): Tracepoints are never duplicates of
621         anything.
622
623 2010-02-12  Pedro Alves  <pedro@codesourcery.com>
624
625         * breakpoint.c (break_command_really): Change return type to int.
626         Return false if no breakpoint was created, true otherwise.
627         (trace_command): Don't set the tracepoint count if no tracepoint
628         was created.
629         (ftrace_command): Ditto.
630         (create_tracepoint_from_upload): Bail out if the tracepoint wasn't
631         created in the breakpoints table.
632
633 2010-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
634             Ulrich Weigand  <uweigand@de.ibm.com>
635
636         * solib-svr4.c (LM_ADDR_CHECK): New comment on PPC-aware condition.
637
638 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
639
640         * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out if
641         the offset value isn't of integral type.
642
643 2010-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
644
645         * breakpoint.c (delete_breakpoint) <bpt->related_breakpoint != NULL>:
646         New.
647
648 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
649
650         * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out on
651         non-subscriptable types.
652         * valarith.c (binop_types_user_defined_p): New, abstracted out
653         from ...
654         (binop_user_defined_p): ... this.
655         * value.h (binop_types_user_defined_p): Declare.
656
657 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
658
659         * tracepoint.c (tfile_open): Remove spurious discard_cleanups.
660         Merge uploaded TSVs before merging uploaded tracepoints.
661
662 2010-02-11  Pedro Alves  <pedro@codesourcery.com>
663
664         * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers.
665
666 2010-02-11  Vladimir Prus  <vladimir@codesourcery.com>
667
668         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra
669         whitespace character after a dot in comment.
670         (mi_cmd_stack_list_arguments, mi_cmd_stack_list_variables):
671         Likewise.
672         (list_args_or_locals): For the 'all' (that is
673         -stack-list-variables) case, always output list of tuples.
674         Output 'arg' field if variable is argument.
675
676 2010-02-10  Tom Tromey  <tromey@redhat.com>
677
678         * parser-defs.h (parser_debug): Declare.
679         * parse.c (_initialize_parse): Install "debug parser" set/show
680         command.
681         (parser_debug): New global.
682         (show_parserdebug): New function.
683         * c-exp.y (c_parse): Set yydebug.
684
685 2010-02-10  H.J. Lu  <hongjiu.lu@intel.com>
686
687         * target-descriptions.c (tdesc_type): Add TDESC_TYPE_I387_EXT,
688         TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
689         (tdesc_predefined_types): Add i387_ext, i386_eflags and
690         i386_mxcsr.
691         (tdesc_find_type): New.
692         (tdesc_gdb_type): Use tdesc_find_type.  Handle TDESC_TYPE_I387_EXT,
693         TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
694
695         * target-descriptions.h (tdesc_find_type): New.
696
697 2010-02-10  Michael Snyder  <msnyder@vmware.com>
698
699         * gdb-gdb.py: Comment fix.
700
701 2010-02-09  Tristan Gingold  <gingold@adacore.com>
702
703         * machoread.c (macho_symfile_relocate): New function.
704         (macho_sym_fns): Use macho_symfile_relocate instead of
705         default_symfile_relocate.
706         (macho_oso_data): New type.
707         (current_oso): New variable.
708         (macho_add_oso_symfile): Do not compute section_addr_info, but
709         instead set vma of sections.
710         Do not set SYMFILE_VERBOSE to call symbol_file_add_from_bfd.
711         Set and clear current_oso.
712
713 2010-02-09  Joel Brobecker  <brobecker@adacore.com>
714
715         Wrong type description for tagged type parameter.
716         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: When noside is
717         EVAL_AVOID_SIDE_EFFECTS, also handle the case when type is a
718         reference to a tagged type.
719
720 2010-02-09  Tristan Gingold  <gingold@adacore.com>
721
722         * objfiles.c (objfile_separate_debug_iterate): Do not iterate on
723         brothers of the parent.
724
725 2010-02-08  Tom Tromey  <tromey@redhat.com>
726
727         PR c++/8017:
728         * value.h: Update.
729         * valops.c (search_struct_field): Make 'name' const.
730         (search_struct_method): Likewise.
731         (find_method_list): Make 'method' const.
732         (value_struct_elt): Make 'name' and 'err' const.
733         (value_find_oload_method_list): Make 'method' const.
734         (find_overload_match): Make 'name' const.
735         * eval.c (evaluate_subexp_standard): New locals function,
736         function_name.
737         <OP_FUNCALL>: Handle OP_SCOPE specially.
738
739 2010-02-08  Ulrich Weigand  <uweigand@de.ibm.com>
740
741         * infrun.c (handle_inferior_event): Do not look up regcache
742         for exited processes.
743
744 Mon Feb  8 13:17:10 2010  Chris Moller  <moller@mollerware.com>
745
746         PR gdb/10728
747         * valarith.c (value_ptrdiff): Added a test for a zero type length,
748         warn if found, and assume length = 1. 
749
750 2010-02-08  Chris Moller  <cmoller@redhat.com>
751
752         PR gdb/9067
753         * cp-valprint.c (cp_print_value_fields) Fix use of obstacks.
754         cp_print_static_field)  Fix use of obstacks.
755         
756 2010-02-08  Pedro Alves  <pedro@codesourcery.com>
757
758         * linux-nat.c (linux_nat_resume): In non-stop, also only tag
759         resumed LWPs as resumed.
760         (linux_nat_wait_1): If there's no resumed LWP in the set of LWPs
761         we're waiting for, bail out with TARGET_WAITKIND_IGNORE, instead
762         of throwing an internal error.  If an LWP of a process we're not
763         waiting for reports a signal, don't force collecting a SIGSTOP,
764         and if it was breakpoint hit in non-stop mode, cancel it.  Don't
765         go through all LWPs cancelling breakpoints in non-stop mode.
766         (resume_stopped_resumed_lwps): New.
767         (linux_nat_wait): Use it.
768
769 2010-02-07  H.J. Lu  <hongjiu.lu@intel.com>
770
771         * features/Makefile (WHICH): Add i386/i386, i386/i386-linux,
772         i386/amd64 and i386/amd64-linux.
773         (i386/i386-expedite): New.
774         (i386/i386-linux-expedite): Likewise.
775         (i386/amd64-expedite):Likewise.
776         (i386/amd64-linux-expedite): Likewise.
777         ($(outdir)/i386/i386-linux.dat): Likewise.
778         ($(outdir)/i386/amd64.dat): Likewise.
779         ($(outdir)/i386/amd64-linux.dat): Likewise.
780
781         * features/i386/32bit-core.xml: New.
782         * features/i386/32bit-linux.xml: Likewise.
783         * features/i386/32bit-sse.xml: Likewise.
784         * features/i386/64bit-core.xml: Likewise.
785         * features/i386/64bit-linux.xml: Likewise.
786         * features/i386/64bit-sse.xml: Likewise.
787         * features/i386/i386-linux.xml: Likewise.
788         * features/i386/i386.xml: Likewise.
789         * features/i386/amd64-linux.xml: Likewise.
790         * features/i386/amd64.xml: Likewise.
791         * features/i386/i386-linux.c: Likewise.
792         * features/i386/i386.c: Likewise.
793         * features/i386/amd64-linux.c: Likewise.
794         * features/i386/amd64.c: Likewise.
795
796 2010-02-05  Sami Wagiaalla  <swagiaal@redhat.com>
797
798         PR c++/7935:
799         * cp-support.h: Added char* alias element to using_direct data
800         struct.
801         (cp_add_using): Added char* alias argument.
802         (cp_add_using_directive): Ditto.
803         * cp-namespace.c: Updated with the above changes.
804         (cp_lookup_symbol_imports): Check for aliases.
805         * dwarf2read.c (read_import_statement): Figure out local alias
806         for the import and pass it on to cp_add_using.
807         (read_namespace): Pass alias argument to cp_add_using.
808
809 2010-02-05  Hui Zhu  <teawater@gmail.com>
810
811         * defs.h (gdb_bfd_errmsg): New extern.
812         * exec.c (exec_file_attach): Change bfd_errmsg to
813         gdb_bfd_errmsg.
814         * utils.c (AMBIGUOUS_MESS1): New macro.
815         (AMBIGUOUS_MESS2): New macro.
816         (gdb_bfd_errmsg): New function.
817
818 2010-02-04  Doug Evans  <dje@google.com>
819
820         * solib-svr4.c (enable_break): Add comment.
821
822 2010-02-04  Anthony Green  <green@moxielogic.com>
823
824         * moxie-tdep.c (moxie_analyze_prologue): Fail protocol analysis
825         gracefully.
826
827 2010-02-04  Tom Tromey  <tromey@redhat.com>
828
829         * valops.c (search_struct_field): Account for
830         value_embedded_offset.  Fix check for virtual base past the end of
831         the object.  Use value_copy when making a slice of the value.
832
833 2010-02-04  H.J. Lu  <hongjiu.lu@intel.com>
834
835         PR tui/9622
836         * tui/tui-interp.c (tui_init): Call tui_initialize_readline
837         only if gdb_stdout is a tty.
838
839 2010-02-04  H.J. Lu  <hongjiu.lu@intel.com>
840
841         * target-descriptions.c: Include "osabi.h".
842         (maint_print_c_tdesc_cmd): Generate set_tdesc_osabi for valid
843         OSABI.
844
845 2010-02-04  Tristan Gingold  <gingold@adacore.com>
846
847         * machoread.c (macho_add_oso): Renamed to macho_register_oso.
848         (macho_symtab_read): Adjust calls to macho_add_oso.
849         (macho_oso_symfile): Renamed to macho_symfile_read_all_oso.
850         (macho_symfile_read): Adjust call to macho_oso_symfile.
851         (macho_new_init): Move this function after declarations.
852         (macho_symfile_init): Ditto.
853         * darwin-nat-info.c (darwin_lib_gdb_ports): Remove.
854         * darwin-nat.c (darwin_lookup_task): Remove unused prototype.
855
856 2010-02-04  Vladimir Prus  <vladimir@codesourcery.com>
857
858         Include MI command in remotelog.
859
860         * mi/mi-main.c (mi_execute_command): Call target_log_command.
861
862 2010-02-03  H.J. Lu  <hongjiu.lu@intel.com>
863
864         * remote.c (remote_state): Remove gdbarch.
865         (init_remote_state): Don't set gdbarch.
866         (remote_query_supported): Pass target_gdbarch instead of
867         rs->gdbarch to gdbarch_qsupported.
868
869 2010-02-03  H.J. Lu  <hongjiu.lu@intel.com>
870
871         * gdbarch.sh: Add qsupported.
872
873         * gdbarch.c: Regenerated.
874         * gdbarch.h: Likewise.
875
876         * remote.c (remote_state): Add gdbarch.
877         (init_remote_state): Set gdbarch.
878         (remote_query_supported): Support gdbarch_qsupported.
879
880 2010-02-03  Daniel Jacobowitz  <dan@codesourcery.com>
881
882         * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Also check for
883         __FreeBSD_kernel_version.
884
885 2010-02-03  Tristan Gingold  <gingold@adacore.com>
886
887         * symfile.h (struct sym_fns): Add sym_relocate field.
888         (default_symfile_relocate): New prototype.
889         (symfile_relocate_debug_section): First argument is now an objfile.
890         * symfile.c (default_symfile_relocate): Rename from
891         symfile_relocate_debug_section, first argument is now an objfile.
892         (symfile_relocate_debug_section): New function.
893         * coffread.c (coff_sym_fns): Set sym_relocate field.
894         * somread.c (som_sym_fns): Ditto.
895         * mipsread.c (ecoff_sym_fns): Ditto.
896         * machoread.c (macho_sym_fns): Ditto.
897         * elfread.c (elf_sym_fns): Ditto.
898         * dwarf2read.c (dwarf2_read_section): Ditto.
899         * xcoffread.c (xcoff_sym_fns): Ditto.
900         * dbxread.c (aout_sym_fns): Ditto.
901         (dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
902         (elfstab_build_psymtabs): Ditto.
903
904 2010-02-03  H.J. Lu  <hongjiu.lu@intel.com>
905
906         * defs.h (MAX_REGISTER_SIZE): Increase to 32.
907
908 2010-02-02  Tom Tromey  <tromey@redhat.com>
909
910         * valops.c (value_cast_structs): Try downcasting using the RTTI
911         type.
912
913 2010-02-02  Tom Tromey  <tromey@redhat.com>
914
915         * gnu-v2-abi.c: Don't include gnu-v2-abi.h.
916         (gnuv2_baseclass_offset): Now static.
917         * Makefile.in (HFILES_NO_SRCDIR): Remove gnu-v2-abi.h.
918         * gnu-v2-abi.h: Remove.
919
920 2010-02-02  Tom Tromey  <tromey@redhat.com>
921
922         * m2-typeprint.c (m2_record_fields): Don't use
923         TYPE_DECLARED_TYPE.
924         * gdbtypes.h (TYPE_DECLARED_CLASS): New macro.
925         (struct main_type) <flag_declared_class>: New field.
926         (struct cplus_struct_type) <declared_type>: Remove.
927         <ntemplate_args>: Move earlier.
928         (DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT)
929         (DECLARED_TYPE_TEMPLATE): Remove.
930         (TYPE_DECLARED_TYPE): Remove.
931         * gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE.
932         * dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS.
933         * c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not
934         TYPE_DECLARED_TYPE.
935
936 2010-02-02  Tom Tromey  <tromey@redhat.com>
937
938         PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
939         * valops.c (search_struct_field): Compute nbases after calling
940         CHECK_TYPEDEF.
941         (check_field): Call CHECK_TYPEDEF.
942         * cp-valprint.c (cp_print_value): Pass correct address to
943         baseclass_offset.  Fix check for virtual base past the end of the
944         object.  Don't offset address passed to cp_print_value_fields or
945         apply_val_pretty_printer.
946         (cp_print_value_fields): Fix call to val_print.
947         (cp_print_value_fields_rtti): New function.
948         * c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
949         * p-valprint.c (pascal_object_print_value_fields): Fix call to
950         val_print.
951         * python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
952         offset to address.
953         * language.h (struct language_defn) <la_val_print>: Document.
954         * c-lang.h (cp_print_value_fields_rtti): Declare.
955
956 2010-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
957
958         PR libc/11214:
959         * linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
960         (linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
961         (linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.
962
963 2010-02-01  Michael Matz  <matz@suse.de>
964             Daniel Jacobowitz  <dan@codesourcery.com>
965
966         * i386-tdep.c (i386_frame_cache): Assume valid anonymous
967         functions use a frame pointer.
968
969 2010-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
970
971         * solib-svr4.c (scan_dyntag): New variable dyn_addr.  Replace gdb_assert
972         by a conditional setting DYN_ADDR.  Use DYN_ADDR.
973         * config/djgpp/fnchange.lst: Add translations for
974         symbol-without-target_section.exp and symbol-without-target_section.c.
975
976 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
977
978         * gdbarch.sh: Set LANG and LC_ALL to C, not c.
979         (remote_breakpoint_for_pc): Correct invalid_p check.
980         * gdbarch.c: Regenerated.
981
982 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
983
984         * arm-tdep.c (arm_find_mapping_symbol): New function, from
985         arm_pc_is_thumb.
986         (arm_pc_is_thumb): Use arm_find_mapping_symbol.
987         (extend_buffer_earlier): New function.
988         (MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
989         (arm_adjust_breakpoint_address): New function.
990         (arm_gdbarch_init): Register arm_adjust_breakpoint_address.
991
992 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
993
994         * arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
995         (arm_linux_thumb2_le_breakpoint): New constants.
996         (arm_linux_init_abi): Set thumb2_breakpoint and
997         thumb2_breakpoint_size.
998         * arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
999         (thumb_get_next_pc): Add a comment.  Rename IT to ITSTATE.
1000         Implement support for single stepping through IT blocks if
1001         a 32-bit Thumb breakpoint instruction is available.
1002         (arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
1003         is available, use it when needed.
1004         (arm_remote_breakpoint_from_pc): New function.
1005         (arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
1006         * arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
1007         comment.  Add thumb2_breakpoint and thumb2_breakpoint_size.
1008
1009 2010-02-01  Daniel Jacobowitz  <dan@codesourcery.com>
1010
1011         * arch-utils.c (default_remote_breakpoint_from_pc): New function.
1012         * arch-utils.h (default_remote_breakpoint_from_pc): Declare.
1013         * gdbarch.c, gdbarch.h: Regenerated.
1014         * gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
1015         * remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
1016         gdbarch_remote_breakpoint_from_pc.
1017
1018 2010-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
1019
1020         * infrun.c (prepare_to_proceed): Handle other signals which might
1021         match a breakpoint.
1022         (handle_inferior_event): Move the check for unusual breakpoint
1023         signals earlier.
1024
1025 2010-01-29  Paul Hilfinger  <hilfinger@adacore.com>
1026
1027         amd64 - function returning record with field straddling 2 registers.
1028         * amd64-tdep.c (amd_classify_aggregate): Handle the case of
1029         a record of length <= 16 in which a field straddles the two
1030         eightbytes.
1031
1032 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
1033
1034         Implement return values on amd64-windows.
1035         * amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
1036         (amd64_windows_return_value): New function.
1037         (amd64_windows_init_abi): Call set_gdbarch_return_value with
1038         amd64_windows_return_value.
1039
1040 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
1041
1042         amd64-windows: 32 bytes allocated on stack by caller for integer
1043         parameter registers.
1044         * i386-tdep.h (struct gdbarch_tdep): Add new field
1045         integer_param_regs_saved_in_caller_frame.
1046         * amd64-windows-tdep.c (amd64_windows_init_abi): Set
1047         tdep->integer_param_regs_saved_in_caller_frame to 1.
1048         * amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
1049         stack if tdep->integer_param_regs_saved_in_caller_frame is set.
1050
1051 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
1052
1053         amd64-windows: memory args passed by pointer during function calls.
1054         * i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
1055         * amd64-tdep.c (amd64_push_arguments): Add handling of architectures
1056         where tdep->memory_args_by_pointer is non-zero.
1057         * amd64-windows-tdep.c (amd64_windows_init_abi): Set
1058         tdep->memory_args_by_pointer to 1.
1059
1060 2010-01-29  Joel Brobecker  <brobecker@adacore.com>
1061
1062         amd64-windows: Integer parameters in function calls.
1063         * i386-tdep.h (enum amd64_reg_class): New, moved here from
1064         amd64-tdep.c.
1065         (struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
1066         call_dummy_integer_regs, and classify.
1067         * amd64-tdep.h (amd64_classify): Add declaration.
1068         * amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
1069         (amd64_reg_class): Delete, moved to i386-tdep.h.
1070         (amd64_classify): Make non-static.  Move declaration to amd64-tdep.h.
1071         Replace call to amd64_classify by call to tdep->classify.
1072         (amd64_push_arguments): Get the list of registers to use for
1073         passing integer parameters from the gdbarch tdep structure,
1074         rather than using a hardcoded one.  Replace calls to amd64_classify
1075         by calls to tdep->classify.
1076         (amd64_push_dummy_call): Get the register number used for
1077         the "hidden" argument from tdep->call_dummy_integer_regs.
1078         (amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
1079         and tdep->call_dummy_integer_regs.  Set tdep->classify.
1080         * amd64-windows-tdep.c: Add include of gdbtypes.h.
1081         (amd64_windows_dummy_call_integer_regs): New static global.
1082         (amd64_windows_classify): New function.
1083         (amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
1084         tdep->call_dummy_integer_regs and tdep->classify.
1085
1086 2010-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
1087
1088         * regcache.c (regcache_xmalloc): Add aspace argument.  Use it
1089         for the new regcache.  All callers updated.
1090         (regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
1091         (get_thread_arch_regcache): Do not set aspace here.
1092         * regcache.h (regcache_xmalloc): Update declaration.
1093
1094         * frame.c, infcall.c, ppc-linux-tdep.c: Calls to
1095         regcache_xmalloc updated.
1096
1097 2010-01-28  Joel Brobecker  <brobecker@adacore.com>
1098
1099         Another -Wunused-function error in procfs.c (sparc-solaris)
1100         * procfs.c (insert_dbx_link_breakpoint): Delete declaration.  Move up.
1101         Only define if SYS_syssgi is defined.
1102         (remove_dbx_link_breakpoint): Delete declaration.  Move up.
1103         (dbx_link_addr, insert_dbx_link_bpt_in_file)
1104         (insert_dbx_link_bpt_in_region): Move up.  Only define if SYS_syssgi
1105         is itself defined.
1106
1107 2010-01-27  Christopher Faylor  <me+cygwin@cgf.cx>
1108
1109         * windows-nat.c (windows_initialization_done): New variable.
1110         (get_windows_debug_event): Issue error when process dies before
1111         completely initializing.
1112         (do_initial_windows_stuff): Set flag to indicate when we are done with
1113         the initial steps of attaching to the child.
1114
1115 2010-01-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
1116
1117         * symtab.h (struct symbol <symtab>): New comment on NULL values.
1118
1119 2010-01-27  Doug Evans  <dje@google.com>
1120
1121         * solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity.
1122
1123         * breakpoint.c (bpstat_stop_status): Delete useless code.
1124
1125 2010-01-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
1126
1127         * printcmd.c (display_uses_solib_p): Remove variable section.  Access
1128         objfile via SYMBOL_SYMTAB.
1129
1130 2010-01-26  Tom Tromey  <tromey@redhat.com>
1131
1132         PR exp/7643:
1133         * eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
1134         coerce_array on result.
1135
1136 2010-01-26  Sami Wagiaalla  <swagiaal@redhat.com>
1137
1138         * cp-namespace.c (cp_lookup_symbol_namespace): Added
1139         search_parent argument.
1140         (cp_add_using): Initialize 'searched' field.
1141         (reset_directive_searched): New function.
1142         * cp-support.h: Add 'searched' field to using_direct struct.
1143         (cp_lookup_symbol_imports): Ditto.
1144         * cp-namespace.c (cp_lookup_symbol_imports): Ditto.
1145         Perform recursive search.
1146         Implement non parent search.
1147         * valops.c (value_maybe_namespace_elt): Updated.
1148
1149 2010-01-26  Sami Wagiaalla  <swagiaal@redhat.com>
1150
1151         PR gdb/10929:
1152         * dwarf2read.c (read_lexical_block_scope): Create blocks for
1153         scopes which contain using directives even if they contain no
1154         declarations.
1155         * symtab.c (lookup_symbol_aux): Pass lowest level block to
1156         la_lookup_symbol_nonlocal.
1157         * cp-namespace.c (cp_lookup_symbol_nonlocal): call
1158         cp_lookup_symbol_namespace.
1159         (cp_lookup_symbol_namespace): Perform an import lookup at every
1160         block level.
1161         (cp_lookup_symbol_imports): New function.
1162         (cp_lookup_symbol_in_namespace): New function.
1163
1164 2010-01-25  Tom Tromey  <tromey@redhat.com>
1165
1166         PR gdb/11049:
1167         * c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
1168         result.
1169
1170 2010-01-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1171
1172         * configure.ac: Only use host_os part when disabling TUI on osf.
1173         Use test to check variables, prefix strings with x.
1174         * configure: Regenerate.
1175
1176         * solib-osf.c (osf_current_sos): Initialize tail.
1177
1178 2010-01-25  gingold  <gingold@adacore.com>
1179
1180         * windows-nat.c (windows_continue): Use %x to print thread id.
1181         (get_windows_debug_event): Ditto.
1182
1183 2010-01-22  Tom Tromey  <tromey@redhat.com>
1184
1185         PR symtab/11199:
1186         * dwarf2read.c (quirk_gcc_member_function_pointer): Change return
1187         type and arguments.  Use smash_to_methodptr_type.
1188         (read_structure_type): Call quirk_gcc_member_function_pointer
1189         later.
1190         * gdbtypes.h (smash_to_methodptr_type): Declare.
1191         * gdbtypes.c (smash_to_methodptr_type): New function.
1192         (lookup_methodptr_type): Use it.
1193
1194 2010-01-21  Tom Tromey  <tromey@redhat.com>
1195
1196         PR symtab/11198:
1197         * symtab.h (lookup_minimal_symbol_and_objfile): Declare.
1198         * minsyms.c (lookup_minimal_symbol_and_objfile): New function.
1199         * glibc-tdep.c (find_minsym_and_objfile): Remove.
1200         (glibc_skip_solib_resolver): Use
1201         lookup_minimal_symbol_and_objfile.
1202
1203 2010-01-21  Kai Tietz  <kai.tietz@onevision.com>
1204
1205         * inflow.c (check_syscall): Guard by #if clause for GO32 and
1206         WIN32 targets.
1207
1208 2010-01-20  Tom Tromey  <tromey@redhat.com>
1209
1210         PR backtrace/10770:
1211         * valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and
1212         BINOP_GEQ.  Handle BINOP_NOTEQUAL in the signed case.
1213         * dwarf2expr.c (new_dwarf_expr_context): Allocate
1214         dwarf_stack_values, not CORE_ADDRs.
1215         (execute_stack_op): Change DW_OP_div and comparison operators to
1216         use signed operands.
1217
1218 2010-01-20  Vladimir Prus  <vladimir@codesourcery.com>
1219
1220         Per-inferior args and tty and environment.
1221
1222         * infcmd.c (inferior_args): Rename to ...
1223         (inferior_args_scratch): ... this.
1224         (inferior_io_terminal): Rename to ...
1225         (inferior_io_terminal_scratch): ... this.
1226         (inferior_argc, inferior_argv): Remove.
1227         (set_inferior_io_terminal, get_inferior_io_terminal): Store
1228         inside current_inferior().
1229         (set_inferior_tty_command, show_inferior_tty_command): New.
1230         (get_inferior_args, set_inferior_args): Store inside
1231         current_inferior().
1232         (notice_args_set): Likewise and rename to...
1233         (set_args_command): ... this.
1234         (set_inferior_args_vector): Likewise.
1235         (notice_args_read): Rename to...
1236         (show_args_command): ...new.
1237         (tty_command): Remove.
1238         (run_command_1): Don't free old args, as they are freed by
1239         set_inferior_arg now.
1240         (run_no_args_command): Likewise.
1241         (inferior_environ): Remove.
1242         (run_command_1): Use environment of the current inferior.
1243         (environment_info, set_environment_command)
1244         (unset_environment_command, path_info, path_command): Likewise.
1245         (_initialize_infcmd): Adjust for function and variable renames.
1246         Do not init inferior_environ.
1247         * inferior.h (set_inferior_arg): Adjust prototype.
1248         (struct inferior): New fields args, argc, argv, terminal, environment.
1249         (inferior_environ): Remove declaration.
1250         * inferior.c (free_inferior): Free new fields.
1251         (add_inferior_silent): Initialize 'environment' field.
1252         * main.c (captured_main): Set arguments only after the initial
1253         inferior has been created.  Set set_inferior_io_terminal,
1254         not tty_command.
1255         * mi/mi-main.c (mi_cmd_env_path): Use environment of the current
1256         inferior.
1257         (_initialize_mi_cmd_env): Adjust for disappearance of global
1258         inferior_environ.
1259         * solib.c (solib_find): Use environment of the current inferior.
1260
1261 2010-01-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
1262
1263         * varobj.c (varobj_add_child, install_dynamic_child): Wrap into #if
1264         HAVE_PYTHON.
1265         (instantiate_pretty_printer): Move HAVE_PYTHON outside of the function.
1266
1267 2010-01-20  Joel Brobecker  <brobecker@adacore.com>
1268
1269         Get rid of ada-lang.c:function_name_from_pc.
1270         * ada-lang.c: Add "stack.h" #include.
1271         (function_name_from_pc): Delete.
1272         (is_known_support_routine): Replace call to function_name_from_pc
1273         by call to find_frame_funname.
1274         (ada_unhandled_exception_name_addr_from_raise): Likewise.
1275
1276 2010-01-19  Tom Tromey  <tromey@redhat.com>
1277
1278         PR c++/11026:
1279         * dwarf2read.c (read_partial_die): Allocate partial DIE's name on
1280         objfile obstack.
1281
1282 2010-01-19  Tom Tromey  <tromey@redhat.com>
1283
1284         * top.c (stop_sig, float_handler, do_nothing): Remove.
1285
1286 2010-01-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
1287
1288         * breakpoint.c (watchpoint_check): Check the call
1289         gdbarch_in_function_epilogue_p before calling frame_find_by_id.
1290         Extend the comment.
1291         * config/djgpp/fnchange.lst: Add translations for 
1292         watchpoint-cond-gone.exp, watchpoint-cond-gone.c and
1293         watchpoint-cond-gone-stripped.c.
1294
1295 2010-01-19  Tom Tromey  <tromey@redhat.com>
1296
1297         PR c++/8000:
1298         * dwarf2read.c (partial_die_parent_scope): Put enumeration type
1299         into parent scope, and enumerator into grandparent scope.
1300
1301 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1302
1303         * NEWS: Add entry for "set/show ada trust-PAD-over-XVS" commands.
1304
1305 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1306
1307         * configure.host: Make x86_64-*-solaris2.1[0-9]* an alias of
1308         i[34567]86-*-solaris2.1[0-9]*.
1309         * configure.tgt: Likewise.
1310
1311 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1312
1313         * NEWS: Document the source command enhancement allowing it
1314         to load Python scripts. Document the "set/show script-extension"
1315         commands.
1316
1317 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1318
1319         Add -Wunused-function to compile flags.
1320         * configure.ac: Add -Wunused-function to build_warnings.
1321         * configure: Regenerate.
1322
1323 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1324
1325         "delete" ada-lex.c:input function, not used.
1326         * ada-lex.l: #define YY_NO_INPUT.
1327
1328 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1329
1330         Delete free_named_symtabs and associated cleanup.
1331         * symfile.h (free_named_symtabs): Delete declaration.
1332         * symfile.c: Remove some commented out code (clear_symtab_users_once).
1333         (cashier_psymtab): Comment function out.
1334         Delete declaration.
1335         (free_named_symtabs): Delete.
1336         * coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
1337         * dbxread.c (end_psymtab): Likewise.
1338         * dwarf2read.c (process_psymtab_comp_unit): Ditto.
1339         * exec.c (exec_close_1): Ditto.
1340         * xcoffread.c (xcoff_end_psymtab): Likewise.
1341
1342 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1343
1344         * stack.c (print_block_frame_labels): Comment function out.
1345
1346 2010-01-19  Joel Brobecker  <brobecker@adacore.com>
1347
1348         Delete unused or undefined functions.
1349         * breakpoint.c (ep_parse_optional_filename): Delete.
1350         * dcache.c (dcache_write_line): Remove declaration.
1351         * infrun.c (build_infrun): Remove declaration.
1352         * tracepoint.c (tracepoint_save_command): Remove declaration.
1353         * linux-nat.c (init_lwp_list): Delete. No longer used.
1354         * event-loop.c (check_async_signal_handlers): Delete declaration.
1355         * infrun.c (init_execution_control_state): Delete.
1356         (proceed): Update comment to avoid mentioning
1357         init_execution_control_state.
1358         * target.c (kill_or_be_killed, nosupport_runtime): Delete.
1359         * ada-lang.c (ada_to_static_fixed_value): Delete.
1360         * scm-lang.c (evaluate_subexp_scm): Delete declaration.
1361         * cp-namespace.c (cp_copy_usings): Delete.
1362         * xml-syscall.c (xml_number_of_syscalls): Delete.
1363         * progspace.c (find_program_space_by_num): Delete.
1364         * inflow.c (handle_sigio): Delete declaration.
1365         * hppa-tdep.c (hppa_alignof): Delete.
1366         * mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset)
1367         (mipsnbsd_core_osabi_sniffer): Delete.
1368
1369 2010-01-18  Tom Tromey  <tromey@redhat.com>
1370
1371         PR c++/9680:
1372         * c-exp.y (REINTERPRET_CAST, DYNAMIC_CAST, STATIC_CAST)
1373         (CONST_CAST): New tokens.
1374         (exp): Add new productions.
1375         (ident_tokens): Add const_cast, dynamic_cast, static_cast, and
1376         reinterpret_cast.
1377         (is_cast_operator): New function.
1378         (yylex): Handle cast operators specially.
1379         * eval.c (evaluate_subexp_standard) <UNOP_DYNAMIC_CAST,
1380         UNOP_REINTERPRET_CAST>: New cases.
1381         * expprint.c (print_subexp_standard): Likewise.
1382         (op_name_standard): Likewise.
1383         (dump_subexp_body_standard): Likewise.
1384         * parse.c (operator_length_standard): Likewise.
1385         * expression.h (enum exp_opcode): New constants UNOP_DYNAMIC_CAST,
1386         UNOP_REINTERPRET_CAST.
1387         * gdbtypes.c (class_types_same_p): New function.
1388         (is_ancestor): Use it.
1389         (is_public_ancestor): New function.
1390         (is_unique_ancestor_worker): Likewise.
1391         (is_unique_ancestor): Likewise.
1392         * gdbtypes.h (class_types_same_p, is_public_ancestor)
1393         (is_unique_ancestor): Declare.
1394         * valops.c (value_reinterpret_cast): New function.
1395         (dynamic_cast_check_1): Likewise.
1396         (dynamic_cast_check_2): Likewise.
1397         (value_dynamic_cast): Likewise.
1398         * value.h (value_reinterpret_cast, value_dynamic_cast): Declare.
1399
1400 2010-01-18  Joel Brobecker  <brobecker@adacore.com>
1401
1402         Fix build failure when building without Python support.
1403         * python/python.c: Always include exceptions.h, even when HAVE_PYTHON
1404         is not defined.
1405
1406 2010-01-18  Joel Brobecker  <brobecker@adacore.com>
1407
1408         Use XVS field type instead of doing a parallel lookup.
1409         * ada-lang.c (ada_get_base_type): Follow the XVS field type
1410         if it is a reference type instead of doing a type lookup using
1411         the XVS field name.
1412
1413 2010-01-18  Joel Brobecker  <brobecker@adacore.com>
1414
1415         Trust PAD types instead of using PAD___XVS.
1416         * ada-lang.c (trust_pad_over_xvs): New static variable.
1417         (ada_is_aligner_type): If !trust_pad_over_xvs and there is a
1418         parallel XVS type, follow the XVS type instead of the PAD type.
1419         (unwrap_value): Make sure that there is no parallel XVE type
1420         before returning the value as is.
1421         (set_ada_list, show_ada_list): New static variables.
1422         (set_ada_command, show_ada_command): New functions.
1423         (_initialize_ada_language): Add new "set/show ada" prefix commands.
1424         Add new "set/show ada trust-PAD-over-XVS" setting.
1425
1426 2010-01-18  Tom Tromey  <tromey@redhat.com>
1427             Thiago Jung Bauermann  <bauerman@br.ibm.com>
1428
1429         Allow "source" to load python scripts.
1430         * exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
1431         * python/python.c (source_python_script): New function.
1432         * python/python.h (source_python_script): Add declaration.
1433         * cli/cli-cmds.c: #include exceptions.h and python/python.h.
1434         (script_ext_off, script_ext_soft, script_ext_strict)
1435         (script_ext_enums, script_ext_mode): New static constants.
1436         (show_script_ext_mode, find_and_open_script): New functions.
1437         (source_script): Enhance to handle Python scripts.
1438         (init_cli_cmds): Add set/show script-extension commands.
1439
1440 2010-01-16  Stan Shebs  <stan@codesourcery.com>
1441
1442         * tracepoint.h (struct trace_status): Use unsigned long long
1443         instead of size_t.
1444         * tracepoint.c (trace_status_command): Fix printf directive.
1445         (trace_save_command): Check fwrite returns, fix printf directive.
1446         (trace_filename): New global.
1447         (tfile_open): Set it, check read returns.
1448         (tfile_close): Free trace_filename.
1449         (tfile_get_traceframe_address): Check read returns.
1450         (tfile_trace_find): Ditto.
1451         (tfile_fetch_registers): Ditto.
1452         (tfile_xfer_partial): Ditto.
1453         (tfile_get_trace_state_variable_value): Ditto.
1454
1455 2010-01-15  Stan Shebs  <stan@codesourcery.com>
1456
1457         Add trace file support.
1458         * tracepoint.h (enum trace_stop_reason): New enum.
1459         (struct trace_status): New struct.
1460         (parse_trace_status): Declare.
1461         (struct uploaded_tp): Move here from remote.c,
1462         add fields for actions.
1463         (struct uploaded_tsv): New struct.
1464         * tracepoint.c (tfile_ops): New target vector.
1465         (trace_fd): New global.
1466         (tfile_open): New function.
1467         (tfile_close): New function.
1468         (tfile_files_info): New function.
1469         (tfile_get_trace_status): New function.
1470         (tfile_get_traceframe_address): New function.
1471         (tfile_trace_find): New function.
1472         (tfile_fetch_registers): New function.
1473         (tfile_xfer_partial): New function.
1474         (tfile_get_trace_state_variable_value): New function.
1475         (init_tfile_ops): New function.
1476         (_initialize_tracepoint): Call it, add tfile target.
1477         (trace_status): New global.
1478         (current_trace_status): New function.
1479         (trace_running_p): Remove, change all users to get from
1480         current_trace_status()->running.
1481         (get_trace_status): Remove.
1482         (trace_status_command): Call target_get_trace_status directly,
1483         report more detail including tracing stop reasons.
1484         (trace_find_command): Always allow tfind on a file.
1485         (trace_find_pc_command): Ditto.
1486         (trace_find_tracepoint_command): Ditto.
1487         (trace_find_line_command): Ditto.
1488         (trace_find_range_command): Ditto.
1489         (trace_find_outside_command): Ditto.
1490         (trace_frames_offset, cur_offset): Declare as off_t.
1491         (trace_regblock_size): Rename from reg_size, update users.
1492         (parse_trace_status): New function.
1493         (tfile_interp_line): New function.
1494         (disconnect_or_stop_tracing): Ensure current trace
1495         status before asking what to do.
1496         (stop_reason_names): New global.
1497         (trace_save_command): New command.
1498         (get_uploaded_tp): Move here from remote.c.
1499         (find_matching_tracepoint): Ditto.
1500         (merge_uploaded_tracepoints): New function.
1501         (parse_trace_status): Use stop_reason_names.
1502         (_initialize_tracepoint): Define tsave command.
1503         * target.h (target_ops): New fields to_save_trace_data,
1504         to_upload_tracepoints, to_upload_trace_state_variables,
1505         to_get_raw_trace_data, change to_get_trace_status
1506         to take a pointer to a status struct.
1507         (target_save_trace_data): New macro.
1508         (target_upload_tracepoints): New macro.
1509         (target_upload_trace_state_variables): New macro.
1510         (target_get_raw_trace_data): New macro.
1511         * target.c (update_current_target): Add new methods, change
1512         signature of to_get_trace_status.
1513         * remote.c (hex2bin): Make globally visible.
1514         (bin2hex): Ditto.
1515         (remote_download_trace_state_variable): Download name also.
1516         (remote_get_trace_status): Update parameter, use
1517         parse_trace_status.
1518         (remote_save_trace_data): New function.
1519         (remote_upload_tracepoints): New function.
1520         (remote_upload_trace_state_variables): New function.
1521         (remote_get_raw_trace_data): New function.
1522         (remote_start_remote): Use them.
1523         (_initialize_remote_ops): Add operations.
1524         * ax-gdb.c: Include breakpoint.h.
1525         * breakpoint.c (create_tracepoint_from_upload): Use
1526         break_command_really, return tracepoint, warn about unimplemented
1527         parts.
1528         * NEWS: Mention trace file addition.
1529
1530 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
1531
1532         Fix compilation warning on gcc-3.4.
1533         * exec.c (print_section_info): Move the `displacement' variable
1534         initialization to its declaration.
1535
1536 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
1537
1538         * gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
1539         comparison.
1540
1541 2010-01-15  Eric Botcazou  <botcazou@adacore.com>
1542
1543         "info tasks" broken by typedefs in ATCB type definitions.
1544         * ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
1545         ada_check_typedef before retrieving the length of the type for
1546         regular fields.
1547
1548 2010-01-15  Joel Brobecker  <brobecker@adacore.com>
1549
1550         Do not use name-based lookup for unconstrained packed arrays.
1551         * ada-lang.c (find_parallel_type_by_descriptive_type):
1552         Limit the fallback to name-based lookups to the case where
1553         the type is a constrained packed array.
1554
1555 2010-01-15  Joel Brobecker  <brobecker@adacore.com>
1556
1557         Enhance gdb-gdb.py to handle main_type.type_specific.
1558         * gdb-gdb.py: Print the type-specific part of struct main_type.
1559
1560 2010-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
1561
1562         * configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
1563         * configure: Regenerate.
1564         * config.in: Regenerate.
1565         * utils.c: Include sys/resource.h.
1566         (dump_core, can_dump_core): New.
1567         (internal_vproblem): Update the comment.  Check can_dump_core while
1568         setting dump_core_p.  Replace two abort calls by dump_core calls.
1569
1570 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1571             Eli Zaretskii  <eliz@gnu.org>
1572
1573         * NEWS: Document the PIE support.
1574
1575 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1576
1577         * linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
1578         (check_is_pie_binary, _initialize_linux_tdep): Remove.
1579
1580 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1581
1582         * solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
1583         Replace exec_entry_point call by bfd_get_start_address.
1584
1585 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1586
1587         Support Valgrind attachments broken by the PIE support.
1588         * auxv.c: Include gdbcore.h.
1589         (procfs_xfer_auxv): Make static.  Reduce its comment.  Drop its
1590         parameters ops, object and annex.  Remove their assertions.
1591         (ld_so_xfer_auxv, memory_xfer_auxv): New function.
1592         * auxv.h (procfs_xfer_auxv): Remove comment.  Rename to ...
1593         (memory_xfer_auxv): ... here.
1594         * linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
1595         memory_xfer_auxv.
1596         * procfs.c (procfs_xfer_partial): Likewise.
1597         * solib-svr4.c (svr4_relocate_main_executable): New prototype.
1598         (svr4_special_symbol_handling): Call svr4_relocate_main_executable.
1599         (svr4_solib_create_inferior_hook): Conditionalize the
1600         svr4_relocate_main_executable call.
1601
1602 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1603
1604         * solib-svr4.c (scan_dyntag): Remove variable dyn_addr.  New variable
1605         target_section.  Find SECT in current_target_sections, gdb_assert it.
1606         (elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
1607         New variable abfd.
1608         * symtab.c (lookup_objfile_from_block): Return the binary file instead
1609         of separate debug info file.
1610
1611 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1612
1613         Support PIEs with no symfile_objfile.
1614         * exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
1615         * solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
1616
1617 2010-01-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
1618
1619         * solib-svr4.c (svr4_relocate_main_executable): Move the static exec
1620         code part to ...
1621         (svr4_static_exec_displacement): ... a new function.
1622         (svr4_exec_displacement): New function.
1623         (svr4_relocate_main_executable): Call svr4_exec_displacement.  Allocate
1624         new_offsets using alloca now.  Remove variable old_chain and changed.
1625         Call objfile_relocate unconditionally now.
1626
1627 2010-01-14  Doug Evans  <dje@google.com>
1628
1629         * gdbtypes.c (arch_flags_type): Fix comment.
1630         * gdbtypes.h (arch_composite_type): Fix comment.
1631
1632 2009-01-14  Tristan Gingold  <gingold@adacore.com>
1633
1634         * machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
1635         Call xstrdup for abfd->filename.  Pass symfile_flags and objfile flags
1636         to symbol_file_add_from_bfd.  Add OSO as separate objfile.
1637         (macho_oso_symfile): Add symfile_flags parameter.  Pass it to
1638         macho_add_oso_symfile.
1639         (macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
1640
1641 2010-01-14  Joel Brobecker  <brobecker@adacore.com>
1642
1643         Tru64: Dead threads are never deleted.
1644         * dec-thread.c (dec_thread_ptid_is_alive): New function.
1645         (dec_thread_count_gdb_threads): Fix counter increment.
1646         (dec_thread_add_gdb_thread): Fix *listp increment.
1647         (resync_thread_list): Fix bug in deletion of dead threads that
1648         caused all threads to be deleted, instead of just the dead ones.
1649
1650 2010-01-13  Phil Muldoon  <pmuldoon@redhat.com>
1651
1652         PR python/10705
1653
1654         * python/python-internal.h: Add lazy_string_object_type
1655         definition.
1656         (create_lazy_string_object, gdbpy_initialize_lazy_string)
1657         (gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
1658         * python/py-value.c (valpy_lazy_string): New function.
1659         (convert_value_from_python): Add lazy string conversion.
1660         * python/py-prettyprint.c (pretty_print_one_value): Check if
1661         return is also a lazy string.
1662         (print_string_repr): Add lazy string printing branch.
1663         (print_children): Likewise.
1664         * python/py-lazy-string.c: New file. Implement lazy strings.
1665         * python/python.c (_initialize_python): Call
1666         gdbpy_initialize_lazy_string.
1667         * varobj.c (value_get_print_value): Add lazy string printing
1668         branch.  Account for encoding.
1669         * c-lang.c (c_printstr): Account for new encoding argument.  If
1670         encoding is NULL, find encoding suited for type, otherwise use
1671         user encoding.
1672         * language.h (language_defn): Add encoding argument.
1673         (LA_PRINT_STRING): Likewise.
1674         * language.c (unk_lang_printstr): Update to reflect new encoding
1675         argument to language_defn.
1676         * ada-lang.h (ada_printstr): Likewise.
1677         * c-lang.h (c_printstr): Likewise.
1678         * p-lang.h (pascal_printstr);
1679         * f-lang.c (f_printstr): Likewise.
1680         * m2-lang.c (m2_printstr): Likewise.
1681         * objc-lang.c (objc_printstr): Likewise.
1682         * p-lang.c (pascal_printstr): Likewise.
1683         * scm-lang.c (scm_printstr): Likewise.
1684         * c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
1685         encoding argument.
1686         * ada-valprint.c (ada_printstr): Likewise.
1687         * f-valprint.c (f_val_print): Likewise
1688         * m2-valprint.c (m2_val_print): Likewise.
1689         * p-valprint.c (pascal_val_print): Likewise.
1690         * expprint.c (print_subexp_standard): Likewise.
1691         * valprint.c (val_print_string): Likewise.
1692         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
1693         (SUBDIR_PYTHON_SRCS): Likewise.
1694         (py-lazy-string.o): New rule.
1695
1696 2010-01-13  Doug Evans  <dje@google.com>
1697
1698         * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
1699         uninitialized" warning from gcc on local `tree'.
1700
1701 2010-01-13  Vladimir Prus  <vladimir@codesourcery.com>
1702
1703         Implement core awareness.
1704
1705         * bcache.c (compare_ints): Remove
1706         (print_percentage): Use compare_positive_ints.
1707         * defs.h (compare_positive_ints): Declare.
1708         * linux-nat.h (struct lin_lwp): New field core.
1709         (linux_nat_core_of_thread_1): Declare.
1710         * linux-nat.c (add_lwp): Init the 'core' field.
1711         (linux_nat_wait_1): Record the core.
1712         (linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
1713         (linux_nat_add_target): Register the above.
1714         * linux-thread-db.c (update_thread_core): New.
1715         (thread_db_find_new_threads): Update core information for
1716         every thread.
1717         * remote.c (struct private_thread_info): New.
1718         (free_private_thread_info, demand_private_info): New.
1719         (PACKET_qXfer_threads, use_osdata_threads): New.
1720         (struct thread_item, threads_parsing_context
1721         (start_thread, end_thread, thread_attributes)
1722         (thread_children, threads_children, threads_elements): New.
1723         (remote_threads_info): Try qXfer:threads before anything
1724         else.
1725         (remote_protocol_packets): Register qXfer:threads.
1726         (remote_open_1): Init use_osdata_threads.
1727         (struct stop_reply): New field 'core'.
1728         (remote_parse_stop_reply): Parse core number.
1729         (process_stop_reply): Record core number.
1730         (remote_xfer_partial): Handle qXfer:threads.
1731         (remote_core_of_thread): New.
1732         (init_remote_ops): Register remote_core_of_thread.
1733         (_initialize_remote): Register qXfer:read.
1734         * target.c (target_core_of_thread): New
1735         * target.h (enum target_object): New value TARGET_OBJECT_THREADS.
1736         (struct target_ops): New field to_core_of_threads.
1737         (target_core_of_thread): Declare.
1738         * gdbthread.h (struct thread_info): New field private_dtor.
1739         * thread.c (print_thread_info): Report the core.
1740         * ui-out.c (MAX_UI_OUT_LEVELS): Increase.
1741         * utils.c (compare_positive_ints): New.
1742         * features/threads.dtd: New.
1743         * mi/mi-interp.c (mi_on_normal_stop): Report the core.
1744         * mi/mi-main.c (struct collect_cores_data, collect_cores)
1745         (do_nothing, free_vector_of_osdata_items)
1746         (splay_tree_int_comparator, free_splay_tree): New.
1747         (print_one_inferior_data): Implemented printing of selected
1748         inferiors.  Collect and print cores.
1749         (output_cores): New.
1750         (mi_cmd_list_thread_groups): Support --recurse.  Permit specifying
1751         thread groups together with --available.
1752
1753 2010-01-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
1754
1755         * configure: Regenerate (for _STRUCTURED_PROC).
1756
1757 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
1758
1759         Delete dead function.
1760         * ada-lang.c (extract_string): Delete.  No longer used.
1761
1762 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
1763
1764         Fix -Wunused warning in dec-thread.c.
1765         * dec-thread.c (dec_thread_count_gdb_threads)
1766         (dec_thread_add_gdb_thread): Prevent -Wunused warning.
1767
1768 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
1769
1770         * ada-valprint.c (ada_print_floating): Remove trailing space.
1771
1772 2010-01-12  Joel Brobecker  <brobecker@adacore.com>
1773
1774         Add support for DW_AT_GNAT_descriptive_type.
1775         * gdbtypes.h (enum type_specific_kind): New enum.
1776         (struct main_type) [type_specific_field]: New component.
1777         [type_specific]: Add new component "gnat_stuff".
1778         (struct gnat_aux_type): New type.
1779         (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
1780         (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
1781         (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
1782         (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
1783         (TYPE_SPECIFIC_FIELD): New macros.
1784         (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
1785         type does not hold any cplus-specific data.
1786         (TYPE_RAW_CPLUS_SPECIFIC): New macro.
1787         (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
1788         (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
1789         cplus-specific data.
1790         * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
1791         Set new component TYPE_SPECIFIC_FIELD (type).
1792         (gnat_aux_default): New constant.
1793         (allocate_gnat_aux_type): New function.
1794         (init_type): Add initialization the type-specific stuff for
1795         TYPE_CODE_FLT and TYPE_CODE_FUNC types.
1796         (print_gnat_stuff): New function.
1797         (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
1798         specific data.  Adjust code that prints the contents of the
1799         type-specific union using the TYPE_SPECIFIC_FIELD value.
1800         * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
1801         the type cplus stuff for Ada types.
1802         (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
1803         Error out if these routines are called with an Ada type.
1804         (read_structure_type, read_array_type, read_subrange_type):
1805         Add call to set_descriptive_type.
1806         (set_die_type): Initialize the gnat-specific data if necessary.
1807         (need_gnat_info, die_descriptive_type, set_descriptive_type):
1808         New functions.
1809         * ada-lang.c (decode_constrained_packed_array_type): Use
1810         decode_constrained_packed_array_type instead of doing a standard
1811         lookup to locate a parallel type.
1812         (find_parallel_type_by_descriptive_type): New function.
1813         (ada_find_parallel_type_with_name): New function.
1814         (ada_find_parallel_type): Reimplement using
1815         ada_find_parallel_type_with_name.
1816         * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
1817         to check if type has a cplus stuff.
1818         * linespec.c (total_number_of_methods): Likewise.
1819         * mdebugread.c (new_type): Likewise.
1820
1821 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1822
1823         * NEWS: Document the 0b binary number prefix parsing.
1824
1825 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1826
1827         * objfiles.c (objfile_relocate1): Change the return type to int.
1828         Describe the new return value.  Return non-zero if data changed.
1829         (objfile_relocate): New variable changed.  Set it.  Call
1830         breakpoint_re_set depending on CHANGED.
1831
1832 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1833
1834         Implement binary numbers parsing.
1835         * c-exp.y (parse_number): New case 'b' and 'B'.
1836
1837 2010-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1838             Tristan Gingold  <gingold@adacore.com>
1839
1840         * solib.c (info_sharedlibrary_command): Replace
1841         objfile_has_partial_symbols and objfile_has_full_symbols calls by
1842         objfile_has_symbols.
1843
1844 2010-01-10  Joel Brobecker  <brobecker@adacore.com>
1845
1846         * NEWS: Document the improvements made to the mips-irix port.
1847
1848 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1849
1850         Fix the documentation of valprint.c:value_print.
1851         * valprint.c (value_print): Update the function description to
1852         mention that the syntax of the output follows the current_language,
1853         not necessarily C.
1854
1855 2010-01-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
1856
1857         Fix displacement of separate debug info files.
1858         * objfiles.c (objfile_relocate): Rename to ...
1859         (objfile_relocate1): ... here and make it static.  Extend the comment.
1860         (objfile_relocate): New function.
1861         * solib-spu.c (spu_relocate_main_executable): Explicitly check if
1862         SYMFILE_OBJFILE is NULL.  Remove variables objfile and old_chain.
1863         Remove following of SEPARATE_DEBUG_OBJFILE.  new_offsets is now
1864         allocated using alloca.
1865         * symfile.c (copy_section_addr_info): Remove.
1866         (build_section_addr_info_from_objfile): Make it global.  New variables
1867         addr_bit and mask, use them.
1868         * symfile.h (build_section_addr_info_from_objfile): New prototype.
1869         (copy_section_addr_info): Remove.
1870
1871 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1872
1873         Signal unwinder for mips-irix N32.
1874         * mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
1875         tramp-frame.h.
1876         (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
1877         (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
1878         (SIGCONTEXT_LO_OFF): New macros. 
1879         (mips_irix_n32_tramp_frame_init): New function. 
1880         (mips_irix_n32_tramp_frame): New static constant.
1881         (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
1882
1883 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1884
1885         Breakpoint in shared library does not work on mips-irix.
1886         * procfs.c: #include "observer.h".
1887         (procfs_inferior_created): New function, moving here the code
1888         which unsets the syssgi syscall-exit notifications.
1889         (procfs_create_inferior): Remove the code which unsets the syssgi
1890         syscall-exit notifications. It is too early to do this here.
1891         (_initialize_procfs): Attach the procfs_inferior_created observer.
1892
1893 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1894
1895         Wrong return convention for arrays (mips-irix).
1896         * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
1897         128 bits or smaller are returned the same way as structs
1898         and unions of the the same size.
1899
1900 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1901
1902         Cannot set the PC on mips-irix.
1903         * irix5-nat.c (fill_gregset): Check regno against the raw PC
1904         register number, no the cooked one.
1905
1906 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1907
1908         Error while loading core file on mips-irix.
1909         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
1910         if debugging from a core file.
1911
1912 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1913
1914         GDB hangs when attaching to process on mips-irix.
1915         * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
1916         attaching to a process.
1917
1918 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1919
1920         Use the correct breakpoint instruction on mips-irix.
1921         * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
1922         containing the correct breakpoint instruction to use on mips-irix.
1923         Use it when the osabi is GDB_OSABI_IRIX.
1924
1925 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1926
1927         -Wunused warning in procfs.c (mips-irix only).
1928         * procfs.c (gdb_praddset, gdb_prdelset): New macros.  Use them
1929         throughout instead of using praddset and prdelset respectively.
1930
1931 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1932
1933         GDB crash while stepping into function.
1934         * infrun.c (handle_inferior_event): Refetch the current frame
1935         after handling what.main_action, in case that pointer became
1936         dangling.
1937
1938 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
1939
1940         Fix build failure of solaris-hosted cross debuggers.
1941         * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
1942
1943 2010-01-09  Daniel Gutson  <dgutson@codesourcery.com>
1944
1945         Fix build failure on sparc-solaris.
1946         * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
1947
1948 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1949
1950         Move some symfile code into subroutines.
1951         * symfile.h (relative_addr_info_to_section_offsets)
1952         (addr_info_make_relative): New prototypes.
1953         * symfile.c (default_symfile_offsets): Move a part to ...
1954         (relative_addr_info_to_section_offsets): ... this new function.
1955         (default_symfile_offsets): Call it.
1956         (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
1957         this part to ...
1958         (addr_info_make_relative): ... this new function.
1959
1960 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
1961
1962         Add from_tty to solib_create_inferior_hook.
1963         * infcmd.c (post_create_inferior): Move solib_add after
1964         solib_create_inferior_hook.  Pass from_tty to
1965         solib_create_inferior_hook.  Call solib_add and SOLIB_ADD with
1966         0 from_tty and comment why.
1967         * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
1968         * linux-nat.c (linux_child_follow_fork): Likewise.
1969         * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
1970         * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
1971         from_tty.
1972         * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
1973         * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
1974         * solib-null.c (null_solib_create_inferior_hook): Likewise.
1975         * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
1976         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
1977         * solib-som.c (som_solib_create_inferior_hook): Likewise.
1978         * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
1979         Pass it to svr4_so_ops.solib_create_inferior_hook.
1980         * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
1981         from_tty.
1982         * solib-svr4.c (enable_break): New parameter from_tty.  Pass it to
1983         solib_add.
1984         (svr4_solib_create_inferior_hook): New parameter from_tty.  Pass it to
1985         enable_break.
1986         * solib-target.c (solib_target_solib_create_inferior_hook): New
1987         parameter from_tty.
1988         * solib.c (solib_create_inferior_hook): New parameter from_tty.  Pass
1989         it to ops->solib_create_inferior_hook.
1990         (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
1991         Move solib_add after solib_create_inferior_hook, call it now with
1992         from_tty as 0.  New comment there.
1993         * solib.h (solib_create_inferior_hook): New parameter from_tty.
1994         * solist.h (struct target_so_ops <solib_create_inferior_hook>):
1995         Likewise.
1996
1997 2010-01-08  Vladimir Prus  <vladimir@codesourcery.com>
1998
1999         Fix multiexec race.
2000         * infrun.c (handle_inferior_event): Use get_thread_regcache
2001         with events ptid, not get_current_regcache.
2002
2003 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
2004
2005         GDB crash with empty executable name (MinGW).
2006         * source.c (openp): Add assert that parameter string is not NULL.
2007         if parameter string is an empty string, then return with a failure
2008         immediately.
2009
2010 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
2011
2012         Get rid of support for VAX Floats.
2013         * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
2014         (ada_vax_float_print_function): Delete.
2015         * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
2016         (ada_vax_float_print_function): Delete.
2017         * ada-typeprint.c (print_vax_floating_point_type): Delete.
2018         (ada_print_type): Remove support for VAX floats.
2019         * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
2020
2021 2010-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
2022
2023         * stabsread.c (read_args): Handle zero arguments.
2024
2025 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
2026
2027         Cannot find in-tree libiconv.a after reconfigure.
2028         * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
2029         that we can use, then cache the path to this archive.
2030         * configure: Regenerate.
2031
2032 2010-01-07  Stan Shebs  <stan@codesourcery.com>
2033
2034         Make tracepoint operations go through target vector.
2035         * target.h (enum trace_find_type): New enum.
2036         (struct target_ops): New fields to_trace_init,
2037         to_download_tracepoint, to_download_trace_state_variable,
2038         to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
2039         to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
2040         to_set_disconnected_tracing.
2041         (target_trace_init): New macro.
2042         (target_download_tracepoint): New macro.
2043         (target_download_trace_state_variable): New macro.
2044         (target_trace_start): New macro.
2045         (target_trace_set_readonly_regions): New macro.
2046         (target_get_trace_status): New macro.
2047         (target_trace_stop): New macro.
2048         (target_trace_find): New macro.
2049         (target_get_trace_state_variable_value): New macro.
2050         (target_set_disconnected_tracing): New macro.
2051         * target.c (update_current_target): Inherit and set defaults for
2052         tracepoint operations.
2053         * tracepoint.c (default_collect): Make globally visible.
2054         (target_is_remote): Remove, along with all calls.
2055         (tvariables_info): Call target_get_trace_state_variable_value.
2056         (remote_set_transparent_ranges): Remove.
2057         (trace_start_command): Call target_trace_init,
2058         target_download_tracepoint, etc.
2059         (download_tracepoint): Remove.
2060         (trace_stop_command): Simplify.
2061         (stop_tracing): Call target_trace_stop.
2062         (get_trace_status): Call target_get_trace_status.
2063         (trace_status_command): Add case for targets that cannot trace.
2064         (finish_tfind_command): Change to take numerical arguments, call
2065         target_trace_find.
2066         (trace_find_command): Update call to finish_tfind_command.
2067         (trace_find_pc_command): Ditto.
2068         (trace_find_tracepoint_command): Ditto.
2069         (trace_find_line_command): Ditto.
2070         (trace_find_range_command): Ditto.
2071         (trace_find_outside_command): Ditto.
2072         (set_disconnected_tracing_value): Call
2073         target_set_disconnected_tracing.
2074         * remote.c: Add protocol encoding bits from tracepoint.c.
2075         (trace_error): Move from tracepoint.c.
2076         (remote_get_noisy_reply): Ditto.
2077         (free_actions_list_cleanup_wrapper): Ditto.
2078         (free_actions_list): Ditto.
2079         (remote_trace_init): New function.
2080         (remote_download_tracepoint): New function.
2081         (remote_download_trace_state_variable): New function.
2082         (remote_trace_set_readonly_regions): New function.
2083         (remote_trace_start): New function.
2084         (remote_get_trace_status): New function.
2085         (remote_trace_stop): New function.
2086         (remote_trace_find): New function.
2087         (remote_download_trace_state_variable): New function.
2088         (remote_set_disconnected_tracing): New function.
2089         (init_remote_ops): Add tracepoint operations.
2090
2091         * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
2092
2093 2010-01-07  Tristan Gingold  <gingold@adacore.com>
2094
2095         * symfile.c (build_section_addr_info_from_objfile): New function.
2096         (symbol_file_add_separate): Don't use offsets from objfile but
2097         built an addr info.
2098
2099 2010-01-06  Stan Shebs  <stan@codesourcery.com>
2100
2101         Support disconnected tracing.
2102         * infcmd.c (detach_command): Ask whether to stop tracing.
2103         * cli/cli-cmds.c (quit_command): Ditto.
2104         * breakpoint.h (struct breakpoint): New field number_on_target.
2105         * breakpoint.c (create_tracepoint_from_upload): New function.
2106         (get_tracepoint_by_number_on_target): New function.
2107         * remote.c (struct remote): New field disconnected_tracing.
2108         (remote_disconnected_tracing_feature): New function.
2109         (remote_protocol_features): Add DisconnectedTracing.
2110         (struct uploaded_tp): New struct.
2111         (uploaded_tps): New global.
2112         (get_uploaded_tp): New function.
2113         (find_matching_tracepoint): New function.
2114         (remote_get_tracing_state): New function.
2115         (remote_start_remote): Call it.
2116         * tracepoint.c (disconnected_tracing): New global.
2117         (trace_start_command): Initialize number_on_target.
2118         (stop_tracing): New function, split out from...
2119         (trace_stop_command): Call stop_tracing.
2120         (get_trace_status): New function, split out from...
2121         (trace_status_command): Call get_trace_status, add info on
2122         disconnection behavior.
2123         (disconnect_or_stop_tracing): New function.
2124         (finish_tfind_command): Translate from number on target.
2125         (trace_find_tracepoint_command): Translate to number on target.
2126         (send_disconnected_tracing_value): New function.
2127         (set_disconnected_tracing): New function.
2128         (_initialize_tracepoint): Add disconnected-tracing variable.
2129         * NEWS: Mention disconnected tracing.
2130
2131 2010-01-06  Tristan Gingold  <gingold@adacore.com>
2132
2133         * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
2134         parameter to main_objfile.  Iterate on all separate debug objfiles.
2135         * symfile.h (symbol_file_add_separate)
2136         (find_separate_debug_file_by_debuglink): Remove parameter names.
2137         * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
2138         (reread_symbols): Use free_objfile_separate_debug.
2139         * objfiles.h (struct objfile): Add separate_debug_objfile_link.
2140         Adjust comment.
2141         (objfile_separate_debug_iterate, add_separate_debug_objfile)
2142         (free_objfile_separate_debug): New prototypes.
2143         * objfiles.c (objfile_separate_debug_iterate): New function.
2144         (add_separate_debug_objfile, free_objfile_separate_debug): New
2145         functions.
2146         (free_objfile): Use free_objfile_separate_debug.  Adjust for
2147         multiple separate debug objfile.
2148         (objfile_has_symbols): Adjust comment.  Iterate on all separate
2149         debug objfiles.
2150         * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
2151         debug objfile.
2152         (lookup_minimal_symbol_text): Ditto.
2153         (lookup_minimal_symbol_by_pc_name): Ditto.
2154         (lookup_minimal_symbol_solib_trampoline): Ditto.
2155         (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
2156         debug objfiles.
2157
2158 2010-01-05  Stan Shebs  <stan@codesourcery.com>
2159
2160         Add fast tracepoints.
2161         * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
2162         * arch-utils.c (default_fast_tracepoint_valid_at): New function.
2163         * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
2164         * breakpoint.c (tracepoint_type): New function.
2165         (ALL_TRACEPOINTS): Use it.
2166         (should_be_inserted): Ditto.
2167         (bpstat_check_location): Ditto.
2168         (print_one_breakpoint_location): Ditto.
2169         (user_settable_breakpoint): Ditto.
2170         (set_breakpoint_location_function): Ditto.
2171         (disable_breakpoints_in_shlibs): Ditto.
2172         (delete_trace_command): Ditto.
2173         (print_it_typical): Add bp_fast_tracepoint case.
2174         (bpstat_what): Ditto.
2175         (print_one_breakpoint_location): Ditto.
2176         (allocate_bp_location): Ditto.
2177         (mention): Ditto.
2178         (breakpoint_re_set_one): Ditto.
2179         (disable_command): Ditto.
2180         (enable_command): Ditto.
2181         (check_fast_tracepoint_sals): New function.
2182         (break_command_really): Call it.
2183         (ftrace_command): New function.
2184         (_initialize_breakpoint): Add ftrace command.
2185         * gdbarch.sh (fast_tracepoint_valid_at): New.
2186         * gdbarch.h, gdbarch.c: Regenerate.
2187         * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
2188         (i386_gdbarch_init): Use it.
2189         * remote.c (struct remote_state): New field fast_tracepoints.
2190         (PACKET_FastTracepoints): New packet config type.
2191         (remote_fast_tracepoint_feature): New function.
2192         (remote_protocol_features): Add FastTracepoints.
2193         (remote_supports_fast_tracepoints): New function.
2194         (_initialize_remote): Add FastTracepoints.
2195         * tracepoint.c (download_tracepoint): Add fast tracepoint option.
2196         * NEWS: Mention fast tracepoints.
2197
2198 2010-01-06  Joel Brobecker  <brobecker@adacore.com>
2199
2200         * gdb-gdb.py: New file.
2201
2202 2010-01-05  Michael Snyder  <msnyder@vmware.com>
2203
2204         * infrun.c (handle_inferior_event): Fix typo in comment.
2205
2206 2010-01-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
2207
2208         * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
2209
2210 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
2211
2212         * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
2213         and s390x-linux64.
2214         (s390-linux32-expedite): Define.
2215         (s390-linux64-expedite): Define.
2216         (s390x-linux64-expedite): Define.
2217         * features/s390-acr.xml: New file.
2218         * features/s390-fpr.xml: New file.
2219         * features/s390-core32.xml: New file.
2220         * features/s390-core64.xml: New file.
2221         * features/s390x-core64.xml: New file.
2222         * features/s390-linux32.xml: New file.
2223         * features/s390-linux64.xml: New file.
2224         * features/s390x-linux64.xml: New file.
2225         * features/s390-linux32.c: New generated file.
2226         * features/s390-linux64.c: New generated file.
2227         * features/s390x-linux64.c: New generated file.
2228
2229         * regformats/s390-linux32.dat: New generated file.
2230         * regformats/s390-linux64.dat: New generated file.
2231         * regformats/s390x-linux64.dat: New generated file.
2232         * regformats/reg-s390.dat: Remove.
2233         * regformats/reg-s390x.dat: Remove.
2234
2235         * s390-nat.c: Include "auxv.h" and <elf.h>.
2236         (HWCAP_S390_HIGH_GPRS): Define if undefined.
2237         (s390_target_wordsize): New function.
2238         (s390_auxv_parse): Likewise.
2239         (s390_get_hwcap): Likewise.
2240         (s390_read_description): Likewise.
2241         (_initialize_s390_nat): Install s390_auxv_parse and
2242         s390_read_description.
2243
2244         * s390-tdep.c: Include "features/s390-linux32.c",
2245         "features/s390-linux64.c", and "features/s390x-linux64.c".
2246         (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
2247         (s390_register_call_saved): New function.
2248         (s390_register_name): Remove.
2249         (s390_register_type): Remove.
2250         (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
2251         (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
2252         (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
2253         (s390_pseudo_register_name): New function.
2254         (s390_pseudo_register_type): New function.
2255         (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
2256         Handle full GPR pesudos and varying pseudo register numbers.
2257         (s390_pseudo_register_write): Likewise
2258         (s390x_pseudo_register_read): Remove.
2259         (s390x_pseudo_register_write): Likewise.
2260         (s390_register_group): Remove.
2261         (s390_pseudo_register_group): New function.
2262         (s390_regmap_gregset): Add GPR upper halves.
2263         (s390x_regmap_gregset): Likewise.
2264         (s390_regmap_fpregset): Likewise.
2265         (s390_regmap_upper): New global variable.
2266         (s390_upper_regset): New global variable.
2267         (s390_upper_regset_sections): New global variable.
2268         (s390_regset_from_core_section): Handle GPR upper halves.
2269         (s390_core_read_description): New function.
2270         (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
2271         register information.  Handle varying pseudo register numbers.
2272         (s390_backchain_frame_unwind_cache): Likewise.
2273         (s390_frame_prev_register): Unwind full GPRs to show lower halves.
2274         (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
2275         (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
2276         PC and CC pseudos.  Unwind upper halves and full GPRs as appropriate.
2277         Handle varying pseudo register numbers.
2278         (s390_unwind_pc): Handle varying pseudo register numbers.
2279         (s390_dwarf2_prev_register): New function.
2280         (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
2281         register information.  Handle varying pseudo register numbers.
2282         Install s390_dwarf2_prev_register to unwind full GPRs.
2283         (s390_gdbarch_init): Handle target descriptions.  Assign varying
2284         pseudo register numbers.  Install s390_adjust_frame_regnum.
2285         (_initialize_s390_tdep): Initialize target descriptions.
2286
2287         * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
2288         (S390_NUM_REGS): Redefine to include upper half registers.
2289         (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
2290         (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
2291         (tdesc_s390_linux32): Add declaration.
2292         (tdesc_s390_linux64): Likewise.
2293         (tdesc_s390x_linux64): Likewise.
2294
2295 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
2296
2297         * regset.h (struct core_regset_section): Add HUMAN_NAME.
2298         * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
2299         * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
2300         (ppc_linux_vmx_regset_sections): Likewise.
2301         (ppc_linux_fp_regset_sections): Likewise.
2302
2303         * corelow.c (get_core_register_section): Constify arguments.
2304         (get_core_registers): Use gdbarch_core_regset_sections instead
2305         of hard-coded platform-specific register section names.
2306
2307 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
2308
2309         * dwarf2loc.c (read_pieced_value): If a piece occupies part of
2310         a register, assume the least-significant part is used.
2311         (write_pieced_value): Likewise.
2312
2313 2010-01-04  Ulrich Weigand  <uweigand@de.ibm.com>
2314
2315         * printcmd.c: Include "arch-utils.h".
2316         (do_one_display): Re-parse expression if current architecture changed.
2317
2318 2010-01-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
2319             Joel Brobecker  <brobecker@adacore.com>
2320
2321         * gdbtypes.c (check_typedef): New comment on type length.
2322         * value.c (allocate_value_lazy): Remove the unused atype variable.  New
2323         comment on type length.
2324         (value_primitive_field): Keep the original TYPE value, new comment.
2325
2326 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
2327
2328         * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
2329         p_start.  Change != comparisons to > and < comparisons.
2330
2331 2010-01-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
2332
2333         * cli/cli-script.c (process_next_line): Check P2 overrun.
2334
2335 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
2336
2337         Update the copyright hearder to add year 2010 for most GDB files.
2338
2339 2009-01-01  Joel Brobecker  <brobecker@adacore.com>
2340
2341         Fix build failure in inf-ptrace.c.
2342         * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
2343
2344 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
2345
2346         * top.c (print_gdb_version): Update copyright year.
2347
2348 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
2349
2350         Fix break *FUN'address thread NUM.
2351         * ada-lex.l (task): Expand rule to also match the thread keyword.
2352
2353 2010-01-01  Joel Brobecker  <brobecker@adacore.com>
2354
2355         Fix break *FUN'address task NUM.
2356         * ada-lex.l (task): New rule.
2357         * ada-lang.c (valid_task_id): Make sure the Ada task list has
2358         been built before using it.
2359
2360 For older changes see ChangeLog-2009.
2361 \f
2362 Local Variables:
2363 mode: change-log
2364 left-margin: 8
2365 fill-column: 74
2366 version-control: never
2367 coding: utf-8
2368 End: