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