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