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