1 2010-03-24 Tom Tromey <tromey@redhat.com>
4 * NEWS: Mention changes to `commands' and `rbreak'.
5 * symtab.c (do_end_rbreak_breakpoints): New function.
6 (rbreak_command): Call start_rbreak_breakpoints; arrange to call
7 end_rbreak_breakpoints.
8 * breakpoint.c (breakpoint_count, tracepoint_count): Now static.
9 (set_breakpoint_count): Likewise. Clear last_was_multi.
10 (multi_start, multi_end, last_was_multi): New globals.
11 (start_rbreak_breakpoints, end_rbreak_breakpoints): New
13 (struct commands_info): New
14 (do_map_commands_command): New function.
15 (commands_command_1): New function.
16 (commands_command): Use it.
17 (commands_from_control_command): Likewise.
18 (do_delete_breakpoint): New function.
19 (delete_command): Use it.
20 (map_breakpoint_numbers): Add 'data' argument. Pass to callback.
21 (do_map_disable_breakpoint): New function.
22 (disable_command): Use it.
23 (do_map_enable_breakpoint): New function.
24 (enable_command): Use it.
25 (enable_once_breakpoint): Add argument.
26 (enable_once_command): Update.
27 (enable_delete_breakpoint): Add argument.
28 (enable_delete_command): Update.
29 (break_command_really): Set last_was_multi when needed.
30 (check_tracepoint_command): Fix formatting.
31 (validate_commands_for_breakpoint): New function.
32 (breakpoint_set_commands): Use it.
33 (tracepoint_save_command): Update.
34 * breakpoint.h (start_rbreak_breakpoints, end_rbreak_breakpoints):
37 2010-03-24 Tom Tromey <tromey@redhat.com>
39 * breakpoint.h (struct counted_command_line): New struct.
40 (struct breakpoint) <commands>: Change type.
41 (struct bpstats) <commands>: Change type.
42 <commands_left>: New field.
43 * breakpoint.c (alloc_counted_command_line): New function.
44 (incref_counted_command_line): Likewise.
45 (decref_counted_command_line): Likewise.
46 (do_cleanup_counted_command_line): Likewise.
47 (make_cleanup_decref_counted_command_line): Likewise.
48 (breakpoint_set_commands): Use decref_counted_command_line and
49 alloc_counted_command_line.
50 (commands_command): Don't error if breakpoint commands are
52 (commands_from_control_command): Likewise.
53 (bpstat_free): Update.
54 (bpstat_copy): Likewise.
55 (bpstat_clear_actions): Likewise.
56 (bpstat_do_actions_1): Likewise.
57 (bpstat_stop_status): Likewise.
58 (print_one_breakpoint_location): Likewise.
59 (delete_breakpoint): Likewise.
60 (bpstat_alloc): Initialize new field.
61 (tracepoint_save_command): Update.
62 * tracepoint.c (encode_actions): Update.
63 (trace_dump_command): Update.
65 2010-03-24 Daniel Jacobowitz <dan@codesourcery.com>
67 * dwarf2-frame.c (dwarf2_frame_find_quirks): Use producer_is_realview.
68 * dwarf2read.c (load_full_comp_unit): Read DW_AT_producer.
69 (read_structure_type): For RealView, set TYPE_STUB on structures with
70 no byte size and no children.
71 (read_subroutine_type): Mark functions as prototyped by default.
72 * symtab.c (producer_is_realview): New function.
73 * symtab.h (expand_line_sal): Fix declaration formatting.
74 (producer_is_realview): Declare.
76 2010-03-24 Daniel Jacobowitz <dan@codesourcery.com>
78 * arm-tdep.c (skip_prologue_function): New function.
79 (submask, bit, bits, sbits, BranchDest): Move higher in the file.
80 (thumb_analyze_prologue): Document return value. Recognize more
81 Thumb instructions, skippable calls, and some Thumb-2 instructions.
83 (arm_skip_prologue): Remove call dummy check. Check the prologue
84 for non-GNU compilers.
85 (arm_instruction_changes_pc): New function.
86 (arm_analyze_prologue): New function, broken out from
87 arm_scan_prologue. Recognize more ARM instructions and skippable
88 calls. Update comments. Handle NULL cache. Return the address
89 of the first unrecognized instruction. Do not skip past other
90 instructions which change control flow. Add debug output.
91 (arm_scan_prologue): Use arm_analyze_prologue.
93 (shifted_reg_val): Simplify ARM_PC_32 check.
95 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
97 * tracepoint.c (tvariables_info_1): Actually compute
98 the number of rows in the result.
100 2010-03-24 Pedro Alves <pedro@codesourcery.com>
102 * remote.c (crc32): Constify `buf' parameter.
103 (remote_verify_memory): New, abstracted out from...
104 (compare_sections_command): ... this. Remove hardcoded target
106 (init_remote_ops): Install remote_verify_memory.
107 * target.c (target_verify_memory): New.
108 * target.h (struct target_ops) <to_verify_memory>: New field.
109 (target_verify_memory): Declare.
111 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
113 Implement -trace-save.
115 * mi-cmds.h (mi_cmds_trace_save): Declare.
116 * mi-cmds.c (mi_cmds): Register -trace-save.
117 * mi/mi-main.c (mi_cmd_trace_save): New.
118 * remote.c (remote_save_trace_data): Take const parameter.
119 * target.h (struct target_ops::to_save_trace_data): Take
121 * target.c (update_current_target): Adjust to the above.
122 * tracepoint.c (trave_save): New, extracted from
123 (trace_save_command): ...this.
124 (tfile_trace_find): Remove message that is unnecessary now
125 that 'tfind' reports found frame.
126 * tracepoint.h (trace_save): Declare.
128 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
130 Implement -trace-find.
132 * mi/mi-cmds.c (mi_cmds): Register -trace-find.
133 * mi/mi-cmds.h (mi_cmd_trace_find): Declare.
134 * mi/mi-main.c (mi_cmd_trace_find): New.
135 * target.h (struct target_ops): Document to_trace_find.
136 * tracepoint.h (tfind_1): Declare.
137 * tracepoint.c (finish_tfind_command): Rename to...
139 * remote.c (remote_trace_find): Return -1 if target say
140 there's no frame. Improve error diagnostics.
142 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
144 -trace-define-variable and -trace-list-variables.
146 * tracepoint.c (create_trace_state_variable): Make
147 private copy of name, as opposed to assuming the
148 pointer lives forever.
149 (tvariables_info_1): New.
150 (tvariables_info): Use the above.
151 * tracepoint.h (create_trace_state_variable, tvariables_info_1):
153 * mi/mi-cmds.c (mi_cmds): Register -trace-define-variable
154 and -trace-list-variables.
155 * mi/mi-cmds.h (mi_cmd_trace_define_variable)
156 (mi_cmd_trace_list_variables): New.
157 * mi/mi-main.c (mi_cmd_trace_define_variable)
158 (mi_cmd_trace_list_variables): New.
160 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
162 Implement -break-passcount.
164 * mi/mi-cmd-break.c (mi_cmd_break_passcount): New.
165 * mi/mi-cmds.c (mi_cmds): Register -break-passcount.
166 * mi/mi-cmds.h (mi_cmd_break_passcount): Declare.
168 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
170 -trace-start/-trace-end/-trace-status.
172 * mi/mi-cmds.c (mi_cmds): Register -trace-start, -trace-status
174 * mi/mi-cmds.h (mi_cmd_trace_start, mi_cmd_trace_status)
175 (mi_cmd_trace_stop): Declare.
176 * mi/mi-main.c (mi_cmd_trace_start, mi_cmd_trace_status)
177 (mi_cmd_trace_stop): New.
178 * tracepoint.c (start_tracing): New, extracted from...
179 (trace_start_command): ...this.
180 (trace_status_mi): New.
181 * tracepoint.h (struct trace_status): Document
183 (start_tracing, stop_tracing, trace_status_mi): Declare.
185 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
187 Implement creating tracepoints with -break-insert.
189 * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle -a
190 to mean that tracepoint should be created.
192 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
194 * breakpoint.c (check_no_tracepoint_commands): Use
195 current spelling of 'teval'.
197 2010-03-24 Vladimir Prus <vladimir@codesourcery.com>
199 Unify actions and commands
201 * defs.h (read_command_lines, read_command_lines_1): New
202 parameters validator and closure.
203 * tracepoint.h (struct action_line): Remove.
204 * breakpoint.h (struct breakpoint): Remove the 'actions'
206 * defs.h (enum command_control_type): New value
207 while_stepping_control.
208 (struct command_line): Add comments.
209 * breakpoint.c (breakoint_is_tracepoint): New.
210 (breakpoint_set_commands): For tracepoints,
211 verify the commands are permissible.
212 (check_tracepoint_commands): New.
213 (commands_command): Require that each new line is validated using
214 check_tracepoint_command, if we set commands for a tracepoint.
215 (create_tracepoint_from_upload): Likewise.
216 (print_one_breakpoint_location): Remove the code to print
217 actions specifically.
218 (tracepoint_save_command): Relay to print_command_lines.
219 * cli/cli-script.c (process_next_line): New parameters validator
220 and closure. Handle 'while-stepping'. Call validator if not null.
221 (read_command_lines, read_command_lines1): Likewise.
222 (recurse_read_control_structure): New parameters validator and
223 closure. Handle while_stepping_control.
224 (print_command_lines): Handle while-stepping.
225 (get_command_line, define_command, document_command): Adjust.
226 * remote.c (remote_download_tracepoint): Adjust.
227 * tracepoint.c (make_cleanup_free_actions, read_actions)
228 (free_actions, do_free_actions_cleanup): Remove.
229 (trace_actions_command): Use read_command_lines.
230 (validate_actionline): Use error in one place.
231 (encode_actions_1): New, extracted from...
232 (encode_actions): ...this. Also use cleanups for exception
234 (trace_dump_command): Adjust.
235 * mi/mi-cmd-break (mi_cmd_break_commands): Validate commands if
238 2010-03-23 Mike Frysinger <vapier@gentoo.org>
240 * Makefile.in (OPCODES_CFLAGS): Add -I$(OPCODES_SRC)/..
242 2010-03-22 Stan Shebs <stan@codesourcery.com>
244 * value.c (value_static_field): Be lazy about the field's value.
246 2010-03-22 Reid Kleckner <reid@kleckner.net>
249 * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Add
251 (disable_breakpoints_in_shlibs): Likewise.
253 2010-03-22 Ulrich Weigand <uweigand@de.ibm.com>
255 * dwarf2read.c (partial_die_parent_scope): Work around buggy
256 GCC 4.1 debug info generation (GCC PR c++/28460).
257 (determine_prefix): Likewise.
259 2010-03-20 Daniel Jacobowitz <dan@codesourcery.com>
261 * tui/tui-disasm.c (tui_get_begin_asm_address): Default to
263 * tui/tui-layout.c (extract_display_start_addr): Likewise.
265 2010-03-19 Stan Shebs <stan@codesourcery.com>
267 * ax-gdb.c (gen_fetch): Handle bool.
268 (gen_usual_unary): Ditto.
270 (gen_equal): New function.
271 (gen_less): New function.
272 (gen_expr_binop_rest): Call them, also return integer type from
276 2010-03-19 Tom Tromey <tromey@redhat.com>
278 * jv-lang.c (jv_dynamics_objfile_data_key)
279 (jv_type_objfile_data_key): New globals.
280 (class_symtab): Move earlier.
281 (jv_per_objfile_free): New function.
282 (get_dynamics_objfile): Call set_objfile_data. Add 'gdbarch'
284 Remove ancient #if 1.
285 (add_class_symbol): Remove redundant declaration.
286 (java_lookup_class): Use alloc_type, not alloc_type_arch.
287 (java_link_class_type): Mark as static. Update.
288 (jv_clear_object_type): New function.
289 (set_java_object_type): Likewise.
290 (get_java_object_type): Use set_java_object_type.
291 (is_object_type): Likewise.
292 (_initialize_java_language): Register new objfile keys.
293 (get_java_class_symtab): Add 'gdbarch' parameter.
294 (add_class_symtab_symbol): Update.
295 (type_from_class): Update.
297 2010-03-19 Stan Shebs <stan@codesourcery.com>
299 * ax-general.c (ax_const_l): Fix a sizing bug.
301 2010-03-18 Joel Brobecker <brobecker@adacore.com>
305 2010-03-18 Stan Shebs <stan@codesourcery.com>
306 Pedro Alves <pedro@codesourcery.com>
308 * target.h (struct target_ops): New method
309 to_set_circular_trace_buffer.
310 (target_set_circular_trace_buffer): New macro.
311 * target.c (update_current_target): Add
312 to_set_circular_trace_buffer, fix to_set_disconnected_tracing
314 * remote.c (remote_set_circular_trace_buffer): New function.
315 (init_remote_ops): Add it to vector.
316 * tracepoint.h (struct trace_status): New field traceframes_created,
317 change buffer_size and buffer_free to int.
318 * tracepoint.c (circular_trace_buffer): New global.
319 (start_tracing): Send values of disconnected tracing and circular
320 trace buffer settings.
321 (set_circular_trace_buffer): New function.
322 (parse_trace_state): Handle total space and frames created.
323 (trace_status_command): Display total space and total frames
325 (trace_save): Write out new status values.
326 (parse_trace_status): Set traceframe_count, traceframes_created,
327 buffer_free and buffer_size to -1 by default.
328 (_initialize_tracepoint): New setshow for circular-trace-buffer.
329 * NEWS: Mention the circular trace buffer option.
331 2010-03-18 Tom Tromey <tromey@redhat.com>
333 * infcmd.c (finish_command_continuation): Wrap print_return_value
336 2010-03-18 Joel Brobecker <brobecker@adacore.com>
338 * dwarf2read.c (add_partial_subprogram): Make sure the subprogram
339 DIE has a name before creating the associated partial symbol.
340 (read_func_scope): Emit a complaint if the subprogram does not
341 have a name or when we can't extract the subprogram PC bounds.
343 2010-03-18 Ulrich Weigand <uweigand@de.ibm.com>
345 * mi/mi-main.c (mi_cmd_list_thread_groups): Use get_current_arch
346 instead of selected frame architecture.
348 2010-03-18 Pedro Alves <pedro@codesourcery.com>
350 * infcmd.c (until_command): Use ERROR_NO_INFERIOR. Ensure there's
351 a valid selected thread, and that it is not running.
352 (advance_command): Ditto.
353 (finish_command): Ditto.
355 2010-03-17 Stan Shebs <stan@codesourcery.com>
357 * ax-gdb.c (require_rvalue): Disallow non-scalars.
359 * infcall.c: Include tracepoint.h.
360 (call_function_by_hand): Disallow calls in tfind mode.
361 * infcmd.c: Include tracepoint.h.
362 (ensure_not_tfind_mode): New function.
363 (continue_1): Call it.
365 (jump_command): Ditto.
366 (signal_command): Ditto.
367 (advance_command): Ditto.
368 (until_command): Ditto.
369 (finish_command): Ditto.
370 * tracepoint.h (disconnect_or_stop_tracing): Declare.
372 * ax-gdb.h (struct axs_value): New field optimized_out.
373 (gen_trace_for_var): Add gdbarch argument.
374 * ax-gdb.c (gen_trace_static_fields): New function.
375 (gen_traced_pop): Call it, add gdbarch argument.
376 (gen_trace_for_expr): Update call to it.
377 (gen_trace_for_var): Ditto, and report optimized-out variables.
378 (gen_struct_ref_recursive): Check for optimized-out value.
379 (gen_struct_elt_for_reference): Ditto.
380 (gen_static_field): Pass gdbarch instead of expression, assume
381 optimization if field not found.
382 (gen_var_ref): Set the optimized_out flag.
383 (gen_expr): Error on optimized-out variable.
384 * tracepoint.c (collect_symbol): Handle struct-valued vars as
385 expressions, skip optimized-out variables with computed locations.
386 * dwarf2loc.c (dwarf2_tracepoint_var_ref): Flag instead of
387 erroring out if location expression missing.
388 (loclist_tracepoint_var_ref): Don't error out here.
390 2010-03-17 Tom Tromey <tromey@redhat.com>
392 * dwarf2read.c (dwarf2_get_section_info): Handle case where no
393 DWARF data is available.
395 2010-03-17 Daniel Jacobowitz <dan@codesourcery.com>
397 * symfile.c (generic_load): Reset breakpoints after loading.
399 2010-03-17 Tom Tromey <tromey@redhat.com>
401 * linux-nat.c (linux_nat_detach): Check debug_linux_nat.
403 2010-03-17 Jan Kratochvil <jan.kratochvil@redhat.com>
405 * spu-tdep.c (spu_catch_start): Replace set_breakpoint call with the
406 create_breakpoint call, adjust the parameters.
408 2010-03-16 Jan Kratochvil <jan.kratochvil@redhat.com>
409 Chandru <chandru@in.ibm.com>
411 * dwarf2read.c (read_subrange_type): Set TYPE_HIGH_BOUND_UNDEFINED.
412 * valarith.c (value_subscripted_rvalue): Suppress error if
413 TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
415 2010-03-16 Holger Hans Peter Freyther <zecke@selfish.org>
417 * linux-record.c (record_linux_msghdr): Remove unintended semicolons.
419 2010-03-16 Joel Brobecker <brobecker@adacore.com>
421 * ada-tasks.c (task_command_1): Check that the task ptid is valid
422 before doing the associated thread switch.
424 2010-03-16 Daniel Jacobowitz <dan@codesourcery.com>
426 * MAINTAINERS: Update my email address.
428 2010-03-16 Vladimir Prus <vladimir@codesourcery.com>
430 Simplify MI breakpoint setting.
432 * breakpoint.c (break_command_really): Make nonstatic and
434 (create_breakpoint): ...this. Rename prior function by this name
436 (create_breakpoint_sal): ...this.
437 (create_breakpoints): Rename to...
438 (create_breakpoints_sal): ...this.
439 (set_breakpoint): Remove.
440 * breakpoint.h: Adjust to above changes.
441 * mi/mi-cmd-break.c (mi_cmd_break_insert): Simplify.
443 2010-03-15 Stan Shebs <stan@codesourcery.com>
445 * ax-gdb.c: Include cp-support.h.
446 (find_field): Remove.
447 (gen_primitive_field): New function.
448 (gen_struct_ref_recursive): New function.
449 (gen_struct_ref): Rewrite to call gen_struct_ref_recursive instead
451 (gen_static_field): New function.
452 (gen_struct_elt_for_reference): New.
453 (gen_namespace_elt): New.
454 (gen_maybe_namespace_elt): New.
455 (gen_aggregate_elt_ref): New.
456 (gen_expr): Add OP_SCOPE, display opcode name in error message.
458 2010-03-15 Tom Tromey <tromey@redhat.com>
460 * dwarf2read.c (die_needs_namespace): Also return 0 for
463 2010-03-15 Sami Wagiaalla <swagiaal@redhat.com>
466 * cp-support.h: Added char *declaration element to using_direct
468 (cp_add_using): Added char *declaration argument.
469 (cp_add_using_directive): Ditto.
470 (cp_lookup_symbol_imports): made extern.
471 * cp-namespace.c: Updated with the above changes.
472 * dwarf2read.c (read_import_statement): Ditto.
473 (read_namespace): Ditto.
474 (read_import_statement): Support import declarations.
475 * cp-namespace.c (cp_lookup_symbol_imports): Check for imported
477 Added support for 'declaration_only' search.
478 (cp_lookup_symbol_namespace): Attempt to search for the name as
479 is before consideration of imports.
480 * symtab.c (lookup_symbol_aux_local): Added a 'declaration_only'
481 search at every block level search.
482 Now takes language argument.
483 (lookup_symbol_aux): Updated.
485 2010-03-15 Tom Tromey <tromey@redhat.com>
487 * c-exp.y (name_not_typename): Add 'operator' clause.
489 2010-03-15 Ralf Corsepius <ralf.corsepius@rtems.org> (tiny change)
491 * configure.ac: Exit if ${gdb_target_obs}" is not set.
492 * configure: Regenerate.
494 2010-03-15 Jan Kratochvil <jan.kratochvil@redhat.com>
496 * symfile.c (addr_info_make_relative): Ignore also missing ".dynbss"
497 and ".sdynbss". Update the comment.
499 2010-03-15 Jie Zhang <jie@codesourcery.com>
501 * MAINTAINERS: Update my email address.
503 2010-03-14 Daniel Jacobowitz <dan@codesourcery.com>
505 * gdbtypes.h (TYPE_IS_OPAQUE): Correct HAVE_CPLUS_STRUCT check.
507 2010-03-14 Daniel Jacobowitz <dan@codesourcery.com>
509 * charset.c [USE_WIN32API]: Include <windows.h>.
510 (_initialize_charset): Correct type of w32_host_default_charset.
512 2010-03-14 Pedro Alves <pedro@codesourcery.com>
514 * infrun.c (ptid_match): Don't assert that PTID is not a pid ptid.
516 2010-03-12 Tom Tromey <tromey@redhat.com>
519 * dwarf2read.c (die_needs_namespace) <DW_TAG_variable>: A variable
520 in a lexical block does not need a namespace.
521 (new_symbol) <DW_TAG_variable>: Put extern variables on
522 list_in_scope in all cases.
524 2010-03-12 Stan Shebs <stan@codesourcery.com>
526 * ax-gdb.c (gen_expr): Add shift expressions.
527 (gen_expr_binop_rest): Ditto.
529 2010-03-12 Sami Wagiaalla <swagiaal@redhat.com>
531 * buildsym.c (finish_block): Reset using_directives pointer
532 after block initialization.
534 2010-03-12 H.J. Lu <hongjiu.lu@intel.com>
536 * amd64-tdep.c (amd64_word_names): Replace "sp" with "".
537 * i386-tdep.c (i386_word_names): Likewise.
539 2010-03-12 Pedro Alves <pedro@codesourcery.com>
541 * target.c (memory_xfer_partial): Don't use the stack cache if
542 inspecting trace frames.
543 * tracepoint.c (finish_tfind_command): Invalidate the target
546 2010-03-11 Jan Kratochvil <jan.kratochvil@redhat.com>
548 * solib-svr4.c (LM_ADDR_CHECK) <info_verbose>: Use printf_unfiltered
549 for the PIC displacement, print also the displacement value.
550 (svr4_exec_displacement): Print DISPLACEMENT if INFO_VERBOSE.
552 2010-03-10 Kevin Buettner <kevinb@redhat.com>
554 * remote-mips.c (close_ports, mips_initialize_cleanups)
555 (mips_exit_cleanups, mips_send_command, mips_open, pmon_open)
556 (ddb_open, lsi_open, mips_remove_breakpoint, mips_remove_watchpoint)
557 (mips_stopped_by_watchpoint, send_srec, pmon_checkset)
558 (pmon_make_fastrec, pmon_check_ack, mips_expect_download)
559 (pmon_check_entry_address, pmon_check_total, pmon_end_download)
560 (pmon_download, pmon_load_fast, _initialize_remote_mips): Add
561 comments describing each of these functions.
562 (mips_enter_debug, mips_exit_debug, common_open)
563 (mips_signal_from_protocol, pmon_makeb64, pmon_zeroset): Add
564 blank line after the comment describing the function.
566 2010-03-10 Jan Kratochvil <jan.kratochvil@redhat.com>
568 * solib-svr4.c (svr4_exec_displacement): Return now success, new
569 parameter displacementp. Update comment.
570 (svr4_relocate_main_executable): Return if non-zero SECTION_OFFSETS
571 element exists. Return if svr4_exec_displacement was not successful.
574 2010-03-10 Jan Kratochvil <jan.kratochvil@redhat.com>
575 Daniel Jacobowitz <dan@codesourcery.com>
577 * solib-svr4.c (read_program_header): Support type == -1 to read
579 (read_program_headers_from_bfd): New function.
580 (svr4_static_exec_displacement): Remove and move the comment ...
581 (svr4_exec_displacement): ... here. Remove variable found. New
582 variable displacement. Check also DYNAMIC. Verify DISPLACEMENT
583 alignment for ELF targets. Compare target vs. exec_bfd PHDRs for ELF
584 targets using read_program_headers_from_bfd. Remove the call of
585 svr4_static_exec_displacement.
587 2010-03-10 Tom Tromey <tromey@redhat.com>
589 * dwarf2read.c (struct pubnames_header): Remove.
590 (_PUBNAMES_HEADER): Remove.
591 (_ACTUAL_PUBNAMES_HEADER_SIZE): Remove.
592 (struct aranges_header): Remove.
593 (_ARANGES_HEADER, _ACTUAL_ARANGES_HEADER_SIZE): Remove.
594 (struct dwarf2_per_objfile) <pubnames, aranges>: Remove.
595 (PUBNAMES_SECTION): Remove.
596 (ARANGES_SECTION): Remove.
597 (dwarf2_locate_sections): Don't handle pubnames or aranges.
598 (dwarf2_build_psymtabs): Remove dead code.
599 (dwarf2_build_psymtabs_easy): Remove.
601 2010-03-10 Tom Tromey <tromey@redhat.com>
603 * elfread.c (elf_symfile_read): Don't call
604 dwarf2_build_frame_info.
605 * dwarf2read.c (struct dwarf2_section_info) <readin>: New field.
606 (struct dwarf2_per_objfile) <objfile>: New field.
607 (dwarf2_has_info): Now idempotent. Set objfile field.
608 (dwarf2_read_section): Check and set readin field. Call
610 (dwarf2_build_psymtabs): Don't read all sections.
611 (read_type_comp_unit_head): Read types section.
612 (create_debug_types_hash_table): Likewise.
613 (init_cu_die_reader): Add asserts.
614 (process_type_comp_unit): Add assert.
615 (dwarf2_build_psymtabs_hard): Read info section.
616 (load_partial_comp_unit): Add assert.
617 (create_all_comp_units): Read info section.
618 (load_full_comp_unit): Likewise.
619 (dwarf2_ranges_read): Read ranges section.
620 (dwarf2_record_block_ranges): Add assert.
621 (dwarf2_read_abbrevs): Read abbrev section.
622 (read_indirect_string): Read str section.
623 (dwarf_decode_line_header): Read line section.
624 (read_signatured_type_at_offset): Read types section.
625 (dwarf_decode_macros): Read macinfo section.
626 (dwarf2_symbol_mark_computed): Read loc section.
627 * dwarf2-frame.c (dwarf2_frame_find_fde): Call
628 dwarf2_build_frame_info.
629 (dwarf2_build_frame_info): Unconditionally set
630 dwarf2_frame_objfile_data on the objfile.
631 * configure.ac: Check for posix_madvise.
632 * config.in, configure: Rebuild.
634 2010-03-10 Tom Tromey <tromey@redhat.com>
636 * xcoffread.c (xcoff_start_psymtab): Update.
637 (xcoff_end_psymtab): Update.
638 * psymtab.c (allocate_psymtab): Remove dead code.
639 * psympriv.h (struct partial_symtab) <read_symtab_private>: Now
641 * mdebugread.c (parse_partial_symbols): Update.
642 (new_psymtab): Likewise.
643 * dwarf2read.c (process_psymtab_comp_unit): Update.
644 (psymtab_to_symtab_1): Update.
645 * dbxread.c (start_psymtab): Update.
646 (end_psymtab): Likewise.
648 2010-03-10 Tom Tromey <tromey@redhat.com>
650 * xcoffread.c: Include psymtab.h.
651 (xcoff_sym_fns): Update.
652 * symtab.h (struct partial_symbol): Remove.
653 (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.
654 (struct partial_symtab): Remove.
655 (PSYMTAB_TO_SYMTAB): Remove.
656 (lookup_partial_symbol, lookup_partial_symtab, find_pc_psymtab)
657 (find_pc_sect_psymtab): Remove.
658 (find_pc_sect_symtab_via_partial): Declare.
659 (find_pc_psymtab, find_pc_sect_psymbol, psymtab_to_symtab)
660 (find_main_psymtab): Remove.
661 (find_main_filename): Declare.
662 (fixup_psymbol_section): Remove.
663 (fixup_section): Declare.
664 * symtab.c: Include psymtab.h.
665 (lookup_symtab): Use lookup_symtab method.
666 (lookup_partial_symtab): Remove.
667 (find_pc_sect_psymtab_closer): Remove.
668 (find_pc_sect_psymtab): Remove.
669 (find_pc_sect_symtab_via_partial): New function.
670 (find_pc_psymtab, find_pc_sect_psymbol, find_pc_psymbol): Remove.
671 (fixup_section): No longer static.
672 (fixup_psymbol_section): Remove.
673 (lookup_symbol_aux): Use lookup_symbol_aux_quick.
674 (lookup_global_symbol_from_objfile): Likewise.
675 (lookup_symbol_aux_psymtabs): Remove.
676 (lookup_symbol_aux_quick): New function.
677 (lookup_symbol_global): Use lookup_symbol_aux_quick.
678 (lookup_partial_symbol): Remove.
679 (basic_lookup_transparent_type_quick): New function.
680 (basic_lookup_transparent_type): Use it.
681 (find_main_psymtab): Remove.
682 (find_main_filename): New function.
683 (find_pc_sect_symtab): Use find_pc_sect_symtab method.
684 (find_line_symtab): Use expand_symtabs_with_filename method.
685 (output_partial_symbol_filename): New function.
686 (sources_info): Use map_partial_symbol_filenames.
687 (struct search_symbols_data): New type.
688 (search_symbols_file_matches): New function.
689 (search_symbols_name_matches): Likewise.
690 (search_symbols): Use expand_symtabs_matching method.
691 (struct add_name_data): Rename from add_macro_name_data.
692 (add_macro_name): Update.
693 (add_partial_symbol_name): New function.
694 (default_make_symbol_completion_list): Use
695 map_partial_symbol_names.
696 (struct add_partial_symbol_name): New type.
697 (maybe_add_partial_symtab_filename): New function.
698 (make_source_files_completion_list): Use
699 map_partial_symbol_filenames.
700 (expand_line_sal): Use expand_symtabs_with_filename method.
701 * symmisc.c: Include psymtab.h.
702 (print_objfile_statistics): Use print_stats method.
703 (dump_objfile): Use dump method.
704 (dump_psymtab, maintenance_print_psymbols)
705 (maintenance_info_psymtabs, maintenance_check_symtabs)
706 (extend_psymbol_list): Remove.
707 * symfile.h (struct quick_symbol_functions): New struct.
708 (struct sym_fns) <qf>: New field.
709 (sort_pst_symbols): Remove.
710 (increment_reading_symtab): Declare.
711 * symfile.c: Include psymtab.h.
712 (compare_psymbols, sort_pst_symbols): Remove.
713 (psymtab_to_symtab): Remove.
714 (increment_reading_symtab): New function.
715 (symbol_file_add_with_addrs_or_offsets): Use expand_all_symtabs
717 (set_initial_language): Use find_main_filename.
718 (allocate_psymtab, discard_psymtab, cashier_psymtab): Remove.
719 (free_named_symtabs): Remove unused code.
720 (start_psymtab_common, add_psymbol_to_bcache)
721 (append_psymbol_to_list, add_psymbol_to_list, init_psymbol_list):
723 * stack.c: Include psymtab.h, symfile.h.
724 (backtrace_command_1): Use find_pc_sect_symtab_via_partial.
725 * source.h (psymtab_to_fullname): Don't declare.
726 * source.c: Include psymtab.h.
727 (select_source_symtab): Use find_last_source_symtab method.
728 (forget_cached_source_info): Use forget_cached_source_info
730 (find_and_open_source): No longer static.
731 (psymtab_to_fullname): Remove.
732 * somread.c: Include psymtab.h.
733 (som_sym_fns): Update.
734 * psympriv.h: New file.
735 * psymtab.h: New file.
736 * psymtab.c: New file.
737 * objfiles.h: (ALL_OBJFILE_PSYMTABS): Remove.
738 (ALL_PSYMTABS, ALL_PSPACE_PSYMTABS): Likewise.
739 * objfiles.c: Include psymtab.h.
740 (objfile_relocate1): Use relocate method.
741 (objfile_has_partial_symbols): Use has_symbols method.
742 * mipsread.c: Include psymtab.h.
743 (ecoff_sym_fns): Update.
744 * mi/mi-cmd-file.c: Include psymtab.h.
745 (print_partial_file_name): New function.
746 (mi_cmd_file_list_exec_source_files): Use
747 map_partial_symbol_filenames.
748 * mdebugread.c: Include psympriv.h.
749 * machoread.c: Include psympriv.h.
750 (macho_sym_fns): Update.
751 * m2-exp.y (yylex): Use lookup_symtab.
752 * elfread.c: Include psympriv.h.
753 (elf_sym_fns): Update.
754 * dwarf2read.c: Include psympriv.h.
755 * dbxread.c: Include psympriv.h.
756 (aout_sym_fns): Update.
757 * cp-support.c: Include psymtab.h.
758 (read_in_psymtabs): Remove.
759 (make_symbol_overload_list_qualified): Use
760 expand_symtabs_for_function method.
761 * coffread.c: Include psympriv.h.
762 (coff_sym_fns): Update.
763 * blockframe.c: Include psymtab.h.
764 (find_pc_partial_function): Use find_pc_sect_symtab method.
765 * ada-lang.h (ada_update_initial_language): Update.
766 * ada-lang.c: Include psymtab.h.
767 (ada_update_initial_language): Remove 'main_pst' argument.
768 (ada_lookup_partial_symbol): Remove.
769 (struct ada_psym_data): New type.
770 (ada_add_psyms): New function.
771 (ada_add_non_local_symbols): Use map_ada_symtabs method.
772 (struct add_partial_datum): New type.
773 (ada_add_partial_symbol_completions): New function.
774 (ada_make_symbol_completion_list): Use map_partial_symbol_names.
775 (ada_exception_support_info_sniffer): Update.
776 * Makefile.in (SFILES): Add psymtab.c.
777 (COMMON_OBS): Add psymtab.o.
778 (HFILES_NO_SRCDIR): Add psymtab.h, psympriv.h.
780 2010-03-10 Pierre Muller <muller@ics.u-strasbg.fr>
782 * remote-fileio.c (cygwin_conv_path): Define macro for old cygwin API.
784 2010-03-10 Sami Wagiaalla <swagiaal@redhat.com>
787 * cp-namespace.c (cp_add_using): Deleted.
788 (cp_add_using_directive): Use obstack allocations.
789 Merged the function cp_add_using into this one.
790 Added 'struct obstack *' argument.
791 (cp_scan_for_anonymous_namespaces): Updated.
792 * cp-support.h: Updated.
793 * dwarf2read.c (read_import_statement): Updated.
794 (read_namespace): Updated.
796 2010-03-10 Pierre Muller <muller@ics.u-strasbg.fr>
798 * windows-nat.c (cygwin_conv_path): Remove old macro.
800 2010-03-10 Pedro Alves <pedro@codesourcery.com>
802 * breakpoint.c (condition_command): Handle watchpoint conditions.
803 (is_hardware_watchpoint): Add comment.
804 (is_watchpoint): New.
805 (update_watchpoint): Don't reparse the watchpoint's condition
808 (watchpoint_check): Use it.
809 (bpstat_check_watchpoint): Handle it.
810 (bpstat_check_breakpoint_conditions): Evaluate watchpoint local
811 conditions in a frame where it makes sense.
812 (watch_command_1): Store the innermost block of the condition
814 (delete_breakpoint): Delete the watchpoint condition expression.
815 * breakpoint.h (struct bp_location) <cond>: Update comment.
816 (struct breakpoint): New field `cond_exp_valid_block'.
818 2010-03-09 Joel Brobecker <brobecker@adacore.com>
820 Adjust handling of Ada DIEs after dwarf2_physname patch.
821 * dwarf2read.c (dwarf2_compute_name): Add handling of Ada DIEs.
823 2010-03-09 Christopher Faylor <me+cygwin@cgf.cx>
824 Pierre Muller <muller@ics.u-strasbg.fr>
826 * windows-nat.c (cygwin_conv_path): Redefine to properly convert
828 (windows_make_so): Use non-Cygwin 1.7 specific function.
829 (windows_create_inferior): Make sure that cygallargs points to
830 original args in non Cygwin 1.7. case.
832 2010-03-09 Michael Snyder <msnyder@vmware.com>
834 * i386-tdep.c (i386_record_lea_modrm_addr): Use extract_signed_int
835 after target_read_memory to get host byte order.
836 (i386_process_record): Ditto.
838 2010-03-09 Keith Seitz <keiths@redhat.com>
840 Based on work from Daniel Jacobowitz <dan@codesourcery.com>
841 * c-typeprint.c (cp_type_print_method_args): For non-static methods,
842 print out const or volatile qualifiers, too.
843 (c_type_print_args): Add parameters show_artificial and language.
844 Skip artificial parameters when requested.
845 Use the appropriate language printer.
846 (c_type_print_varspec): Tell c_type_print_args to skip artificial
847 parameters and pass language_c.
848 * dwarf2read.c (die_list): New file global.
849 (struct partial_die_info): Update comments for name field.
850 (pdi_needs_namespace): Renamed to ...
851 (die_needs_namespace): ... this. Rewrite.
852 (dwarf2_linkage_name): Remove.
853 (add_partial_symbol): Do not predicate the call to
854 partial_die_full_name based on pdi_needs_namespace.
855 Remove call to cp_check_possible_namespace_symbols and associated
857 (guess_structure_name): Do not inspect child subprogram DIEs.
858 (dwarf2_fullname): Update comments.
859 Use die_needs_namespace to assist in computing the name.
860 (read_func_scope): Use dwarf2_name to get the DIE's name.
861 Use dwarf2_physname to get the "linkage name" of the DIE.
862 (dwarf2_add_member_field): Use dwarf2_physname instead of
864 (read_structure_type): For structs and classes, set TYPE_NAME, too.
865 (determine_class): Remove.
866 (read_partial_die): Ignore DW_AT_MIPS_linkage_name for all languages
868 (new_symbol): Unconditionally call dwarf2_name.
869 Compute the "linkage name" using dwarf2_physname.
870 Use dwarf2_name instead of dwarf2_full_name for enumerator DIEs.
871 When determining to scan for anonymous C++ namespaces, ignore
873 (dwarf2_physname): New function.
874 (dwarf2_full_name): Move content to new function and call
876 (dwarf2_compute_name): "New" function.
877 (_initialize_dwarf2_read): Initialize die_list.
878 * gnu-v3-eabi.c (gnu_v3_find_method_in): Remove unused variable
880 (gnu_v3_print_method_ptr): Use the physname for virtual methods
881 without a demangled name.
882 Print out type information for non-virtual methods.
883 * linespec.c (decode_line_1): Force ANY string using "::" (or
884 "." for java) to use decode_compound, and clean up any stray quoting.
885 If we found a file symtab, re-evaluate whether the remainder is_quoted.
886 (decode_compound): Stop consuming at an open parenthesis.
887 Keep template parameters.
888 Keep any overload information.
889 Keep keywords like "const".
890 Remove paren_pointer.
891 Move is_quoted check from set_flags to here.
892 Remove #if 0 code from 2000. Ten years is long enough.
893 (find_method): Before comparing symbol names, canonicalize the string
895 If a specific overload is requested, find it. Otherwise throw an error.
896 (find_method_overload_end): New function.
898 (decode_compound): Assume that parentheses are matched.
900 * symtab.c (symbol_find_demangled_name): Add DMGL_VERBOSE flag
902 * linespec.c (decode_line_1): Keep important keywords like
903 "const" and "volatile".
904 * symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): Remove.
905 * typeprint.h (c_type_print_args): Add declaration.
906 * ui-file.c (do_ui_file_obsavestring): New function.
907 (ui_file_obsavestring): New function.
908 * ui-file.h (ui_file_obsavestring): Add declaration.
909 * valops.c (find_overload_match): Resolve the object to
911 If the object is a data member, search the object for the member
912 and return with staticp set.
913 Use SYMBOL_NATURAL_NAME instead of SYMBOL_CPLUS_DEMANGLED_NAME.
914 Do not attempt to extract a function name from non-function types.
915 If the extracted function name and the original name are the same,
916 we don't have a C++ method.
918 From Jan Kratochvil <jan.kratochvil@redhat.com>:
919 * dwarf2read.c (new_symbol <DW_TAG_enumerator>): Call dwarf2_full_name.
921 * ada-lang.c (ada_lookup_symbol): Remove linkage_name parameters
922 and arguments from symbol lookups.
923 * ax-gdb.c (gen_expr): Likewise.
924 * cp-namespace.c (cp_lookup_symbol_nonlocal, lookup_namespace_scope,
925 cp_lookup_symbol_namespace, lookup_symbol_file, lookup_nested_type,
926 lookup_possible_namespace_symbol): Likewise.
927 * cp-support.c (read_in_psymtabs): Likewise.
928 * cp-support.h (cp_lookup_symbol_nonlocal): Likewise.
929 * language.h (la_lookup_symbol_nonlocal): Likewise.
930 * scm-valprint.c (scm_inferior_print): Likewise.
931 * solib-darwin.c (darwin_relocate_section_addresses): Likewise.
932 * solib-svr.c (elf_lookup_lib): Likewise.
933 * solib.c (show_auto_solib_add): Likewise.
934 * solist.h (lookup_lib_global, solib_global_lookup): Likewise.
935 * symmisc.c (maintenance_check_symtabs): Likewise.
936 * symtab.c (lookup_symbol_in_language, lookup_symbol_aux,
937 lookup_symbol_aux_local, lookup_symbol_aux_block,
938 lookup_symbol_from_objfile, lookup_symbol_aux_symtabs,
939 lookup_symbol_aux_psymtabs,basic_lookup_symbol_nonlocal,
940 lookup_symbol_static, lookup_symbol_global, symbol_matches_domain,
941 basic_lookup_transparent_type, find_main_psymtab,
942 lookup_block_symbol): Likewise.
943 * symtab.h (basic_lookp_symbol_nonlocal, lookup_symbol_static,
944 lookup_symbol_global, lookup_symbol_aux_block,
945 lookup_symbol_partial_symbol, lookup_block_symbol,
946 lookup_global_symbol, value_maybe_namespace_elt): Likewise.
948 2010-03-09 Pierre Muller <muller@ics.u-strasbg.fr>
950 * python/python-internal.h: Include symtab.h.
952 2010-03-09 Joel Brobecker <brobecker@adacore.com>
953 Pierre Muller <muller@ics.u-strasbg.fr>
955 * p-lang.c (is_pascal_string_type): Remove unneeded parentheses.
956 * p-valprint.c (pascal_val_print): Remove undeed block and fix
959 2010-03-08 Tom Tromey <tromey@redhat.com>
961 * breakpoint.c (breakpoint_1): Add "QUIT".
963 2010-03-08 Daniel Jacobowitz <dan@codesourcery.com>
964 Pedro Alves <pedro@codesourcery.com>
966 * solib.c (solib_find): Replace extension if
967 solib_symbols_extension is set in the target gdbarch.
968 * arm-symbian-tdep.c (arm_symbian_init_abi): Set
969 solib_symbols_extension to "sym".
970 * gdbarch.sh (solib_symbols_extension): New variable.
971 (pstring): New function.
972 * gdbarch.h, gdbarch.c: Regenerate.
974 2010-03-08 Tom Tromey <tromey@redhat.com>
978 * utils.c: Include main.h.
979 (fputs_maybe_filtered): Don't paginate if `batch_flag'.
980 (defaulted_query): Use default answer if `batch_flag'.
981 * main.h (batch_flag): Declare.
982 * main.c (batch_flag): New global.
983 (captured_main): Remove 'batch'. Update.
985 2010-03-08 Kevin Buettner <kevinb@redhat.com>
987 From Richard Sandiford, Martin M. Hunt, Corinna Vinschen,
990 * remote-mips.c (rockhopper_ops): New target_ops struct.
991 (MON_ROCKHOPPER): New mips_monitor_type.
992 (read_hex_value): New function.
993 (mips_request): Send 8-byte values with a 'T' packet. Read the
994 packet argument as a string and use read_hex_value to parse it.
995 (mips_exit_debug): Wait for response when using MON_ROCKHOPPER.
996 (rockhopper_open): New function.
997 (mips_wait): Read the PC, FP and SP fields as strings. Use
998 read_hex_value to parse them and mips_set_register to commit them.
999 (mips_set_register): New function.
1000 (mips_fetch_registers): Do not cast register value to "unsigned"
1001 when reading a MON_ROCKHOPPER 't' packet. Use mips_set_register.
1002 (mips_store_registers): Use a 'T' packet to set registers when
1003 using MON_ROCKHOPPER.
1004 (pmon_end_download): Don't run initEther if using MON_ROCKHOPPER
1005 and expect the total to be printed before the entry address.
1006 (_initialize_remote_mips): Initialize and add rockhopper_ops.
1008 2010-03-08 Kevin Buettner <kevinb@redhat.com>
1010 * remote-mips.c (mips_fetch_word): Add new parameter, `valp'.
1011 Change return value to int. Store value fetched in location
1012 addressed by `val'. Use function's return value as success
1013 or failure indicator. Adjust all callers.
1015 2010-03-08 Pierre Muller <muller@ics.u-strasbg.fr>
1017 * p-lang.c (is_pascal_string_type): Check that TYPE arg is non NULL.
1019 2010-03-08 Jan Kratochvil <jan.kratochvil@redhat.com>
1020 Hui Zhu <teawater@gmail.com>
1022 * record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and
1023 tmp_to_stopped_data_address.
1024 (record_open): Reset tmp_to_stopped_by_watchpoint and
1025 tmp_to_stopped_data_address.
1026 * target.c (init_dummy_target): Add to_stopped_by_watchpoint and
1027 to_stopped_data_address.
1029 2010-03-08 Hui Zhu <teawater@gmail.com>
1031 * i386-tdep.c (i386_process_record): Initialize regnum.
1033 2010-03-08 Jan Kratochvil <jan.kratochvil@redhat.com>
1035 * symfile.c (addr_info_make_relative): New variable sect_name, use it.
1036 Do not warn on ".gnu.liblist" and ".gnu.conflict".
1038 2010-03-08 Joel Brobecker <brobecker@adacore.com>
1040 Memory error when reading wrong core file.
1041 * solib-svr4.c (solib_svr4_r_map): catch and print all exception
1042 errors while reading the inferior memory, and return zero if
1043 an exception was raised.
1045 2010-03-07 Michael Snyder <msnyder@vmware.com>
1047 * record.c (record_restore): Rename tmpu8 to rectype.
1049 * i386-tdep.c (i386_record_lea_modrm_addr): Rename local variables
1050 tmpu8, tmpi16, tmpi32, tmpulongest to addr8, addr16, addr32, addr64.
1052 (i386_record_push): Rename local tmpulongest to addr.
1054 (i386_process_record): Rename local tmpulongest to addr.
1056 Rename local variables tmpu16, tmpu32, tmpu64 to addr16, addr32,
1059 Rename local variable tmpu8 to opcode8 and regnum.
1061 2010-03-07 Joel Brobecker <brobecker@adacore.com>
1063 * remote.c (remote_get_ada_task_ptid): New function.
1064 (init_remote_ops): Set remote_ops.to_get_ada_task_ptid.
1066 2010-03-06 Christopher Faylor <me+cygwin@cgf.cx>
1068 * windows-nat.c: Reorganize #ifdef __CYGWIN__ considerations into one
1069 block. Define helper macros to reduce ifdefs in code.
1070 (get_module_name): Use cygwin_buf_t for buffer and __PMAX for buffer
1071 size. Call unadorned GetModuleFileNameEx rather than
1072 GetModuleFileNameEx*.
1073 (windows_make_so): Use __PMAX to denote maximum buffer size and
1074 cygwin_buf_t for buffer type. Use GetSystemDirectory{W,A} as
1076 (get_image_name): Use __PMAX to denote maximum buffer size.
1077 (handle_load_dll): Likewise.
1078 (windows_pid_to_exec_file): Likewise.
1079 (windows_create_inferior): Add many accommodations for older Cygwin and
1081 (bad_GetModuleFileNameExW): Control inclusion of this function based on
1082 __USEWIDE conditional.
1083 (bad_GetModuleFileNameExA): Likewise.
1084 (_initialize_loadable): Just use real function names without the dyn_
1085 part since they are defined earlier.
1087 2010-03-05 Corinna Vinschen <vinschen@redhat.com>
1088 Tom Tromey <tromey@redhat.com>
1090 * utils.c (host_char_to_target): Add 'gdbarch' argument.
1091 (parse_escape): Likewise.
1092 * python/py-utils.c (unicode_to_target_string): Update.
1093 (unicode_to_target_python_string): Update.
1094 (target_string_to_unicode): Update.
1095 * printcmd.c (printf_command): Update.
1096 * p-exp.y (yylex): Update.
1097 * objc-exp.y (yylex): Update.
1098 * mi/mi-parse.c: Include charset.h.
1099 (mi_parse_escape): New function.
1100 (mi_parse_argv): Use it.
1101 * jv-exp.y (yylex): Update.
1102 * i386-cygwin-tdep.c (i386_cygwin_auto_wide_charset): New
1104 (i386_cygwin_init_abi): Call set_gdbarch_auto_wide_charset.
1105 * gdbarch.sh (auto_charset, auto_wide_charset): New.
1106 * gdbarch.c: Rebuild.
1107 * gdbarch.h: Rebuild.
1108 * defs.h (parse_escape): Update.
1109 * cli/cli-setshow.c: Include arch-utils.h.
1110 (do_setshow_command): Update.
1111 * cli/cli-cmds.c (echo_command): Update.
1112 * charset.h (target_charset, target_wide_charset): Update.
1113 * charset.c: Include arch-utils.h.
1114 (target_charset_name): Default to "auto".
1115 (target_wide_charset_name): Likewise.
1116 (show_target_charset_name): Handle "auto".
1117 (show_target_wide_charset_name): Likewise.
1118 (be_le_arch): New global.
1119 (set_be_le_names): Add 'gdbarch' argument.
1120 (validate): Likewise. Don't call set_be_le_names.
1121 (set_charset_sfunc, set_host_charset_sfunc)
1122 (set_target_charset_sfunc, set_target_wide_charset_sfunc):
1124 (target_charset): Add 'gdbarch' argument.
1125 (target_wide_charset): Likewise. Remove 'byte_order' argument.
1126 (auto_target_charset_name): New global.
1127 (default_auto_charset, default_auto_wide_charset): New functions.
1128 (_initialize_charset): Set auto_target_charset_name. Allow "auto"
1129 for target charsets. Copy result of nl_langinfo. Use GetACP if
1131 * c-lang.c (charset_for_string_type): Add 'gdbarch' argument,
1132 remove 'byte_order' argument. Update.
1133 (classify_type): Likewise.
1134 (c_emit_char): Update.
1135 (c_printchar): Update.
1136 (c_printstr): Update.
1137 (c_get_string): Update.
1138 (evaluate_subexp_c): Update.
1139 * arch-utils.h (default_auto_charset, default_auto_wide_charset):
1141 * python/python.c (gdbpy_target_charset): New function.
1142 (gdbpy_target_wide_charset): Likewise.
1143 (GdbMethods): Update.
1146 2010-03-05 Ulrich Weigand <uweigand@de.ibm.com>
1148 * symfile.c (build_section_addr_info_from_objfile): Do not mask
1149 off high address bits.
1151 2010-03-05 Ulrich Weigand <uweigand@de.ibm.com>
1153 * python/py-lazy-string.c (gdbpy_extract_lazy_string): Extract
1154 address as UnsignedLongLong, not LongLong.
1156 2010-03-05 Kevin Buettner <kevinb@redhat.com>
1157 Pedro Alves <pedro@codesourcery.com>
1159 * remote-mips.c (gdbthread.h): Include.
1160 (remote_mips_ptid): Declare.
1161 (mips_error): Only mourn the inferior when inferior_ptid is non-null.
1162 (common_open): Set inferior_ptid, add it as an inferior, and
1163 as a thread too. Delete FIXME comment regarding start_remote().
1164 (mips_close): Invoke generic_mourn_inferior().
1165 (mips_kill): Make sure that target_mourn_inferior is invoked.
1166 (mips_mourn_inferior): Don't invoke generic_mourn_inferior, as
1167 it's now invoked from mips_close().
1168 (mips_load): Don't null out inferior_ptid. Don't call
1169 clear_symtab_users().
1170 (mips_thread_alive, mips_pid_to_str): New functions.
1171 (_initialize_remote_mips): Initialize remote_mips_ptid. Initialize
1172 to_thread_alive and to_pid_to_str operations.
1174 2010-03-04 Tom Tromey <tromey@redhat.com>
1176 * dwarf2read.c (skip_one_die) <DW_FORM_ref_addr>: Use offset size
1177 in DWARF 3 and later.
1178 (read_attribute_value) <DW_FORM_ref_addr>: Likewise.
1180 2010-03-04 Keith Seitz <keiths@redhat.com>
1182 * linespec.c (decode_line_1): Update comments for is_quote_enclosed.
1183 If the filename portion of the linespec was quoted, recheck the
1184 remainder for additional quoting.
1185 (locate_first_half): Skip over completer chars, too.
1187 2010-03-04 Tom Tromey <tromey@redhat.com>
1189 * printcmd.c (printf_command): Pass dummy argument to
1192 2010-03-04 Doug Evans <dje@google.com>
1194 * arm-tdep.c (arm_make_stub_cache): Delete unused locals reg,
1197 * arm-tdep.c (arm_stub_unwind_sniffer): Add comment.
1199 2010-03-04 Pedro Alves <pedro@codesourcery.com>
1201 * breakpoint.c (update_watchpoint): Create a sentinel location if
1202 the software watchpoint isn't watching any memory.
1203 (breakpoint_address_bits): Skip dummy software watchpoint locations.
1205 2010-03-04 Pedro Alves <pedro@codesourcery.com>
1207 * utils.c (fputs_maybe_filtered): Check if there's already a top
1208 level interpreter before dereferencing it. If there isn't one,
1209 don't paginate either.
1211 2010-03-04 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
1213 * arm-tdep.c (arm_pc_is_thumb): Add heuristic that tries to get
1214 the state right when single stepping.
1215 (arm_get_next_pc_raw, thumb_get_next_pc_raw): New functions.
1216 Get the next PC along with the instruction state.
1217 (thumb_get_next_pc): Remove.
1218 (arm_get_next_pc): Modified to use arm_get_next_pc_raw.
1220 2010-03-04 Hui Zhu <teawater@gmail.com>
1222 * i386-tdep.c (i386_process_record): Change "addr" to "tmpu64".
1224 2010-03-03 Pedro Alves <pedro@codesourcery.com>
1226 * utils.c (fputs_maybe_filtered): Always disable pagination if the
1227 top level interpreter is MI.
1229 2010-03-03 Stan Shebs <stan@codesourcery.com>
1231 * remote.c (remote_download_tracepoint): Iterate over locations.
1232 * tracepoint.c (validate_actionline): Ditto.
1233 (encode_actions): Add location argument.
1234 (trace_dump_command): Check all locations to see if stepping
1237 2010-03-03 H.J. Lu <hongjiu.lu@intel.com>
1238 Eli Zaretskii <eliz@gnu.org>
1240 * NEWS: Add X86 general purpose registers section.
1242 2010-03-03 Tom Tromey <tromey@redhat.com>
1245 * varobj.c (install_new_value): Handle case where new print_value
1248 2010-03-03 Dainis Jonitis <jonitis@gmail.com>
1251 * printcmd.c (printf_command): Print end of format string using
1254 2010-03-02 Tom Tromey <tromey@redhat.com>
1256 * mi/mi-cmd-break.c (mi_read_next_line): Add missing 'void'.
1257 * defs.h (read_command_lines_1): Add missing 'void'.
1258 * cli/cli-script.c (recurse_read_control_structure): Add missing
1260 (read_next_line): Likewise.
1261 (read_command_lines_1): Likewise.
1263 2010-03-02 Ulrich Weigand <uweigand@de.ibm.com>
1265 * spu-tdep.c (spu_analyze_prologue): Track instruction to
1266 store backchain as part of prologue.
1268 2010-03-02 Daniel Jacobowitz <dan@codesourcery.com>
1270 * progspace.c (update_address_spaces): Update inferior address spaces
1273 2010-03-02 Doug Evans <dje@google.com>
1275 * dwarf2read.c (add_partial_subprogram): Add missing baseaddr to
1276 lowpc,highpc args to addrmap_set_empty.
1278 2010-03-02 H.J. Lu <hongjiu.lu@intel.com>
1280 * amd64-tdep.c (amd64_byte_names): New.
1281 (amd64_word_names): Likewise.
1282 (amd64_dword_names): Likewise.
1283 (amd64_pseudo_register_name): Likewise.
1284 (amd64_pseudo_register_read): Likewise.
1285 (amd64_pseudo_register_write): Likewise.
1286 (amd64_init_abi): Set num_byte_regs, num_word_regs, num_dword_regs
1287 and num_mmx_regs. Call set_gdbarch_pseudo_register_read,
1288 set_gdbarch_pseudo_register_write and
1289 set_tdesc_pseudo_register_name. Don't call
1290 set_gdbarch_num_pseudo_regs. Don't set mm0_regnum.
1292 * i386-tdep.c (i386_num_mmx_regs): Removed.
1293 (i386_num_pseudo_regs): Likewise.
1294 (i386_byte_names): New.
1295 (i386_word_names): Likewise.
1296 (i386_byte_regnum_p): Likewise.
1297 (i386_word_regnum_p): Likewise.
1298 (i386_mmx_regnum_p): Updated.
1299 (i386_pseudo_register_name): Make it global. Handle byte and
1300 word pseudo-registers.
1301 (i386_pseudo_register_read): Likewise.
1302 (i386_pseudo_register_write): Likewise.
1303 (i386_pseudo_register_type): Handle byte, word and dword
1305 (i386_register_reggroup_p): Don't include pseudo
1306 registers, except for MXX, in any register groups. Don't
1307 include pseudo byte, word, dword registers in general_reggroup.
1308 (i386_gdbarch_init): Set num_byte_regs, num_word_regs,
1309 num_dword_regs, al_regnum, ax_regnum and eax_regnum. Put MMX
1310 pseudo-registers after word pseudo-registers. Call
1311 set_gdbarch_num_pseudo_regs after calling gdbarch_init_osabi.
1313 * i386-tdep.h (gdbarch_tdep): Add num_mmx_regs, num_byte_regs,
1314 al_regnum, num_word_regs, ax_regnum, num_dword_regs and
1316 (i386_byte_regnum_p): New.
1317 (i386_word_regnum_p): Likewise.
1318 (i386_dword_regnum_p): Likewise.
1319 (i386_pseudo_register_name): Likewise.
1320 (i386_pseudo_register_read): Likewise.
1321 (i386_pseudo_register_write): Likewise.
1323 2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
1325 * target-descriptions.c (tdesc_type): Remove
1326 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
1327 (tdesc_predefined_types): Likewise.
1328 (tdesc_gdb_type): Likewise. Pass NULL to append_flags_type_flag
1329 if flag name is empty.
1330 (maint_print_c_tdesc_cmd): Handle TDESC_TYPE_FLAGS.
1332 * features/i386/32bit-core.xml: Define i386_eflags.
1333 * features/i386/64bit-core.xml: Likewise.
1335 * features/i386/32bit-sse.xml: Define i386_mxcsr.
1336 * features/i386/64bit-sse.xml: Likewise.
1338 * features/i386/amd64-linux.c: Regenerated.
1339 * features/i386/amd64.c: Likewise.
1340 * features/i386/i386-linux.c: Likewise.
1341 * features/i386/i386.c: Likewise.
1343 2010-03-01 Daniel Jacobowitz <dan@codesourcery.com>
1345 * gdbtypes.c (append_composite_type_field_raw): New.
1346 (append_composite_type_field_aligned): Use the new function.
1347 * gdbtypes.h (append_composite_type_field_raw): Declare.
1348 * target-descriptions.c (struct tdesc_type_field): Add start and end.
1349 (struct tdesc_type_flag): New type.
1350 (struct tdesc_type): Add TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS to
1351 kind. Add size to u.u. Add u.f for flags.
1352 (tdesc_gdb_type): Handle TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS.
1353 (tdesc_free_type): Likewise.
1354 (tdesc_create_struct, tdesc_set_struct_size, tdesc_create_flags): New.
1355 (tdesc_add_field): Handle TDESC_TYPE_STRUCT.
1356 (tdesc_add_bitfield, tdesc_add_flag): New.
1357 * target-descriptions.h (tdesc_create_struct, tdesc_set_struct_size)
1358 (tdesc_create_flags, tdesc_add_bitfield, tdesc_add_flag): Declare.
1359 * xml-tdesc.c (struct tdesc_parsing_data): Rename current_union to
1360 current_type. Add current_type_size and current_type_is_flags.
1361 (tdesc_start_union): Clear the new fields.
1362 (tdesc_start_struct, tdesc_start_flags): New.
1363 (tdesc_start_field): Handle struct fields, including bitfields.
1364 (field_attributes): Make type optional. Add start and end.
1365 (union_children): Rename to struct_union_children.
1366 (union_attributes): Rename to struct_union_attributes. Add optional
1368 (flags_attributes): New.
1369 (feature_children): Add struct and flags.
1370 * features/gdb-target.dtd: Add flags and struct to features.
1371 Make field type optional. Add field start and end.
1373 2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
1375 * amd64-linux-nat.c (AMD64_LINUX_USER64_CS): New.
1376 (amd64_linux_read_description): Likewise.
1377 (_initialize_amd64_linux_nat): Set to_read_description to
1378 amd64_linux_read_description.
1380 * amd64-linux-tdep.c: Include "features/i386/amd64-linux.c".
1381 (amd64_linux_register_name): Removed.
1382 (amd64_linux_register_type): Likewise.
1383 (amd64_linux_core_read_description): New.
1384 (amd64_linux_init_abi): Set target description to
1385 tdesc_amd64_linux if needed. Support orig_rax in target
1386 description. Don't call set_gdbarch_register_name nor
1387 set_gdbarch_register_type. Call
1388 set_gdbarch_core_read_description.
1389 (_initialize_amd64_linux_tdep): Call
1390 initialize_tdesc_amd64_linux.
1392 * amd64-linux-tdep.h (tdesc_amd64_linux): New.
1394 * amd64-tdep.c: Include "features/i386/amd64.c".
1395 (amd64_register_names): Removed.
1396 (amd64_register_name): Likewise.
1397 (amd64_register_type): Likewise.
1398 (amd64_init_abi): Set num_core_regs and register_names. Set
1399 target description to tdesc_amd64 if needed. Don't call
1400 set_gdbarch_register_name nor set_gdbarch_register_type.
1401 (_initialize_amd64_tdep): New.
1403 * i386-linux-nat.c (i386_linux_read_description): New.
1404 (_initialize_i386_linux_nat): Set to_read_description to
1405 i386_linux_read_description.
1407 * i386-linux-tdep.c: Include "features/i386/i386-linux.c".
1408 (i386_linux_register_name): Removed.
1409 (i386_linux_core_read_description): New.
1410 (i386_linux_read_description): Likewise.
1411 (i386_linux_init_abi): Don't call set_gdbarch_register_name.
1412 Set target description to tdesc_i386_linux if needed. Support
1413 orig_eax. Set register_reggroup_p. Call
1414 set_gdbarch_core_read_description.
1415 (_initialize_i386_linux_tdep): Call initialize_tdesc_i386_linux.
1417 * i386-linux-tdep.h (tdesc_i386_linux): New.
1419 * i386-nto-tdep.c (i386nto_regset_id): Replace I386_NUM_FREGS
1422 * i386-tdep.c: Include "features/i386/i386.c".
1423 (i386_register_names): Make it const.
1424 (i386_mmx_names): Likewise.
1425 (i386_num_register_names): Removed.
1426 (i386_register_name): Likewise.
1427 (i386_eflags_type): Likewise.
1428 (i386_mxcsr_type): Likewise.
1429 (i386_sse_type): Likewise.
1430 (i386_register_type): Likewise.
1431 (i387_ext_type): Call tdesc_find_type instead of arch_float_type.
1432 (i386_pseudo_register_name): New.
1433 (i386_pseudo_register_type): Likewise.
1434 (i386_mmx_type): Make it static.
1435 (i386_gdbarch_init): Check arch. Replace I386_NUM_FREGS with
1436 I387_NUM_REGS. Set num_core_regs and register_names. Don't
1437 call set_gdbarch_register_name nor set_gdbarch_register_type.
1438 Set register_reggroup_p. Set target description to tdesc_i386
1439 if needed. Call set_tdesc_pseudo_register_type,
1440 set_tdesc_pseudo_register_name and tdesc_use_registers.
1441 (_initialize_i386_tdep): Call initialize_tdesc_i386.
1442 initialize_tdesc_x86_64.
1444 * i386-tdep.h (gdbarch_tdep): Remove i386_eflags_type,
1445 i386_mxcsr_type and i386_sse_type. Add num_core_regs,
1446 register_names, tdesc and register_reggroup_p.
1447 (I386_NUM_FREGS): Removed.
1448 (i386_eflags_type): Likewise.
1449 (i386_mxcsr_type): Likewise.
1450 (i386_mmx_type): Likewise.
1451 (i386_sse_type): Likewise.
1452 (i386_register_name): Likewise.
1453 (i386_regnum): Add I386_MXCSR_REGNUM.
1454 (I386_SSE_NUM_REGS): Defined with I386_MXCSR_REGNUM.
1456 * i387-tdep.h (I387_NUM_REGS): New.
1458 * regformats/i386/i386-linux.dat: Generated.
1459 * regformats/i386/i386.dat: Likewise.
1460 * regformats/i386/amd64-linux.dat: Likewise.
1461 * regformats/i386/amd64.dat: Likewise.
1463 * regformats/reg-i386-linux.dat: Removed.
1464 * regformats/reg-i386.dat: Likewise.
1465 * regformats/reg-x86-64-linux.dat: Likewise.
1466 * regformats/reg-x86-64.dat: Likewise.
1468 2010-03-01 Corinna Vinschen <vinschen@redhat.com>
1470 * remote-fileio.c (remote_fileio_func_rename): Use Cygwin 1.7
1471 cygwin_conv_path API rather than the deprecated
1472 cygwin_conv_to_full_posix_path.
1474 (GetModuleFileNameExA): Undefine for Cygwin.
1475 (GetModuleFileNameExW): Define for Cygwin.
1476 (get_module_name): Change size of pathbuf to PATH_MAX for Cygwin.
1477 Call GetModuleFileNameExW and convert path to POSIX using
1479 (windows_make_so): Always define p. Drop unused variable m.
1480 Don't use Win32 functions to check file existance, rather use
1481 access on Cygwin. Fetch system directory using GetSystemDirectoryW.
1482 Use canonicalize_file_name to get full path.
1483 (get_image_name): Use wcstombs, rather than WideCharToMultiByte
1484 to convert Unicode pathname to multibyte on Cygwin. Otherwise,
1485 use correct target buffer size in call to WideCharToMultiByte.
1486 (handle_load_dll): Change size of dll_buf to PATH_MAX for Cygwin.
1487 (windows_pid_to_exec_file): Change size of path to PATH_MAX for Cygwin.
1488 (windows_create_inferior): Convert all paths and arguments to wchar_t
1489 and use CreateProcessW on Cygwin.
1490 (_initialize_windows_nat): Disable DOS-style path warning on Cygwin.
1491 (bad_GetModuleFileNameExA): Undefine for Cygwin.
1492 (bad_GetModuleFileNameExW): Define for Cygwin.
1493 (_initialize_loadable): Load GetModuleFileNameExW into
1494 dyn_GetModuleFileNameExW on Cygwin. Don't load ANSI function on Cygwin.
1496 2010-02-28 Phil Muldoon <pmuldoon@redhat.com>
1499 * python/py-frame.c (frapy_read_var): Add block argument and logic
1500 to cope with user provided blocks.
1502 2010-02-28 Jan Kratochvil <jan.kratochvil@redhat.com>
1504 * infcall.c (call_function_by_hand): Remove gdb_assert on sp and old_sp.
1507 2010-02-28 Corinna Vinschen <vinschen@redhat.com>
1509 * Makefile.in (SUBDIR_MI_OBS): Move mi-common.o from here...
1510 (COMMON_OBS): ... to here since it's used unconditionally.
1511 (SUBDIR_MI_SRCS): Move mi/mi-common.c from here...
1514 2010-02-26 David Daney <ddaney@caviumnetworks.com>
1516 * mips-linux-tdep.c: Update struct sigframe comments.
1517 (SIGFRAME_CODE_OFFSET): Delete macro.
1518 (mips_linux_o32_sigframe_init): Calculate sigcontext_base using
1520 (mips_linux_n32n64_sigframe_init): Same.
1522 2010-02-26 Kevin Buettner <kevinb@redhat.com>
1524 * remote-mips.c (mips_load): Don't use pseudo-register when
1525 invalidating regcache.
1527 2010-02-26 Daniel Jacobowitz <dan@codesourcery.com>
1529 * arm-tdep.c (thumb_get_next_pc): Correct conditional branch opcode.
1531 2010-02-26 Pedro Alves <pedro@codesourcery.com>
1533 * NEWS: Add "New targets" section, and mention ARM Symbian
1536 2010-02-26 Ulrich Weigand <uweigand@de.ibm.com>
1538 * dwarf2loc.c (struct piece_closure): Remove ARCH member,
1539 add ADDR_SIZE member.
1540 (allocate_piece_closure): Update.
1541 (copy_pieced_value_closure): Likewise.
1542 (dwarf2_evaluate_loc_desc): Likewise.
1543 (read_pieced_value): Use DWARF address size instead of
1544 GDB's gdbarch_addr_bit as size of values on the DWARF stack.
1546 2010-02-26 Phil Muldoon <pmuldoon@redhat.com>
1547 Tom Tromey <tromey@redhat.com>
1549 * python/py-type.c (typy_lookup_typename): Add in block argument.
1550 If provided restrict lookup to specified blocks.
1551 (gdbpy_lookup_type): Likewise.
1552 (typy_lookup_type): Likewise.
1554 2010-02-25 Daniel Jacobowitz <dan@codesourcery.com>
1559 * arm-symbian-tdep.c: New.
1560 * configure.tgt (arm*-*-symbianelf*): New target.
1561 (*-*-symbianelf*): New OS.
1562 * osabi.c (gdb_osabi_names): Add Symbian.
1563 * defs.h (gdb_osabi): Add GDB_OSABI_SYMBIAN.
1564 * Makefile.in (ALL_TARGET_OBJS): Add arm-symbian-tdep.o.
1565 (ALLDEPFILES): Add arm-symbian-tdep.c.
1567 2010-02-25 Daniel Jacobowitz <dan@codesourcery.com>
1569 * symfile.c (find_lowest_section): Include SEC_ALLOC sections.
1571 2010-02-24 Pedro Alves <pedro@codesourcery.com>
1573 * mi/mi-main.c (mi_cmd_execute): Fix typo.
1575 2010-02-24 Phil Muldoon <pmuldoon@redhat.com>
1576 Tom Tromey <tromey@redhat.com>
1577 Thiago Jung Bauermann <bauerman@br.ibm.com>
1579 * python/python.c (_initialize_python): Call
1580 gdbpy_initialize_symtabs, gdbpy_initialize_symbols and
1581 gdbpy_initialize_blocks.
1582 * python/python-internal.h: Declare struct symbol, block and
1583 symtab_and_line. Declare block_object_type and
1585 (gdbpy_lookup_symbol gdbpy_block_for_pc)
1586 (symtab_and_line_to_sal_object, symtab_to_symtab_object)
1587 (symbol_to_symbol_object, block_to_block_object)
1588 (gdbpy_initialize_symtabs,gdbpy_initialize_symbols)
1589 (gdbpy_initialize_blocks ): Declare.
1590 * python/py-frame.c (frapy_block, frapy_function, frapy_find_sal)
1591 (frapy_select): Add methods.
1592 (frapy_read_var): Add symbol branch.
1593 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-symbol, py-symtab,
1595 (SUBDIR_PYTHON_SRCS): Likewise.
1596 (py-symbol.o): New rule.
1597 (py-symtab.o): Likewise.
1598 (py-block.o): Likewise.
1599 * python/py-symbol.c: New file.
1600 * python/py-symtab.c: Likewise.
1601 * python/py-block.c: Likewise.
1603 2010-02-24 Pedro Alves <pedro@codesourcery.com>
1607 * inferior.h (prepare_for_detach): Declare.
1608 (struct inferior) <detaching>: New field.
1609 * infrun.c (prepare_for_detach): New.
1610 (handle_inferior_event) <random signal>: Don't stop if detaching.
1611 * target.c (target_detach): Call prepare_for_detach.
1613 2010-02-24 Pedro Alves <pedro@codesourcery.com>
1615 Per-process displaced stepping queue.
1617 * infrun.c (displaced_step_ptid, displaced_step_request_queue)
1618 (displaced_step_gdbarch, displaced_step_closure,
1619 (displaced_step_original, displaced_step_copy): Move globals to
1621 (struct displaced_step_inferior_state): ... new structure.
1622 (displaced_step_inferior_states): New global.
1623 (get_displaced_stepping_state, add_displaced_stepping_state)
1624 (remove_displaced_stepping_state, infrun_inferior_exit): New
1626 (displaced_step_clear): Add displaced_step_inferior_state
1627 parameter, and adjust to handle it.
1628 (displaced_step_clear_cleanup): Parameter is now a
1629 displaced_step_inferior_state. Adjust.
1630 (displaced_step_prepare): Adjust.
1631 (displaced_step_fixup, displaced_step_fixup)
1632 (infrun_thread_ptid_changed, resume): Adjust.
1633 (init_wait_for_inferior): Don't call displaced_step_clear.
1634 (infrun_thread_stop_requested): Rewrite.
1635 (_initialize_infrun): Install infrun_inferior_exit as
1636 inferior_exit observer.
1638 2010-02-24 Pedro Alves <pedro@codesourcery.com>
1640 * inferior.h (ptid_match): Declare.
1641 * infrun.c (ptid_match): New.
1642 * remote.c (queued_stop_reply): Rewrite and use ptid_match.
1643 (handle_notification): Add debug output.
1644 * linux-nat.c (ptid_match): Delete.
1646 2010-02-24 David S. Miller <davem@davemloft.net>
1648 * gdb_ptrace.h (PT_SYSCALL): If PTRACE_SYSCALL is available, use it.
1649 * syscalls/sparc-linux.xml: New.
1650 * syscalls/sparc64-linux.xml: New.
1651 * Makefile.in (XML_SYSCALL_FILES): Add new syscall XML files.
1652 * sparc-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC32): Define.
1653 (sparc32_linux_get_syscall_number): New function.
1654 (sparc32_linux_init_abi): Set syscall XML file name and hook up
1655 syscall number fetcher.
1656 * sparc64-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC64): Define.
1657 (sparc64_linux_get_syscall_number): New function.
1658 (sparc64_linux_init_abi): Set syscall XML file name and hook up
1659 syscall number fetcher.
1661 2010-02-24 Vladimir Prus <vladimir@codesourcery.com>
1665 * breakpoint.c (clear_syscall_counts): Take struct inferior*.
1666 * inferior.c (add_inferior_silent): Notify inferior_added
1668 (delete_inferior_1): Notify inferior_removed observer.
1669 (exit_inferior_1): Pass inferior, not pid, to observer.
1670 (inferior_appeared): Likewise.
1671 (add_inferior_with_spaces): New.
1672 (add_inferior_command): Use the above.
1673 * inferior.h (delete_inferior_1, add_inferior_with_spaces):
1676 * inflow.c (inflow_inferior_exit): Likewise.
1677 * jit.c (jit_inferior_exit_hook): Likewise.
1679 * mi/mi-cmds.c (mi_cmds): Register add-inferior and
1681 * mi/mi-cmds.h (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
1682 * mi/mi-interp.c (mi_inferior_added, mi_inferior_removed): New.
1683 (report_initial_inferior): New.
1684 (mi_inferior_removed): Register the above. Make sure
1685 inferior_added observer is called on the first inferior.
1686 (mi_new_thread, mi_thread_exit): Thread group is now identified by
1687 inferior number, not pid.
1688 (mi_solib_loaded, mi_solib_unloaded): Report which inferiors are
1690 * mi/mi-main.c (current_context): New.
1691 (proceed_thread_callback): Use typed closure.
1692 Proceed everything if pid is 0. Most implementation split into
1693 (proceed_thread): ... this.
1694 (run_one_inferior): New.
1695 (mi_cmd_exec_continue, mi_cmd_exec_interrupt, mi_cmd_exec_run):
1696 Adjust for multiexec behaviour.
1697 (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
1698 (mi_cmd_execute): Handle the 'thread-group' option here.
1699 Do some extra checks.
1700 * mi-parse.c (mi_parse): Handle the --all and --thread-group
1702 * mi-parse.h (struct mi_parse): New fields all and thread_group.
1704 2010-02-24 Vladimir Prus <vladimir@codesourcery.com>
1706 Make -exec-run a proper MI commands.
1708 * mi/mi-cmds.h (mi_cmd_exec_run): Declare.
1709 * mi/mi-cmds.c (mi_cmds): Adjust.
1710 * mi/mi-main.c (mi_cmd_exec_run): New.
1712 2010-02-24 Pedro Alves <pedro@codesourcery.com>
1713 Stan Shebs <stan@codesourcery.com>
1715 * tracepoint.h (set_traceframe_number)
1716 (cleanup_restore_current_traceframe): Declare.
1717 * tracepoint.c (set_traceframe_number): New.
1718 (struct current_traceframe_cleanup): New.
1719 (do_restore_current_traceframe_cleanup)
1720 (restore_current_traceframe_cleanup_dtor)
1721 (make_cleanup_restore_current_traceframe): New.
1722 * infrun.c: Include tracepoint.h.
1723 (fetch_inferior_event): Switch out and in of tfind mode.
1725 2010-02-24 Pedro Alves <pedro@codesourcery.com>
1727 * breakpoint.c (breakpoint_init_inferior): Also delete
1728 bp_shlib_event breakpoints.
1729 * solib-frv.c (enable_break): Remove call to
1730 remove_solib_event_breakpoints.
1731 * solib-svr4.c (enable_break): Ditto.
1732 * solib-darwin.c (darwin_solib_create_inferior_hook): Ditto.
1733 * solib-pa64.c (pa64_solib_create_inferior_hook): Ditto.
1734 * solib-som.c (som_solib_create_inferior_hook): Ditto.
1735 * solib-spu.c (spu_enable_break): Ditto.
1737 2010-02-23 Harald Koenig <H.Koenig@science-computing.de>
1739 * c-exp.y (token_and_value): s/union YYSTYPE/YYSTYPE.
1741 2010-02-23 Harald Koenig <H.Koenig@science-computing.de>
1743 * varobj.c (varobj_update): Avoid non-constants in initializers.
1745 2010-02-23 Tom Tromey <tromey@redhat.com>
1747 * dwarf2loc.c (read_pieced_value) <DWARF_VALUE_STACK>: Correctly
1748 handle big-endian values.
1749 (dwarf2_evaluate_loc_desc) <DWARF_VALUE_STACK>: Likewise.
1751 2010-02-22 Pedro Alves <pedro@codesourcery.com>
1756 * breakpoint.c (insert_bp_location): If inserting the read
1757 watchpoint failed, fallback to an access watchpoint.
1758 (bpstat_check_watchpoint): Stop for read watchpoint triggers even
1759 if the value changed, if not watching the same memory for writes.
1760 (watchpoint_locations_match): Add comment.
1761 (update_global_location_list): Copy the location's watchpoint type.
1762 * i386-nat.c (i386_length_and_rw_bits): It's an internal error to
1763 handle read watchpoints here.
1764 (i386_insert_watchpoint): Read watchpoints aren't supported.
1765 * remote.c (remote_insert_watchpoint): Return 1 for unsupported
1767 * target.h (target_insert_watchpoint): Update description.
1769 2010-02-19 Tom Tromey <tromey@redhat.com>
1771 * p-typeprint.c (pascal_type_print_varspec_prefix): Update.
1772 * m2-typeprint.c (m2_print_type): Update.
1773 * gdbtypes.c (recursive_dump_type): Update.
1774 (copy_type_recursive): Update.
1775 * c-typeprint.c (c_type_print_varspec_prefix): Update.
1776 (c_type_print_base): Update.
1777 * gdbtypes.h (TYPE_CODE_TEMPLATE, TYPE_CODE_TEMPLATE_ARG):
1779 (struct cplus_struct_type) <ntemplate_args>: Remove.
1780 <struct template_arg>: Remove.
1781 <is_dynamic>: Move earlier.
1782 (TYPE_TEMPLATE_ARGS): Remove.
1783 (TYPE_NTEMPLATE_ARGS): Remove.
1784 (TYPE_TEMPLATE_ARG): Remove.
1786 2010-02-19 Tom Tromey <tromey@redhat.com>
1788 PR c++/8693, PR c++/9496:
1789 * cp-namespace.c (cp_lookup_nested_type): Handle TYPE_CODE_UNION.
1790 * c-exp.y (lex_one_token): Rename from yylex. Don't call
1791 write_dollar_variable. Don't try to classify NAME tokens.
1792 (token_and_value): New type.
1793 (token_fifo, popping, name_obstack): New globals.
1794 (classify_name): New function.
1795 (classify_inner_name): Likewise.
1797 (VARIABLE): Now has type sval.
1798 (exp : VARIABLE): Call write_dollar_variable.
1799 (qualified_name): Use TYPENAME, not typebase. Add production for
1800 multiple "::" instances.
1801 (variable): Use name_not_typename.
1802 (qualified_type): Remove.
1805 2010-02-19 Jan Kratochvil <jan.kratochvil@redhat.com>
1807 * symfile.c (addr_info_make_relative): Extend comment. Move SECT to
1808 a more inner block. Initialize ADDR by LOWER_OFFSET only if it was
1809 found by bfd_get_section_by_name.
1810 * symfile.h (struct section_addr_info) <sectindex>: New comment.
1812 2010-02-19 Joel Brobecker <brobecker@adacore.com>
1814 * NEWS: Add new "[...] since 7.1" section. Rename the "[...] since
1815 7.0 section" into "Changes in 7.1".
1817 2010-02-19 Joel Brobecker <brobecker@adacore.com>
1819 GDB 7.1 branch created (branch timestamp: 2010-02-18 20:00 UTC)
1820 * version.in: Bump version to 7.1.50.20100219-cvs.
1822 2010-02-18 Harald Koenig <H.Koenig@science-computing.de>
1824 * mi/mi-main.c (mi_cmd_exec_jump): Drop unneeded `return'.
1825 * symfile.c (symfile_map_offsets_to_segments): Fix assertion.
1827 2010-02-17 Tom Tromey <tromey@redhat.com>
1829 * NEWS: Add Python API Improvements section.
1831 2010-02-18 Daniel Jacobowitz <dan@codesourcery.com>
1833 * NEWS: Correct typo.
1835 2010-02-17 Tom Tromey <tromey@redhat.com>
1837 * objfiles.c (gdb_bfd_ref): Handle abfd==NULL.
1839 2010-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
1841 * symfile.c (build_section_addr_info_from_objfile): Include sections
1842 only if they are SEC_ALLOC or SEC_LOAD.
1844 2010-02-17 H.J. Lu <hongjiu.lu@intel.com>
1847 * solib-svr4.c (enable_break): Check size of CORE_ADDR instead
1848 of ULONGEST for address size.
1850 2010-02-17 Tom Tromey <tromey@redhat.com>
1852 * NEWS: Add C++ improvements section.
1854 2010-02-17 Ulrich Weigand <uweigand@de.ibm.com>
1856 * python/python-internal.h [!WITH_THREAD] (PyGILState_Release,
1857 PyThreadState_Swap): Avoid "statement with no effect" warning.
1859 2010-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
1861 * solib-svr4.c (enable_break <target_auxv_search>): New variable
1862 addr_bit. Adjust LOAD_ADDR sign for cross-arch inferiors.
1864 2010-02-17 Tristan Gingold <gingold@adacore.com>
1865 Petr HluzÃn <petr.hluzin@gmail.com>
1867 * avr-tdep.c (avr_scan_prologue): Convert an if statement to a
1868 gdb_assert. Fix info->size for SIG prologue.
1870 2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
1872 * infcmd.c (show_inferior_tty_command): Check for NULL.
1873 Correct output message.
1875 2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
1877 * linespec.c (decode_line_1): Handle FILE:FUNCTION even if
1878 FUNCTION contains parentheses. Improve removal of a trailing
1881 2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
1883 * gcore.c (do_bfd_delete_cleanup): New function.
1884 (gcore_command): Use it. Discard the cleanup after success.
1885 (gcore_copy_callback): Delete dead code.
1887 2010-02-16 Daniel Jacobowitz <dan@codesourcery.com>
1889 * symfile.c (addr_info_make_relative): Always use
1890 find_lowest_section.
1892 2010-02-16 Sami Wagiaalla <swagiaal@redhat.com>
1894 * NEWS: Added entry for namespace fixes.
1896 2010-02-15 Tom Tromey <tromey@redhat.com>
1898 * dwarf2read.c (guess_structure_name): Allocate name on the
1901 2010-02-15 Tom Tromey <tromey@redhat.com>
1903 * c-typeprint.c (c_type_print_base): Reverse order of test.
1905 2010-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
1907 * solib-svr4.c (LM_ADDR_CHECK): New variable minpagesize. Optionally
1908 initialize it from ELF BFD. Extend the prelink condition by it.
1910 2010-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
1912 * defs.h (parse_pid_to_attach): New.
1913 * utils.c (parse_pid_to_attach): New.
1914 * darwin-nat.c (darwin_attach): Replace ARGS parsing by parse_pid.
1915 * gnu-nat.c (gnu_attach): Likewise.
1916 * nto-procfs.c (procfs_attach): Likewise.
1917 * procfs.c (procfs_attach): Likewise.
1918 * windows-nat.c (windows_attach): Likewise.
1919 * inf-ptrace.c (inf_ptrace_attach): Likewise. Remove variable dummy.
1920 * inf-ttrace.c (inf_ttrace_attach): Likewise.
1921 * remote.c (extended_remote_attach_1): Likewise. New comment on getpid
1924 2010-02-14 Masaki Muranaka <monaka@monami-software.com>
1926 * MAINTAINERS: Add myself for write after approval privileges.
1928 2010-02-13 Jan Kratochvil <jan.kratochvil@redhat.com>
1930 * solib-svr4.c: (LM_ADDR_CHECK): Move variable align to a more inner
1933 2010-02-13 Jan Kratochvil <jan.kratochvil@redhat.com>
1935 * solib-svr4.c: (LM_ADDR_CHECK): Print successful prelink adjustment
1936 only if INFO_VERBOSE.
1938 2010-02-12 Tomas Holmberg <th@virtutech.com>
1940 * mi/mi-main.c: Added the --reverse flag to the following MI
1941 commands: exec-continue, exec-finish, exec-next, exec-step,
1942 exec-next-instruction, exec-step-instruction. This is to
1943 support reverse execution over the MI interface to gdb.
1945 2010-02-12 Pedro Alves <pedro@codesourcery.com>
1947 * tracepoint.c (_initialize_tracepoint): Specify that the address
1948 range of `tfind outsize' is exclusive, and that the address range
1949 of `tfind range' is inclusive, in the commands' help strings.
1951 2010-02-12 Joel Brobecker <brobecker@adacore.com>
1953 Spurious "dll not found" error messages on x64-windows.
1954 * windows-nat.c: Add include of complaints.h.
1955 (handle_unload_dll): Change dll-not-found error into a complaint.
1957 2010-02-12 Pedro Alves <pedro@codesourcery.com>
1959 * breakpoint.c (allocate_bp_location): Use bp_loc_other for
1960 bp_tracepoint and bp_fast_tracepoint, not
1961 bp_loc_software_breakpoint.
1962 (update_global_location_list): Tracepoints are never duplicates of
1965 2010-02-12 Pedro Alves <pedro@codesourcery.com>
1967 * breakpoint.c (break_command_really): Change return type to int.
1968 Return false if no breakpoint was created, true otherwise.
1969 (trace_command): Don't set the tracepoint count if no tracepoint
1971 (ftrace_command): Ditto.
1972 (create_tracepoint_from_upload): Bail out if the tracepoint wasn't
1973 created in the breakpoints table.
1975 2010-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
1976 Ulrich Weigand <uweigand@de.ibm.com>
1978 * solib-svr4.c (LM_ADDR_CHECK): New comment on PPC-aware condition.
1980 2010-02-11 Pedro Alves <pedro@codesourcery.com>
1982 * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out if
1983 the offset value isn't of integral type.
1985 2010-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
1987 * breakpoint.c (delete_breakpoint) <bpt->related_breakpoint != NULL>:
1990 2010-02-11 Pedro Alves <pedro@codesourcery.com>
1992 * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out on
1993 non-subscriptable types.
1994 * valarith.c (binop_types_user_defined_p): New, abstracted out
1996 (binop_user_defined_p): ... this.
1997 * value.h (binop_types_user_defined_p): Declare.
1999 2010-02-11 Pedro Alves <pedro@codesourcery.com>
2001 * tracepoint.c (tfile_open): Remove spurious discard_cleanups.
2002 Merge uploaded TSVs before merging uploaded tracepoints.
2004 2010-02-11 Pedro Alves <pedro@codesourcery.com>
2006 * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers.
2008 2010-02-11 Vladimir Prus <vladimir@codesourcery.com>
2010 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra
2011 whitespace character after a dot in comment.
2012 (mi_cmd_stack_list_arguments, mi_cmd_stack_list_variables):
2014 (list_args_or_locals): For the 'all' (that is
2015 -stack-list-variables) case, always output list of tuples.
2016 Output 'arg' field if variable is argument.
2018 2010-02-10 Tom Tromey <tromey@redhat.com>
2020 * parser-defs.h (parser_debug): Declare.
2021 * parse.c (_initialize_parse): Install "debug parser" set/show
2023 (parser_debug): New global.
2024 (show_parserdebug): New function.
2025 * c-exp.y (c_parse): Set yydebug.
2027 2010-02-10 H.J. Lu <hongjiu.lu@intel.com>
2029 * target-descriptions.c (tdesc_type): Add TDESC_TYPE_I387_EXT,
2030 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
2031 (tdesc_predefined_types): Add i387_ext, i386_eflags and
2033 (tdesc_find_type): New.
2034 (tdesc_gdb_type): Use tdesc_find_type. Handle TDESC_TYPE_I387_EXT,
2035 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
2037 * target-descriptions.h (tdesc_find_type): New.
2039 2010-02-10 Michael Snyder <msnyder@vmware.com>
2041 * gdb-gdb.py: Comment fix.
2043 2010-02-09 Tristan Gingold <gingold@adacore.com>
2045 * machoread.c (macho_symfile_relocate): New function.
2046 (macho_sym_fns): Use macho_symfile_relocate instead of
2047 default_symfile_relocate.
2048 (macho_oso_data): New type.
2049 (current_oso): New variable.
2050 (macho_add_oso_symfile): Do not compute section_addr_info, but
2051 instead set vma of sections.
2052 Do not set SYMFILE_VERBOSE to call symbol_file_add_from_bfd.
2053 Set and clear current_oso.
2055 2010-02-09 Joel Brobecker <brobecker@adacore.com>
2057 Wrong type description for tagged type parameter.
2058 * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: When noside is
2059 EVAL_AVOID_SIDE_EFFECTS, also handle the case when type is a
2060 reference to a tagged type.
2062 2010-02-09 Tristan Gingold <gingold@adacore.com>
2064 * objfiles.c (objfile_separate_debug_iterate): Do not iterate on
2065 brothers of the parent.
2067 2010-02-08 Tom Tromey <tromey@redhat.com>
2071 * valops.c (search_struct_field): Make 'name' const.
2072 (search_struct_method): Likewise.
2073 (find_method_list): Make 'method' const.
2074 (value_struct_elt): Make 'name' and 'err' const.
2075 (value_find_oload_method_list): Make 'method' const.
2076 (find_overload_match): Make 'name' const.
2077 * eval.c (evaluate_subexp_standard): New locals function,
2079 <OP_FUNCALL>: Handle OP_SCOPE specially.
2081 2010-02-08 Ulrich Weigand <uweigand@de.ibm.com>
2083 * infrun.c (handle_inferior_event): Do not look up regcache
2084 for exited processes.
2086 Mon Feb 8 13:17:10 2010 Chris Moller <moller@mollerware.com>
2089 * valarith.c (value_ptrdiff): Added a test for a zero type length,
2090 warn if found, and assume length = 1.
2092 2010-02-08 Chris Moller <cmoller@redhat.com>
2095 * cp-valprint.c (cp_print_value_fields) Fix use of obstacks.
2096 cp_print_static_field) Fix use of obstacks.
2098 2010-02-08 Pedro Alves <pedro@codesourcery.com>
2100 * linux-nat.c (linux_nat_resume): In non-stop, also only tag
2101 resumed LWPs as resumed.
2102 (linux_nat_wait_1): If there's no resumed LWP in the set of LWPs
2103 we're waiting for, bail out with TARGET_WAITKIND_IGNORE, instead
2104 of throwing an internal error. If an LWP of a process we're not
2105 waiting for reports a signal, don't force collecting a SIGSTOP,
2106 and if it was breakpoint hit in non-stop mode, cancel it. Don't
2107 go through all LWPs cancelling breakpoints in non-stop mode.
2108 (resume_stopped_resumed_lwps): New.
2109 (linux_nat_wait): Use it.
2111 2010-02-07 H.J. Lu <hongjiu.lu@intel.com>
2113 * features/Makefile (WHICH): Add i386/i386, i386/i386-linux,
2114 i386/amd64 and i386/amd64-linux.
2115 (i386/i386-expedite): New.
2116 (i386/i386-linux-expedite): Likewise.
2117 (i386/amd64-expedite):Likewise.
2118 (i386/amd64-linux-expedite): Likewise.
2119 ($(outdir)/i386/i386-linux.dat): Likewise.
2120 ($(outdir)/i386/amd64.dat): Likewise.
2121 ($(outdir)/i386/amd64-linux.dat): Likewise.
2123 * features/i386/32bit-core.xml: New.
2124 * features/i386/32bit-linux.xml: Likewise.
2125 * features/i386/32bit-sse.xml: Likewise.
2126 * features/i386/64bit-core.xml: Likewise.
2127 * features/i386/64bit-linux.xml: Likewise.
2128 * features/i386/64bit-sse.xml: Likewise.
2129 * features/i386/i386-linux.xml: Likewise.
2130 * features/i386/i386.xml: Likewise.
2131 * features/i386/amd64-linux.xml: Likewise.
2132 * features/i386/amd64.xml: Likewise.
2133 * features/i386/i386-linux.c: Likewise.
2134 * features/i386/i386.c: Likewise.
2135 * features/i386/amd64-linux.c: Likewise.
2136 * features/i386/amd64.c: Likewise.
2138 2010-02-05 Sami Wagiaalla <swagiaal@redhat.com>
2141 * cp-support.h: Added char* alias element to using_direct data
2143 (cp_add_using): Added char* alias argument.
2144 (cp_add_using_directive): Ditto.
2145 * cp-namespace.c: Updated with the above changes.
2146 (cp_lookup_symbol_imports): Check for aliases.
2147 * dwarf2read.c (read_import_statement): Figure out local alias
2148 for the import and pass it on to cp_add_using.
2149 (read_namespace): Pass alias argument to cp_add_using.
2151 2010-02-05 Hui Zhu <teawater@gmail.com>
2153 * defs.h (gdb_bfd_errmsg): New extern.
2154 * exec.c (exec_file_attach): Change bfd_errmsg to
2156 * utils.c (AMBIGUOUS_MESS1): New macro.
2157 (AMBIGUOUS_MESS2): New macro.
2158 (gdb_bfd_errmsg): New function.
2160 2010-02-04 Doug Evans <dje@google.com>
2162 * solib-svr4.c (enable_break): Add comment.
2164 2010-02-04 Anthony Green <green@moxielogic.com>
2166 * moxie-tdep.c (moxie_analyze_prologue): Fail protocol analysis
2169 2010-02-04 Tom Tromey <tromey@redhat.com>
2171 * valops.c (search_struct_field): Account for
2172 value_embedded_offset. Fix check for virtual base past the end of
2173 the object. Use value_copy when making a slice of the value.
2175 2010-02-04 H.J. Lu <hongjiu.lu@intel.com>
2178 * tui/tui-interp.c (tui_init): Call tui_initialize_readline
2179 only if gdb_stdout is a tty.
2181 2010-02-04 H.J. Lu <hongjiu.lu@intel.com>
2183 * target-descriptions.c: Include "osabi.h".
2184 (maint_print_c_tdesc_cmd): Generate set_tdesc_osabi for valid
2187 2010-02-04 Tristan Gingold <gingold@adacore.com>
2189 * machoread.c (macho_add_oso): Renamed to macho_register_oso.
2190 (macho_symtab_read): Adjust calls to macho_add_oso.
2191 (macho_oso_symfile): Renamed to macho_symfile_read_all_oso.
2192 (macho_symfile_read): Adjust call to macho_oso_symfile.
2193 (macho_new_init): Move this function after declarations.
2194 (macho_symfile_init): Ditto.
2195 * darwin-nat-info.c (darwin_lib_gdb_ports): Remove.
2196 * darwin-nat.c (darwin_lookup_task): Remove unused prototype.
2198 2010-02-04 Vladimir Prus <vladimir@codesourcery.com>
2200 Include MI command in remotelog.
2202 * mi/mi-main.c (mi_execute_command): Call target_log_command.
2204 2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
2206 * remote.c (remote_state): Remove gdbarch.
2207 (init_remote_state): Don't set gdbarch.
2208 (remote_query_supported): Pass target_gdbarch instead of
2209 rs->gdbarch to gdbarch_qsupported.
2211 2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
2213 * gdbarch.sh: Add qsupported.
2215 * gdbarch.c: Regenerated.
2216 * gdbarch.h: Likewise.
2218 * remote.c (remote_state): Add gdbarch.
2219 (init_remote_state): Set gdbarch.
2220 (remote_query_supported): Support gdbarch_qsupported.
2222 2010-02-03 Daniel Jacobowitz <dan@codesourcery.com>
2224 * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Also check for
2225 __FreeBSD_kernel_version.
2227 2010-02-03 Tristan Gingold <gingold@adacore.com>
2229 * symfile.h (struct sym_fns): Add sym_relocate field.
2230 (default_symfile_relocate): New prototype.
2231 (symfile_relocate_debug_section): First argument is now an objfile.
2232 * symfile.c (default_symfile_relocate): Rename from
2233 symfile_relocate_debug_section, first argument is now an objfile.
2234 (symfile_relocate_debug_section): New function.
2235 * coffread.c (coff_sym_fns): Set sym_relocate field.
2236 * somread.c (som_sym_fns): Ditto.
2237 * mipsread.c (ecoff_sym_fns): Ditto.
2238 * machoread.c (macho_sym_fns): Ditto.
2239 * elfread.c (elf_sym_fns): Ditto.
2240 * dwarf2read.c (dwarf2_read_section): Ditto.
2241 * xcoffread.c (xcoff_sym_fns): Ditto.
2242 * dbxread.c (aout_sym_fns): Ditto.
2243 (dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
2244 (elfstab_build_psymtabs): Ditto.
2246 2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
2248 * defs.h (MAX_REGISTER_SIZE): Increase to 32.
2250 2010-02-02 Tom Tromey <tromey@redhat.com>
2252 * valops.c (value_cast_structs): Try downcasting using the RTTI
2255 2010-02-02 Tom Tromey <tromey@redhat.com>
2257 * gnu-v2-abi.c: Don't include gnu-v2-abi.h.
2258 (gnuv2_baseclass_offset): Now static.
2259 * Makefile.in (HFILES_NO_SRCDIR): Remove gnu-v2-abi.h.
2260 * gnu-v2-abi.h: Remove.
2262 2010-02-02 Tom Tromey <tromey@redhat.com>
2264 * m2-typeprint.c (m2_record_fields): Don't use
2266 * gdbtypes.h (TYPE_DECLARED_CLASS): New macro.
2267 (struct main_type) <flag_declared_class>: New field.
2268 (struct cplus_struct_type) <declared_type>: Remove.
2269 <ntemplate_args>: Move earlier.
2270 (DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT)
2271 (DECLARED_TYPE_TEMPLATE): Remove.
2272 (TYPE_DECLARED_TYPE): Remove.
2273 * gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE.
2274 * dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS.
2275 * c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not
2278 2010-02-02 Tom Tromey <tromey@redhat.com>
2280 PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
2281 * valops.c (search_struct_field): Compute nbases after calling
2283 (check_field): Call CHECK_TYPEDEF.
2284 * cp-valprint.c (cp_print_value): Pass correct address to
2285 baseclass_offset. Fix check for virtual base past the end of the
2286 object. Don't offset address passed to cp_print_value_fields or
2287 apply_val_pretty_printer.
2288 (cp_print_value_fields): Fix call to val_print.
2289 (cp_print_value_fields_rtti): New function.
2290 * c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
2291 * p-valprint.c (pascal_object_print_value_fields): Fix call to
2293 * python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
2295 * language.h (struct language_defn) <la_val_print>: Document.
2296 * c-lang.h (cp_print_value_fields_rtti): Declare.
2298 2010-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
2301 * linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
2302 (linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
2303 (linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.
2305 2010-02-01 Michael Matz <matz@suse.de>
2306 Daniel Jacobowitz <dan@codesourcery.com>
2308 * i386-tdep.c (i386_frame_cache): Assume valid anonymous
2309 functions use a frame pointer.
2311 2010-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
2313 * solib-svr4.c (scan_dyntag): New variable dyn_addr. Replace gdb_assert
2314 by a conditional setting DYN_ADDR. Use DYN_ADDR.
2315 * config/djgpp/fnchange.lst: Add translations for
2316 symbol-without-target_section.exp and symbol-without-target_section.c.
2318 2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
2320 * gdbarch.sh: Set LANG and LC_ALL to C, not c.
2321 (remote_breakpoint_for_pc): Correct invalid_p check.
2322 * gdbarch.c: Regenerated.
2324 2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
2326 * arm-tdep.c (arm_find_mapping_symbol): New function, from
2328 (arm_pc_is_thumb): Use arm_find_mapping_symbol.
2329 (extend_buffer_earlier): New function.
2330 (MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
2331 (arm_adjust_breakpoint_address): New function.
2332 (arm_gdbarch_init): Register arm_adjust_breakpoint_address.
2334 2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
2336 * arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
2337 (arm_linux_thumb2_le_breakpoint): New constants.
2338 (arm_linux_init_abi): Set thumb2_breakpoint and
2339 thumb2_breakpoint_size.
2340 * arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
2341 (thumb_get_next_pc): Add a comment. Rename IT to ITSTATE.
2342 Implement support for single stepping through IT blocks if
2343 a 32-bit Thumb breakpoint instruction is available.
2344 (arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
2345 is available, use it when needed.
2346 (arm_remote_breakpoint_from_pc): New function.
2347 (arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
2348 * arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
2349 comment. Add thumb2_breakpoint and thumb2_breakpoint_size.
2351 2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
2353 * arch-utils.c (default_remote_breakpoint_from_pc): New function.
2354 * arch-utils.h (default_remote_breakpoint_from_pc): Declare.
2355 * gdbarch.c, gdbarch.h: Regenerated.
2356 * gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
2357 * remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
2358 gdbarch_remote_breakpoint_from_pc.
2360 2010-01-29 Daniel Jacobowitz <dan@codesourcery.com>
2362 * infrun.c (prepare_to_proceed): Handle other signals which might
2364 (handle_inferior_event): Move the check for unusual breakpoint
2367 2010-01-29 Paul Hilfinger <hilfinger@adacore.com>
2369 amd64 - function returning record with field straddling 2 registers.
2370 * amd64-tdep.c (amd_classify_aggregate): Handle the case of
2371 a record of length <= 16 in which a field straddles the two
2374 2010-01-29 Joel Brobecker <brobecker@adacore.com>
2376 Implement return values on amd64-windows.
2377 * amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
2378 (amd64_windows_return_value): New function.
2379 (amd64_windows_init_abi): Call set_gdbarch_return_value with
2380 amd64_windows_return_value.
2382 2010-01-29 Joel Brobecker <brobecker@adacore.com>
2384 amd64-windows: 32 bytes allocated on stack by caller for integer
2385 parameter registers.
2386 * i386-tdep.h (struct gdbarch_tdep): Add new field
2387 integer_param_regs_saved_in_caller_frame.
2388 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
2389 tdep->integer_param_regs_saved_in_caller_frame to 1.
2390 * amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
2391 stack if tdep->integer_param_regs_saved_in_caller_frame is set.
2393 2010-01-29 Joel Brobecker <brobecker@adacore.com>
2395 amd64-windows: memory args passed by pointer during function calls.
2396 * i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
2397 * amd64-tdep.c (amd64_push_arguments): Add handling of architectures
2398 where tdep->memory_args_by_pointer is non-zero.
2399 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
2400 tdep->memory_args_by_pointer to 1.
2402 2010-01-29 Joel Brobecker <brobecker@adacore.com>
2404 amd64-windows: Integer parameters in function calls.
2405 * i386-tdep.h (enum amd64_reg_class): New, moved here from
2407 (struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
2408 call_dummy_integer_regs, and classify.
2409 * amd64-tdep.h (amd64_classify): Add declaration.
2410 * amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
2411 (amd64_reg_class): Delete, moved to i386-tdep.h.
2412 (amd64_classify): Make non-static. Move declaration to amd64-tdep.h.
2413 Replace call to amd64_classify by call to tdep->classify.
2414 (amd64_push_arguments): Get the list of registers to use for
2415 passing integer parameters from the gdbarch tdep structure,
2416 rather than using a hardcoded one. Replace calls to amd64_classify
2417 by calls to tdep->classify.
2418 (amd64_push_dummy_call): Get the register number used for
2419 the "hidden" argument from tdep->call_dummy_integer_regs.
2420 (amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
2421 and tdep->call_dummy_integer_regs. Set tdep->classify.
2422 * amd64-windows-tdep.c: Add include of gdbtypes.h.
2423 (amd64_windows_dummy_call_integer_regs): New static global.
2424 (amd64_windows_classify): New function.
2425 (amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
2426 tdep->call_dummy_integer_regs and tdep->classify.
2428 2010-01-28 Daniel Jacobowitz <dan@codesourcery.com>
2430 * regcache.c (regcache_xmalloc): Add aspace argument. Use it
2431 for the new regcache. All callers updated.
2432 (regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
2433 (get_thread_arch_regcache): Do not set aspace here.
2434 * regcache.h (regcache_xmalloc): Update declaration.
2436 * frame.c, infcall.c, ppc-linux-tdep.c: Calls to
2437 regcache_xmalloc updated.
2439 2010-01-28 Joel Brobecker <brobecker@adacore.com>
2441 Another -Wunused-function error in procfs.c (sparc-solaris)
2442 * procfs.c (insert_dbx_link_breakpoint): Delete declaration. Move up.
2443 Only define if SYS_syssgi is defined.
2444 (remove_dbx_link_breakpoint): Delete declaration. Move up.
2445 (dbx_link_addr, insert_dbx_link_bpt_in_file)
2446 (insert_dbx_link_bpt_in_region): Move up. Only define if SYS_syssgi
2449 2010-01-27 Christopher Faylor <me+cygwin@cgf.cx>
2451 * windows-nat.c (windows_initialization_done): New variable.
2452 (get_windows_debug_event): Issue error when process dies before
2453 completely initializing.
2454 (do_initial_windows_stuff): Set flag to indicate when we are done with
2455 the initial steps of attaching to the child.
2457 2010-01-27 Jan Kratochvil <jan.kratochvil@redhat.com>
2459 * symtab.h (struct symbol <symtab>): New comment on NULL values.
2461 2010-01-27 Doug Evans <dje@google.com>
2463 * solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity.
2465 * breakpoint.c (bpstat_stop_status): Delete useless code.
2467 2010-01-27 Jan Kratochvil <jan.kratochvil@redhat.com>
2469 * printcmd.c (display_uses_solib_p): Remove variable section. Access
2470 objfile via SYMBOL_SYMTAB.
2472 2010-01-26 Tom Tromey <tromey@redhat.com>
2475 * eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
2476 coerce_array on result.
2478 2010-01-26 Sami Wagiaalla <swagiaal@redhat.com>
2480 * cp-namespace.c (cp_lookup_symbol_namespace): Added
2481 search_parent argument.
2482 (cp_add_using): Initialize 'searched' field.
2483 (reset_directive_searched): New function.
2484 * cp-support.h: Add 'searched' field to using_direct struct.
2485 (cp_lookup_symbol_imports): Ditto.
2486 * cp-namespace.c (cp_lookup_symbol_imports): Ditto.
2487 Perform recursive search.
2488 Implement non parent search.
2489 * valops.c (value_maybe_namespace_elt): Updated.
2491 2010-01-26 Sami Wagiaalla <swagiaal@redhat.com>
2494 * dwarf2read.c (read_lexical_block_scope): Create blocks for
2495 scopes which contain using directives even if they contain no
2497 * symtab.c (lookup_symbol_aux): Pass lowest level block to
2498 la_lookup_symbol_nonlocal.
2499 * cp-namespace.c (cp_lookup_symbol_nonlocal): call
2500 cp_lookup_symbol_namespace.
2501 (cp_lookup_symbol_namespace): Perform an import lookup at every
2503 (cp_lookup_symbol_imports): New function.
2504 (cp_lookup_symbol_in_namespace): New function.
2506 2010-01-25 Tom Tromey <tromey@redhat.com>
2509 * c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
2512 2010-01-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2514 * configure.ac: Only use host_os part when disabling TUI on osf.
2515 Use test to check variables, prefix strings with x.
2516 * configure: Regenerate.
2518 * solib-osf.c (osf_current_sos): Initialize tail.
2520 2010-01-25 gingold <gingold@adacore.com>
2522 * windows-nat.c (windows_continue): Use %x to print thread id.
2523 (get_windows_debug_event): Ditto.
2525 2010-01-22 Tom Tromey <tromey@redhat.com>
2528 * dwarf2read.c (quirk_gcc_member_function_pointer): Change return
2529 type and arguments. Use smash_to_methodptr_type.
2530 (read_structure_type): Call quirk_gcc_member_function_pointer
2532 * gdbtypes.h (smash_to_methodptr_type): Declare.
2533 * gdbtypes.c (smash_to_methodptr_type): New function.
2534 (lookup_methodptr_type): Use it.
2536 2010-01-21 Tom Tromey <tromey@redhat.com>
2539 * symtab.h (lookup_minimal_symbol_and_objfile): Declare.
2540 * minsyms.c (lookup_minimal_symbol_and_objfile): New function.
2541 * glibc-tdep.c (find_minsym_and_objfile): Remove.
2542 (glibc_skip_solib_resolver): Use
2543 lookup_minimal_symbol_and_objfile.
2545 2010-01-21 Kai Tietz <kai.tietz@onevision.com>
2547 * inflow.c (check_syscall): Guard by #if clause for GO32 and
2550 2010-01-20 Tom Tromey <tromey@redhat.com>
2553 * valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and
2554 BINOP_GEQ. Handle BINOP_NOTEQUAL in the signed case.
2555 * dwarf2expr.c (new_dwarf_expr_context): Allocate
2556 dwarf_stack_values, not CORE_ADDRs.
2557 (execute_stack_op): Change DW_OP_div and comparison operators to
2558 use signed operands.
2560 2010-01-20 Vladimir Prus <vladimir@codesourcery.com>
2562 Per-inferior args and tty and environment.
2564 * infcmd.c (inferior_args): Rename to ...
2565 (inferior_args_scratch): ... this.
2566 (inferior_io_terminal): Rename to ...
2567 (inferior_io_terminal_scratch): ... this.
2568 (inferior_argc, inferior_argv): Remove.
2569 (set_inferior_io_terminal, get_inferior_io_terminal): Store
2570 inside current_inferior().
2571 (set_inferior_tty_command, show_inferior_tty_command): New.
2572 (get_inferior_args, set_inferior_args): Store inside
2574 (notice_args_set): Likewise and rename to...
2575 (set_args_command): ... this.
2576 (set_inferior_args_vector): Likewise.
2577 (notice_args_read): Rename to...
2578 (show_args_command): ...new.
2579 (tty_command): Remove.
2580 (run_command_1): Don't free old args, as they are freed by
2581 set_inferior_arg now.
2582 (run_no_args_command): Likewise.
2583 (inferior_environ): Remove.
2584 (run_command_1): Use environment of the current inferior.
2585 (environment_info, set_environment_command)
2586 (unset_environment_command, path_info, path_command): Likewise.
2587 (_initialize_infcmd): Adjust for function and variable renames.
2588 Do not init inferior_environ.
2589 * inferior.h (set_inferior_arg): Adjust prototype.
2590 (struct inferior): New fields args, argc, argv, terminal, environment.
2591 (inferior_environ): Remove declaration.
2592 * inferior.c (free_inferior): Free new fields.
2593 (add_inferior_silent): Initialize 'environment' field.
2594 * main.c (captured_main): Set arguments only after the initial
2595 inferior has been created. Set set_inferior_io_terminal,
2597 * mi/mi-main.c (mi_cmd_env_path): Use environment of the current
2599 (_initialize_mi_cmd_env): Adjust for disappearance of global
2601 * solib.c (solib_find): Use environment of the current inferior.
2603 2010-01-20 Jan Kratochvil <jan.kratochvil@redhat.com>
2605 * varobj.c (varobj_add_child, install_dynamic_child): Wrap into #if
2607 (instantiate_pretty_printer): Move HAVE_PYTHON outside of the function.
2609 2010-01-20 Joel Brobecker <brobecker@adacore.com>
2611 Get rid of ada-lang.c:function_name_from_pc.
2612 * ada-lang.c: Add "stack.h" #include.
2613 (function_name_from_pc): Delete.
2614 (is_known_support_routine): Replace call to function_name_from_pc
2615 by call to find_frame_funname.
2616 (ada_unhandled_exception_name_addr_from_raise): Likewise.
2618 2010-01-19 Tom Tromey <tromey@redhat.com>
2621 * dwarf2read.c (read_partial_die): Allocate partial DIE's name on
2624 2010-01-19 Tom Tromey <tromey@redhat.com>
2626 * top.c (stop_sig, float_handler, do_nothing): Remove.
2628 2010-01-19 Jan Kratochvil <jan.kratochvil@redhat.com>
2630 * breakpoint.c (watchpoint_check): Check the call
2631 gdbarch_in_function_epilogue_p before calling frame_find_by_id.
2633 * config/djgpp/fnchange.lst: Add translations for
2634 watchpoint-cond-gone.exp, watchpoint-cond-gone.c and
2635 watchpoint-cond-gone-stripped.c.
2637 2010-01-19 Tom Tromey <tromey@redhat.com>
2640 * dwarf2read.c (partial_die_parent_scope): Put enumeration type
2641 into parent scope, and enumerator into grandparent scope.
2643 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2645 * NEWS: Add entry for "set/show ada trust-PAD-over-XVS" commands.
2647 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2649 * configure.host: Make x86_64-*-solaris2.1[0-9]* an alias of
2650 i[34567]86-*-solaris2.1[0-9]*.
2651 * configure.tgt: Likewise.
2653 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2655 * NEWS: Document the source command enhancement allowing it
2656 to load Python scripts. Document the "set/show script-extension"
2659 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2661 Add -Wunused-function to compile flags.
2662 * configure.ac: Add -Wunused-function to build_warnings.
2663 * configure: Regenerate.
2665 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2667 "delete" ada-lex.c:input function, not used.
2668 * ada-lex.l: #define YY_NO_INPUT.
2670 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2672 Delete free_named_symtabs and associated cleanup.
2673 * symfile.h (free_named_symtabs): Delete declaration.
2674 * symfile.c: Remove some commented out code (clear_symtab_users_once).
2675 (cashier_psymtab): Comment function out.
2677 (free_named_symtabs): Delete.
2678 * coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
2679 * dbxread.c (end_psymtab): Likewise.
2680 * dwarf2read.c (process_psymtab_comp_unit): Ditto.
2681 * exec.c (exec_close_1): Ditto.
2682 * xcoffread.c (xcoff_end_psymtab): Likewise.
2684 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2686 * stack.c (print_block_frame_labels): Comment function out.
2688 2010-01-19 Joel Brobecker <brobecker@adacore.com>
2690 Delete unused or undefined functions.
2691 * breakpoint.c (ep_parse_optional_filename): Delete.
2692 * dcache.c (dcache_write_line): Remove declaration.
2693 * infrun.c (build_infrun): Remove declaration.
2694 * tracepoint.c (tracepoint_save_command): Remove declaration.
2695 * linux-nat.c (init_lwp_list): Delete. No longer used.
2696 * event-loop.c (check_async_signal_handlers): Delete declaration.
2697 * infrun.c (init_execution_control_state): Delete.
2698 (proceed): Update comment to avoid mentioning
2699 init_execution_control_state.
2700 * target.c (kill_or_be_killed, nosupport_runtime): Delete.
2701 * ada-lang.c (ada_to_static_fixed_value): Delete.
2702 * scm-lang.c (evaluate_subexp_scm): Delete declaration.
2703 * cp-namespace.c (cp_copy_usings): Delete.
2704 * xml-syscall.c (xml_number_of_syscalls): Delete.
2705 * progspace.c (find_program_space_by_num): Delete.
2706 * inflow.c (handle_sigio): Delete declaration.
2707 * hppa-tdep.c (hppa_alignof): Delete.
2708 * mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset)
2709 (mipsnbsd_core_osabi_sniffer): Delete.
2711 2010-01-18 Tom Tromey <tromey@redhat.com>
2714 * c-exp.y (REINTERPRET_CAST, DYNAMIC_CAST, STATIC_CAST)
2715 (CONST_CAST): New tokens.
2716 (exp): Add new productions.
2717 (ident_tokens): Add const_cast, dynamic_cast, static_cast, and
2719 (is_cast_operator): New function.
2720 (yylex): Handle cast operators specially.
2721 * eval.c (evaluate_subexp_standard) <UNOP_DYNAMIC_CAST,
2722 UNOP_REINTERPRET_CAST>: New cases.
2723 * expprint.c (print_subexp_standard): Likewise.
2724 (op_name_standard): Likewise.
2725 (dump_subexp_body_standard): Likewise.
2726 * parse.c (operator_length_standard): Likewise.
2727 * expression.h (enum exp_opcode): New constants UNOP_DYNAMIC_CAST,
2728 UNOP_REINTERPRET_CAST.
2729 * gdbtypes.c (class_types_same_p): New function.
2730 (is_ancestor): Use it.
2731 (is_public_ancestor): New function.
2732 (is_unique_ancestor_worker): Likewise.
2733 (is_unique_ancestor): Likewise.
2734 * gdbtypes.h (class_types_same_p, is_public_ancestor)
2735 (is_unique_ancestor): Declare.
2736 * valops.c (value_reinterpret_cast): New function.
2737 (dynamic_cast_check_1): Likewise.
2738 (dynamic_cast_check_2): Likewise.
2739 (value_dynamic_cast): Likewise.
2740 * value.h (value_reinterpret_cast, value_dynamic_cast): Declare.
2742 2010-01-18 Joel Brobecker <brobecker@adacore.com>
2744 Fix build failure when building without Python support.
2745 * python/python.c: Always include exceptions.h, even when HAVE_PYTHON
2748 2010-01-18 Joel Brobecker <brobecker@adacore.com>
2750 Use XVS field type instead of doing a parallel lookup.
2751 * ada-lang.c (ada_get_base_type): Follow the XVS field type
2752 if it is a reference type instead of doing a type lookup using
2755 2010-01-18 Joel Brobecker <brobecker@adacore.com>
2757 Trust PAD types instead of using PAD___XVS.
2758 * ada-lang.c (trust_pad_over_xvs): New static variable.
2759 (ada_is_aligner_type): If !trust_pad_over_xvs and there is a
2760 parallel XVS type, follow the XVS type instead of the PAD type.
2761 (unwrap_value): Make sure that there is no parallel XVE type
2762 before returning the value as is.
2763 (set_ada_list, show_ada_list): New static variables.
2764 (set_ada_command, show_ada_command): New functions.
2765 (_initialize_ada_language): Add new "set/show ada" prefix commands.
2766 Add new "set/show ada trust-PAD-over-XVS" setting.
2768 2010-01-18 Tom Tromey <tromey@redhat.com>
2769 Thiago Jung Bauermann <bauerman@br.ibm.com>
2771 Allow "source" to load python scripts.
2772 * exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
2773 * python/python.c (source_python_script): New function.
2774 * python/python.h (source_python_script): Add declaration.
2775 * cli/cli-cmds.c: #include exceptions.h and python/python.h.
2776 (script_ext_off, script_ext_soft, script_ext_strict)
2777 (script_ext_enums, script_ext_mode): New static constants.
2778 (show_script_ext_mode, find_and_open_script): New functions.
2779 (source_script): Enhance to handle Python scripts.
2780 (init_cli_cmds): Add set/show script-extension commands.
2782 2010-01-16 Stan Shebs <stan@codesourcery.com>
2784 * tracepoint.h (struct trace_status): Use unsigned long long
2786 * tracepoint.c (trace_status_command): Fix printf directive.
2787 (trace_save_command): Check fwrite returns, fix printf directive.
2788 (trace_filename): New global.
2789 (tfile_open): Set it, check read returns.
2790 (tfile_close): Free trace_filename.
2791 (tfile_get_traceframe_address): Check read returns.
2792 (tfile_trace_find): Ditto.
2793 (tfile_fetch_registers): Ditto.
2794 (tfile_xfer_partial): Ditto.
2795 (tfile_get_trace_state_variable_value): Ditto.
2797 2010-01-15 Stan Shebs <stan@codesourcery.com>
2799 Add trace file support.
2800 * tracepoint.h (enum trace_stop_reason): New enum.
2801 (struct trace_status): New struct.
2802 (parse_trace_status): Declare.
2803 (struct uploaded_tp): Move here from remote.c,
2804 add fields for actions.
2805 (struct uploaded_tsv): New struct.
2806 * tracepoint.c (tfile_ops): New target vector.
2807 (trace_fd): New global.
2808 (tfile_open): New function.
2809 (tfile_close): New function.
2810 (tfile_files_info): New function.
2811 (tfile_get_trace_status): New function.
2812 (tfile_get_traceframe_address): New function.
2813 (tfile_trace_find): New function.
2814 (tfile_fetch_registers): New function.
2815 (tfile_xfer_partial): New function.
2816 (tfile_get_trace_state_variable_value): New function.
2817 (init_tfile_ops): New function.
2818 (_initialize_tracepoint): Call it, add tfile target.
2819 (trace_status): New global.
2820 (current_trace_status): New function.
2821 (trace_running_p): Remove, change all users to get from
2822 current_trace_status()->running.
2823 (get_trace_status): Remove.
2824 (trace_status_command): Call target_get_trace_status directly,
2825 report more detail including tracing stop reasons.
2826 (trace_find_command): Always allow tfind on a file.
2827 (trace_find_pc_command): Ditto.
2828 (trace_find_tracepoint_command): Ditto.
2829 (trace_find_line_command): Ditto.
2830 (trace_find_range_command): Ditto.
2831 (trace_find_outside_command): Ditto.
2832 (trace_frames_offset, cur_offset): Declare as off_t.
2833 (trace_regblock_size): Rename from reg_size, update users.
2834 (parse_trace_status): New function.
2835 (tfile_interp_line): New function.
2836 (disconnect_or_stop_tracing): Ensure current trace
2837 status before asking what to do.
2838 (stop_reason_names): New global.
2839 (trace_save_command): New command.
2840 (get_uploaded_tp): Move here from remote.c.
2841 (find_matching_tracepoint): Ditto.
2842 (merge_uploaded_tracepoints): New function.
2843 (parse_trace_status): Use stop_reason_names.
2844 (_initialize_tracepoint): Define tsave command.
2845 * target.h (target_ops): New fields to_save_trace_data,
2846 to_upload_tracepoints, to_upload_trace_state_variables,
2847 to_get_raw_trace_data, change to_get_trace_status
2848 to take a pointer to a status struct.
2849 (target_save_trace_data): New macro.
2850 (target_upload_tracepoints): New macro.
2851 (target_upload_trace_state_variables): New macro.
2852 (target_get_raw_trace_data): New macro.
2853 * target.c (update_current_target): Add new methods, change
2854 signature of to_get_trace_status.
2855 * remote.c (hex2bin): Make globally visible.
2857 (remote_download_trace_state_variable): Download name also.
2858 (remote_get_trace_status): Update parameter, use
2860 (remote_save_trace_data): New function.
2861 (remote_upload_tracepoints): New function.
2862 (remote_upload_trace_state_variables): New function.
2863 (remote_get_raw_trace_data): New function.
2864 (remote_start_remote): Use them.
2865 (_initialize_remote_ops): Add operations.
2866 * ax-gdb.c: Include breakpoint.h.
2867 * breakpoint.c (create_tracepoint_from_upload): Use
2868 break_command_really, return tracepoint, warn about unimplemented
2870 * NEWS: Mention trace file addition.
2872 2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
2874 Fix compilation warning on gcc-3.4.
2875 * exec.c (print_section_info): Move the `displacement' variable
2876 initialization to its declaration.
2878 2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
2880 * gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
2883 2010-01-15 Eric Botcazou <botcazou@adacore.com>
2885 "info tasks" broken by typedefs in ATCB type definitions.
2886 * ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
2887 ada_check_typedef before retrieving the length of the type for
2890 2010-01-15 Joel Brobecker <brobecker@adacore.com>
2892 Do not use name-based lookup for unconstrained packed arrays.
2893 * ada-lang.c (find_parallel_type_by_descriptive_type):
2894 Limit the fallback to name-based lookups to the case where
2895 the type is a constrained packed array.
2897 2010-01-15 Joel Brobecker <brobecker@adacore.com>
2899 Enhance gdb-gdb.py to handle main_type.type_specific.
2900 * gdb-gdb.py: Print the type-specific part of struct main_type.
2902 2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
2904 * configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
2905 * configure: Regenerate.
2906 * config.in: Regenerate.
2907 * utils.c: Include sys/resource.h.
2908 (dump_core, can_dump_core): New.
2909 (internal_vproblem): Update the comment. Check can_dump_core while
2910 setting dump_core_p. Replace two abort calls by dump_core calls.
2912 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2913 Eli Zaretskii <eliz@gnu.org>
2915 * NEWS: Document the PIE support.
2917 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2919 * linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
2920 (check_is_pie_binary, _initialize_linux_tdep): Remove.
2922 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2924 * solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
2925 Replace exec_entry_point call by bfd_get_start_address.
2927 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2929 Support Valgrind attachments broken by the PIE support.
2930 * auxv.c: Include gdbcore.h.
2931 (procfs_xfer_auxv): Make static. Reduce its comment. Drop its
2932 parameters ops, object and annex. Remove their assertions.
2933 (ld_so_xfer_auxv, memory_xfer_auxv): New function.
2934 * auxv.h (procfs_xfer_auxv): Remove comment. Rename to ...
2935 (memory_xfer_auxv): ... here.
2936 * linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
2938 * procfs.c (procfs_xfer_partial): Likewise.
2939 * solib-svr4.c (svr4_relocate_main_executable): New prototype.
2940 (svr4_special_symbol_handling): Call svr4_relocate_main_executable.
2941 (svr4_solib_create_inferior_hook): Conditionalize the
2942 svr4_relocate_main_executable call.
2944 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2946 * solib-svr4.c (scan_dyntag): Remove variable dyn_addr. New variable
2947 target_section. Find SECT in current_target_sections, gdb_assert it.
2948 (elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
2950 * symtab.c (lookup_objfile_from_block): Return the binary file instead
2951 of separate debug info file.
2953 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2955 Support PIEs with no symfile_objfile.
2956 * exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
2957 * solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
2959 2010-01-14 Jan Kratochvil <jan.kratochvil@redhat.com>
2961 * solib-svr4.c (svr4_relocate_main_executable): Move the static exec
2963 (svr4_static_exec_displacement): ... a new function.
2964 (svr4_exec_displacement): New function.
2965 (svr4_relocate_main_executable): Call svr4_exec_displacement. Allocate
2966 new_offsets using alloca now. Remove variable old_chain and changed.
2967 Call objfile_relocate unconditionally now.
2969 2010-01-14 Doug Evans <dje@google.com>
2971 * gdbtypes.c (arch_flags_type): Fix comment.
2972 * gdbtypes.h (arch_composite_type): Fix comment.
2974 2009-01-14 Tristan Gingold <gingold@adacore.com>
2976 * machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
2977 Call xstrdup for abfd->filename. Pass symfile_flags and objfile flags
2978 to symbol_file_add_from_bfd. Add OSO as separate objfile.
2979 (macho_oso_symfile): Add symfile_flags parameter. Pass it to
2980 macho_add_oso_symfile.
2981 (macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
2983 2010-01-14 Joel Brobecker <brobecker@adacore.com>
2985 Tru64: Dead threads are never deleted.
2986 * dec-thread.c (dec_thread_ptid_is_alive): New function.
2987 (dec_thread_count_gdb_threads): Fix counter increment.
2988 (dec_thread_add_gdb_thread): Fix *listp increment.
2989 (resync_thread_list): Fix bug in deletion of dead threads that
2990 caused all threads to be deleted, instead of just the dead ones.
2992 2010-01-13 Phil Muldoon <pmuldoon@redhat.com>
2996 * python/python-internal.h: Add lazy_string_object_type
2998 (create_lazy_string_object, gdbpy_initialize_lazy_string)
2999 (gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
3000 * python/py-value.c (valpy_lazy_string): New function.
3001 (convert_value_from_python): Add lazy string conversion.
3002 * python/py-prettyprint.c (pretty_print_one_value): Check if
3003 return is also a lazy string.
3004 (print_string_repr): Add lazy string printing branch.
3005 (print_children): Likewise.
3006 * python/py-lazy-string.c: New file. Implement lazy strings.
3007 * python/python.c (_initialize_python): Call
3008 gdbpy_initialize_lazy_string.
3009 * varobj.c (value_get_print_value): Add lazy string printing
3010 branch. Account for encoding.
3011 * c-lang.c (c_printstr): Account for new encoding argument. If
3012 encoding is NULL, find encoding suited for type, otherwise use
3014 * language.h (language_defn): Add encoding argument.
3015 (LA_PRINT_STRING): Likewise.
3016 * language.c (unk_lang_printstr): Update to reflect new encoding
3017 argument to language_defn.
3018 * ada-lang.h (ada_printstr): Likewise.
3019 * c-lang.h (c_printstr): Likewise.
3020 * p-lang.h (pascal_printstr);
3021 * f-lang.c (f_printstr): Likewise.
3022 * m2-lang.c (m2_printstr): Likewise.
3023 * objc-lang.c (objc_printstr): Likewise.
3024 * p-lang.c (pascal_printstr): Likewise.
3025 * scm-lang.c (scm_printstr): Likewise.
3026 * c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
3028 * ada-valprint.c (ada_printstr): Likewise.
3029 * f-valprint.c (f_val_print): Likewise
3030 * m2-valprint.c (m2_val_print): Likewise.
3031 * p-valprint.c (pascal_val_print): Likewise.
3032 * expprint.c (print_subexp_standard): Likewise.
3033 * valprint.c (val_print_string): Likewise.
3034 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
3035 (SUBDIR_PYTHON_SRCS): Likewise.
3036 (py-lazy-string.o): New rule.
3038 2010-01-13 Doug Evans <dje@google.com>
3040 * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
3041 uninitialized" warning from gcc on local `tree'.
3043 2010-01-13 Vladimir Prus <vladimir@codesourcery.com>
3045 Implement core awareness.
3047 * bcache.c (compare_ints): Remove
3048 (print_percentage): Use compare_positive_ints.
3049 * defs.h (compare_positive_ints): Declare.
3050 * linux-nat.h (struct lin_lwp): New field core.
3051 (linux_nat_core_of_thread_1): Declare.
3052 * linux-nat.c (add_lwp): Init the 'core' field.
3053 (linux_nat_wait_1): Record the core.
3054 (linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
3055 (linux_nat_add_target): Register the above.
3056 * linux-thread-db.c (update_thread_core): New.
3057 (thread_db_find_new_threads): Update core information for
3059 * remote.c (struct private_thread_info): New.
3060 (free_private_thread_info, demand_private_info): New.
3061 (PACKET_qXfer_threads, use_osdata_threads): New.
3062 (struct thread_item, threads_parsing_context
3063 (start_thread, end_thread, thread_attributes)
3064 (thread_children, threads_children, threads_elements): New.
3065 (remote_threads_info): Try qXfer:threads before anything
3067 (remote_protocol_packets): Register qXfer:threads.
3068 (remote_open_1): Init use_osdata_threads.
3069 (struct stop_reply): New field 'core'.
3070 (remote_parse_stop_reply): Parse core number.
3071 (process_stop_reply): Record core number.
3072 (remote_xfer_partial): Handle qXfer:threads.
3073 (remote_core_of_thread): New.
3074 (init_remote_ops): Register remote_core_of_thread.
3075 (_initialize_remote): Register qXfer:read.
3076 * target.c (target_core_of_thread): New
3077 * target.h (enum target_object): New value TARGET_OBJECT_THREADS.
3078 (struct target_ops): New field to_core_of_threads.
3079 (target_core_of_thread): Declare.
3080 * gdbthread.h (struct thread_info): New field private_dtor.
3081 * thread.c (print_thread_info): Report the core.
3082 * ui-out.c (MAX_UI_OUT_LEVELS): Increase.
3083 * utils.c (compare_positive_ints): New.
3084 * features/threads.dtd: New.
3085 * mi/mi-interp.c (mi_on_normal_stop): Report the core.
3086 * mi/mi-main.c (struct collect_cores_data, collect_cores)
3087 (do_nothing, free_vector_of_osdata_items)
3088 (splay_tree_int_comparator, free_splay_tree): New.
3089 (print_one_inferior_data): Implemented printing of selected
3090 inferiors. Collect and print cores.
3091 (output_cores): New.
3092 (mi_cmd_list_thread_groups): Support --recurse. Permit specifying
3093 thread groups together with --available.
3095 2010-01-12 Jan Kratochvil <jan.kratochvil@redhat.com>
3097 * configure: Regenerate (for _STRUCTURED_PROC).
3099 2010-01-12 Joel Brobecker <brobecker@adacore.com>
3101 Delete dead function.
3102 * ada-lang.c (extract_string): Delete. No longer used.
3104 2010-01-12 Joel Brobecker <brobecker@adacore.com>
3106 Fix -Wunused warning in dec-thread.c.
3107 * dec-thread.c (dec_thread_count_gdb_threads)
3108 (dec_thread_add_gdb_thread): Prevent -Wunused warning.
3110 2010-01-12 Joel Brobecker <brobecker@adacore.com>
3112 * ada-valprint.c (ada_print_floating): Remove trailing space.
3114 2010-01-12 Joel Brobecker <brobecker@adacore.com>
3116 Add support for DW_AT_GNAT_descriptive_type.
3117 * gdbtypes.h (enum type_specific_kind): New enum.
3118 (struct main_type) [type_specific_field]: New component.
3119 [type_specific]: Add new component "gnat_stuff".
3120 (struct gnat_aux_type): New type.
3121 (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
3122 (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
3123 (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
3124 (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
3125 (TYPE_SPECIFIC_FIELD): New macros.
3126 (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
3127 type does not hold any cplus-specific data.
3128 (TYPE_RAW_CPLUS_SPECIFIC): New macro.
3129 (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
3130 (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
3131 cplus-specific data.
3132 * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
3133 Set new component TYPE_SPECIFIC_FIELD (type).
3134 (gnat_aux_default): New constant.
3135 (allocate_gnat_aux_type): New function.
3136 (init_type): Add initialization the type-specific stuff for
3137 TYPE_CODE_FLT and TYPE_CODE_FUNC types.
3138 (print_gnat_stuff): New function.
3139 (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
3140 specific data. Adjust code that prints the contents of the
3141 type-specific union using the TYPE_SPECIFIC_FIELD value.
3142 * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
3143 the type cplus stuff for Ada types.
3144 (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
3145 Error out if these routines are called with an Ada type.
3146 (read_structure_type, read_array_type, read_subrange_type):
3147 Add call to set_descriptive_type.
3148 (set_die_type): Initialize the gnat-specific data if necessary.
3149 (need_gnat_info, die_descriptive_type, set_descriptive_type):
3151 * ada-lang.c (decode_constrained_packed_array_type): Use
3152 decode_constrained_packed_array_type instead of doing a standard
3153 lookup to locate a parallel type.
3154 (find_parallel_type_by_descriptive_type): New function.
3155 (ada_find_parallel_type_with_name): New function.
3156 (ada_find_parallel_type): Reimplement using
3157 ada_find_parallel_type_with_name.
3158 * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
3159 to check if type has a cplus stuff.
3160 * linespec.c (total_number_of_methods): Likewise.
3161 * mdebugread.c (new_type): Likewise.
3163 2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
3165 * NEWS: Document the 0b binary number prefix parsing.
3167 2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
3169 * objfiles.c (objfile_relocate1): Change the return type to int.
3170 Describe the new return value. Return non-zero if data changed.
3171 (objfile_relocate): New variable changed. Set it. Call
3172 breakpoint_re_set depending on CHANGED.
3174 2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
3176 Implement binary numbers parsing.
3177 * c-exp.y (parse_number): New case 'b' and 'B'.
3179 2010-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
3180 Tristan Gingold <gingold@adacore.com>
3182 * solib.c (info_sharedlibrary_command): Replace
3183 objfile_has_partial_symbols and objfile_has_full_symbols calls by
3184 objfile_has_symbols.
3186 2010-01-10 Joel Brobecker <brobecker@adacore.com>
3188 * NEWS: Document the improvements made to the mips-irix port.
3190 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3192 Fix the documentation of valprint.c:value_print.
3193 * valprint.c (value_print): Update the function description to
3194 mention that the syntax of the output follows the current_language,
3197 2010-01-09 Jan Kratochvil <jan.kratochvil@redhat.com>
3199 Fix displacement of separate debug info files.
3200 * objfiles.c (objfile_relocate): Rename to ...
3201 (objfile_relocate1): ... here and make it static. Extend the comment.
3202 (objfile_relocate): New function.
3203 * solib-spu.c (spu_relocate_main_executable): Explicitly check if
3204 SYMFILE_OBJFILE is NULL. Remove variables objfile and old_chain.
3205 Remove following of SEPARATE_DEBUG_OBJFILE. new_offsets is now
3206 allocated using alloca.
3207 * symfile.c (copy_section_addr_info): Remove.
3208 (build_section_addr_info_from_objfile): Make it global. New variables
3209 addr_bit and mask, use them.
3210 * symfile.h (build_section_addr_info_from_objfile): New prototype.
3211 (copy_section_addr_info): Remove.
3213 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3215 Signal unwinder for mips-irix N32.
3216 * mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
3218 (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
3219 (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
3220 (SIGCONTEXT_LO_OFF): New macros.
3221 (mips_irix_n32_tramp_frame_init): New function.
3222 (mips_irix_n32_tramp_frame): New static constant.
3223 (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
3225 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3227 Breakpoint in shared library does not work on mips-irix.
3228 * procfs.c: #include "observer.h".
3229 (procfs_inferior_created): New function, moving here the code
3230 which unsets the syssgi syscall-exit notifications.
3231 (procfs_create_inferior): Remove the code which unsets the syssgi
3232 syscall-exit notifications. It is too early to do this here.
3233 (_initialize_procfs): Attach the procfs_inferior_created observer.
3235 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3237 Wrong return convention for arrays (mips-irix).
3238 * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
3239 128 bits or smaller are returned the same way as structs
3240 and unions of the the same size.
3242 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3244 Cannot set the PC on mips-irix.
3245 * irix5-nat.c (fill_gregset): Check regno against the raw PC
3246 register number, no the cooked one.
3248 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3250 Error while loading core file on mips-irix.
3251 * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
3252 if debugging from a core file.
3254 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3256 GDB hangs when attaching to process on mips-irix.
3257 * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
3258 attaching to a process.
3260 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3262 Use the correct breakpoint instruction on mips-irix.
3263 * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
3264 containing the correct breakpoint instruction to use on mips-irix.
3265 Use it when the osabi is GDB_OSABI_IRIX.
3267 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3269 -Wunused warning in procfs.c (mips-irix only).
3270 * procfs.c (gdb_praddset, gdb_prdelset): New macros. Use them
3271 throughout instead of using praddset and prdelset respectively.
3273 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3275 GDB crash while stepping into function.
3276 * infrun.c (handle_inferior_event): Refetch the current frame
3277 after handling what.main_action, in case that pointer became
3280 2010-01-09 Joel Brobecker <brobecker@adacore.com>
3282 Fix build failure of solaris-hosted cross debuggers.
3283 * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
3285 2010-01-09 Daniel Gutson <dgutson@codesourcery.com>
3287 Fix build failure on sparc-solaris.
3288 * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
3290 2010-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
3292 Move some symfile code into subroutines.
3293 * symfile.h (relative_addr_info_to_section_offsets)
3294 (addr_info_make_relative): New prototypes.
3295 * symfile.c (default_symfile_offsets): Move a part to ...
3296 (relative_addr_info_to_section_offsets): ... this new function.
3297 (default_symfile_offsets): Call it.
3298 (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
3300 (addr_info_make_relative): ... this new function.
3302 2010-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
3304 Add from_tty to solib_create_inferior_hook.
3305 * infcmd.c (post_create_inferior): Move solib_add after
3306 solib_create_inferior_hook. Pass from_tty to
3307 solib_create_inferior_hook. Call solib_add and SOLIB_ADD with
3308 0 from_tty and comment why.
3309 * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
3310 * linux-nat.c (linux_child_follow_fork): Likewise.
3311 * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
3312 * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
3314 * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
3315 * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
3316 * solib-null.c (null_solib_create_inferior_hook): Likewise.
3317 * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
3318 * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
3319 * solib-som.c (som_solib_create_inferior_hook): Likewise.
3320 * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
3321 Pass it to svr4_so_ops.solib_create_inferior_hook.
3322 * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
3324 * solib-svr4.c (enable_break): New parameter from_tty. Pass it to
3326 (svr4_solib_create_inferior_hook): New parameter from_tty. Pass it to
3328 * solib-target.c (solib_target_solib_create_inferior_hook): New
3330 * solib.c (solib_create_inferior_hook): New parameter from_tty. Pass
3331 it to ops->solib_create_inferior_hook.
3332 (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
3333 Move solib_add after solib_create_inferior_hook, call it now with
3334 from_tty as 0. New comment there.
3335 * solib.h (solib_create_inferior_hook): New parameter from_tty.
3336 * solist.h (struct target_so_ops <solib_create_inferior_hook>):
3339 2010-01-08 Vladimir Prus <vladimir@codesourcery.com>
3342 * infrun.c (handle_inferior_event): Use get_thread_regcache
3343 with events ptid, not get_current_regcache.
3345 2009-01-08 Joel Brobecker <brobecker@adacore.com>
3347 GDB crash with empty executable name (MinGW).
3348 * source.c (openp): Add assert that parameter string is not NULL.
3349 if parameter string is an empty string, then return with a failure
3352 2009-01-08 Joel Brobecker <brobecker@adacore.com>
3354 Get rid of support for VAX Floats.
3355 * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
3356 (ada_vax_float_print_function): Delete.
3357 * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
3358 (ada_vax_float_print_function): Delete.
3359 * ada-typeprint.c (print_vax_floating_point_type): Delete.
3360 (ada_print_type): Remove support for VAX floats.
3361 * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
3363 2010-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
3365 * stabsread.c (read_args): Handle zero arguments.
3367 2009-01-08 Joel Brobecker <brobecker@adacore.com>
3369 Cannot find in-tree libiconv.a after reconfigure.
3370 * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
3371 that we can use, then cache the path to this archive.
3372 * configure: Regenerate.
3374 2010-01-07 Stan Shebs <stan@codesourcery.com>
3376 Make tracepoint operations go through target vector.
3377 * target.h (enum trace_find_type): New enum.
3378 (struct target_ops): New fields to_trace_init,
3379 to_download_tracepoint, to_download_trace_state_variable,
3380 to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
3381 to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
3382 to_set_disconnected_tracing.
3383 (target_trace_init): New macro.
3384 (target_download_tracepoint): New macro.
3385 (target_download_trace_state_variable): New macro.
3386 (target_trace_start): New macro.
3387 (target_trace_set_readonly_regions): New macro.
3388 (target_get_trace_status): New macro.
3389 (target_trace_stop): New macro.
3390 (target_trace_find): New macro.
3391 (target_get_trace_state_variable_value): New macro.
3392 (target_set_disconnected_tracing): New macro.
3393 * target.c (update_current_target): Inherit and set defaults for
3394 tracepoint operations.
3395 * tracepoint.c (default_collect): Make globally visible.
3396 (target_is_remote): Remove, along with all calls.
3397 (tvariables_info): Call target_get_trace_state_variable_value.
3398 (remote_set_transparent_ranges): Remove.
3399 (trace_start_command): Call target_trace_init,
3400 target_download_tracepoint, etc.
3401 (download_tracepoint): Remove.
3402 (trace_stop_command): Simplify.
3403 (stop_tracing): Call target_trace_stop.
3404 (get_trace_status): Call target_get_trace_status.
3405 (trace_status_command): Add case for targets that cannot trace.
3406 (finish_tfind_command): Change to take numerical arguments, call
3408 (trace_find_command): Update call to finish_tfind_command.
3409 (trace_find_pc_command): Ditto.
3410 (trace_find_tracepoint_command): Ditto.
3411 (trace_find_line_command): Ditto.
3412 (trace_find_range_command): Ditto.
3413 (trace_find_outside_command): Ditto.
3414 (set_disconnected_tracing_value): Call
3415 target_set_disconnected_tracing.
3416 * remote.c: Add protocol encoding bits from tracepoint.c.
3417 (trace_error): Move from tracepoint.c.
3418 (remote_get_noisy_reply): Ditto.
3419 (free_actions_list_cleanup_wrapper): Ditto.
3420 (free_actions_list): Ditto.
3421 (remote_trace_init): New function.
3422 (remote_download_tracepoint): New function.
3423 (remote_download_trace_state_variable): New function.
3424 (remote_trace_set_readonly_regions): New function.
3425 (remote_trace_start): New function.
3426 (remote_get_trace_status): New function.
3427 (remote_trace_stop): New function.
3428 (remote_trace_find): New function.
3429 (remote_download_trace_state_variable): New function.
3430 (remote_set_disconnected_tracing): New function.
3431 (init_remote_ops): Add tracepoint operations.
3433 * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
3435 2010-01-07 Tristan Gingold <gingold@adacore.com>
3437 * symfile.c (build_section_addr_info_from_objfile): New function.
3438 (symbol_file_add_separate): Don't use offsets from objfile but
3441 2010-01-06 Stan Shebs <stan@codesourcery.com>
3443 Support disconnected tracing.
3444 * infcmd.c (detach_command): Ask whether to stop tracing.
3445 * cli/cli-cmds.c (quit_command): Ditto.
3446 * breakpoint.h (struct breakpoint): New field number_on_target.
3447 * breakpoint.c (create_tracepoint_from_upload): New function.
3448 (get_tracepoint_by_number_on_target): New function.
3449 * remote.c (struct remote): New field disconnected_tracing.
3450 (remote_disconnected_tracing_feature): New function.
3451 (remote_protocol_features): Add DisconnectedTracing.
3452 (struct uploaded_tp): New struct.
3453 (uploaded_tps): New global.
3454 (get_uploaded_tp): New function.
3455 (find_matching_tracepoint): New function.
3456 (remote_get_tracing_state): New function.
3457 (remote_start_remote): Call it.
3458 * tracepoint.c (disconnected_tracing): New global.
3459 (trace_start_command): Initialize number_on_target.
3460 (stop_tracing): New function, split out from...
3461 (trace_stop_command): Call stop_tracing.
3462 (get_trace_status): New function, split out from...
3463 (trace_status_command): Call get_trace_status, add info on
3464 disconnection behavior.
3465 (disconnect_or_stop_tracing): New function.
3466 (finish_tfind_command): Translate from number on target.
3467 (trace_find_tracepoint_command): Translate to number on target.
3468 (send_disconnected_tracing_value): New function.
3469 (set_disconnected_tracing): New function.
3470 (_initialize_tracepoint): Add disconnected-tracing variable.
3471 * NEWS: Mention disconnected tracing.
3473 2010-01-06 Tristan Gingold <gingold@adacore.com>
3475 * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
3476 parameter to main_objfile. Iterate on all separate debug objfiles.
3477 * symfile.h (symbol_file_add_separate)
3478 (find_separate_debug_file_by_debuglink): Remove parameter names.
3479 * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
3480 (reread_symbols): Use free_objfile_separate_debug.
3481 * objfiles.h (struct objfile): Add separate_debug_objfile_link.
3483 (objfile_separate_debug_iterate, add_separate_debug_objfile)
3484 (free_objfile_separate_debug): New prototypes.
3485 * objfiles.c (objfile_separate_debug_iterate): New function.
3486 (add_separate_debug_objfile, free_objfile_separate_debug): New
3488 (free_objfile): Use free_objfile_separate_debug. Adjust for
3489 multiple separate debug objfile.
3490 (objfile_has_symbols): Adjust comment. Iterate on all separate
3492 * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
3494 (lookup_minimal_symbol_text): Ditto.
3495 (lookup_minimal_symbol_by_pc_name): Ditto.
3496 (lookup_minimal_symbol_solib_trampoline): Ditto.
3497 (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
3500 2010-01-05 Stan Shebs <stan@codesourcery.com>
3502 Add fast tracepoints.
3503 * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
3504 * arch-utils.c (default_fast_tracepoint_valid_at): New function.
3505 * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
3506 * breakpoint.c (tracepoint_type): New function.
3507 (ALL_TRACEPOINTS): Use it.
3508 (should_be_inserted): Ditto.
3509 (bpstat_check_location): Ditto.
3510 (print_one_breakpoint_location): Ditto.
3511 (user_settable_breakpoint): Ditto.
3512 (set_breakpoint_location_function): Ditto.
3513 (disable_breakpoints_in_shlibs): Ditto.
3514 (delete_trace_command): Ditto.
3515 (print_it_typical): Add bp_fast_tracepoint case.
3516 (bpstat_what): Ditto.
3517 (print_one_breakpoint_location): Ditto.
3518 (allocate_bp_location): Ditto.
3520 (breakpoint_re_set_one): Ditto.
3521 (disable_command): Ditto.
3522 (enable_command): Ditto.
3523 (check_fast_tracepoint_sals): New function.
3524 (break_command_really): Call it.
3525 (ftrace_command): New function.
3526 (_initialize_breakpoint): Add ftrace command.
3527 * gdbarch.sh (fast_tracepoint_valid_at): New.
3528 * gdbarch.h, gdbarch.c: Regenerate.
3529 * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
3530 (i386_gdbarch_init): Use it.
3531 * remote.c (struct remote_state): New field fast_tracepoints.
3532 (PACKET_FastTracepoints): New packet config type.
3533 (remote_fast_tracepoint_feature): New function.
3534 (remote_protocol_features): Add FastTracepoints.
3535 (remote_supports_fast_tracepoints): New function.
3536 (_initialize_remote): Add FastTracepoints.
3537 * tracepoint.c (download_tracepoint): Add fast tracepoint option.
3538 * NEWS: Mention fast tracepoints.
3540 2010-01-06 Joel Brobecker <brobecker@adacore.com>
3542 * gdb-gdb.py: New file.
3544 2010-01-05 Michael Snyder <msnyder@vmware.com>
3546 * infrun.c (handle_inferior_event): Fix typo in comment.
3548 2010-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
3550 * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
3552 2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
3554 * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
3556 (s390-linux32-expedite): Define.
3557 (s390-linux64-expedite): Define.
3558 (s390x-linux64-expedite): Define.
3559 * features/s390-acr.xml: New file.
3560 * features/s390-fpr.xml: New file.
3561 * features/s390-core32.xml: New file.
3562 * features/s390-core64.xml: New file.
3563 * features/s390x-core64.xml: New file.
3564 * features/s390-linux32.xml: New file.
3565 * features/s390-linux64.xml: New file.
3566 * features/s390x-linux64.xml: New file.
3567 * features/s390-linux32.c: New generated file.
3568 * features/s390-linux64.c: New generated file.
3569 * features/s390x-linux64.c: New generated file.
3571 * regformats/s390-linux32.dat: New generated file.
3572 * regformats/s390-linux64.dat: New generated file.
3573 * regformats/s390x-linux64.dat: New generated file.
3574 * regformats/reg-s390.dat: Remove.
3575 * regformats/reg-s390x.dat: Remove.
3577 * s390-nat.c: Include "auxv.h" and <elf.h>.
3578 (HWCAP_S390_HIGH_GPRS): Define if undefined.
3579 (s390_target_wordsize): New function.
3580 (s390_auxv_parse): Likewise.
3581 (s390_get_hwcap): Likewise.
3582 (s390_read_description): Likewise.
3583 (_initialize_s390_nat): Install s390_auxv_parse and
3584 s390_read_description.
3586 * s390-tdep.c: Include "features/s390-linux32.c",
3587 "features/s390-linux64.c", and "features/s390x-linux64.c".
3588 (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
3589 (s390_register_call_saved): New function.
3590 (s390_register_name): Remove.
3591 (s390_register_type): Remove.
3592 (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
3593 (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
3594 (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
3595 (s390_pseudo_register_name): New function.
3596 (s390_pseudo_register_type): New function.
3597 (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
3598 Handle full GPR pesudos and varying pseudo register numbers.
3599 (s390_pseudo_register_write): Likewise
3600 (s390x_pseudo_register_read): Remove.
3601 (s390x_pseudo_register_write): Likewise.
3602 (s390_register_group): Remove.
3603 (s390_pseudo_register_group): New function.
3604 (s390_regmap_gregset): Add GPR upper halves.
3605 (s390x_regmap_gregset): Likewise.
3606 (s390_regmap_fpregset): Likewise.
3607 (s390_regmap_upper): New global variable.
3608 (s390_upper_regset): New global variable.
3609 (s390_upper_regset_sections): New global variable.
3610 (s390_regset_from_core_section): Handle GPR upper halves.
3611 (s390_core_read_description): New function.
3612 (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
3613 register information. Handle varying pseudo register numbers.
3614 (s390_backchain_frame_unwind_cache): Likewise.
3615 (s390_frame_prev_register): Unwind full GPRs to show lower halves.
3616 (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
3617 (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
3618 PC and CC pseudos. Unwind upper halves and full GPRs as appropriate.
3619 Handle varying pseudo register numbers.
3620 (s390_unwind_pc): Handle varying pseudo register numbers.
3621 (s390_dwarf2_prev_register): New function.
3622 (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
3623 register information. Handle varying pseudo register numbers.
3624 Install s390_dwarf2_prev_register to unwind full GPRs.
3625 (s390_gdbarch_init): Handle target descriptions. Assign varying
3626 pseudo register numbers. Install s390_adjust_frame_regnum.
3627 (_initialize_s390_tdep): Initialize target descriptions.
3629 * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
3630 (S390_NUM_REGS): Redefine to include upper half registers.
3631 (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
3632 (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
3633 (tdesc_s390_linux32): Add declaration.
3634 (tdesc_s390_linux64): Likewise.
3635 (tdesc_s390x_linux64): Likewise.
3637 2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
3639 * regset.h (struct core_regset_section): Add HUMAN_NAME.
3640 * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
3641 * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
3642 (ppc_linux_vmx_regset_sections): Likewise.
3643 (ppc_linux_fp_regset_sections): Likewise.
3645 * corelow.c (get_core_register_section): Constify arguments.
3646 (get_core_registers): Use gdbarch_core_regset_sections instead
3647 of hard-coded platform-specific register section names.
3649 2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
3651 * dwarf2loc.c (read_pieced_value): If a piece occupies part of
3652 a register, assume the least-significant part is used.
3653 (write_pieced_value): Likewise.
3655 2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
3657 * printcmd.c: Include "arch-utils.h".
3658 (do_one_display): Re-parse expression if current architecture changed.
3660 2010-01-03 Jan Kratochvil <jan.kratochvil@redhat.com>
3661 Joel Brobecker <brobecker@adacore.com>
3663 * gdbtypes.c (check_typedef): New comment on type length.
3664 * value.c (allocate_value_lazy): Remove the unused atype variable. New
3665 comment on type length.
3666 (value_primitive_field): Keep the original TYPE value, new comment.
3668 2010-01-01 Jan Kratochvil <jan.kratochvil@redhat.com>
3670 * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
3671 p_start. Change != comparisons to > and < comparisons.
3673 2010-01-01 Jan Kratochvil <jan.kratochvil@redhat.com>
3675 * cli/cli-script.c (process_next_line): Check P2 overrun.
3677 2009-01-01 Joel Brobecker <brobecker@adacore.com>
3679 Update the copyright hearder to add year 2010 for most GDB files.
3681 2009-01-01 Joel Brobecker <brobecker@adacore.com>
3683 Fix build failure in inf-ptrace.c.
3684 * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
3686 2010-01-01 Joel Brobecker <brobecker@adacore.com>
3688 * top.c (print_gdb_version): Update copyright year.
3690 2010-01-01 Joel Brobecker <brobecker@adacore.com>
3692 Fix break *FUN'address thread NUM.
3693 * ada-lex.l (task): Expand rule to also match the thread keyword.
3695 2010-01-01 Joel Brobecker <brobecker@adacore.com>
3697 Fix break *FUN'address task NUM.
3698 * ada-lex.l (task): New rule.
3699 * ada-lang.c (valid_task_id): Make sure the Ada task list has
3700 been built before using it.
3702 For older changes see ChangeLog-2009.
3708 version-control: never