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