3 * ada-lang.c (remove_extra_symbols): Rename `remove' to
8 * ada-exp.y (write_var_or_type): Rename nested `renaming' to
13 * dwarf2read.c (dwarf2_per_cu_data): Rename debug_type_section to
14 debug_types_section. All uses updated.
15 (partial_read_comp_unit_head): Rename parameter is_debug_type_section
16 to is_debug_types_section.
18 * python/py-auto-load.c (source_section_scripts): Call xfree
24 * tracepoint.c (start_tracing): Clear `inserted' flag.
28 * tracepoint.c (create_tsv_from_upload): Change sprintf to xstrprintf.
32 * breakpoint.c (bp_loc_is_permanent): Rename `brk' to
37 * breakpoint.c (update_static_tracepoint): Rename nested `sal' and
38 `marker' variables to `sal2' and `tpmarker' respectively
43 * linespec.c (hash_address_entry): Use iterative_hash_object on each
44 field rather than the struct itself.
48 * breakpoint.c (compare_breakpoints): New function.
49 (clear_command): Remove duplicate breakpoints. Properly clean
55 * mips-tdep.c (mips_skip_mips16_trampoline_code): Sign-extend
56 address chunks retrieved from decoded lui/addiu pairs.
60 * mips-tdep.c (extended_offset): Correct calculation.
61 (unpack_mips16): Correct bitfield positions used for extraction
62 of the immediate argument; fix sign-extension of same.
63 (extended_mips16_next_pc): Correct B instruction's offset
64 calculation. Correct register decoding of the BEQZ and BNEZ
65 as well as jump-register instructions. Handle compact jumps.
69 * objfiles.h (struct objfile): Remove obsolete comment.
70 * objfiles.c (build_objfile_section_table): Remove obsolete
75 * MAINTAINERS (Responsible Maintainers): Add Yao Qi as
76 maintainer of the tic6x target.
80 * arm-tdep.h (arm_deal_with_atomic_sequence): Add prototype.
81 * arm-tdep.c (thumb_deal_with_atomic_sequence_raw): New function.
82 (arm_deal_with_atomic_sequence_raw): Likewise.
83 (arm_deal_with_atomic_sequence): Likewise.
84 (arm_software_single_step): Call it.
85 * arm-linux-tdep.c (arm_linux_software_single_step): Likewise.
89 * s390-tdep.c: Replace "Linux" by "GNU/Linux" in comments
91 * s390-tdep.h: Likewise.
95 * machoread.c (macho_symtab_read): Do not consider N_OPT as
96 a debugging stab. Improve complaint message.
100 * mips-tdep.c (mips32_scan_prologue): Only update the immediate
101 load adjustment if still within the prologue.
105 * mips-tdep.c (mips32_next_pc): Fix floating point condition
110 * mips-tdep.c (deal_with_atomic_sequence): Fix the handling
111 of BLTZ* and BGEZ* instructions.
115 * mips-tdep.c (mips_pc_is_mips16): Reverse the order of checks
116 performed to determine whether an address refers to standard
118 (mips16_next_pc): Use mips_pc_is_mips16 instead of
123 * breakpoint.c (breakpoint_restore_shadows): Rename to ...
124 (breakpoint_xfer_memory): ... this. Change prototype. Handle
126 * breakpoint.h (breakpoint_restore_shadows): Delete.
127 (breakpoint_xfer_memory): Declare.
128 * mem-break.c (default_memory_insert_breakpoint)
129 (default_memory_remove_breakpoint): Use target_write_raw_memory.
130 (memory_xfer_partial): Rename to ...
131 (memory_xfer_partial_1): ... this. Don't mask out breakpoints
133 (memory_xfer_partial): New.
134 (target_write_raw_memory): New.
135 * target.h (target_write_raw_memory): New.
139 * linespec.c (decode_dollar): Avoid "may be used uninitialized" warning.
143 * language.h (struct language_defn): Add new component
144 la_symbol_name_compare.
145 * symfile.h (struct quick_symbol_functions): Update the profile
146 of parameter "name_matcher" for the expand_symtabs_matching
147 method. Update the documentation accordingly.
148 * ada-lang.h (ada_name_for_lookup): Add declaration.
149 * ada-lang.c (ada_name_for_lookup): New function, extracted out
150 from ada_iterate_over_symbols.
151 (ada_iterate_over_symbols): Do not encode symbol name anymore.
152 (ada_expand_partial_symbol_name): Adjust profile.
153 (ada_language_defn): Add value for la_symbol_name_compare field.
154 * linespec.c: #include "ada-lang.h".
155 (iterate_name_matcher): Add language parameter. Replace call
156 to strcmp_iw by call to language->la_symbol_name_compare.
157 (decode_variable): Encode COPY if current language is Ada.
158 * dwarf2read.c (dw2_expand_symtabs_matching): Adjust profile
159 of name_matcher parameter. Adjust call to name_matcher.
160 * psymtab.c (expand_symtabs_matching_via_partial): Likewise.
161 (expand_partial_symbol_names): Update profile of parameter "fun".
162 * psymtab.h (expand_partial_symbol_names): Update profile of
164 * symtab.c (demangle_for_lookup): Update function documentation.
165 (search_symbols_name_matches): Add language parameter.
166 (expand_partial_symbol_name): Likewise.
167 * c-lang.c (c_language_defn, cplus_language_defn)
168 (asm_language_defn, minimal_language_defn): Add value for
169 la_symbol_name_compare field.
170 * d-lang.c (d_language_defn): Likewise.
171 * f-lang.c (f_language_defn): Ditto.
172 * jv-lang.c (java_language_defn): Ditto.
173 * m2-lang.c (m2_language_defn): Ditto.
174 * objc-lang.c (objc_language_defn): Ditto.
175 * opencl-lang.c (opencl_language_defn): Ditto.
176 * p-lang.c (pascal_language_defn): Ditto.
177 * language.c (unknown_language_defn, auto_language_defn)
178 (local_language_defn): Ditto.
182 * linespec.c (iterate_over_all_matching_symtabs): Use
183 LA_ITERATE_OVER_SYMBOLS.
184 (lookup_prefix_sym, add_matching_symbols_to_info): Likewise.
185 (find_function_symbols, decode_variable): Remove Ada special
187 * language.h (struct language_defn) <la_iterate_over_symbols>: New
189 (LA_ITERATE_OVER_SYMBOLS): New macro.
190 * language.c (unknown_language_defn, auto_language_defn)
191 (local_language_defn): Update.
192 * c-lang.c (c_language_defn, cplus_language_defn)
193 (asm_language_defn, minimal_language_defn): Update.
194 * d-lang.c (d_language_defn): Update.
195 * f-lang.c (f_language_defn): Update.
196 * jv-lang.c (java_language_defn): Update.
197 * m2-lang.c (m2_language_defn): Update.
198 * objc-lang.c (objc_language_defn): Update.
199 * opencl-lang.c (opencl_language_defn): Update.
200 * p-lang.c (pascal_language_defn): Update.
201 * ada-lang.c (ada_iterate_over_symbols): New function.
202 (ada_language_defn): Update.
207 PR breakpoints/13105, PR objc/8341, PR objc/8343, PR objc/8366,
208 PR objc/8535, PR breakpoints/11657, PR breakpoints/11970,
209 PR breakpoints/12023, PR breakpoints/12334, PR breakpoints/12856,
210 PR shlibs/8929, PR shlibs/7393:
211 * python/py-type.c (compare_maybe_null_strings): Rename from
213 (check_types_equal): Update.
214 * utils.c (compare_strings): New function.
215 * tui/tui-winsource.c (tui_update_breakpoint_info): Update for
217 * tracepoint.c (scope_info): Update.
218 (trace_find_line_command): Use DECODE_LINE_FUNFIRSTLINE.
219 * symtab.h (iterate_over_minimal_symbols)
220 (iterate_over_some_symtabs, iterate_over_symtabs)
221 (find_pcs_for_symtab_line, iterate_over_symbols)
222 (demangle_for_lookup): Declare.
223 (expand_line_sal): Remove.
224 * symtab.c (iterate_over_some_symtabs, iterate_over_symtabs)
225 (lookup_symtab_callback): New functions.
226 (lookup_symtab): Rewrite.
227 (demangle_for_lookup): New function, extract from
228 lookup_symbol_in_language.
229 (lookup_symbol_in_language): Use it.
230 (iterate_over_symbols): New function.
231 (find_line_symtab): Update.
232 (find_pcs_for_symtab_line): New functions.
233 (find_line_common): Add 'start' argument.
234 (decode_line_spec): Update. Change argument to 'flags', change
236 (append_expanded_sal): Remove.
237 (append_exact_match_to_sals): Remove.
238 (expand_line_sal): Remove.
239 * symfile.h (struct quick_symbol_functions) <lookup_symtab>:
241 <map_symtabs_matching_filename>: New field.
242 * stack.c (func_command): Only look in the current program space.
243 Use DECODE_LINE_FUNFIRSTLINE.
244 * source.c (line_info): Set pspace on sal. Check program space in
245 the loop. Use DECODE_LINE_LIST_MODE.
246 (select_source_symtab): Use DECODE_LINE_FUNFIRSTLINE.
247 * solib-target.c: Remove DEF_VEC_I(CORE_ADDR).
248 * python/python.c (gdbpy_decode_line): Update.
249 * psymtab.c (partial_map_expand_apply): New function.
250 (partial_map_symtabs_matching_filename): Rename from
251 lookup_partial_symbol. Update arguments.
252 (lookup_symtab_via_partial_symtab): Remove.
253 (psym_functions): Update.
254 * objc-lang.h (parse_selector, parse_method): Don't declare.
256 * objc-lang.c (parse_selector, parse_method): Now static.
257 (find_methods): Change arguments. Fill in a vector of symbol
259 (uniquify_strings): New function.
260 (find_imps): Change arguments.
261 * minsyms.c (iterate_over_minimal_symbols): New function.
262 * linespec.h (enum decode_line_flags): New.
263 (struct linespec_sals): New.
264 (struct linespec_result) <canonical>: Remove.
265 <pre_expanded, addr_string, sals>: New fields.
266 (destroy_linespec_result, make_cleanup_destroy_linespec_result)
267 (decode_line_full): Declare.
268 (decode_line_1): Update.
269 * linespec.c (struct address_entry, struct linespec_state, struct
270 collect_info): New types.
271 (add_sal_to_sals_basic, add_sal_to_sals, hash_address_entry)
272 (eq_address_entry, maybe_add_address): New functions.
273 (total_number_of_methods): Remove.
274 (iterate_name_matcher, iterate_over_all_matching_symtabs): New
276 (find_methods): Change arguments. Don't canonicalize input.
278 (add_matching_methods, add_constructors)
279 (build_canonical_line_spec): Remove.
280 (filter_results, convert_results_to_lsals): New functions.
281 (decode_line_2): Change arguments. Rewrite for new data
283 (decode_line_internal): Rename from decode_line_1. Change
284 arguments. Add cleanups. Update for new data structures.
285 (linespec_state_constructor, linespec_state_destructor)
286 (decode_line_full, decode_line_1): New functions.
287 (decode_indirect): Change arguments. Update.
288 (locate_first_half): Use skip_spaces.
289 (decode_objc): Change arguments. Update for new data structures.
291 (decode_compound): Change arguments. Add cleanups. Remove
292 fallback code, replace with error.
293 (struct decode_compound_collector): New type.
294 (collect_one_symbol): New function.
295 (lookup_prefix_sym): Change arguments. Update.
296 (compare_symbol_name, add_all_symbol_names_from_pspace)
297 (find_superclass_methods ): New functions.
298 (find_method): Rewrite.
299 (struct symtab_collector): New type.
300 (add_symtabs_to_list, collect_symtabs_from_filename): New
302 (symtabs_from_filename): Change API. Rename from
303 symtab_from_filename.
304 (collect_function_symbols): New function.
305 (find_function_symbols): Change API. Rename from
306 find_function_symbol. Rewrite.
307 (decode_all_digits): Change arguments. Rewrite.
308 (decode_dollar): Change arguments. Use decode_variable.
309 (decode_label): Change arguments. Rewrite.
310 (collect_symbols): New function.
311 (minsym_found): Change arguments. Rewrite.
312 (check_minsym, search_minsyms_for_name)
313 (add_matching_symbols_to_info): New function.
314 (decode_variable): Change arguments. Iterate over all symbols.
315 (symbol_found): Remove.
316 (symbol_to_sal): New function.
317 (init_linespec_result, destroy_linespec_result)
318 (cleanup_linespec_result, make_cleanup_destroy_linespec_result):
320 (decode_digits_list_mode, decode_digits_ordinary): New functions.
321 * dwarf2read.c (dw2_map_expand_apply): New function.
322 (dw2_map_symtabs_matching_filename): Rename from
323 dw2_lookup_symtab. Change arguments.
324 (dwarf2_gdb_index_functions): Update.
325 * dwarf2loc.c: Remove DEF_VEC_I(CORE_ADDR).
326 * defs.h (compare_strings): Declare.
327 * cli/cli-cmds.c (compare_strings): Move to utils.c.
328 (edit_command, list_command): Use DECODE_LINE_LIST_MODE. Call
330 (compare_symtabs, filter_sals): New functions.
331 * breakpoint.h (struct bp_location) <line_number, source_file>:
333 (struct breakpoint) <line_number, source_file>: Remove.
335 * breakpoint.c (print_breakpoint_location, init_raw_breakpoint)
336 (momentary_breakpoint_from_master, add_location_to_breakpoint):
337 Update for changes to locations.
338 (init_breakpoint_sal): Add 'filter' argument. Set 'filter' on
340 (create_breakpoint_sal): Add 'filter' argument.
341 (remove_sal, expand_line_sal_maybe): Remove.
342 (create_breakpoints_sal): Remove 'sals' argument. Handle
343 pre-expanded sals and the filter.
344 (parse_breakpoint_sals): Use decode_line_full.
345 (check_fast_tracepoint_sals): Use get_sal_arch.
346 (create_breakpoint): Create a linespec_sals. Update.
347 (break_range_command): Use decode_line_full. Update.
348 (until_break_command): Update.
349 (clear_command): Update match conditions for linespec.c changes.
350 Use DECODE_LINE_LIST_MODE.
351 (say_where): Update for changes to locations.
352 (bp_location_dtor): Free 'source_file'.
353 (base_breakpoint_dtor): Free 'filter'. Don't free 'source_file'.
354 (update_static_tracepoint): Update for changes to locations.
355 (update_breakpoint_locations): Disable ranged breakpoint if too
356 many locations match. Update.
357 (addr_string_to_sals): Use decode_line_full. Resolve all sal
359 (breakpoint_re_set_default): Don't call expand_line_sal_maybe.
360 (decode_line_spec_1): Update. Change argument name to 'flags',
361 change interpretation.
362 * block.h (block_containing_function): Declare.
363 * block.c (block_containing_function): New function.
364 * skip.c (skip_function_command): Update.
365 (skip_re_set): Update.
366 * infcmd.c (jump_command): Use DECODE_LINE_FUNFIRSTLINE.
367 * mi/mi-main.c (mi_cmd_trace_find): Use DECODE_LINE_FUNFIRSTLINE.
372 * elfread.c (elf_gnu_ifunc_resolver_return_stop): Allow
373 breakpoint's pspace to be NULL.
374 * breakpoint.h (struct breakpoint) <pspace>: Update comment.
375 * breakpoint.c (init_raw_breakpoint): Conditionally set
377 (init_breakpoint_sal): Don't set breakpoint's pspace.
378 (prepare_re_set_context): Conditionally switch program space.
379 (addr_string_to_sals): Check executing_startup on location's
384 * breakpoint.h (enum enable_state) <bp_startup_disabled>: Remove.
385 * breakpoint.c (should_be_inserted): Explicitly check if program
386 space is executing startup.
387 (describe_other_breakpoints): Update.
388 (disable_breakpoints_before_startup): Change executing_startup
389 earlier. Remove loop.
390 (enable_breakpoints_after_startup): Likewise.
391 (init_breakpoint_sal): Don't use bp_startup_disabled.
392 (create_breakpoint): Don't use bp_startup_disabled.
393 (update_global_location_list): Use should_be_inserted.
394 (bkpt_re_set): Update.
398 * python/lib/gdb/command/pretty_printers.py
399 (InfoPrettyPrinter.invoke1): Remove extra double quote.
407 * s390-tdep.h (S390_ORIG_R2_REGNUM): Define.
408 (S390_LAST_BREAK_REGNUM): Likewise.
409 (S390_SYSTEM_CALL_REGNUM): Likewise.
410 (S390_NUM_REGS): Update.
412 (s390_regmap_last_break): Add declaration.
413 (s390x_regmap_last_break): Likewise.
414 (s390_regmap_system_call): Likewise.
416 (tdesc_s390_linux32v1): Add declaration.
417 (tdesc_s390_linux32v2): Likewise.
418 (tdesc_s390_linux64v1): Likewise.
419 (tdesc_s390_linux64v2): Likewise.
420 (tdesc_s390x_linux64v1): Likewise.
421 (tdesc_s390x_linux64v2): Likewise.
423 * s390-tdep.c: Include new target description files
424 "features/s390-linux32v1.c", "features/s390-linux32v2.c",
425 "features/s390-linux64v1.c", "features/s390-linux64v2.c",
426 "features/s390x-linux64v1.c", and "features/s390x-linux64v2.c".
427 (s390_cannot_store_register): New function.
428 (s390_write_pc): Likewise.
429 (s390_dwarf_regmap): Add fields for new registers.
430 (s390_regmap_gregset): Likewise.
431 (s390x_regmap_gregset): Likewise.
432 (s390_regmap_fpregset): Likewise.
433 (s390_regmap_upper): Likewise.
434 (s390_regmap_last_break): New variable.
435 (s390x_regmap_last_break): Likewise.
436 (s390_regmap_system_call): Likewise.
437 (s390_last_break_regset): Likewise.
438 (s390x_last_break_regset): Likewise.
439 (s390_system_call_regset): Likewise.
440 (s390_upper_regset_sections): Rename to ...
441 (s390_linux64_regset_sections): ... this.
442 (s390_linux32_regset_sections): New variable.
443 (s390x_linux64_regset_sections): Likewise.
444 (s390_linux32v1_regset_sections): Likewise.
445 (s390_linux32v2_regset_sections): Likewise.
446 (s390_linux64v1_regset_sections): Likewise.
447 (s390_linux64v2_regset_sections): Likewise.
448 (s390x_linux64v1_regset_sections): Likewise.
449 (s390x_linux64v2_regset_sections): Likewise.
450 (s390_regset_from_core_section): Handle .reg-s390-last-break and
451 .reg-s390-system-call core file sections.
452 (s390_core_read_description): Check for presence of
453 .reg-s390-last-break and .reg-s390-system-call core file
454 sections and return appropriate target description.
455 (s390_gdbarch_init): Detect Linux-specific registers "orig_r2",
456 "last_break" and "system_call" in target description. Install
457 appropriate gdbarch_core_regset_sections array.
458 Call set_gdbarch_cannot_store_register and set_gdbarch_write_pc.
459 (_initialize_s390_tdep): Initialize additional target descriptions.
461 * s390-nat.c: Include "elf/common.h".
462 (PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
463 (have_regset_last_break): New static variable.
464 (have_regset_system_call): Likewise.
465 (s390_native_supply): Handle S390_ORIG_R2_REGNUM.
466 (s390_native_collect): Likewise.
467 (fetch_regset, store_regset, check_regset): New functions.
468 (s390_linux_fetch_inferior_registers): Handle S390_LAST_BREAK_REGNUM
469 and S390_SYSTEM_CALL_REGNUM.
470 (s390_linux_store_inferior_registers): Likewise.
471 (s390_read_description): Check for presence of NT_S390_LAST_BREAK
472 and NT_S390_SYSTEM_CALL regsets and use appropriate description.
474 * features/Makefile (WHICH): Add s390-linux32v1, s390-linux64v1,
475 s390x-linux64v1, s390-linux32v2, s390-linux64v2, and s390x-linux64v2.
476 (s390-linux32v1-expedite): Define.
477 (s390-linux32v2-expedite): Likewise.
478 (s390-linux64v1-expedite): Likewise.
479 (s390-linux64v2-expedite): Likewise.
480 (s390x-linux64v1-expedite): Likewise.
481 (s390x-linux64v2-expedite): Likewise.
483 * features/s390-linux32.xml: Add orig_r2 register.
484 * features/s390-linux64.xml: Likewise.
485 * features/s390x-linux64.xml: Likewise.
486 * features/s390-linux32v1.xml: New file.
487 * features/s390-linux32v2.xml: Likewise.
488 * features/s390-linux64v1.xml: Likewise.
489 * features/s390-linux64v2.xml: Likewise.
490 * features/s390x-linux64v1.xml: Likewise.
491 * features/s390x-linux64v2.xml: Likewise.
493 * features/s390-linux32.c: Regenerate.
494 * features/s390-linux64.c: Likewise.
495 * features/s390x-linux64.c: Likewise.
496 * features/s390-linux32v1.c: New generated file.
497 * features/s390-linux32v2.c: Likewise.
498 * features/s390-linux64v1.c: Likewise.
499 * features/s390-linux64v2.c: Likewise.
500 * features/s390x-linux64v1.c: Likewise.
501 * features/s390x-linux64v2.c: Likewise.
503 * regformats/s390-linux32.dat: Regenerate.
504 * regformats/s390-linux64.dat: Regenerate.
505 * regformats/s390x-linux64.dat: Regenerate.
506 * regformats/s390-linux32v1.dat: New generated file.
507 * regformats/s390-linux32v2.dat: Likewise.
508 * regformats/s390-linux64v1.dat: Likewise.
509 * regformats/s390-linux64v2.dat: Likewise.
510 * regformats/s390x-linux64v1.dat: Likewise.
511 * regformats/s390x-linux64v2.dat: Likewise.
515 * linux-nat.c (resume_stopped_resumed_lwps): Call
520 * breakpoint.c: Include record.h.
521 (breakpoints_always_inserted_mode): Return false when the record
526 * amd64-linux-nat.c (amd64_linux_dr_get): Remove FIXME comment.
527 Reinstate perror_with_name call on ptrace error. Remove #if 0.
528 * i386-linux-nat.c (i386_linux_dr_get): Likewise.
529 * i386bsd-nat.c (i386bsd_dr_get_status): Likewise.
533 * breakpoint.c (init_breakpoint_sal): Remove nested definitions of
538 * bcache.c (bcache): Rename `bcache' to `cache'(-Wshadow).
542 * amd64-tdep.c (amd64_push_dummy_call): Remove nested definition
547 Fix compilation --without-expat.
548 * solib-svr4.c (svr4_free_so, svr4_free_library_list): Move them here
550 [HAVE_LIBEXPAT] (svr4_free_so, svr4_free_library_list): ... here.
555 * Makefile.in (XMLFILES): Add library-list-svr4.dtd.
556 * features/library-list-svr4.dtd: New file.
557 * remote.c (PACKET_qXfer_libraries_svr4): New.
558 (remote_protocol_features): new entry for PACKET_qXfer_libraries_svr4.
559 (remote_xfer_partial): Handle TARGET_OBJECT_LIBRARIES_SVR4.
560 * solib-svr4.c (struct svr4_library_list): New.
561 [HAVE_LIBEXPAT]: Include xml-support.h.
562 [HAVE_LIBEXPAT] (svr4_library_list_start_library)
563 [HAVE_LIBEXPAT] (svr4_library_list_start_list, svr4_library_attributes)
564 [HAVE_LIBEXPAT] (svr4_library_list_children)
565 [HAVE_LIBEXPAT] (svr4_library_list_attributes)
566 [HAVE_LIBEXPAT] (svr4_library_list_elements, svr4_parse_libraries)
567 [HAVE_LIBEXPAT] (svr4_current_sos_via_xfer_libraries)
568 [!HAVE_LIBEXPAT] (svr4_current_sos_via_xfer_libraries): New.
569 (svr4_read_so_list): Extend the corruption message by addresses.
570 (svr4_current_sos): New variable library_list, call
571 svr4_current_sos_via_xfer_libraries.
572 * target.h (enum target_object): New TARGET_OBJECT_LIBRARIES_SVR4.
577 * dwarf2read.c (decode_locdesc): Handle DW_OP_const8u.
578 For DW_OP_GNU_push_tls_address increment the value, new comment for it.
583 * dwarf2read.c (process_psymtab_comp_unit): Set
584 PSYMTABS_ADDRMAP_SUPPORTED.
585 * psympriv.h (struct partial_symtab): Comment textlow and texthigh
586 validity. New field psymtabs_addrmap_supported.
587 * psymtab.c (find_pc_sect_psymtab_closer): New gdb_assert on
588 psymtabs_addrmap_supported.
589 (find_pc_sect_psymtab): Do not fallback to TEXTLOW and TEXTHIGH for
590 !PSYMTABS_ADDRMAP_SUPPORTED.
591 (dump_psymtab, maintenance_info_psymtabs): Print also
592 psymtabs_addrmap_supported.
596 * python/py-type.c (type_object_methods): Fix "array" doc string.
600 * source.c (print_source_lines_base): Fix missing braces on else
601 clause leading to additional output.
605 * s390-nat.c (SUBOFF): Remove.
606 (s390_native_supply, s390_native_collect): New functions.
607 (supply_gregset, supply_fpregset): Use s390_native_supply.
608 (fill_gregset, fill_fpregset): Use s390_native_collect.
610 * s390-tdep.c (s390_pseudo_register_reggroup_p): Update comment.
611 (s390_unwind_pseudo_register): New function.
612 (s390_prologue_frame_unwind_cache): Unwind PSW address and mask
613 registers instead of PC and CC.
614 (s390_backchain_frame_unwind_cache): Likewise.
615 (s390_sigtramp_frame_unwind_cache): Do not unwind PC, CC, or
617 (s390_trad_frame_prev_register): New function.
618 (s390_frame_prev_register): Use it.
619 (s390_sigtramp_frame_prev_register): Likewise.
620 (s390_dwarf2_prev_register): Use s390_unwind_pseudo_register.
621 (s390_dwarf2_frame_init_reg): Unwind PSW address and mask. Use
622 special callback to unwind any pseudo.
624 * features/s390-core32.xml: Add pswm/pswa to save/restore group.
625 * features/s390-core64.xml: Likewise.
626 * features/s390x-core64.xml: Likewise.
627 * features/s390-linux32.c: Regenerate.
628 * features/s390-linux64.c: Likewise.
629 * features/s390x-linux64.c: Likewise.
633 * s390-tdep.c (s390_gdbarch_init): Call set_gdbarch_get_siginfo_type.
637 * s390-tdep.c (s390_displaced_step_fixup): Fix processing of LARL
638 instruction. Add more diagnostic output.
642 * MAINTAINERS (Write After Approval): Add myself to the list.
646 * jit.c (add_objfile_entry, jit_reader_try_read_symtab)
647 (jit_bfd_try_read_symtab): Fix comments.
651 * NEWS: Mention RL78 simulator.
655 * symfile.h (struct quick_symbol_functions): Fix the documentation
656 of field map_matching_symbols, as symbols are sorted using
657 strcmp_iw_ordered, not strcmp_iw.
661 * symfile.h (struct quick_symbol_functions): Update the
662 documentation for field map_matching_symbols.
666 * ada-lang.c (compare_names): Fix wrong return value in case
667 string1 starts with the same contents as string2, followed
668 by an underscore that do not start a symbol name suffix.
675 * python/python.c (gdbpy_decode_line): Do not acquire GIL.
676 * python/py-inferior.c (inferior_to_inferior_object): Ditto.
677 * python/py-value.c (valpy_nonzero): Use TRY_CATCH to catch GDB
679 * python/py-type.c (typy_strip_typedefs): Ditto.
680 (typy_legacy_template_argument): Ditto.
681 * python/py-inferior.c (inferior_to_inferior_object): Ditto.
682 * python/py-breakpoint.c (bppy_set_ignore_count): Ditto.
686 * remote.c (remote_get_tracepoint_status): Delete addrbuf
687 local variable. Avoid use of sprintf_vma.
691 Fix regression in jit.exp.
692 * jit.c (jit_reader_try_read_symtab, jit_bfd_try_read_symtab)
693 (jit_register_code): Set the jit_objfile_data field to the correct
698 * alpha-tdep.c (br_opcode): New.
699 (ldl_l_opcode, ldq_l_opcode, stl_c_opcode, stq_c_opcode): Ditto.
700 (alpha_deal_with_atomic_sequence): New function.
701 (alpha_gdbarch_init): Handle single stepping of atomic sequences
702 with alpha_deal_with_atomic_sequence.
706 * machoread.c (oso_el): Remove num_Sections, symbols, offsets
707 fields. Add oso_sym, end_sym and nbr_syms.
708 (macho_register_oso): Change interface.
709 (macho_symtab_add_minsym): New function.
710 (macho_symtab_read): Rewritten.
711 (get_archive_prefix_len): Remove trailing blanks.
712 (oso_el_compare_name): Add comment.
713 (struct macho_sym_hash_entry): New structure.
714 (macho_relocate_common_syms): Remove.
715 (macho_sym_hash_newfunc): New function.
716 (macho_resolve_oso_sym_with_minsym): Likewise.
717 (macho_add_oso_symfile): Rewritten.
718 (macho_symfile_read_all_oso): Remove trailing blanks.
719 Adjust code to free oso vector.
720 (macho_symfile_read): Likewise.
721 Move code to initialize minimal symbol
725 * mips-tdep.c (extended_offset): Fix formatting.
729 * dwarf2read.c (dw2_lookup_symtab): Add comment.
730 (dw2_expand_symtabs_with_filename): Ditto.
731 (dw2_expand_symtabs_matching): Ditto.
732 (dw2_map_symbol_filenames): Ditto.
736 * ada-lang.c (assign_aggregate): Minor reformatting.
740 * ada-lang.c (assign_aggregate): Remove declaration of local
741 variable `i' which is shadowing another variable with the same
742 name declared in the outer scope.
746 * ada-lang.c (get_base_type): Renames base_type. Adjust all
747 calls throughout this file.
751 * gdb-dlfcn.c (gdb_dlopen): Add missing coma in call to
757 * mi/mi-common.h (EXEC_ASYNC_SOLIB_EVENT, EXEC_ASYNC_FORK)
758 (EXEC_ASYNC_VFORK, EXEC_ASYNC_SYSCALL_ENTRY)
759 (EXEC_ASYNC_SYSCALL_RETURN, EXEC_ASYNC_EXEC): New constants.
760 * mi/mi-common.c (async_reason_string_lookup): Add new reasons.
761 * breakpoint.c (print_it_catch_fork, print_it_catch_vfork)
762 (print_it_catch_syscall, print_it_catch_exec)
763 (internal_bkpt_print_it): Use ui_out. Emit stop reason.
764 (bpstat_print): Add 'kind' argument. Handle
765 TARGET_WAITKIND_LOADED.
766 * infrun.c (normal_stop): Update for bpstat_print change. Don't
767 handle TARGET_WAITKIND_LOADED here.
768 * breakpoint.h (bpstat_print): Update.
772 * mi/mi-interp.c (mi_on_normal_stop): Call bpstat_print.
776 * mi/mi-common.c (_initialize_gdb_mi_common): Remove.
777 Use static_assert to check the size of
778 async_reason_string_lookup.
779 * common/gdb_assert.h (static_assert): New macro.
783 * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Correct branch
784 destination calculation. Don't expect >> to sign extend. Don't
785 add a break if branch lands inside the sequence anywhere.
789 * gdb.mi/mi-var-display.exp: Remove XFAIL for c_variable-7.51,
790 -var-evaluate-expression of an enumeration and fix expected result.
791 * gdb.mi/mi2-varvdisplay.exp: Likewise.
795 * osdata.c (info_osdata_command): Rename nprocs to nrows. Handle
796 the case where osdata->items is empty. Rename column names to a
797 canonical form to avoid problems with unusual column names.
801 * MAINTAINERS (Write After Approval): Keep list in alphabetical order.
805 * NEWS: Mention tracepoint additions.
806 * breakpoint.h (struct tracepoint): New field traceframe_usage.
807 * breakpoint.c (print_one_breakpoint_location): Identify
808 tracepoints as such when reporting hit counts, report
810 (create_tracepoint_from_upload): Copy status info.
811 * tracepoint.h (struct trace_status): Rename error_desc to stop_desc,
812 add fields user_name, notes, start_time, stop_time.
813 (struct uploaded_tp): Add fields hit_count, traceframe_usage.
814 * tracepoint.c (trace_user): New global.
815 (trace_notes): New global.
816 (trace_stop_notes): New global.
817 (start_tracing): Add argument and trace note handling.
818 (stop_tracing): Ditto.
819 (trace_start_command): Add notes argument.
820 (trace_stop_command): Ditto.
821 (trace_status_command): Report additional status info.
822 (trace_status_mi): Similarly.
823 (trace_save): Update, record tracepoint status.
824 (set_disconnected_tracing): Call target method directly.
825 (send_disconnected_tracing_value): Remove.
826 (set_trace_user): New function.
827 (set_trace_notes): New function.
828 (set_trace_stop_notes): New function.
829 (parse_trace_status): Handle additional status.
830 (parse_tracepoint_status): New function.
831 (parse_tracepoint_definition): Call it.
832 (tfile_get_tracepoint_status): New function.
833 (init_tfile_ops): Use it.
834 (_initialize_tracepoint): Add new setshows.
835 * target.h (struct target_ops): New methods to_get_tracepoint_status
836 and to_set_trace_notes.
837 (target_get_tracepoint_status): New macro.
838 (target_set_trace_notes): New macro.
839 * target.c (update_current_target): Add new methods.
840 * remote.c (remote_get_tracepoint_status): New function.
841 (remote_set_trace_notes): New function.
842 (init_remote_ops): Add them.
843 * mi/mi-main.c (mi_cmd_trace_start): Add argument to call.
844 (mi_cmd_trace_stop): Ditto.
848 * jit.c: Include regcache.h.
849 (jit_gdbarch_data, jit_frame_unwind): New static variables.
850 (jit_unwind_reg_set_impl, free_reg_value_impl)
851 (jit_unwind_reg_get_impl, jit_frame_sniffer)
852 (jit_frame_unwind_stop_reason, jit_frame_this_id)
853 (jit_frame_prev_register, jit_dealloc_cache)
854 (jit_prepend_unwinder, jit_gdbarch_data_init): New functions.
855 (jit_inferior_init): Prepend (new) pseudo unwinder by calling
856 jit_prepend_unwinder.
857 (_initialize_jit): Register new gdbarch data jit_gdbarch_data.
861 * jit.c: Include block.h, dictionary.h and frame-unwind.h.
862 (add_objfile_entry, jit_target_read_impl, jit_object_open_impl)
863 (jit_symtab_open_impl, compare_block, jit_block_open_impl)
864 (jit_symtab_line_mapping_add_impl, jit_symtab_close_impl)
865 (finalize_symtab, jit_object_close_impl)
866 (jit_reader_try_read_symtab, jit_bfd_try_read_symtab)
867 (free_objfile_data): New functions.
868 (_initialize_jit): Register jit_objfile_data with a proper cleanup
873 * jit.c: Include gdb-dlfcn.h.
874 (loaded_jit_reader, reader_init_fn_sym): New static variables.
875 (jit_reader_load, jit_reader_load_command)
876 (jit_reader_unload_command): New functions.
877 (_initialize_jit): Add commands "jit-reader-load" and
882 * Makefile.in: Add gdb-dlfcn.c and gdb-dlfcn.h to build system.
883 * config.in: Add new #define HAVE_LIBDL.
884 * configure.ac: Add check for -ldl.
885 * configure: Re-generated by autoconf.
886 * gdb-dlfcn.c: New file.
887 * gdb-dlfcn.h: New file.
891 * config.in: Add new #defines: JIT_READER_DIR and
892 JIT_READER_DIR_RELOCATABLE.
893 * configure.ac: New GDB directory entry for jit-reader-dir.
894 * configure: Re-generated by autoconf.
895 * jit.c: New static variable: const char *jit_reader_dir.
896 (_initialize_jit): Relocate jit_reader_dir.
900 * Makefile.in: Add jit-reader.h as a header. Have it installed in
902 * configure.ac: Generate a correct value for TARGET_PTR for
903 jit-reader.h. Tell configure to generate jit-reader.h from
905 * configure: Re-generated by autoconf.
906 * jit-reader.in: New file.
907 * jit.c: Include jit-reader.h.
911 * MAINTAINERS (Write After Approval): Add myself to the list.
915 * findvar.c (read_frame_register_value): Respect value_offset
916 of the register value. Remove big-endian special case.
921 * remote.c (putpkt_for_catch_errors): New function.
922 (remote_kill): Use it.
926 * breakpoint.c (create_breakpoint): Produce query message according to
928 Allocate tracepoint per correct type.
929 Don't check SALs for pending fast tracepoints.
930 * tracepoint.c (process_tracepoint_on_disconnect): New.
931 (disconnect_tracing): Call process_tracepoint_on_disconnect.
935 * breakpoint.c (install_breakpoint): Add one more parameter so that
936 update_global_location_list is called conditionally.
937 (create_fork_vfork_event_catchpoint): Update.
938 (create_syscall_event_catchpoint): Update.
939 (create_breakpoint_sal): Update.
940 (create_breakpoint_sal): Update. Call do_cleanups before
942 * ada-lang.c (create_ada_exception_catchpoint): Update.
943 * breakpoint.h (install_breakpoint): Update declaration.
947 * spu-tdep.c (spu_return_value): Fix handling of
948 TYPE_CALLING_CONVENTION annotation.
952 * skip.c (skip_function_command): Work around uninitialized
957 * utils.c (report_command_stats): Cast delta_wall_time 'tv_sec' and
958 'tv_usec' to long for printf since these fields have a type which
963 * buildsym.c (add_symbol_to_list): Delete outdated comment.
967 * python/py-type.c (typy_get_composite): New function.
968 (typy_nonzero): New function.
969 (typy_values): Rename from typy_fields.
970 (typy_fields): New function.
971 (typy_length): Raise exception if not struct, union, or enum type.
972 (typy_getitem): Ditto.
973 (typy_has_key): Ditto.
974 (typy_make_iter): Ditto.
978 * NEWS: Mention new parameter basenames-may-differ.
979 * dwarf2read.c (dw2_lookup_symtab): Avoid calling gdb_realpath if
980 ! basenames_may_differ.
981 * psymtab.c (lookup_partial_symtab): Ditto.
982 * symtab.c (lookup_symtab): Ditto.
983 (basenames_may_differ): New global.
984 (_initialize_symtab): New parameter basenames-may-differ.
985 * symtab.h (basenames_may_differ): Declare.
990 * auxv.c: Include observer.h.
991 (auxv_inferior_data_cleanup): New.
992 (invalidate_auxv_cache_inf): New.
993 (invalidate_auxv_cache): New.
994 (get_auxv_inferior_data): New.
995 (auxv_inferior_data): New static global.
996 (auxv_info): New structure.
997 (target_auxv_search): Use get_auxv_inferior_data instead of
998 target_read_alloc and don't free cached buffers.
999 (fprint_target_auxv): Likewise
1000 (_initialize_auxv): Register per-inferior auxv cache and register
1001 observers to invalidate auxv cache when needed.
1005 Make "!" an alias for "shell".
1006 * NEWS: Add mention.
1007 * cli/cli-cmds.c (init_cli_cmds): Remove xdb_commands condition on
1008 adding "!" command, always add it.
1009 * cli/cli-decode.c (find_command_name_length): Recognize "!" as a
1010 command of length one.
1015 * NEWS: Document shorter fast tracepoints and qTMinFTPILen packet.
1016 * i386-tdep.c (i386_fast_tracepoint_valid_at): Query target for
1017 the minimum instruction size for fast tracepoints.
1018 * target.h (struct target_ops): Add new method
1019 to_get_min_fast_tracepoint_insn_len.
1020 (target_get_min_fast_tracepoint_insn_len): New.
1021 * target.c (update_current_target): Set up new target operation.
1022 * remote.c (remote_write_bytes_aux): Fix typo.
1023 (remote_get_min_fast_tracepoint_insn_len): New.
1024 (init_remote_ops): Initialize new field.
1028 * tracepoint.c (encode_actions_1): Use the location's gdbarch.
1029 (encode_actions): Likewise.
1033 * remote.c (struct remote_state): <install_in_trace> new field.
1034 (PACKET_InstallInTrace): New enum value.
1035 (remote_install_in_trace_feature): Support InstallInTrace.
1036 (remote_supports_install_in_trace): Likewise.
1037 (remote_protocol_features): Likewise.
1038 (_initialize_remote): Likewise.
1039 (remote_can_download_tracepoint): New.
1040 * target.h (struct target): New field
1041 `to_can_download_tracepoint'.
1042 (target_can_download_tracepoint): New macro.
1043 * target.c (update_current_target): Update.
1044 * breakpoint.h (struct bp_location): Add comment on field
1046 * breakpoint.c (should_be_inserted): Don't differentiate breakpoint
1048 (remove_breakpoints): Don't remove tracepoints.
1049 (tracepoint_locations_match ): New.
1050 (breakpoint_locations_match): Call it.
1051 (disable_breakpoints_in_unloaded_shlib): Handle tracepoint.
1052 (download_tracepoint_locations): New.
1053 (update_global_location_list): Call it.
1054 * tracepoint.c (find_matching_tracepoint): Delete.
1055 (find_matching_tracepoint_location): Renamed from
1056 find_matching_tracepoint. Return bp_location rather than
1058 (merge_uploaded_tracepoints): Set `inserted' field to 1 if
1059 tracepoint is found.
1063 * target.h (struct target): <to_download_tracepoint> Change type
1064 of parameter from tracepoint to bp_location.
1065 * target.c (update_current_target): Update.
1066 * tracepoint.c (start_tracing): Update.
1067 * remote.c (remote_download_tracepoint): Remove loop for each location
1072 * i386-nat.c (i386_insert_hw_breakpoint): Call
1073 i386_update_inferior_debug_regs.
1074 (i386_remove_hw_breakpoint): Likewise.
1078 * breakpoint.c (init_raw_breakpoint): Call
1079 add_location_to_breakpoint to replace duplicated code.
1080 (add_location_to_breakpoint): Adjust the breakpoint's
1081 address prior to allocating a location.
1085 * macrocmd.c (macro_no_macro_info): New function.
1086 (macro_expand_command): Use macro_no_macro_info.
1087 (macro_expand_once_command): Ditto.
1088 (info_macro_command): Add argument processing,
1089 move info_definitions_command here.
1090 (_initialize_macrocmd): Remove info definitions command.
1091 Add arguments to info macro help text.
1092 * NEWS: Replace info definitions command with new info macro options.
1097 * linespec.c (locate_first_half): Keep ':' if it looks
1098 like it could be part of a Windows path starting with
1103 * linux-nat.c (linux_nat_wait): Don't force waking up the event
1104 loop when returning a TARGET_WAITKIND_NO_RESUMED.
1108 * target.c (target_waitstatus_to_string): Handle
1109 TARGET_WAITKIND_NO_RESUMED.
1113 * dwarf2read.c (dw2_map_symbol_filenames): New parameter
1115 * psymtab.c (map_symbol_filenames_psymtab): Ditto.
1116 (map_partial_symbol_filenames): Ditto. All callers updated.
1117 * psymtab.h (map_partial_symbol_filenames): Update prototype.
1118 * symfile.h (struct quick_symbol_functions, map_symbol_filenames): New
1119 parameter need_fullname.
1121 * psymtab.c (psymtab_to_fullname): Use cached copy if it exists.
1122 * source.c (symtab_to_fullname): Ditto.
1124 * defs.h (is_cplus_marker, set_demangling_style): Moved to ...
1125 * gdb-demangle.h: ... here. New file.
1126 * demangle.c: #include "gdb-demangle.h".
1127 (_initialize_demangler): Use initialize_file_ftype for prototype.
1128 Move "set demangle" and "set asm-demangle" parameters here from utils.c
1129 (demangle, show_demangle, asm_demangle, show_asm_demangle): Move here
1131 * utils.c: Update. #include "gdb-demangle.h".
1132 * symtab.h (asm_demangle): Delete.
1133 (demangle): Move declaration next to use.
1134 * breakpoint.c: #include "gdb-demangle.h" instead of "demangle.h".
1135 * dwarf2read.c: #include "gdb-demangle.h".
1136 * gnu-v2-abi.c: Ditto.
1137 * jv-typeprint.c: Ditto.
1138 * mdebugread.c: Ditto.
1139 * p-typeprint.c: Ditto.
1140 * stabsread.c: Ditto.
1141 * printcmd.c: Ditto.
1142 (asm_demangle): Delete declaration.
1143 * tui/tui-stack.c: #include "gdb-demangle.h".
1145 * python/py-type.c (typy_fields_items): Call check_typedef.
1149 * findvar.c (read_frame_register_value): Read the correct bytes
1150 from registers on big-endian architectures.
1154 * procfs.c (load_syscalls): Make a cleanup.
1155 (open_procinfo_files): fd==0 is ok.
1159 * procfs.c (iterate_over_mappings): Call do_cleanups before
1164 * gdbtypes.c (check_typedef): Document that this function can
1170 * valops.c (value_full_object): Return early if real type is
1171 smaller than the enclosing type.
1175 * amd64-tdep.c (amd64_relocate_instruction): Make it static.
1179 * arm-tdep.c (thumb_analyze_prologue): Always fallback on the SP
1180 register when the frame can't be determined.
1181 * arm-tdep.c (arm_analyze_prologue): Ditto.
1185 * MAINTAINERS: Move Michael Snyder to Past Maintainers.
1189 * infrun.c (handle_inferior_event): Minor reformatting.
1193 * source.c (forget_cached_source_info_for_objfile): Move call to
1194 objfile->sf->qf->forget_cached_source_info outside of
1195 ALL_OBJFILE_SYMTABS loop.
1196 (forget_cached_source_info): Delete unused variable `s'.
1200 * i386-nat.c (dr_ref_count): Remove unused variable.
1204 * main.c (captured_main): Set lim_at_start before calling
1205 make_command_stats_cleanup.
1209 * utils.c: #include "timeval-utils.h".
1210 (cmd_stats): Rename start_time to start_cpu_time.
1211 New member start_wall_time.
1212 (report_command_stats): Report wall time.
1213 (make_command_stats_cleanup): Record start wall time.
1217 * cp-namespace.c (cp_lookup_symbol_imports): Reindent.
1221 * coff-pe-read.c: Include defs.h before bfd.h.
1227 * python/python.c (python_run_simple_file): Expand tilde in path.
1233 * python/py-type.c (typy_lookup_type): Do not return a type in
1234 an exception handler.
1239 * linux-nat.c (_initialize_linux_nat): Improve help
1240 for `info proc stat', `info proc status', `info proc cwd',
1241 `info proc cmdline' and `info proc exe'.
1245 String collection for tracepoints.
1246 * NEWS: Mention string collection.
1247 * common/ax.def (tracenz): New bytecode.
1248 * ax-gdb.h (trace_string_kludge): Declare.
1249 * ax-gdb.c: Include valprint.h and c-lang.h.
1250 (trace_string_kludge): New global.
1251 (gen_traced_pop): Add string case.
1252 (agent_command): Add string case.
1253 * tracepoint.h (decode_agent_options): Declare.
1254 * tracepoint.c: Include cli-utils.h.
1255 (decode_agent_options): New function.
1256 (validate_actionline): Call it.
1257 (encode_actions_1): Ditto.
1258 * target.h (struct target_ops): New method to_supports_string_tracing.
1259 (target_supports_string_tracing): New macro.
1260 * target.c (update_current_target): Add to_supports_string_tracing.
1261 * remote.c (struct remote_state): New field string_tracing.
1262 (remote_string_tracing_feature): New function.
1263 (remote_protocol_features): New feature tracenz.
1264 (remote_supports_string_tracing): New function.
1265 (init_remote_ops): Set to_supports_string_tracing.
1270 * linux-nat.c: Include cli/cli-utils.h.
1271 (enum info_proc_what): New.
1272 (linux_nat_info_proc_cmd): Rename to ...
1273 (linux_nat_info_proc_cmd_1): ... here. Remove variables argv and all.
1274 New parameter what. Initialize cmdline_f, cwd_f, exe_f, mappings_f,
1275 status_f and stat_f from WHAT. Throw error on extra parameters.
1276 (linux_nat_info_proc_cmd, linux_nat_info_proc_cmd_mappings)
1277 (linux_nat_info_proc_cmd_stat, linux_nat_info_proc_cmd_status)
1278 (linux_nat_info_proc_cmd_cwd, linux_nat_info_proc_cmd_cmdline)
1279 (linux_nat_info_proc_cmd_exe, linux_nat_info_proc_cmd_all): New.
1280 (_initialize_linux_nat): New variable info_proc_cmdlist. Install `info
1281 proc mappings', `info proc stat`, `info proc status', `info proc cwd',
1282 `info proc cmdline', `info proc exe' and `info proc all' as real
1283 subcommands of `info proc'.
1287 * Makefile.in: (SFILES): Add skip.c.
1288 (HFILES_NO_SRCDIR): Add skip.h.
1289 (COMMON_OBS): Add skip.o.
1290 * skip.h, skip.c: New.
1291 * breakpoint.h (set_default_breakpoint): Remove.
1292 (get_sal_arch): Declare.
1293 * breakpoint.c: Remove default_breakpoint_valid,
1294 default_breakpoint_address, default_breakpoint_symtab,
1295 default_breakpoint_line, default_breakpoint_pspace variables.
1296 (get_sal_arch): Make public.
1297 (set_default_breakpoint): Remove.
1298 (parse_breakpoint_sals, create_breakpoint, clear_command,
1299 decode_line_spec_1): Remove uses of default_breakpoint variables;
1300 replaced with function calls into stack.c.
1301 * cli/cli-cmds.h: Add cmd_list_element *skiplist.
1302 * cli/cli-cmds.c: Add skiplist.
1303 (init_cmd_lists): Initialize skiplist.
1304 (init_cli_cmds): Fix comment (classes of commands appear in
1305 alphabetical order).
1306 * infrun.c (handle_inferior_event): Add check that we don't step into
1307 a function whose pc is marked for skip.
1308 * stack.c: Declare last_displayed_sal_valid, last_displayed_pspace,
1309 last_displayed_addr, last_displayed_symtab, last_displayed_line
1311 (set_last_displayed_sal): New static function.
1312 (print_frame_info): Switch call to set_default_breakpoint to call to
1313 set_last_displayed_sal.
1314 (clear_last_displayed_sal, last_displayed_sal_is_valid,
1315 get_last_displayed_pspace, get_last_displayed_addr,
1316 get_last_displayed_symtab, get_last_displayed_line,
1317 get_last_displayed_sal): New public functions.
1318 * stack.h (clear_last_displayed_sal, last_displayed_sal_is_valid,
1319 get_last_displayed_pspace, get_last_displayed_addr,
1320 get_last_displayed_symtab, get_last_displayed_line,
1321 get_last_displayed_sal): Declare.
1325 * MAINTAINERS (Write After Approval): Add myself to the list.
1329 * infcmd.c (disconnect_command): Call disconnect_tracing.
1334 * symtab.c (skip_prologue_sal): Code reformatting.
1339 * jit.c (jit_register_code): Remove unused variable my_cleanups. Check
1340 for NULL from bfd_open_from_target_memory. Fix ownership of NBFD and
1345 * linux-nat.c (linux_nat_filter_event): Remove `options'
1346 parameter, and dead code that used it. If we're handling a
1347 PTRACE_EVENT_EXEC event, and the thread group leader is no longer
1348 in our lwp list, re-add it.
1349 (check_zombie_leaders): New.
1350 (linux_nat_wait_1): Remove `options' and `pid' locals. Always
1351 wait for children with WNOHANG, and always wait for all children.
1352 Don't check for no resumed children upfront. Simplify wait loop.
1353 Check for zombie thread group leaders after handling all wait
1354 statuses. Return TARGET_WAITKIND_NO_RESUMED if there no
1355 unwaited-for children left.
1356 * infrun.c (fetch_inferior_event): Handle TARGET_WAITKIND_NO_RESUMED.
1357 (handle_inferior_event): Handle TARGET_WAITKIND_NO_RESUMED.
1358 (normal_stop): Handle TARGET_WAITKIND_NO_RESUMED.
1359 * target.h (enum target_waitkind) <TARGET_WAITKIND_NO_RESUMED>: New.
1363 * psymtab.c (map_symbol_filenames_psymtab): Call QUIT.
1364 * symtab.c (free_completion_list): New function.
1365 (do_free_completion_list): Likewise.
1366 (default_make_symbol_completion_list_break_on): New variable
1367 back_to. Call make_cleanup and discard_cleanups.
1368 (make_source_files_completion_list): Likewise.
1372 * python/lib/gdb/types.py (deep_items): Rename from deepitems.
1373 * NEWS: Mention deep_items.
1377 * ser-tcp.c [USE_WIN32API] (ETIMEDOUT): Don't define if already
1382 * MAINTAINERS (Write After Approval): Add myself to the list.
1386 * value.h (read_frame_register_value): Add declaration.
1387 * findvar.c (read_frame_register_value): New function.
1388 (value_from_register): Use read_frame_register_value
1389 instead of get_frame_register_value + value_contents_copy
1390 to get value contents.
1394 * cli/cli-cmds.c (source_script_with_search): Pass full path to
1395 source_script_from_stream if it may have been found on the search path.
1396 * python/py-auto-load.c (source_section_scripts): Pass full path to
1397 source_python_script_for_objfile.
1398 * python/python.c (source_python_script): Delete stream parameter.
1399 All callers updated.
1400 (source_python_script_for_objfile): Ditto.
1401 * python/python-internal.h (source_python_script_for_objfile): Update.
1402 * python/python.h (source_python_script): Update.
1406 * ada-lang.h (ada_start_decode_line_1, ada_finish_decode_line_1)
1407 (ada_sals_for_line): Remove declarations.
1411 Move unwind reasons to an external .def file
1412 * frame.c (frame_stop_reason_string): Rewrite using
1413 unwind_stop_reasons.def.
1414 * frame.h (enum unwind_stop_reason): Likewise.
1415 * python/py-frame.c (gdbpy_initialize_frames): Likewise.
1416 (gdbpy_frame_stop_reason_string): Use new enum unwind_stop_reason
1417 constants for bound-checking.
1418 * unwind_stop_reasons.def: New file.
1419 * stack.c (backtrace_command_1): Handle UNWIND_FIRST_ERROR as an alias
1420 instead of a distinct value.
1426 * python/py-function.c (fnpy_call): Check 'args' is not NULL.
1427 (convert_values_to_python): Return on Python tuple allocation
1428 failure. Return NULL on value conversion error.
1432 * python/py-breakpoint.c (bppy_set_enabled): Use TRY_CATCH.
1433 (bppy_set_task): Ditto.
1434 (bppy_delete_breakpoint): Ditto.
1435 * python/py-symbol.c (gdbpy_lookup_symbol): Ditto.
1436 (gdbpy_lookup_global_symbol): Ditto.
1437 * python/py-lazy-string.c (stpy_convert_to_value): Ditto.
1438 * python/py-frame.c (frapy_is_valid): Ditto.
1439 (frame_info_to_frame_object): Ditto.
1440 * python/py-type.c (typy_lookup_type): Ditto.
1441 (typy_getitem): Ditto.
1442 (typy_has_key): Ditto.
1443 (typy_richcompare): Use TRY_CATCH. Do not return Py_NE on error.
1447 * gdbarch.h: Regenerate.
1451 * gdbarch.sh (function_list): Use 'pstring' when printing
1453 * gdbarch.c: Regenerate.
1457 * regcache.c (registers_changed_ptid): Invalidate thread architecture
1458 and frame caches if PTID refers to all threads of a process.
1462 * spu-tdep.c (spu_catch_start): Pass non-NULL breakpoint ops
1463 to create_breakpoint.
1467 * ppc-sysv-tdep.c (ppc_sysv_use_opencl_abi): New function.
1468 (ppc_sysv_abi_push_dummy_call): Use it.
1469 (do_ppc_sysv_return_value): Likewise.
1470 (ppc64_sysv_abi_push_dummy_call): Likewise.
1471 (ppc64_sysv_abi_return_value): Likewise.
1475 * python/lib/gdb/types.py (deepitems): New function.
1481 * python/py-value.c (value_to_value_object): Remove fetching of
1482 the value if it was lazy.
1483 (valpy_get_is_lazy): New function.
1484 (valpy_fetch_lazy): New function.
1488 * ppc-sysv-tdep.c (do_ppc_sysv_return_value): Do not check
1489 FUNC_TYPE's calling convention if FUNC_TYPE is not a function.
1493 * linux-nat.c (linux_handle_extended_wait): When handling a clone
1494 event, in non-stop, if not stopping, make sure the new lwp has
1495 last_resume_kind set to resume_continue. Assert that when we're
1496 resuming the new lwp, its last_resume_kind is resume_continue.
1500 * infrun.c (handle_inferior_event): Don't assume inferior_ptid is
1501 already set when marking the event thread as not executing in
1506 * infrun.c (handle_inferior_event): Add debug output for
1507 TARGET_WAITKIND_NO_HISTORY.
1511 * NEWS: Move set/show extended-prompt to "New Options". Expand
1512 description. Fix typos.
1518 * python/py-param.c (call_doc_function): Correctly deference on
1523 * ada-tasks.c (print_ada_task_info): Fix computation of
1524 number of tasks displayed in command output.
1529 * dwarf2-frame-tailcall.c: Include dwarf2-frame.h.
1530 (dwarf2_tailcall_prev_register_first): Use dwarf2_frame_cfa.
1531 (dwarf2_tailcall_sniffer_first): Remove variable pc_regnum. Replace
1532 gdbarch_pc_regnum and frame_unwind_register_unsigned by
1537 * dwarf2read.c (dw2_get_file_names): Move adjustment for type
1539 (partial_read_comp_unit_head): ...here. Add is_debug_type_section
1540 flag. Adjust all callers.
1541 (process_psymtab_comp_unit): Remove adjustment for type section.
1545 * cp-namespace.c (cp_scan_for_anonymous_namespaces): Changed function
1546 arguments by adding OBJFILE. Instead of getting objfile from
1547 symbol's symtab, use new argument OBJFILE.
1548 * cp-support.h (cp_scan_for_anonymous_namespaces): Changed function
1549 arguments by adding OBJFILE.
1550 * gdb/dwarf2read.c (new_symbol_full): Change call to
1551 cp_scan_for_anonymous_namespaces to match new signature.
1552 * gdb/stabsread.c (define_symbol): Change call to
1553 cp_scan_for_anonymous_namespaces to match new signature.
1560 * python/py-breakpoint.c (gdbpy_breakpoints): Fix List reference
1562 * python/py-inferior.c (gdbpy_inferiors): Fix List reference
1563 leak. Delete unused variables.
1569 * python/py-frame.c (frapy_read_var): Use const struct *block.
1570 * python/py-type.c (typy_lookup_typename): Likewise.
1571 (typy_lookup_type): Likewise.
1572 (typy_legacy_template_argument): Likewise.
1573 (typy_template_argument): Likewise.
1574 (gdbpy_lookup_type): Likewise.
1575 * python/py-symbol.c (gdbpy_lookup_symbol): Likewise.
1576 * python/py-block.c (blpy_block_object): Likewise.
1577 (blpy_iter): Likewise.
1578 (blpy_get_start): Likewise.
1579 (blpy_get_end): Likewise.
1580 (blpy_get_function): Likewise.
1581 (blpy_get_superblock): Likewise.
1582 (set_block): Likewise.
1583 (block_to_block_object): Likewise.
1584 (block_object_to_block): Likewise.
1585 (blpy_is_valid): Likewise.
1586 (blpy_get_global_block): New function.
1587 (blpy_get_static_block): New function.
1588 (blpy_is_global): New function.
1589 (blpy_is_static): New function.
1590 * blockframe.c (block_innermost_frame): Likewise.
1591 * valops.c (value_of_variable): Likewise.
1592 * frame.h: Update prototypes.
1593 * python/python-internal.h: Likewise.
1594 * value.h: Likewise.
1598 * dwarf2read.c (create_debug_types_hash_table): Fix size of
1603 * dwarf2read.c (peek_abbrev_code): New function.
1604 (dw2_get_file_names): Check for dummy compilation units.
1605 (create_debug_types_hash_table): Likewise.
1606 (process_psymtab_comp_unit): Likewise.
1607 (load_partial_comp_unit): Likewise.
1608 (load_full_comp_unit): Likewise.
1612 * solib-svr4.c (read_program_header): New variables pt_phdr, pt_phdr_p,
1613 initialize them from target PT_PHDR p_vaddr, relocate sect_addr by
1614 pt_phdr if PT_PHDR was found.
1618 * gdbtypes.h: Added TYPE_SAFE_NAME macro to get the name of a
1619 type or "<unnamed type"> when there is no name assigned.
1620 * gnu-v3-abi.c (gnuv3_rtti_type): Use TYPE_SAFE_NAME macro to
1621 avoid a sigint when no name is assigned.
1627 * dwarf2expr.c (ctx_no_read_reg): New function.
1628 * dwarf2expr.h (ctx_no_read_reg): New declaration.
1629 * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove.
1630 (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New.
1631 (decode_locdesc): Replace by a caller of dwarf_expr_eval.
1635 * NEWS: Document python gdb.printing.register_pretty_printer's new
1636 `replace' parameter.
1641 * eval.c (evaluate_subexp_standard): Do not construct
1642 an array of types; pass the value array directly to
1643 find_overload_match.
1644 * gdbtypes.h (NULL_POINTER_CONVERSION_BADNESS): Declare.
1645 (rank_function): Take an array of values instead of types.
1646 (rank_one_type): Add struct value * parameter.
1647 * gdbtypes.c (NULL_POINTER_CONVERSION_BADNESS): Define.
1648 (rank_function): For each argument, pass the argument's
1649 value to rank_one_type.
1650 (rank_one_type): Add VALUE parameter.
1651 If the parameter type is a pointer and the argument type
1652 is an integer, return NULL_POINTER_CONVERSION_BADNESS if
1654 Update all calls to rank_one_type, passing NULL for new
1656 * valarith.c (value_user_defined_cpp_op): Do not construct
1657 an array of types; pass the value array directly to
1658 find_overload_match.
1659 * valops.c (find_overload_method_list): Take an array of
1660 values instead of types.
1661 Save the type of OBJP for later use.
1662 Update calls to find_oload_champ, and find_oload_champ_namespace.
1663 (find_oload_champ_namespace): Take an array of values instead
1665 (find_oload_champ_namespace_loop): Likewise.
1666 (find_oload_champ): Likewise.
1667 (classify_oload_match): Inspect all arguments
1668 until INCOMPATIBLE is found. Return the worst badness found
1670 (compare_parameters): Update call to rank_one_type.
1671 * value.h (find_overload_match): Take an array of values instead
1676 Drop lazy lm_info reading.
1677 * solib-svr4.c (struct lm_info): Remove field lm. New fields l_addr_p,
1678 l_addr_inferior, l_ld, l_next, l_prev and l_name.
1679 (lm_info_read): New function.
1680 (lm_addr_from_link_map, lm_dynamic_from_link_map): Remove.
1681 (lm_addr_check): Use l_addr_p. No longer use lm_addr_from_link_map and
1682 lm_dynamic_from_link_map.
1683 (lm_next, lm_prev, lm_name): Remove.
1684 (svr4_keep_data_in_core): Use lm_info_read, drop the lm_info entries
1685 initialization incl. read_memory. No longer use lm_name.
1686 (svr4_free_so): Drop lm_info->lm freeing.
1687 (svr4_default_sos): Initialize lminfo with zeroes. Use l_addr_p. Drop
1688 explicit lm_addr and lm initialization.
1689 (svr4_read_so_list): Use lm_info_read, drop the initailization of
1690 fields by hand, incl. read_memory. No longer use lm_next, lm_prev and
1696 * defs.h (struct so_list): New forward declaration.
1697 (make_cleanup_free_so): New declaration.
1698 * solib-svr4.c (ignore_first_link_map_entry): Remove.
1699 (svr4_free_so): Move the function here from downwards. Handle NULL
1701 (svr4_free_library_list): New.
1702 (svr4_read_so_list): New, moved here code from svr4_current_sos.
1703 Use more cleanups. Use new parameter ignore_first instead of
1704 ignore_first_link_map_entry.
1705 (svr4_current_sos): New variable ignore_first, initialize it. New
1706 variable back_to, use it for svr4_free_library_list protection.
1707 (svr4_free_so): Remove - move upwards.
1708 * utils.c: Include solist.h.
1709 (do_free_so, make_cleanup_free_so): New functions.
1713 Fix internal error regression.
1714 * value.c (value_primitive_field): Handle value_optimized_out. Move
1715 packed bitfields comment.
1719 * python/py-breakpoint.c (gdbpy_breakpoint_deleted): Ensure GIL is
1724 * python/py-type.c (typy_has_key): Make 'field' const.
1728 * remote.c (remote_save_trace_data): Invert comparison.
1732 * tracepoint.c (trace_save_command): Use filename instead of
1737 * dwarf2read.c (dwarf2_fetch_die_location_block): Initialize .data even
1743 * arm-tdep.c (thumb_analyze_prologue): Call thumb_insn_size to check
1744 whether insn is a 32-bit Thumb-2 instruction.
1745 (thumb_in_function_epilogue_p): Likewise.
1746 (thumb_get_next_pc_raw): Likewise.
1747 (arm_breakpoint_from_pc): Likewise.
1751 Fix empty DWARF expressions DATA vs. SIZE conditionals.
1752 * dwarf2loc.c (dwarf2_find_location_expression): Clear *LOCEXPR_LENGTH.
1753 (dwarf_expr_frame_base_1): Indicate unavailability via zero *LENGTH.
1754 (locexpr_tracepoint_var_ref): Check only zero SIZE, not zero DATA.
1755 (loclist_read_variable, loclist_tracepoint_var_ref): Do not check for
1757 * dwarf2loc.h (struct dwarf2_locexpr_baton): Comment DATA vs. SIZE
1759 * dwarf2read.c (struct dwarf_block): Comment DATA validity.
1760 (dwarf2_fetch_die_location_block, dwarf2_symbol_mark_computed): Do not
1761 clear DATA on zero SIZE.
1765 * dwarf2read.c (partial_read_comp_unit_head): Set header->offset,
1766 header->first_die_offset here. All callers updated.
1770 Fix compatibility with texinfo versions older than 4.12.
1771 * Makefile.in (MAKEINFO): Set to @MAKEINFO@.
1772 (MAKEINFOFLAGS, MAKEINFO_EXTRA_FLAGS, MAKEINFO_CMD): New.
1773 (MAKEHTMLFLAGS): Use MAKEINFO_CMD.
1774 (FLAGS_TO_PASS): Add MAKEINFOFLAGS and MAKEINFO_EXTRA_FLAGS.
1775 * configure: Regenerate.
1776 * configure.ac (MAKEINFO): Find it, from libiberty/configure.ac.
1777 (MAKEINFOFLAGS): Pre-set it to --split-size=5000000.
1778 (MAKEINFO_EXTRA_FLAGS): New test for -DHAVE_MAKEINFO_CLICK.
1782 * breakpoint.h (pc_at_non_inline_function): Declare.
1783 * breakpoint.c (is_non_inline_function,
1784 pc_at_non_inline_function): New functions.
1785 * infrun.c (handle_inferior_event): Don't call skip_inline_frames
1786 if the stop is at a location where functions cannot be inlined.
1790 * linux-nat.c (stop_and_resume_callback): Don't re-resume LWPs if
1791 the core wanted them stopped, or if they now have a pending event
1793 (linux_nat_filter_event): New parameter `new_pending_p'. Pass it
1794 down to stop_and_resume_callback.
1795 (linux_nat_wait_1): Always clear `options' when retrying. Handle
1796 having new pending events after calling linux_nat_filter_event.
1800 * dwarf2read.c: Undo inadvertent changes in previous commit.
1804 * dwarf2read.c (partial_die_parent_scope): Rearrange conditional
1809 * symfile.c (separate_debug_file_exists): Fix condition.
1813 * regcache.c (regcache_restore): Do not write unavailable regs, mark
1815 * regcache.h (regcache_restore): Remove declaration.
1817 * gdbarch.sh: New field 'long_long_align_bit'.
1818 * gdbarch.c, gdbarch.h: Regenerate.
1819 * i386-tdep.c (i386_gdbarch_init): Set long_long_align_bit to 32.
1820 * jit.c (jit_read_code_entry): Use it to determine correct size offset.
1824 Revert this part of:
1826 Support @entry in input expressions.
1827 * c-exp.y (ENTRY, unknown_cpp_name): New.
1828 (exp: UNKNOWN_CPP_NAME): Change to `exp: unknown_cpp_name'.
1829 (unknown_cpp_name: UNKNOWN_CPP_NAME, unknown_cpp_name: ENTRY)
1830 (variable: name_not_typename '@' ENTRY, name: ENTRY)
1831 (name_not_typename: ENTRY): New.
1832 (yylex): Recognize ENTRY.
1834 Reimplement @entry in input expressions.
1835 * c-exp.y (ENTRY): New.
1836 (variable: name_not_typename ENTRY): New.
1837 (lex_one_token): Optionally return ENTRY instead of the '@' lex.
1841 * linux-nat.c (linux_handle_extended_wait): Always dump both the
1842 parent and child's pids as soon as we detect a clone event.
1843 Adjust another debug message.
1847 * linux-nat.c (linux_lwp_is_zombie): Return early if the LWP is
1848 not zombie instead of reading the whole file.
1852 Fix separate debuginfo warning with "remote:" access.
1853 * objfiles.h (struct objfile): New fields crc32 and crc32_p.
1854 * symfile.c (get_file_crc): New function with the code moved from ...
1855 (separate_debug_file_exists): ... this function, specifically variables
1856 buffer and count. New variable verified_as_different, set it. Remove
1857 file_crc initialization. Verify also if both files are not the same
1858 manually, if needed.
1862 * arm-tdep.c (arm_get_next_pc_raw): Use read_memory_unsigned_integer
1867 * linux-thread-db.c (thread_db_new_objfile): Only try to load
1868 libthread_db when we load libpthread or the main symbol file.
1869 (thread_db_inferior_created): New function.
1870 (_initialize_thread_db): Attach inferior_created observer.
1871 * linux-nat.c (linux_child_post_attach): Remove call to
1872 check_for_thread_db.
1873 (linux_child_post_startup_inferior): Ditto.
1874 * objfiles.h (OBJF_MAINLINE): Define.
1875 * symfile.c (symbol_file_add_with_addrs_or_offsets): Pass it to
1876 allocate_objfile when appropriate.
1881 * arm-linux-nat.c (os_version, os_major, os_minor, os_release):
1882 Remove unused variables.
1883 (get_linux_version): Remove function.
1884 (_initialize_arm_linux_nat): Do not call it.
1888 * linux-nat.c (linux_handle_extended_wait): Don't resume the new
1889 new clone lwp if the core asked it to stop. Don't pass on
1890 unexpected signals to the new clone; leave them pending instead.
1894 * linux-nat.c (resume_lwp): Remove redundant debug output.
1898 * linux-nat.c (linux_nat_wait_1): Copy the event lwp's
1899 last_resume_kind before clearing it, and use the copy instead to
1900 determine whether to report a SIGSTOP as TARGET_SIGNAL_0. Use
1901 resume_clear_callback in the non-stop path too.
1905 * valprint.c (value_check_printable): Add one parameter OPTIONS.
1906 Honor OPTIONS and VAL's type.
1907 (common_val_print, value_print): Update to pass one more parameter.
1911 Add new "alias" command.
1912 * NEWS: Mention new command.
1913 * command.h (valid_user_defined_cmd_name_p): Declare.
1914 * defs.h (make_cleanup_dyn_string_delete): Declare.
1915 * utils.c: #include "dyn-string.h".
1916 (do_dyn_string_delete, make_cleanup_dyn_string_delete): New functions.
1917 * cli/cli-cmds.c: #include "dyn-string.h".
1918 (argv_to_dyn_string, valid_command_p, alias_command): New functions.
1919 (init_cli_cmds): Add new command.
1920 * cli/cli-decode.c (valid_user_defined_cmd_name_p): New function.
1924 Fix compatibility with older GCCs.
1925 * dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Initialize parameter.
1926 * stack.c (read_frame_arg): Initialize val_deref.
1930 Entry values NEWS entries, DWARF disassembly support.
1931 * NEWS: New entry values entry.
1932 (set print entry-values, show print entry-values)
1933 (set debug entry-values, show debug entry-values): New entries.
1934 * dwarf2loc.c (disassemble_dwarf_expression): New parameters start and
1935 indent. Remove variable start. Move header printing out. Respect
1936 INDENT. Support DW_OP_GNU_entry_value.
1937 (locexpr_describe_location_1): Move the header printing here, extend
1938 the disassemble_dwarf_expression passed parameters.
1942 Display @entry parameter values even for references.
1943 * ada-valprint.c (ada_val_print_1) <TYPE_CODE_REF>: Try also
1944 coerce_ref_if_computed.
1945 * c-valprint.c (c_val_print) <TYPE_CODE_REF>: Likewise.
1946 * dwarf2expr.c (dwarf_block_to_dwarf_reg_deref): New function.
1947 (execute_stack_op) <DW_OP_GNU_entry_value>: Add -1 deref_size to the
1948 existing push_dwarf_reg_entry_value call. Add new detection calling
1949 dwarf_block_to_dwarf_reg_deref. Update the error message.
1950 (ctx_no_push_dwarf_reg_entry_value): New parameter deref_size.
1952 (struct dwarf_expr_context_funcs) <push_dwarf_reg_entry_value>: Add new
1953 parameter deref_size, describe it in the comment.
1954 (ctx_no_push_dwarf_reg_entry_value): Add new parameter deref_size.
1955 (dwarf_block_to_dwarf_reg_deref): New declaration.
1956 * dwarf2loc.c (dwarf_entry_parameter_to_value): Add new parameter
1957 deref_size, describe it in the function comment. New variables
1958 data_src and size, fetch the alternative block accoring to DEREF_SIZE.
1959 (dwarf_expr_push_dwarf_reg_entry_value): Add new parameter deref_size,
1960 describe it in the function comment. Fetch the alternative block
1961 accoring to DEREF_SIZE.
1962 (entry_data_value_coerce_ref, entry_data_value_copy_closure)
1963 (entry_data_value_free_closure, entry_data_value_funcs): New.
1964 (value_of_dwarf_reg_entry): New variables checked_type, target_type,
1965 outer_val, target_val, val and addr. Try to fetch and create also
1966 referenced value content.
1967 (pieced_value_funcs): NULL value for coerce_ref.
1968 (needs_dwarf_reg_entry_value): Add new parameter deref_size.
1969 * f-valprint.c (f_val_print) <TYPE_CODE_REF>: Try also
1970 coerce_ref_if_computed.
1971 * opencl-lang.c (opencl_value_funcs): NULL value for coerce_ref.
1972 * p-valprint.c (pascal_val_print) <TYPE_CODE_REF>: Likewise.
1973 * stack.c (read_frame_arg): Compare also dereferenced values.
1974 * value.c (value_computed_funcs): Make the parameter v const, use
1975 value_lval_const for it.
1976 (value_lval_const, coerce_ref_if_computed): New function.
1977 (coerce_ref): New variable retval. Call also coerce_ref_if_computed.
1978 * value.h (struct lval_funcs): New field coerce_ref.
1979 (value_computed_funcs): Make the parameter v const.
1980 (value_lval_const, coerce_ref_if_computed): New declarations.
1984 Support @entry in input expressions.
1985 * c-exp.y (ENTRY, unknown_cpp_name): New.
1986 (exp: UNKNOWN_CPP_NAME): Change to `exp: unknown_cpp_name'.
1987 (unknown_cpp_name: UNKNOWN_CPP_NAME, unknown_cpp_name: ENTRY)
1988 (variable: name_not_typename '@' ENTRY, name: ENTRY)
1989 (name_not_typename: ENTRY): New.
1990 (yylex): Recognize ENTRY.
1991 * eval.c (evaluate_subexp_standard): Support also OP_VAR_ENTRY_VALUE.
1992 * expprint.c (print_subexp_standard, dump_subexp_body_standard):
1994 * parse.c (operator_length_standard): Likewise.
1995 * std-operator.def: New operator OP_VAR_ENTRY_VALUE.
1999 Display referenced values in backtraces.
2000 * printcmd.c (print_variable_and_value): Set OPTS.DEREF_REF to 1.
2001 * stack.c (print_frame_arg): Likewise.
2005 Make some lval_funcs methods to default on NULL.
2006 * valops.c (value_fetch_lazy): Check if lval_computed read method is
2008 (value_assign): Check if lval_computed write method is NULL.
2009 * value.h (struct lval_funcs): Comment NULL values for read and write
2014 Display @entry parameter values (without references).
2015 * dwarf2expr.c (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset):
2017 * dwarf2expr.h (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset):
2019 * dwarf2loc.c (dwarf2_find_location_expression): Support location list
2021 (dwarf_entry_parameter_to_value, value_of_dwarf_reg_entry)
2022 (value_of_dwarf_block_entry, locexpr_read_variable_at_entry): New
2024 (dwarf2_locexpr_funcs): Install locexpr_read_variable_at_entry.
2025 (loclist_read_variable_at_entry): New function.
2026 (dwarf2_loclist_funcs): Install loclist_read_variable_at_entry.
2027 * dwarf2read.c (read_call_site_scope): Support also DW_OP_fbreg in
2028 DW_AT_location, call dwarf_block_to_sp_offset for it.
2029 * frame.h (print_entry_values_no, print_entry_values_only)
2030 (print_entry_values_preferred, print_entry_values_if_needed)
2031 (print_entry_values_both, print_entry_values_compact)
2032 (print_entry_values_default, print_entry_values): New declarations.
2033 (struct frame_arg): New field entry_kind.
2034 (read_frame_arg): New parameter entryargp.
2035 * mi/mi-cmd-stack.c (list_arg_or_local): New gdb_assert for
2036 arg->entry_kind. Optionally print the `@entry' suffix.
2037 (list_args_or_locals): New variable entryarg, initialize it.
2038 Initialize also entry_kind of arg and entryarg. Conditionalize
2039 list_arg_or_local for arg, add list_arg_or_local for entryarg. Call
2040 xfree for entryarg.error.
2041 * stack.c (print_entry_values_no, print_entry_values_only)
2042 (print_entry_values_preferred, print_entry_values_if_needed)
2043 (print_entry_values_both, print_entry_values_compact)
2044 (print_entry_values_default, print_entry_values_choices)
2045 (print_entry_values): New variables.
2046 (print_frame_arg): New gdb_assert for arg->entry_kind. Optionally
2047 print the `@entry' suffix, possibly in combination for
2048 print_entry_values_compact.
2049 (read_frame_arg): New parameter entryargp, new variables entryval,
2050 entryval_error and val_equal. Read in also entryargp, respect
2051 print_entry_values, compare the values using val_equal, fill in also
2052 argp->entry_kind (together with entryargp->entry_kind).
2053 (print_frame_args): New variable entryarg, initialize it.
2054 Conditionalize print_frame_arg for arg, add print_frame_arg for
2055 entryarg. Call xfree for entryarg.error.
2056 (_initialize_stack): Call add_setshow_enum_cmd for `entry-values'.
2057 * symtab.h (struct symbol_computed_ops): New field
2058 read_variable_at_entry.
2063 * frame.h (struct frame_arg): New definition.
2064 (read_frame_arg): New declaration.
2065 * mi/mi-cmd-stack.c (list_arg_or_local): New functiom from ...
2066 (list_args_or_locals): ... the code here. New variable arg, call
2067 read_frame_arg and list_arg_or_local with it. Unify the
2068 PRINT_SIMPLE_VALUES and PRINT_ALL_VALUES cases. Call xfree for
2070 * stack.c (print_frame_arg): New functiom from the code of
2072 (read_frame_arg): New function.
2073 (print_frame_args): Remove variable val. New variable arg, call
2074 read_frame_arg and print_frame_arg with it. Call xfree for arg.error.
2078 Protect entry values against self tail calls.
2079 * dwarf2loc.c (VEC (CORE_ADDR), func_verify_no_selftailcall): New.
2080 (dwarf_expr_dwarf_reg_entry_value): Call func_verify_no_selftailcall.
2084 Recognize virtual tail call frames.
2085 * Makefile.in (SFILES): Add dwarf2-frame-tailcall.c.
2086 (HFILES_NO_SRCDIR): Add dwarf2-frame-tailcall.h.
2087 (COMMON_OBS): Add dwarf2-frame-tailcall.o.
2088 * dwarf2-frame-tailcall.c: New file.
2089 * dwarf2-frame-tailcall.h: New file.
2090 * dwarf2-frame.c: Include dwarf2-frame-tailcall.h.
2091 (execute_cfa_program): New function comment. Return INSN_PTR. Reset
2092 REGS.PREV only after CIE execution.
2093 (struct dwarf2_frame_cache): New field tailcall_cache.
2094 (dwarf2_frame_cache): New variables entry_pc, entry_cfa_sp_offset,
2095 entry_cfa_sp_offset_p and instr. Execute FDE instructions in two
2096 parts, try to find entry_cfa_sp_offset. Call
2097 dwarf2_tailcall_sniffer_first.
2098 (dwarf2_frame_prev_register): Call dwarf2_tailcall_prev_register_first
2100 (dwarf2_frame_dealloc_cache): New function.
2101 (dwarf2_frame_sniffer): Preinitialize cache by dwarf2_frame_cache.
2102 (dwarf2_frame_unwind): Install dwarf2_frame_dealloc_cache.
2103 (dwarf2_signal_frame_unwind): Do not install dwarf2_frame_dealloc_cache.
2104 (dwarf2_append_unwinders): Add dwarf2_tailcall_frame_unwind.
2105 (dwarf2_frame_cfa): Support also dwarf2_tailcall_frame_unwind.
2106 * dwarf2loc.c (func_addr_to_tail_call_list)
2107 (tailcall_dump, call_sitep, VEC (call_sitep), chain_candidate)
2108 (call_site_find_chain_1, call_site_find_chain): New.
2109 * dwarf2loc.h (struct call_site_chain): New.
2110 (call_site_find_chain): New declaration.
2111 * frame.c (get_frame_address_in_block): Support also TAILCALL_FRAME.
2112 * frame.h (enum frame_type): New entry TAILCALL_FRAME.
2113 * python/py-frame.c (gdbpy_initialize_frames): Add TAILCALL_FRAME.
2114 * stack.c (frame_info): Support also TAILCALL_FRAME.
2118 Tail call sites reader implementation.
2119 * dwarf2read.c (read_call_site_scope): Recognize DW_AT_GNU_tail_call,
2120 fill in TYPE_TAIL_CALL_LIST.
2121 * gdbtypes.h (struct func_type): New field tail_call_list.
2122 (struct call_site): New field tail_call_next.
2123 (TYPE_TAIL_CALL_LIST): New definition.
2127 Implement basic support for DW_TAG_GNU_call_site.
2128 * block.c: Include gdbtypes.h and exceptions.h.
2129 (call_site_for_pc): New function.
2130 * block.h (call_site_for_pc): New declaration.
2131 * defs.h: Include hashtab.h.
2132 (make_cleanup_htab_delete, core_addr_hash, core_addr_eq): New
2134 * dwarf2-frame.c (dwarf2_frame_ctx_funcs): Install
2135 ctx_no_push_dwarf_reg_entry_value.
2136 * dwarf2expr.c (read_uleb128, read_sleb128): Support R as NULL.
2137 (dwarf_block_to_dwarf_reg): New function.
2138 (execute_stack_op) <DW_OP_GNU_entry_value>: Implement it.
2139 (ctx_no_push_dwarf_reg_entry_value): New function.
2140 * dwarf2expr.h (struct dwarf_expr_context_funcs): New field
2141 push_dwarf_reg_entry_value.
2142 (ctx_no_push_dwarf_reg_entry_value, dwarf_block_to_dwarf_reg): New
2144 * dwarf2loc.c: Include gdbcmd.h.
2145 (dwarf_expr_ctx_funcs): New forward declaration.
2146 (entry_values_debug, show_entry_values_debug, call_site_to_target_addr)
2147 (dwarf_expr_reg_to_entry_parameter)
2148 (dwarf_expr_push_dwarf_reg_entry_value): New.
2149 (dwarf_expr_ctx_funcs): Install dwarf_expr_push_dwarf_reg_entry_value.
2150 (dwarf2_evaluate_loc_desc_full): Handle NO_ENTRY_VALUE_ERROR.
2151 (needs_dwarf_reg_entry_value): New function.
2152 (needs_frame_ctx_funcs): Install it.
2153 (_initialize_dwarf2loc): New function.
2154 * dwarf2loc.h (entry_values_debug): New declaration.
2155 * dwarf2read.c (struct dwarf2_cu): New field call_site_htab.
2156 (read_call_site_scope): New forward declaration.
2157 (process_full_comp_unit): Copy call_site_htab.
2158 (process_die): Support DW_TAG_GNU_call_site.
2159 (read_call_site_scope): New function.
2160 (dwarf2_get_pc_bounds): Support NULL HIGHPC.
2161 (dwarf_tag_name): Support DW_TAG_GNU_call_site.
2162 (cleanup_htab): Delete.
2163 (write_psymtabs_to_index): Use make_cleanup_htab_delete instead of it.
2164 * exceptions.h (enum errors): New NO_ENTRY_VALUE_ERROR.
2165 * gdb-gdb.py (StructMainTypePrettyPrinter): Support
2166 FIELD_LOC_KIND_DWARF_BLOCK.
2167 * gdbtypes.h (enum field_loc_kind): New entry
2168 FIELD_LOC_KIND_DWARF_BLOCK.
2169 (struct main_type): New loc entry dwarf_block.
2170 (struct call_site, FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK)
2171 (TYPE_FIELD_DWARF_BLOCK): New.
2172 * python/py-type.c: Include dwarf2loc.h.
2173 (check_types_equal): Support FIELD_LOC_KIND_DWARF_BLOCK. New
2174 internal_error call on unknown FIELD_LOC_KIND.
2175 * symtab.h (struct symtab): New field call_site_htab.
2176 * utils.c (do_htab_delete_cleanup, make_cleanup_htab_delete)
2177 (core_addr_hash, core_addr_eq): New functions.
2182 * gdb-gdb.py (StructMainTypePrettyPrinter): Change
2183 TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC. Move
2184 calling_convention under func_stuff there.
2185 * gdbtypes.c (make_function_type): Call INIT_FUNC_SPECIFIC.
2186 (init_type) <TYPE_CODE_FUNC>: Likewise.
2187 (recursive_dump_type): Change TYPE_SPECIFIC_CALLING_CONVENTION to
2188 TYPE_SPECIFIC_FUNC. New comment for tail_call_list.
2189 * gdbtypes.h (enum type_specific_kind): Change
2190 TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC.
2191 (struct main_type) <type_specific>: Change calling_convention to
2192 func_stuff. Move calling_convention to ...
2193 (struct func_type): ... this new struct.
2194 (INIT_FUNC_SPECIFIC): New #define.
2195 (TYPE_CALLING_CONVENTION): Change calling_convention to func_stuff.
2199 Fix DW_OP_GNU_implicit_pointer for DWARF32 v3+ on 64-bit arches.
2200 * dwarf2-frame.c (execute_stack_op): Initialize ctx->ref_addr_size.
2201 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_implicit_pointer>: Use
2202 ctx->ref_addr_size. Handle its invalid value.
2203 * dwarf2expr.h (struct dwarf_expr_context): New field ref_addr_size.
2204 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full)
2205 (dwarf2_loc_desc_needs_frame): Initialize ctx->ref_addr_size.
2206 * dwarf2loc.h (dwarf2_per_cu_ref_addr_size): New declaration.
2207 * dwarf2read.c (decode_locdesc): Initialize ctx->ref_addr_size.
2208 (dwarf2_per_cu_ref_addr_size): New function.
2213 * dwarf2read.c (per_cu_header_read_in): New function.
2214 (dwarf2_per_cu_addr_size, dwarf2_per_cu_offset_size): Use it, with new
2215 variables cu_header_local and cu_headerp.
2219 Fix initial language detection with -readnow.
2220 * dwarf2read.c (dw2_find_symbol_file): Handle OBJF_READNOW case.
2221 * symfile.h (struct quick_symbol_functions): State find_symbol_file
2222 searches only for global symbols.
2226 Fix printed anonymous struct name.
2227 * dwarf2read.c (fixup_partial_die): Handle for anonymous structs also
2228 DW_TAG_interface_type. Strip for anonymous structs any prefixes.
2229 (anonymous_struct_prefix): New function.
2230 (determine_prefix): New variables retval. Call anonymous_struct_prefix.
2231 (dwarf2_name): Strip for anonymous structs any prefixes.
2235 * python/lib/gdb/printing.py (register_pretty_printer): New argument
2238 * python/lib/gdb/printing.py: Whitespace cleanup.
2240 * python/py-value.c (valpy_call): Initialize ftype to avoid compiler
2245 * linux-nat.h (ALL_LWPS): Remove the ptid parameter.
2246 * amd64-linux-nat.c (amd64_linux_dr_set_control)
2247 (amd64_linux_dr_set_addr, amd64_linux_dr_unset_status): Adjust.
2248 * arm-linux-nat.c (arm_linux_insert_hw_breakpoint)
2249 (arm_linux_remove_hw_breakpoint, arm_linux_insert_watchpoint)
2250 (arm_linux_remove_watchpoint): Adjust.
2251 * i386-linux-nat.c (i386_linux_dr_set_control)
2252 (i386_linux_dr_set_addr, i386_linux_dr_unset_status): Adjust.
2253 * ia64-linux-nat.c (ia64_linux_insert_watchpoint)
2254 (ia64_linux_remove_watchpoint): Adjust.
2255 * mips-linux-nat.c (write_watchpoint_regs): Adjust.
2256 * ppc-linux-nat.c (ppc_linux_insert_hw_breakpoint)
2257 (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
2258 (ppc_linux_insert_mask_watchpoint)
2259 (ppc_linux_remove_mask_watchpoint, ppc_linux_insert_watchpoint)
2260 (ppc_linux_remove_watchpoint): Adjust.
2261 * s390-nat.c (s390_insert_watchpoint, s390_remove_watchpoint):
2266 * windows-nat.c: Include wchar.h to avoid compiler warnings.
2267 (clear_win32_environment): New function for Cygwin to clear out
2269 (windows_create_inferior): Prepare new environment from in_env
2275 * python/py-value.c (valpy_call): Check that arguments are
2277 (is_intlike): Remove call to CHECK_TYPEDEF.
2278 (valpy_nonzero): Catch GDB exceptions.
2279 (valpy_absolute): Ditto.
2280 (valpy_lazy_string): Ditto.
2281 (valpy_call): Ditto.
2282 (valpy_get_is_optimized_out): Ditto.
2283 (valpy_long): Ditto.
2284 (valpy_float): Ditto.
2285 (valpy_int): Call CHECK_TYPEDEF. Catch GDB exceptions.
2286 (valpy_richcompare): Ditto.
2290 * inferior.h (disable_randomization): Declare.
2291 * infrun.c (disable_randomization): New global variable.
2292 (show_disable_randomization): New function.
2293 (set_disable_randomization): Likewise.
2294 (_initialize_infrun): Install set/show disable-randomization
2296 * linux-nat.c (disable_randomization): Remove.
2297 (show_disable_randomization): Likewise.
2298 (set_disable_randomization): Likewise.
2299 (_initialize_linux_nat): No longer install set/show
2300 disable-randomization commands here.
2301 (linux_nat_supports_disable_randomization): New function.
2302 (linux_nat_add_target): Install it.
2303 * remote.c (PACKET_QDisableRandomization): New enum value.
2304 (remote_protocol_packets): Support QDisableRandomization.
2305 (_initialize_remote): Likewise.
2306 (remote_supports_disable_randomization): New function.
2307 (init_remote_ops): Install it.
2308 (extended_remote_supports_disable_randomization): New function.
2309 (init_extended_remote_ops): Install it.
2310 (extended_remote_disable_randomization): New function.
2311 (extended_remote_create_inferior_1): Call it.
2312 * target.h (struct target_ops): Add to_supports_disable_randomization.
2313 (target_supports_disable_randomization): Add prototype.
2314 * target.c (target_supports_disable_randomization): New function.
2315 (find_default_supports_disable_randomization): Likewise.
2316 (init_dummy_target): Install it.
2320 Allow Python notification of new object-file loadings.
2321 * Makefile.in (SUBDIR_PYTHON_SRCS): Add py-newobjfilevent.c.
2322 (SUBDIR_PYTHON_OBS): Add py-newobjfileevent.o.
2323 Add build rule for this file.
2324 * python/py-event.h (emit_new_objfile_event): New prototype.
2325 (newobjfile): New Python event emitter.
2326 * python/py-evts.c (gdbpy_initialize_py_events): Add new_objfile to
2327 Python event registry.
2328 * python/py-inferior.c: Include objfiles.h
2329 (python_new_objfile): New function.
2330 (gdbpy_initialize_inferior): Add python_new_objfile to the new objfile
2332 * python/py-newobjfileevent.c: New file.
2333 * python-internal.h (gdbpy_initialize_new_objfile_event): New
2335 * python/python.c (_initialize_python): Add
2336 gdbpy_initialize_new_objfile_event call.
2337 * NEWS: Add item for new Python event "gdb.newobjfile"
2341 * ada-tasks.c (read_atcb): Make ravenscar_task_name static.
2342 Extract the ravenscar task name from the symbol for the atcb.
2346 * python/py-type.c (typy_make_iter): Add forward declaration.
2347 (typy_fields_items): Use the gdb.Type iterator.
2351 * NEWS: Add entry for Python gdb.Type mapping methods.
2355 PR python/12691: Add the inferior to Python exited event
2356 * python/py-exitedevent.c (create_exited_event_object): Add inferior
2358 * python/py-event.h (emit_exited_event): Likewise
2359 * python/-inferior.c (python_inferior_exit): Likewise
2363 * ada-tasks.c (print_ada_task_info): Add "thread-id" field
2364 in output of -ada-task-info GDB/MI command.
2368 * ada-lang.h (struct inferior): Declare.
2369 (print_ada_task_info): Add declaration.
2370 * ada-tasks.c (print_ada_task_info): Make non-static.
2371 * mi/mi-cmds.c (mi_cmds): Add "ada-task-info".
2372 * mi/mi-cmds.h (mi_cmd_ada_task_info): Add declaration.
2373 * mi/mi-main.c: #include "ada-lang.h".
2374 (mi_cmd_list_features): Add "ada-task-info" to the list
2375 of supported features.
2376 (mi_cmd_ada_task_info): New function.
2380 * python/python.c (python_run_simple_file): New function.
2381 (source_python_script, source_python_script_for_objfile):
2382 Replace call to PyRun_SimpleFile by call to
2383 python_run_simple_file.
2387 * python/py-value.c (valpy_get_address): Use Py_XINCREF.
2388 (value_to_value_object): Fetch value if it was lazy.
2393 * solib-svr4.c (svr4_default_sos): Remove variables head and link_ptr.
2394 Rearrange the code for it.
2398 * breakpoint.c (bkpt_print_recreate): Add call to
2399 print_recreate_thread.
2403 * common/linux-ptrace.h (PTRACE_GETFDPIC, PTRACE_GETFDPIC_EXEC,
2404 PTRACE_GETFDPIC_INTERP): Define.
2408 * symfile.c (add_symbol_file_command): Update message on usage.
2412 * python/py-type.c (make_fielditem, typy_field_names, typy_items)
2413 (typy_length, typy_get, typy_has_key, typy_make_iter)
2414 (typy_iterkeys, typy_iteritems, typy_itervalues, typy_iter)
2415 (typy_iterator_iter, typy_iterator_iternext)
2416 (typy_iterator_dealloc): New functions to implement standard
2417 Python mapping methods on gdb.Type object.
2418 (gdb.TypeIterator): New Python type.
2419 * python/python-internal.h (gdbpy_iter_kind): New enum.
2423 * sparc-tdep.h (SPARC_F2_REGNUM, SPARC_F3_REGNUM, SPARC_F4_REGNUM,
2424 SPARC_F5_REGNUM, SPARC_F6_REGNUM, SPARC_F7_REGNUM): New enums.
2425 * sparc-tdep.c (sparc_complex_floating_p): New function.
2426 (sparc32_store_arguments): Handle complex floats.
2427 (sparc32_extract_return_value): Likewise.
2428 (sparc32_store_return_value): Likewise.
2429 (sparc32_stabs_argument_has_addr): Likewise.
2430 * sparc64-tdep.c (sparc64_complex_floating_p): New function.
2431 (sparc64_store_floating_fields): Handle complex floats.
2432 (sparc64_store_arguments): Likewise.
2433 (sparc64_store_return_value): Likewise.
2437 * windows-nat.c (env_sort) [!__CYGWIN__]: Function restored from
2438 before the change on 2006-12-09.
2439 (windows_create_inferior) [!__CYGWIN__]: Restore code that
2440 generates the environment block for CreateProcessA, modulo the
2441 Cygwin-specific parts that are not needed here.
2445 * target.h (enum target_object): Add TARGET_OBJECT_DARWIN_DYLD_INFO.
2446 * solib-darwin.c (DYLD_VERSION_MAX): Update number.
2447 (darwin_solib_get_all_image_info_addr_at_init): New function.
2448 (darwin_solib_read_all_image_info_addr): Likewise.
2449 (darwin_solib_create_inferior_hook): Use the above two functions.
2450 * darwin-nat.c (darwin_execvp): Renames retval to res.
2451 (darwin_read_write_inferior): Update comment.
2452 (darwin_read_dyld_info): New function.
2453 (darwin_xfer_partial): Handle DYLD_INFO.
2457 Add return address collection for tracepoints.
2458 * tracepoint.c (encode_actions_1): Add case for $_ret.
2459 (validate_actionline): Check for $_ret.
2460 (trace_dump_actions): Ditto.
2461 * ax-gdb.h (gen_trace_for_return_address): Declare.
2462 * ax-gdb.c: Include arch-utils.h.
2463 (gen_trace_for_return_address): New function.
2464 (agent_command): Add return address special case.
2465 * amd64-tdep.c: Include ax.h and ax-gdb.h.
2466 (amd64_gen_return_address): New function.
2467 (amd64_init_abi): Call it.
2468 * i386-tdep.c: Include ax.h and ax-gdb.h.
2469 (i386_gen_return_address): New function.
2470 (i386_init_abi): Call it.
2471 * arch-utils.h (default_gen_return_address): Declare.
2472 * arch-utils.c (default_gen_return_address): New function.
2473 * gdbarch.sh (gen_return_address): New method.
2474 * gdbarch.h, gdbarch.c: Regenerate.
2479 * i386-tdep.c (i386_frame_align): New.
2480 (i386_gdbarch_init): Use i386_frame_align.
2484 * i386-linux-nat.c (i386_linux_resume): Use read_memory_unsigned_integer
2489 * fork-child.c (fork_inferior): Add exec_fun parameter.
2490 Call exec_fun or execvp.
2491 * inferior.h: Adjust prototype.
2492 * gnu-nat.c (gnu_create_inferior): Adjust fork_inferior call.
2493 * inf-ttrace.c (inf_ttrace_create_inferior): Ditto.
2494 * inf-ptrace.c (inf_ptrace_create_inferior): Ditto.
2495 * procfs.c (procfs_create_inferior): Ditto.
2496 * darwin-nat.c (darwin_execvp): New function.
2497 (darwin_create_inferior): Use it.
2501 * infrun.c (context_switch): Print debug message when switching to
2506 * s390-tdep.c (s390_function_arg_pass_by_reference): Handle
2507 complex and vector types.
2508 (s390_return_value_convention): Likewise.
2510 (s390_value_from_register): Call check_typedef.
2511 (extend_simple_arg): Likewise.
2512 (alignment_of): Likewise.
2513 (s390_push_dummy_call): Likewise.
2514 (s390_return_value): Likewise.
2518 * event-top.c (async_disconnect): If an exception is thrown from
2519 quit_cover, call pop_all_targets. Use TRY_CATCH instead of
2521 * top.c (quit_cover): Return void and take no arguments.
2522 * top.h (quit_cover): Update prototype.
2526 * mi/mi-main.c (mi_load_progress): Restore saved_uiout value to
2527 current_uiout, not uiout.
2531 * python/py-auto-load.c (source_section_scripts): Fix file
2533 * python/python.c (source_python_script_for_objfile): Tweak comments.
2538 Support displaced stepping for Thumb 16-bit insns.
2539 * arm-tdep.c (THUMB_NOP) Define.
2540 (thumb_copy_unmodified_16bit): New.
2541 (thumb_copy_b, thumb_copy_bx_blx_reg): New.
2542 (thumb_copy_alu_reg): New.
2543 (arm_copy_svc): Move some common code to ...
2544 (install_svc): ... here. New.
2545 (thumb_copy_svc): New.
2546 (install_pc_relative): New.
2547 (thumb_copy_pc_relative_16bit): New.
2548 (thumb_decode_pc_relative_16bit): New.
2549 (thumb_copy_16bit_ldr_literal): New.
2550 (thumb_copy_cbnz_cbz): New.
2551 (cleanup_pop_pc_16bit_all): New.
2552 (thumb_copy_pop_pc_16bit): New.
2553 (thumb_process_displaced_16bit_insn): New.
2554 (thumb_process_displaced_32bit_insn): New.
2555 (thumb_process_displaced_insn): process thumb instruction.
2557 Support displaced stepping for Thumb 32-bit insns.
2558 * arm-tdep.c (thumb_copy_unmodified_32bit): New.
2559 (thumb2_copy_preload): New.
2560 (thumb2_copy_copro_load_store): New.
2561 (thumb2_copy_b_bl_blx): New.
2562 (thumb2_copy_alu_imm): New.
2563 (thumb2_copy_load_reg_imm): New.
2564 (thumb2_copy_load_literal): New
2565 (thumb2_copy_block_xfer): New.
2566 (thumb_32bit_copy_undef): New.
2567 (thumb_32bit_copy_unpred): New.
2568 (thumb2_decode_ext_reg_ld_st): New.
2569 (thumb2_decode_svc_copro): New.
2570 (decode_thumb_32bit_store_single_data_item): New.
2571 (thumb_copy_pc_relative_32bit): New.
2572 (thumb_decode_pc_relative_32bit): New.
2573 (decode_thumb_32bit_ld_mem_hints): New.
2574 (thumb2_copy_table_branch): New
2575 (thumb_process_displaced_32bit_insn): Process Thumb 32-bit
2580 * arm-tdep.c (install_copro_load_store): PC is set 4-byte aligned.
2581 (install_b_bl_blx): Likewise.
2585 * arm-tdep.c (install_ldr_str_ldrb_strb): Renamed to ...
2586 (install_load_store): ... this. New.
2587 Change parameter BYTE to SIZE.
2588 (arm_copy_ldr_str_ldrb_strb): Update caller.
2589 (arm_decode_ld_st_word_ubyte): Update caller.
2593 * infrun.c (displaced_step_fixup): Move some code ...
2594 (displaced_step_restore): ... here. New function.
2595 (handle_inferior_event): Cleanup displaced stepping state for both
2596 child and parent when get forked or vforked event.
2597 * regcache.c (get_thread_arch_aspace_regcache): New function.
2598 get_thread_arch_regcache (): Call it.
2602 * ada-tasks.c (print_ada_task_info): New function, merging
2603 short_task_info and info_tasks together. Reimplement using
2604 ui-out instead of printing to stdout directly. Move the code
2605 building and checking the task list here, instead of leaving it
2606 in info_tasks_command.
2607 (info_task): Move the code building and checking the task
2608 list here, instead of leaving it in info_tasks_command.
2609 (info_tasks_command): Delete code building and checking
2610 the task list - moved elsewhere. Update calls to info_tasks
2615 * ada-tasks.c (info_task): Delete parameter `from_tty'.
2619 * ada-tasks.c (info_tasks): Delete parameter `from_tty'.
2623 * ada-lang.h (ada_build_task_list): Remove parameter
2625 * ada-tasks.c (ada_build_task_list): Remove parameter
2626 `warn_if_null'. Adjust implementation and documentation.
2627 (valid_task_id, ada_get_environment_task)
2628 iterate_over_live_ada_tasks): Adjust call to ada_build_task_list.
2629 (info_tasks_command): Adjust implementation.
2630 (task_command): Likewise.
2631 * ravenscar-thread.c (ravenscar_find_new_threads): Fix call
2632 to ada_build_task_list.
2636 * ada-tasks.c (ada_tasks_check_symbol_table, task_list): Delete.
2637 (enum ada_known_tasks_kind, struct ada_tasks_inferior_data): New.
2638 (ada_tasks_inferior_data_handle): New static global.
2639 (get_ada_tasks_inferior_data): New function.
2640 (ada_get_task_number, get_task_number_from_id, valid_task_id)
2641 (ada_get_environment_task, iterate_over_live_ada_tasks)
2642 (add_ada_task, read_known_tasks_array, read_known_tasks_list):
2644 (ada_set_current_inferior_known_tasks_addr): New function.
2645 (read_known_tasks, ada_build_task_list, short_task_info)
2646 (info_tasks, info_task, info_tasks_command, task_command_1)
2647 (task_command, ada_task_list_changed): Adjust.
2648 (ada_tasks_invalidate_inferior_data): New function.
2649 (ada_normal_stop_observer, ada_new_objfile_observer): Adjust.
2650 (_initialize_tasks): Set ada_tasks_inferior_data_handle.
2651 * ada-lang.h (struct inferior): Add declaration.
2652 (ada_task_list_changed): Update profile.
2653 * remote-wtx-pd.c: #include "inferior.h".
2654 (switch_to_pd_internal): Update call to ada_task_list_changed.
2658 * ada-tasks.c: #include "progspace.h" and "objfiles.h".
2659 (atcb_type, atcb_common_type, atcb_ll_type, atcb_call_type)
2660 (atcb_fieldno): Delete these static globals.
2661 (struct ada_tasks_pspace_data): New struct.
2662 (ada_tasks_pspace_data_handle): New static global.
2663 (get_ada_tasks_pspace_data): New function.
2664 (ada_tasks_invalidate_pspace_data): New function.
2665 (get_tcb_types_info, ptid_from_atcb_common, read_atcb)
2666 (read_known_tasks_list, ada_new_objfile_observer): Adjust.
2667 (_initialize_tasks): Create this module's per-progspace
2672 * ada-tasks.c (struct atcb_fieldnos): Renames struct tcb_fieldnos.
2676 * fork-child.c (fork_inferior): Update comment. Use alloca
2677 instead of xmalloc for argv. Move len and shell_command
2678 declarations in the block where they are used.
2679 Only call execvp. Factorize failure code.
2684 * parse.c (write_exp_elt): Change argument to pass a pointer of union
2685 `exp_element' instead of an element of the same and make the function
2687 (write_exp_elt_opcode, write_exp_elt_sym, write_exp_elt_block)
2688 (write_exp_elt_objfile, write_exp_elt_longcst, write_exp_elt_dblcst)
2689 (write_exp_elt_decfloatcst, write_exp_elt_type, write_exp_elt_intern):
2690 Change argument of `write_exp_elt' function call.
2691 Remove extra spaces from comments.
2692 * parser-defs.h (write_exp_elt): Remove prototype.
2696 * python/py-cmd.c (gdbpy_string_to_argv): Decrement reference
2697 count of item appended to list.
2698 * python/py-type.c (typy_fields): Likewise.
2702 * MAINTAINERS (Write After Approval): Add myself to the list.
2707 * linux-fork.c (checkpoint_command): Disallow checkpointing of
2708 processes with multiple threads.
2709 (inf_has_multiple_thread_cb): New function.
2710 (inf_has_multiple_threads): New function.
2714 PR Python/12692 Add gdb.selected_inferior() to Python interface.
2715 * python/py-inferior.c (GdbMethods): New Python method definition.
2719 Handle multiple breakpoint hits in Python interface:
2720 * python/py-bpevent.c (create_breakpoint_event_object): Rename C/Python
2721 variable to breakpoints.
2722 * python/py-stopevent.c (emit_stop_event): Return a Python tuple of
2723 bps instead of single breakpoint. Fix some space typos.
2724 * python/py-stopevent.c (create_breakpoint_event_object): Rename
2725 variable to breakpoints.
2729 * breakpoint.c (describe_other_breakpoints): Do not write 'duplicate'
2730 note if the breakpoint is internal.
2734 * MAINTAINERS (Write After Approval): Add myself to the list
2738 * infrun.c (prepare_for_detach, wait_for_inferior)
2739 (fetch_inferior_event): Don't flush the register cache.
2740 * remote.c (struct stop_reply) <regcache>: Add comment.
2744 Remove excessive DWARF expressions memory duplication.
2745 * dwarf2loc.c (per_cu_dwarf_call): Remove variable back_to and its use
2747 (indirect_pieced_value): Remove variable result. Remove variable
2748 back_to and its use for baton.data.
2749 (dwarf2_compile_expr_to_ax): Remove variable back_to and its use for
2751 * dwarf2read.c (dwarf2_fetch_die_location_block): Remove xmemdup.
2752 Update the function comment.
2756 * inferior.h (ALL_INFERIORS): New.
2757 * linux-thread-db.c (thread_db_find_new_threads_2): Remove check
2758 for a stopped thread.
2759 (thread_db_find_new_threads): Look for threads in all inferiors.
2763 * breakpoint.c (update_watchpoint): Handle the case of the
2764 watchpoint to update not being in the breakpoint list yet.
2765 (hw_watchpoint_use_count): New, factored out from
2766 hw_watchpoint_used_count.
2767 (hw_watchpoint_used_count): Rename to ...
2768 (hw_watchpoint_used_count_others): ... this. Add `except'
2769 parameter. Don't count resources of `except'. Use
2770 hw_watchpoint_use_count.
2774 * gdbthread.h (enum thread_state): Moved here.
2775 (struct thread_info): Rename `executing_' field to `executing' and
2776 `state_' to `state'.
2777 * thread.c (enum thread_state): Moved to gdbthread.h.
2778 (new_thread, add_thread_silent, delete_thread_1)
2779 (any_live_thread_of_process, thread_alive, set_running)
2780 (set_running, is_thread_state, any_running, is_executing)
2781 (set_executing, finish_thread_state, print_thread_info)
2782 (do_captured_thread_select): Adjust.
2786 Fix compatibility with gcc < 4.3 and non-gcc compilers.
2787 * amd64-tdep.c (amd64_skip_xmm_prologue): Convert 0b constants.
2794 * interps.c (struct interp) <interpreter_out>: Delete field.
2795 (interp_new): Remove the data and uiout parameters and adjust.
2796 (interp_set): Only set the current_uiout from the interpreter's
2797 uiout after initializing the interpreter. Adjust call to
2799 (interp_ui_out): Adjust to call procs->ui_out_proc.
2800 (interp_data, interp_name): New.
2801 * interps.h (interp_init_ftype): Add `self' parameter.
2802 (interp_ui_out_ftype): New typedef.
2803 (struct interp_procs) <ui_out_proc>: New method pointer.
2804 (interp_new): Remove the data and uiout parameters.
2805 (interp_data, interp_name): Declare.
2806 * tui/tui-interp.c (tui_init): Adjust prototype.
2808 (_initialize_tui_interp): Install tui_ui_out. Don't instanciate
2809 tui_out here. Adjust call to interp_new.
2810 * tui/tui-io.c (tui_initialize_io): Don't set current_uiout here.
2811 * cli/cli-interp.c (cli_interpreter_init): Adjust prototype.
2813 (_initialize_cli_interp): Install it. Adjust call to interp_new.
2814 * mi/mi-common.h (struct mi_interp) <uiout>: New field.
2815 * mi/mi-interp.c (mi_interpreter_init): Adjust prototype.
2816 Initialize mi->uiout depending on the mi_version as extracted from
2817 the interpreter's name.
2819 (_initialize_mi_interp): Install mi_ui_out. Adjust calls to
2820 interp_new. Don't allocate the ui_out's of the interpreters here.
2824 * solib.c (solib_used): New function.
2825 (update_solib_list, reload_shared_libraries_1): Check if objfile is used
2826 by another so_list object before freeing it.
2831 * mi/mi-cmd-stack.c (list_args_or_locals): Use enum for the parameter
2837 * amd64-tdep.c (amd64_skip_prologue): Move the XMM code to ...
2838 (amd64_skip_xmm_prologue): ... this new function. Describe its
2839 parameters. No longer use amd64_prologue_line_bug.
2840 * defs.h (producer_is_gcc_ge_4): New declaration.
2841 * dwarf2read.c (producer_is_gcc_ge_4): Move to utils.c.
2842 (process_full_comp_unit): Update its caller. Remove
2843 amd64_prologue_line_bug initialization.
2844 * symtab.h (struct symtab): Remove field amd64_prologue_line_bug.
2845 * utils.c (producer_is_gcc_ge_4): Moved here from dwarf2read.c.
2849 * linux-nat.h (enum resume_kind): New.
2850 (struct lwp_info) <last_resume_kind>: New field.
2851 * linux-nat.c (linux_child_follow_fork): Set last_resume_kind to
2852 resume_stop on the new lwp.
2853 (add_lwp): Set last_resume_kind as resume_continue by default.
2854 (lin_lwp_attach_lwp): Set last_resume_kind as resume_stop.
2855 (resume_lwp): New, factored out from resume_callback. Also check
2856 for pending status in lp->waitstatus.
2857 (resume_callback): Reimplement.
2858 (resume_clear_callback): Set last_resume_kind as resume_stop.
2859 (resume_set_callback): Set last_resume_kind as resume_continue.
2860 (linux_nat_resume, linux_handle_extended_wait): Set
2862 (running_callback): Also check lp->waitstatus for pending events.
2863 (select_singlestep_lwp_callback): Check that lp->last_resume_kind
2865 (stop_and_resume_callback): Don't re-resume if the core wanted the
2866 lwp stopped. Use resume_lwp instead of resume_callback. Avoid
2867 using an invalidated pointer.
2868 (linux_nat_filter_event): Don't discard SIGSTOPs as delayed
2869 SIGSTOPs if the core wanted the LWP to stop.
2870 (linux_nat_wait_1) Don't consume a pending SIGSTOP if the core
2871 wanted the lwp to stop. If the core wanted the lwp to stop, and
2872 the lwp stopped with a SIGSTOP, report a TARGET_SIGNAL_0 instead
2873 of TARGET_SIGNAL_STOP.
2874 (linux_nat_stop_lwp): Don't synchronously wait for the lwp to stop
2875 here. Instead, signal the lwp, and set the last_resume_kind to
2880 * linux-nat.c (lin_lwp_attach_lwp): Return 1 (ignore) instead of
2881 -1 (error), if the lwp exits right after attaching.
2885 * py-cmd.c: Some minor formatting fixes.
2886 (gdbpy_parse_command_name): Rename text arg to name, make const.
2887 All callers updated.
2888 * python-internal.h (gdbpy_parse_command_name): Update.
2890 * cli/cli-decode.c (add_cmd): Add comment.
2894 PR breakpoints/12435
2895 * amd64-tdep.c (amd64_skip_prologue): New variables start_pc_sal,
2896 next_sal, buf, offset and xmmreg. Advance PC if it sees the PR.
2897 * dwarf2read.c (process_full_comp_unit): Initialize
2898 amd64_prologue_line_bug.
2899 * symtab.h (struct symtab): New field amd64_prologue_line_bug.
2903 Fix TUI screen corruption.
2904 * utils.c (fputs_maybe_filtered): Replace !input_from_terminal_p by
2909 * findvar.c (read_var_value): Never return NULL, throw an error
2910 instead. Update the function comment. State symbol name in the error
2912 * python/py-frame.c (frapy_read_var): Remove handling of NULL from
2914 * stack.c (print_frame_args): Likewise.
2915 * valops.c (value_of_variable): Likewise.
2919 * stack.c (print_frame_args): New variable except. Wrap
2920 read_var_value and common_val_print into TRY_CATCH.
2924 * eval.c (evaluate_subexp_standard) <OP_THIS>: Update the value_of_this
2925 caller to value_of_this.
2926 * p-exp.y: Update the value_of_this caller to value_of_this_silent.
2928 * valops.c (value_of_this): Remove parameter complain and variable ret.
2929 Update function comment. Never return NULL by this code.
2930 (value_of_this_silent): New function.
2931 * value.h (value_of_this): Remove parameter complain.
2932 (value_of_this_silent): New declaration.
2936 * gdbthread.h (struct thread_info): Remove fields
2937 `stepping_through_solib_after_catch' and
2938 `stepping_through_solib_catchpoints'.
2939 * infrun.c (init_thread_stepping_state): Update.
2940 (process_event_stop_test, currently_stepping): Update.
2941 (currently_stepping_or_nexting_callback): Update.
2945 * gdbthread.h (struct thread_info): Comment on field
2946 `step_after_step_resume_breakpoint'.
2950 * remote.c (remote_console_output): Reindent.
2954 * frame.c (has_stack_frames): Check for currently selected
2959 * event-top.h (MAXPROMPTS, struct prompts): Delete.
2960 (set_async_annotation_level, set_async_prompt, pop_prompt)
2961 (push_prompt, new_async_prompt): Delete declarations.
2962 * top.h (get_prompt, set_prompt): Change prototype.
2963 (get_prefix, set_prefix, get_suffix, set_suffix): Delete
2965 * top.c (command_loop):
2966 (top_prompt): New global.
2967 (get_prefix, set_prefix, get_suffix, ): Delete.
2968 (get_prompt, set_prompt): Rewrite.
2969 (show_new_async_prompt): Rename to ...
2970 (show_prompt): ... this.
2971 (init_main): Adjust. Don't handle --annotate=2 here.
2972 * event-top.c (new_async_prompt): Delete.
2973 (the_prompts): Delete.
2974 (more_to_come): Make static.
2975 (display_gdb_prompt): Use top_level_prompt() to compute the top
2976 level prompt, and don't notify the before_prompt observers
2977 directly here. Always trick readline into not trying to display
2978 the prompt if sync_execution and displaying the primary prompt.
2979 If displaying a local/secondary prompt, always show it, even if
2980 sync_execution is set.
2981 (change_annotation_level): Delete.
2982 (top_level_prompt): New, based on change_annotation_level.
2983 (push_prompt, pop_prompt): Delete.
2984 (async_disable_stdin): No longer pushes prompt.
2985 (command_line_handler): No longer pushes or pops prompt. If more
2986 input is expected, call display_gdb_prompt with an explicit empty
2988 (async_stop_sig): Adjust.
2989 (set_async_annotation_level, set_async_prompt): Delete.
2990 * python/python.c (before_prompt_hook): Adjust.
2996 * infrun.c (fetch_inferior_event): Check if there's a selected
2997 thread before checking if the selected thread is executing.
3001 * inf-loop.c (execute_command): Don't check if the current thread
3002 if running before synchronously waiting for command completion.
3003 * infrun.c (fetch_inferior_event): Handle "set exec-done-display"
3005 (normal_stop): Call async_enable_stdin here.
3006 * inf-loop.c (inferior_event_handler): Don't call
3007 async_enable_stdin, nor handle "set exec-done-display" here.
3015 * NEWS: Change `7.3' into `7.3.1' in `Changes since GDB 7.3'.
3019 * NEWS: Add entry for OpenBSD/NetBSD build failure.
3023 * config/s390/s390.mh (NATDEPFILES): Add linux-procfs.o dependency.
3028 * event-top.c (cli_command_loop): Replace readline setup with
3029 direct call to display_gdb_prompt.
3030 (display_gdb_prompt): Do not call observer mechanism during
3031 synchronous execution.
3035 * linux-nat.c (in_pid_list_p): New.
3036 (linux_record_stopped_pid): Delete.
3037 (lin_lwp_attach_lwp): Check if PTRACE_ATTACH failed because we're
3038 already attached to the LWP. Return an indication if so.
3039 (linux_nat_filter_event): Adjust.
3040 * linux-thread-db.c (attach_thread): Handle lin_lwp_attach_lwp
3041 returning an indication to ignore this thread.
3045 * top.c: Include interps.h.
3046 (execute_command): If the target can async, but the interpreter is
3047 in sync mode, synchronously wait for the command to finish before
3049 (execute_command_to_string): Force the interpreter to sync mode.
3050 * infrun.c: Include interps.h.
3051 (fetch_inferior_event): Don't restore the prompt yet if the
3052 interpreter is in sync mode.
3053 * interps.c (interpreter_async): New global.
3054 * interps.h (interpreter_async): Declare.
3055 * inf-loop.c: Include interps.h.
3056 (inferior_event_handler): Don't print the language change or run
3057 breakpoint commands yet if the interpreter in is sync mode.
3058 * main.c (captured_command_loop): Flip the interpreter to async
3060 * cli/cli-script.c: Include interps.h.
3061 (execute_user_command, while_command, if_command): Force the
3062 interpreter to sync mode.
3063 * python/python.c: Include interps.h.
3064 (python_command, execute_gdb_command): Force the interpreter to
3069 * value.c (show_convenience): Catch errors thrown while printing
3070 each internal variable.
3071 * infrun.c (validate_siginfo_access): New function.
3072 (siginfo_value_read, siginfo_value_write): Call it.
3078 * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter
3083 * solib-dsbt.c (bfd_lookup_symbol): Removed.
3085 (enable_break2): Update caller.
3086 * solib-frv.c (bfd_lookup_symbol): Removed.
3088 (enable_break2): Update caller.
3089 * solib-pa64.c (bfd_lookup_symbol): Removed.
3091 * solib-svr4.c (bfd_lookup_symbol): Removed.
3092 (cmp_name_and_sec_flags): New.
3093 (enable_break): Update caller.
3094 * solib.c (gdb_bfd_lookup_symbol_from_symtab): New.
3095 (gdb_bfd_lookup_symbol_from_dyn_symtab): New.
3096 (gdb_bfd_lookup_symbol): New.
3097 * solib.h: Functions declarations.
3101 * Makefile.in (ALL_TARGET_OBS): Add tic6x-tdep.o tic6x-linux-tdep.o
3106 Fix TUI stepi on code without symbols.
3107 * tui/tui-stack.c (tui_show_frame_info): Remove error, set LOW for
3113 * mi/mi-cmd-stack.c (list_args_or_locals): Remove stb initialization
3114 and the static keyword.
3115 * mi/mi-cmd-target.c (mi_cmd_target_file_get, mi_cmd_target_file_put):
3116 Make prefix an array.
3117 * mi/mi-cmd-target.c (mi_cmd_target_file_delete): Likewise.
3118 * mi/mi-main.c (get_register): Remove stb initialization and the static
3123 Code cleanup - make mi_opt const.
3124 * mi/mi-cmd-break.c (mi_cmd_break_insert, mi_cmd_break_watch): Make
3126 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Likewise.
3127 * mi/mi-cmd-env.c (mi_cmd_env_path): Likewise.
3128 (mi_cmd_env_dir): Likewise.
3129 * mi/mi-cmd-target.c (mi_cmd_target_file_get): Likewise.
3130 (mi_cmd_target_file_put): Likewise.
3131 * mi/mi-cmd-target.c (mi_cmd_target_file_delete): Likewise.
3132 * mi/mi-cmd-var.c (mi_cmd_var_evaluate_expression): Likewise.
3133 * mi/mi-getopt.c (mi_getopt): Make opts and opt const.
3134 (mi_valid_noargs): Make opts const.
3135 * mi/mi-getopt.h (mi_getopt): Make opts and opt const.
3136 * mi/mi-main.c (mi_cmd_list_thread_groups): Make opts const.
3137 (mi_cmd_data_read_memory): Likewise.
3138 (mi_cmd_data_read_memory_bytes): Likewise.
3139 (mi_cmd_data_write_memory): Likewise.
3143 * solib-sunos.c (allocate_rt_common_objfile): Add missing arguments to
3144 bcache_xmalloc, replace bcache_xmalloc with call to
3145 psymbol_bcache_init for psymbol_cache.
3146 * symfile.c (reread_symbols): Remove extra calls to bcache_xmalloc.
3150 * inf-loop.c (inferior_event_handler): Add exception_print in
3155 * breakpoint.c (bpstat_do_actions): New variable cleanup_if_error, call
3156 make_bpstat_clear_actions_cleanup and discard_cleanups for it.
3157 * defs.h (make_bpstat_clear_actions_cleanup): New declaration.
3158 * exceptions.c (throw_exception): Remove the bpstat_clear_actions call.
3159 * inf-loop.c (inferior_event_handler): New variable cleanup_if_error,
3160 call make_bpstat_clear_actions_cleanup and discard_cleanups for it.
3161 Call bpstat_clear_actions for failed fetch_inferior_event_wrapper.
3162 * infrun.c (fetch_inferior_event): Call
3163 make_bpstat_clear_actions_cleanup.
3164 * top.c (execute_command): New variable cleanup_if_error, call
3165 make_bpstat_clear_actions_cleanup and discard_cleanups for it.
3166 * utils.c (do_bpstat_clear_actions_cleanup)
3167 (make_bpstat_clear_actions_cleanup): New functions.
3171 * linux-nat.c (linux_child_follow_fork): Don't set lp->resumed on
3172 either the parent or the child forks. Rename a couple locals.
3176 * linux-nat.c (wait_lwp): Avoid assuming errno is preserved by a
3177 library call. Avoid reading the `status' local if all waitpid
3182 * common/linux-osdata.c (get_cores_used_by_process): Don't assume
3183 opening /proc/PID/task always succeeds.
3187 * linespec.c (symtab_from_filename): Check for the end of string.
3192 * varobj.c (cplus_describe_child): Add the keyword
3193 'class' to the output of the method when dealing
3194 with a cast to a base class.
3198 No functionality change.
3199 * breakpoint.c (bpstat_clear_actions): Remove the BS parameter, make
3200 function comment a reference, new variables tp and bs, move here code
3201 from throw_exception.
3202 * breakpoint.h (bpstat_clear_actions): Remove the BS parameter,
3203 describe it in the comment.
3204 * exceptions.c (throw_exception): Remove variable tp, move the code for
3205 bpstat_clear_actions to bpstat_clear_actions.
3209 * linux-nat.h (linux_proc_get_tgid): Remove declaration.
3210 * linux-nat.c: Include linux-procfs.h.
3211 (linux_proc_get_tgid): Move to ...
3212 * common/linux-procfs.c: ... here. New file.
3213 * common/linux-procfs.h: New file.
3214 * linux-thread-db.c: Include linux-procfs.h.
3215 * Makefile.in: Update dependencies.
3216 * config/alpha/alpha-linux.mh: Add linux-procfs.o dependency.
3217 * config/arm/linux.mh: Likewise.
3218 * config/i386/linux.mh: Likewise.
3219 * config/i386/linux64.mh: Likewise.
3220 * config/ia64/linux.mh: Likewise.
3221 * config/m32r/linux.mh: Likewise.
3222 * config/m68k/linux.mh: Likewise.
3223 * config/mips/linux.mh: Likewise.
3224 * config/pa/linux.mh: Likewise.
3225 * config/pa/linux.mh: Likewise.
3226 * config/powerpc/linux.mh: Likewise.
3227 * config/powerpc/ppc64-linux.mh: Likewise.
3228 * config/powerpc/spu-linux.mh: Likewise.
3229 * config/sparc/linux.mh: Likewise.
3230 * config/sparc/linux64.mh: Likewise.
3231 * config/xtensa/linux.mh: Likewise.
3235 * tracepoint.c (cond_string_is_same): New function.
3236 (find_matching_tracepoint): Add condition check
3237 by cond_string_is_same.
3241 Fix build error in Darwin port.
3242 * darwin-nat-info.c (darwin_debug_regions_recurse): New variable uiout.
3247 * breakpoint.c (bpstat_clear_actions): Remove clearing of commands_left.
3248 (command_line_is_silent): New function.
3249 (bpstat_do_actions_1): No longer use commands_left, use
3250 command_line_is_silent for commands.
3251 (bpstat_alloc): Remove clearing of commands_left.
3252 (bpstat_stop_status): Remove initialization of commands_left, use
3253 command_line_is_silent.
3254 * breakpoint.h (struct bpstats): Remove commands_left.
3259 * cp-name-parser.y (struct demangle_info): Remove unused
3262 (allocate_info): Change return type to struct demangle_info *.
3263 Always allocate a new demangle_info.
3264 Remove unused PREV pointer.
3265 (cp_new_demangle_parse_info): New function.
3266 (cp_demangled_name_parse_free): New function.
3267 (do_demangled_name_parse_free_cleanup): New function.
3268 (make_cleanup_cp_demangled_name_parse_free): New function.
3269 (cp_demangled_name_to_comp): Change return type to
3270 struct demangle_parse_info *.
3271 Allocate a new storage for each call.
3272 (main): Update usage for cp_demangled_name_to_comp
3274 * cp-support.h (struct demangle_parse_info): New structure.
3275 (cp_demangled_name_to_comp): Update API change for
3277 (cp_new_demangle_parse_info): Declare.
3278 (make_cleanup_cp_demangled_name_parse_free): New declaration.
3279 (cp_demangled_name_parse_free): Declare.
3280 * cp-support.c (cp_canonicalize_string): Update API
3281 change for cp_demangled_name_to_comp.
3282 (mangled_name_to_comp): Likewise.
3283 Return struct demangle_parse_info, too.
3284 (cp_class_name_from_physname): Update mangled_name_to_comp
3286 (method_name_from_physname): Likewise.
3287 (cp_func_name): Update API change for cp_demangled_name_to_comp.
3288 (cp_remove_params): Likewise.
3289 * python/py-type.c (typy_legacy_template_argument): Likewise.
3291 * cp-support.h (cp_canonicalize_string_no_typedefs): Declare.
3292 (cp_merge_demangle_parse_infos): Declare.
3293 * cp-support.c (ignore_typedefs): New file global.
3294 (copy_string_to_obstack): New function.
3295 (inspect_type): New function.
3296 (replace_typedefs): New function.
3297 (replace_typedefs_qualified_name): New function.
3298 (cp_canonicalize_string_no_typedefs): New function.
3299 * cp-name-parser.y (cp_merge_demangle_parse_infos): New function.
3300 (cp_new_demangle__parse_info): Allocate and initialize the obstack.
3301 * linespec.c (find_methods): Use cp_canonicalize_string_no_typedefs
3302 instead of cp_canonicalize_string.
3303 (find_method): Likewise.
3304 (decode_compound): Before looking up the name, call
3305 cp_canonicalize_string_no_typedefs.
3306 (decode_variable): Likewise.
3312 * python/lib/gdb/prompt.py: New file.
3313 * python/lib/gdb/command/prompt.py: New file.
3314 * NEWS: Document set extended-prompt and gdb.prompt library
3318 * tic6x-linux-tdep.c: Move const arrays definition from here...
3319 * tic6x-tdep.c: to here ...
3323 * NEWS: New port to Texas Instruments TMS320C6x.
3329 * configure.tgt: Handle tic6x-*-*linux and tic6x-*-*.
3330 * solib-dsbt.c: New file. Support DSBT shared object.
3331 * tic6x-linux-tdep.c: New file.
3332 * tic6x-tdep.c: New file.
3333 * tic6x-tdep.h: New file.
3338 * remote.c (PACKET_qXfer_fdpic): New enum value.
3339 (remote_protocol_features): Add qXfer:fdpic:read packet.
3340 (remote_xfer_partial): Support TARGET_OBJECT_FDPIC.
3341 (_initialize_remote): Add set/show remote read-fdpic-loadmap command.
3342 * target.h (enum target_object): Add TARGET_OBJECT_FDPIC.
3346 Target description for tic6x.
3347 * features/Makefile (WHICH): Add tic6x-c64xp tic6x-c64x tic6x-c62x
3348 tic6x-c64xp-linux tic6x-c64x-linux and tic6x-c62x-linux.
3349 * features/tic6x-c6xp.xml, features/tic6x-core.xml: New.
3350 * features/tic6x-gp.xml, features/tic6x-c62x.xml: New.
3351 * features/tic6x-c64x.xml, features/tic6x-c64xp.xml: New.
3352 * features/tic6x-c62x-linux.xml, features/tic6x-c64x-linux.xml: New.
3353 * features/tic6x-c64xp-linux.xml: New.
3354 * features/tic6x-c64xp.c, features/tic6x-c64x.c: Generated.
3355 * features/tic6x-c62x.c, features/tic6x-c64xp-linux.c: Generated.
3356 * features/tic6x-c64x-linux.c, features/tic6x-c62x-linux.c: Generated.
3357 * regformats/tic6x-c62x.dat, regformats/tic6x-c64x.dat: Generated.
3358 * regformats/tic6x-c64xp.dat,
3359 regformats/tic6x-c62x-linux.dat: Generated.
3360 * regformats/tic6x-c64x-linux.dat,
3361 regformats/tic6x-c64xp-linux.dat: Generated.
3362 * config/djgpp/fnchange.lst: Add features/tic6x-*.xml and
3363 features/tic6x-*.c files.
3364 Add regformats/tic6x-*.dat files.
3368 * NEWS: Mention new "type" attribute of python gdb.Symbol objects.
3369 * python/py-symbol.c (sympy_get_type): New function.
3370 (symbol_object_getset): Add "type".
3376 * tui/tui-regs.c (tui_show_register_group): Skip registers with an
3378 (tui_show_register_group): Don't store a byte buffer in the data
3380 (tui_register_format): Skip registers with an empty name.
3381 (tui_get_register): Store a struct value in the data element's
3382 value field instead of a byte buffer holding the raw register
3383 contents. Account for optimized-out and unavailable registers
3384 when comparing register contents.
3388 * printcmd.c (current_display_number): Update comment.
3389 (disable_current_display_cleanup): Delete.
3390 (do_one_display): Use make_cleanup_restore_integer. Gracefully
3391 catch errors thrown while evaluating and printing the display.
3395 * mi/mi-cmd-break.c (mi_cmd_break_passcount): Fix typo.
3399 * elfread.c (elf_symtab_read): Rework comments.
3400 * maint.c (maintenance_command): Ditto.
3401 * somread.c (som_symtab_read): Ditto.
3402 * solib.c (solib_find, solib_map_sections, update_solib_list)
3403 (solib_add, info_sharedlibrary_command, solib_name_from_address)
3404 (solib_create_inferior_hook, in_solib_dynsym_resolve_code)
3405 (sharedlibrary_command, no_shared_libraries): Ditto.
3406 * solib-irix.c (locate_base, disable_break, enable_break)
3407 (irix_solib_create_inferior_hook, irix_solib_create_inferior_hook)
3408 (irix_current_sos, irix_open_symbol_file_object)
3409 (irix_special_symbol_handling): Ditto.
3410 * solib-sunos.c (locate_base, first_link_map_member)
3411 (sunos_current_sos, disable_break, enable_break)
3412 (sunos_special_symbol_handling, sunos_solib_create_inferior_hook):
3414 * solib-svr4.c (bfd_lookup_symbol, elf_locate_base, locate_base)
3415 (open_symbol_file_object, svr4_current_sos, enable_break)
3416 (svr4_special_symbol_handling, svr4_solib_create_inferior_hook):
3418 * solib-frv.c (bfd_lookup_symbol, open_symbol_file_object)
3419 (frv_current_sos, enable_break, frv_special_symbol_handling)
3420 (frv_solib_create_inferior_hook): Ditto.
3421 * solist.h (struct target_so_ops): Extend the comments of the
3422 special_symbol_handling, current_sos and open_symbol_file_object
3427 * python/lib/gdb/__init__.py: Auto-load files in command and
3428 function directories.
3429 * python/python.c (finish_python_initialization): Use
3431 * python/lib/gdb/command/pretty_printers.py: Self register
3433 * NEWS: Document auto-loading.
3437 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full) <DWARF_VALUE_STACK>
3438 (dwarf2_evaluate_loc_desc_full) <DWARF_VALUE_LITERAL>: New variable
3439 objfile_gdbarch. Fix BFD_ENDIAN_BIG case.
3443 * breakpoint.c (clean_up_filters): Remove.
3444 (catch_syscall_split_args): Use VEC_cleanup.
3448 * cp-name-parser.y (xfree): Wrap the name free by CONCAT2.
3449 (main): Uncomment "Demangling error\n".
3453 * solib-target.c (segment_attributes): Make them static.
3454 (section_attributes, library_children, library_attributes): Likewise.
3455 (library_list_children, library_list_attributes): Likesise.
3456 (library_list_elements): Likewise.
3460 * exceptions.c (throw_exception): Don't disable the current
3462 * printcmd.c (disable_current_display_cleanup): New function.
3463 (do_one_display): Install a cleanup to disable the current display
3464 if doing the display throws.
3468 * python/py-breakpoint.c (gdbpy_initialize_breakpoints): Move the
3469 initialization of the tp_new member to the corresponding
3470 gdbpy_initialize_* function.
3471 * python/py-cmd.c (gdbpy_initialize_commands): Likewise.
3472 * python/py-frame.c (gdbpy_initialize_frames): Likewise.
3473 * python/py-function.c (gdbpy_initialize_functions): Likewise.
3474 * python/py-inferior.c (gdbpy_initialize_inferior): Likewise.
3475 * python/py-param.c (gdbpy_initialize_parameters): Likewise.
3479 * spu-tdep.c (info_spu_event_command, info_spu_signal_command)
3480 (info_spu_mailbox_list, info_spu_mailbox_command, info_spu_dma_cmdlist)
3481 (info_spu_dma_command, info_spu_proxydma_command): Rename uiout
3482 references to current_uiout.
3486 * event-loop.c (gdb_do_one_event): Remove `data' parameter.
3487 (start_event_loop): Use TRY_CATCH instead of catch_errors.
3488 * event-loop.h (gdb_do_one_event): Remove `data' parameter.
3489 * top.c (gdb_readline_wrapper): Adjust.
3490 * tui/tui-interp.c (tui_command_loop):
3491 (_initialize_tui_interp): Don't install it.
3495 * ui-out.h (uiout): Rename to ...
3496 (current_uiout): ... this.
3497 * ui-out.c (uiout): Rename to ...
3498 (current_uiout): ... this.
3499 * ada-lang.c (print_it_exception, print_one_exception)
3500 (print_mention_exception): Adjust.
3501 * breakpoint.c (watchpoint_check): Adjust.
3502 (print_breakpoint_location, print_one_breakpoint, breakpoint_1)
3503 (default_collect_info, watchpoints_info, print_one_catch_fork)
3504 (print_one_catch_vfork, print_one_catch_syscall)
3505 (print_one_catch_exec, mention, print_it_ranged_breakpoint)
3506 (print_one_ranged_breakpoint, print_mention_ranged_breakpoint)
3507 (print_it_watchpoint, print_mention_watchpoint)
3508 (print_it_masked_watchpoint, print_mention_masked_watchpoint)
3509 (print_it_exception_catchpoint, print_one_exception_catchpoint)
3510 (print_mention_exception_catchpoint, say_where, bkpt_print_it)
3511 (bkpt_print_mention, momentary_bkpt_print_it)
3512 (tracepoint_print_mention, update_static_tracepoint)
3513 (tracepoints_info, save_breakpoints): Adjust.
3514 * cli-out.c (field_separator): Adjust.
3515 * cp-abi.c (list_cp_abis, show_cp_abi_cmd): Adjust.
3516 * exceptions.c (catch_exceptions_with_msg, catch_errors): Adjust.
3517 * frame.c (get_current_frame): Adjust.
3518 * infcmd.c (run_command_1, print_return_value): Adjust.
3519 * inferior.c (inferior_command, info_inferiors_command): Adjust.
3520 * infrun.c (print_end_stepping_range_reason): Adjust.
3521 (print_signal_exited_reason, print_exited_reason): Adjust.
3522 (print_signal_received_reason, print_no_history_reason): Adjust.
3523 * interps.c (interp_set): Adjust.
3524 * osdata.c (info_osdata_command): Adjust.
3525 * progspace.c (maintenance_info_program_spaces_command): Adjust.
3526 * remote-fileio.c (remote_fileio_request): Adjust.
3527 * remote.c (show_remote_cmd): Adjust.
3528 * solib.c (info_sharedlibrary_command): Adjust.
3529 * source.c (print_source_lines_base): Adjust.
3530 * stack.c (print_stack_frame): Adjust.
3531 (do_gdb_disassembly, print_frame_info, print_frame): Adjust.
3532 * symfile-mem.c (add_vsyscall_page): Adjust.
3533 * symfile.c (load_progress, generic_load)
3534 (print_transfer_performance): Adjust.
3535 * thread.c (info_threads_command, restore_selected_frame)
3536 (thread_command): Adjust.
3537 * top.c (make_cleanup_restore_ui_file): Adjust.
3538 * tracepoint.c (tvariables_info_1, trace_status_mi, tfind_1)
3539 (print_one_static_tracepoint_marker): Adjust.
3540 * cli/cli-cmds.c (print_disassembly): Adjust.
3541 * cli/cli-decode.c (print_doc_line): Adjust.
3542 * cli/cli-interp.c (safe_execute_command): Adjust.
3543 * cli/cli-logging.c (set_logging_redirect, pop_output_files)
3544 (handle_redirections): Adjust.
3545 * cli/cli-script.c (show_user_1): Adjust.
3546 * cli/cli-setshow.c (do_setshow_command, cmd_show_list): Adjust.
3547 * mi/mi-cmd-break.c (breakpoint_notify): Adjust.
3548 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Adjust.
3549 * mi/mi-cmd-env.c (mi_cmd_env_pwd, mi_cmd_env_path)
3550 (mi_cmd_env_dir): Adjust.
3551 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file)
3552 (print_partial_file_name, mi_cmd_file_list_exec_source_files): Adjust.
3553 * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames)
3554 (mi_cmd_stack_info_depth, mi_cmd_stack_list_args)
3555 (list_args_or_locals): Adjust.
3556 * mi/mi-cmd-var.c (print_varobj, mi_cmd_var_create)
3557 (mi_cmd_var_delete, mi_cmd_var_set_format, mi_cmd_var_set_frozen)
3558 (mi_cmd_var_show_format, mi_cmd_var_info_num_children)
3559 (mi_cmd_var_list_children, mi_cmd_var_info_type)
3560 (mi_cmd_var_info_path_expression, mi_cmd_var_info_expression)
3561 (mi_cmd_var_show_attributes, mi_cmd_var_evaluate_expression)
3562 (mi_cmd_var_assign, mi_cmd_var_update, varobj_update_one): Adjust.
3563 * mi/mi-interp.c (mi_on_normal_stop): Adjust.
3564 * mi/mi-main.c (mi_cmd_gdb_exit, mi_cmd_thread_select)
3565 (mi_cmd_thread_list_ids, mi_cmd_thread_info, print_one_inferior)
3566 (list_available_thread_groups, mi_cmd_list_thread_groups)
3567 (mi_cmd_data_list_register_names)
3568 (mi_cmd_data_list_changed_registers)
3569 (mi_cmd_data_list_register_values, get_register)
3570 (mi_cmd_data_evaluate_expression, mi_cmd_data_read_memory)
3571 (mi_cmd_data_read_memory_bytes, mi_cmd_list_features)
3572 (mi_cmd_list_target_features, mi_cmd_add_inferior)
3573 (mi_execute_command, mi_load_progress): Adjust.
3574 * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Adjust.
3575 * python/py-auto-load.c (print_script, info_auto_load_scripts):
3577 * python/py-breakpoint.c (bppy_get_commands): Adjust.
3578 * tui/tui-interp.c (tui_command_loop): Adjust.
3579 * tui/tui-io.c (tui_setup_io, tui_initialize_io): Adjust.
3583 * exceptions.c (struct catcher): Remove saved_uiout field.
3584 (exceptions_state_mc_init): Remove the `func_uiout' parameter, and
3585 no longer save/resvore the global ui_out builder.
3586 (catch_exceptions_with_msg): Save/override/restore the global
3587 ui_out builder manually instead of relying on TRY_CATCH to do it.
3588 (catch_errors): Save/restore the global ui_out builder manually
3589 instead of relying on TRY_CATCH to do it.
3590 * exceptions.h (exceptions_state_mc_init): Remove the `func_uiout'
3592 (TRY_CATCH): Adjust.
3593 * cli/cli-interp.c (safe_execute_command): Save/override/restore
3594 the global ui_out builder manually instead of relying on TRY_CATCH
3599 * breakpoint.c (update_global_location_list): Ensure
3600 invariant 'first loc marked not duplicated and inserted,
3601 following locs marked duplicated/not inserted' is respected
3602 for multiple locations at the same address.
3603 (unduplicated_should_be_inserted) New function.
3604 (swap_insertion) New function.
3608 * stack.c (print_frame_arguments_choices): Comment typo fix.
3614 * breakpoint.c (insert_bp_location): Remove disabled_breaks
3615 argument. Update callers.
3620 * doublest.c (convert_doublest_to_floatformat): Pass correct
3621 mantissa length to put_field.
3625 * stack.c (do_gdb_disassembly): Use RETURN_MASK_ERROR, simplify the
3626 exception_print code path.
3627 (backtrace_command): Remove variable e. Protect arg by make_cleanup in
3628 advance. Simplify memset. Remove TRY_CATCH. Remove explicit xfree.
3629 (backtrace_full_command): Remove variable e. Remove TRY_CATCH.
3634 * stack.c (struct print_stack_frame_args, print_stack_frame_stub):
3635 Remove, merge them into ...
3636 (print_stack_frame): ... here with a TRY_CATCH. New variable e, remove
3637 variable args and its initialization.
3638 (struct print_args_args, print_args_stub): Remove, merge them into
3640 (struct gdb_disassembly_stub_args, gdb_disassembly_stub): Remove, merge
3642 (do_gdb_disassembly): ... here. Remove variable args and its
3644 (print_frame): Remove variable args and its initialization, new
3645 variable gdbarch and numargs (from print_args_stub), inline here
3646 print_args_stub with a TRY_CATCH.
3647 (struct backtrace_command_args, backtrace_command_stub): Remove, merge
3649 (backtrace_command, backtrace_full_command): ... here with a TRY_CATCH.
3650 New variable e, remove variable btargs and its initialization.
3654 * darwin-nat.c (darwin_decode_exception_message): Adjust assertion.
3658 * breakpoint.c (insert_bp_location): Document return value.
3659 (insert_breakpoint_locations): Fix documentation.
3660 (remove_breakpoints): Add documentation.
3664 * breakpoint.c (insert_bp_location): Remove disabled_breaks
3665 argument. Update callers.
3669 * stack.c (print_frame_info): Comment typo fix.
3673 * MAINTAINERS (Write After Approval): Add myself to the list.
3677 * solib-target.c: Use DEF_VEC_I, not DEF_VEC_O.
3678 (library_list_start_segment): Update.
3679 (library_list_start_section): Update.
3683 * varobj.c (value_get_print_value): Move hint check later into the
3684 function. Comment function. Free thevalue before reusing it.
3689 * eval.c (evaluate_subexp_standard): Remove not_lval from all calls of
3691 * valops.c (value_one): Remove parameter lv. Do not pass it to itself.
3692 Assert the result kind.
3693 * value.h (value_one): Remove parameter lv.
3697 Fix crash on lval_computed values.
3698 * valops.c (value_zero): Use not_lval for lval_computed.
3702 * Makefile.in (HFILES_NO_SRCDIR): Add 'common' prefix for
3703 gdb_assert.h, gdb_locale.h, gdb_dirent.h.
3707 * typeprint.c (_initialize_typeprint): Extend the help of "whatis" and
3708 "ptype" by their typedefs difference.
3712 * dwarf2expr.c (ctx_no_read_reg): New function.
3713 * dwarf2expr.h (ctx_no_read_reg): New declaration.
3714 * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove.
3715 (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New.
3716 (decode_locdesc): Replace by a caller of dwarf_expr_eval.
3720 * dwarf2-frame.c (no_get_frame_base, no_get_frame_cfa, no_get_frame_pc)
3721 (no_get_tls_address, no_dwarf_call, no_base_type): Move to the other
3723 (dwarf2_frame_ctx_funcs): Reference the renamed functions.
3724 * dwarf2expr.c (ctx_no_get_frame_base, ctx_no_get_frame_cfa)
3725 (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call)
3726 (ctx_no_get_base_type): Move the functions here.
3727 * dwarf2expr.h (ctx_no_get_frame_base, ctx_no_get_frame_cfa)
3728 (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call)
3729 (ctx_no_get_base_type): New declarations.
3733 * xcoffread.c (dwarf2_xcoff_names): Add 'macro' and 'sentinel'
3735 * symfile.h (struct dwarf2_debug_sections) <sentinel>: New field.
3736 * dwarf2read.c (dwarf2_elf_names): Add sentinel entry.
3740 * cli/cli-dump.c (dump_binary_file): Change parameter type to
3742 (dump_bfd_file): Likewise.
3746 * remote.c (remote_region_ok_for_hw_watchpoint): New function.
3747 (remote_hw_watchpoint_length_limit): New variable.
3748 (_initialize_remote) add set,show cmds for this new variable.
3749 * gdb.texinfo: document these new commands.
3750 * NEWS: Mention these new commands.
3754 * breakpoint.c (works_in_software_mode_watchpoint): Also return
3755 true for software watchpoints.
3763 * symfile.h (struct dwarf2_debug_sections) <macro>: New field.
3764 * dwarf2read.c (read_indirect_string_at_offset): New function.
3765 (read_indirect_string): Use it.
3766 (dwarf_decode_macro_bytes): New function, taken from
3767 dwarf_decode_macros. Handle DW_MACRO_GNU_*.
3768 (dwarf_decode_macros): Use it. handle DW_MACRO_GNU_*.
3769 (dwarf_parse_macro_header, skip_form_bytes, skip_unknown_opcode):
3771 (struct dwarf2_per_objfile) <macro>: New field.
3772 (dwarf2_elf_names): Add .debug_macro.
3773 (dwarf2_macros_too_long_complaint): Add 'section' argument.
3774 (dwarf2_locate_sections): Handle new section.
3775 (read_file_scope): Handle DW_AT_GNU_macros.
3776 (dwarf2_per_objfile_free): Unmap the .debug_macro section.
3780 * NEWS: Mention dcache configuration.
3781 * dcache.c (dcache_set_list, dcache_show_list): New variables.
3782 (dcache_size, dcache_line_size): New variables.
3783 (LINE_SIZE_MASK, XFORM, MASK): Adjust.
3784 (struct dcache_block): Make it expandable.
3785 (struct dcache_struct): New field.
3786 (dcache_invalidate): Discard freelist upon dcache_line_size changes.
3787 (dcache_hit, dcache_alloc, dcache_peek_byte): Adjust.
3788 (dcache_poke_byte, dcache_print_line): Adjust.
3789 (set_dcache_size, set_dcache_line_size): New functions.
3790 (set_dcache_command, show_dcache_command): New functions.
3791 (_initialize_dcache): Add new commands.
3795 * progspace.h (struct program_space): Add solib_add_generation.
3796 * infcmd.c (post_create_inferior): Only call solib_add if not
3798 * solib.c (solib_add): Increment solib_add_generation.
3802 Fix implicit pointer offsets.
3803 * dwarf2loc.c (indirect_pieced_value): Comment byte_offset. Use also
3808 * ada-lang.c (ada_exception_breakpoint_ops): Make return type
3810 (ada_exception_sal): Make 'ops' const.
3811 (ada_decode_exception_location): Likewise.
3812 (ada_decode_assert_location): Likewise.
3813 (catch_assert_command): Update.
3814 (catch_ada_exception_command): Update.
3815 (create_ada_exception_catchpoint): Make 'ops' const.
3816 * breakpoint.c (set_raw_breakpoint_without_location)
3817 (set_raw_breakpoint, momentary_breakpoint_from_master): Make 'ops'
3819 (create_internal_breakpoint): Update.
3820 (init_raw_breakpoint_without_location): Make 'ops' const.
3821 (init_raw_breakpoint, init_catchpoint)
3822 (create_fork_vfork_event_catchpoint)
3823 (create_syscall_event_catchpoint, init_breakpoint_sal)
3824 (create_breakpoint_sal, create_breakpoints_sal)
3825 (create_breakpoint, init_ada_exception_breakpoint): Likewise.
3826 * breakpoint.h (struct breakpoint) <ops>: Now const.
3827 (init_ada_exception_breakpoint, create_breakpoint): Make 'ops'
3832 * linux-thread-db.c (thread_from_lwp): Initialize th.th_unique.
3836 * breakpoint.h (print_recreate_thread): Declare.
3837 (struct breakpoint): Move step_count, pass_count,
3838 number_on_target, static_trace_marker_id,
3839 static_trace_marker_id_idx ...
3840 (struct tracepoint): ... to this new struct.
3841 (get_tracepoint, get_tracepoint_by_number_on_target)
3842 (get_tracepoint_by_number): Change return type to struct
3844 * breakpoint.c (is_tracepoint_type): New, factored out from
3846 (is_tracepoint): Adjust.
3847 (print_one_breakpoint_location): Cast to struct tracepoint as
3848 necessary, and adjust.
3849 (print_recreate_catch_fork, print_recreate_catch_vfork)
3850 (print_recreate_catch_syscall, print_recreate_catch_exec): Call
3851 print_recreate_thread.
3852 (init_breakpoint_sal): New, factored out from
3853 create_breakpoint_sal.
3854 (create_breakpoint_sal): Reimplement.
3855 (create_breakpoint): Allocate a struct tracecepoint if the caller
3856 wanted a tracepoint. Use init_breakpoint_sal and
3858 (print_recreate_ranged_breakpoint, print_recreate_watchpoint)
3859 (print_recreate_masked_watchpoint)
3860 (print_recreate_exception_catchpoint): Call print_recreate_thread.
3861 (tracepoint_print_one_detail): Adjust.
3862 (tracepoint_print_recreate): Adjust. Call print_recreate_thread.
3863 Dump the pass count here.
3864 (update_static_tracepoint): Adjust.
3865 (addr_string_to_sals): Adjust.
3866 (create_tracepoint_from_upload): Adjust. Change return type to
3867 struct tracepoint pointer.
3868 (trace_pass_set_count): Change parameter type to struct tracepoint
3869 pointer, and adjust.
3870 (trace_pass_command): Adjust.
3871 (get_tracepoint, get_tracepoint_by_number_on_target)
3872 (get_tracepoint_by_number): Change return type to struct
3873 tracepoint pointer, and adjust.
3874 (print_recreate_thread): New, factored out from save_breakpoints.
3875 (save_breakpoints): Don't print thread and task and passcount
3877 * remote.c (remote_download_tracepoint): Adjust.
3878 * tracepoint.c (trace_actions_command, validate_actionline)
3879 (start_tracing, tfind_1, trace_find_tracepoint_command)
3880 (trace_dump_command): Adjust.
3881 (find_matching_tracepoint): Change return type to struct
3882 tracepoint pointer, and adjust.
3883 (merge_uploaded_tracepoints, tfile_get_traceframe_address)
3884 (tfile_trace_find, tfile_fetch_registers): Adjust.
3885 * tracepoint.h (create_tracepoint_from_upload): Change return type
3886 to struct tracepoint pointer.
3887 * ada-lang.c (print_recreate_exception): Call
3888 print_recreate_thread.
3889 * mi/mi-cmd-break.c (mi_cmd_break_passcount): Adjust.
3893 * breakpoint.h (struct breakpoint): Move ops as first field. Move
3894 exp_string, exp_string_reparse, exp, exp_valid_block, cond_exp,
3895 cond_exp_valid_block, val, val_valid, watchpoint_frame,
3896 watchpoint_thread, watchpoint_triggered ...
3897 (struct watchpoint): ... to this new struct.
3898 (is_watchpoint): Declare.
3899 (install_breakpoint): Add new `internal' parameter.
3900 * breakpoint.c (is_watchpoint): Delete declaration.
3901 (set_breakpoint_condition): Handle watchpoints.
3902 (is_watchpoint): Make public.
3903 (watchpoint_in_thread_scope): Change parameter type to struct
3905 (watchpoint_del_at_next_stop): Change parameter type to struct
3906 watchpoint. Remove assertion. Adjust.
3907 (update_watchpoint): Ditto.
3908 (insert_breakpoints, breakpoint_init_inferior)
3909 (watchpoints_triggered, watchpoint_check)
3910 (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions)
3911 (bpstat_stop_status, print_one_breakpoint_location)
3912 (print_one_breakpoint_location, watchpoint_locations_match): Cast
3913 to struct watchpoint as necessary, and adjust.
3914 (install_breakpoint): Add `internal' argument. If true, don't
3915 mention the new breakpoint. Use set_breakpoint_number.
3916 (create_fork_vfork_event_catchpoint)
3917 (create_syscall_event_catchpoint): Adjust.
3918 (dtor_watchpoint): New.
3919 (re_set_watchpoint, insert_watchpoint, remove_watchpoint)
3920 (breakpoint_hit_watchpoint, resources_needed_watchpoint)
3921 (print_it_watchpoint, print_mention_watchpoint)
3922 (print_recreate_watchpoint, insert_masked_watchpoint)
3923 (remove_masked_watchpoint, resources_needed_masked_watchpoint)
3924 (print_one_detail_masked_watchpoint)
3925 (print_mention_masked_watchpoint)
3926 (print_recreate_masked_watchpoint): Cast to struct watchpoint as
3927 necessary, and adjust.
3928 (watch_command_1): Allocate and initialize a struct watchpoint
3929 instead of a struct breakpoint. Use install_breakpoint.
3930 (catch_exec_command_1): Adjust.
3931 (base_breakpoint_dtor): Delete accesses to watchpoint specific
3933 (delete_breakpoint, enable_breakpoint_disp)
3934 (invalidate_bp_value_on_memory_change): Cast to struct watchpoint
3935 as necessary, and adjust.
3936 (initialize_breakpoint_ops): Install dtor_watchpoint as
3937 watchpoints' dtor method.
3938 * ada-lang.c (create_ada_exception_catchpoint): Adjust.
3939 * python/py-breakpoint.c (bppy_get_expression): Use is_watchpoint.
3940 to struct watchpoint as necessary, and adjust.
3944 * ada-lang.c (dtor_exception, re_set_exception): Indirect through
3945 the the base class ops table.
3946 (catch_exception_breakpoint_ops)
3947 (catch_exception_unhandled_breakpoint_ops)
3948 (catch_assert_breakpoint_ops): Don't statically initialize.
3949 (initialize_ada_catchpoint_ops): New.
3950 (_initialize_ada_language): Call it.
3951 * breakpoint.c (base_breakpoint_ops, bkpt_base_breakpoint_ops)
3952 (bkpt_breakpoint_ops): Forward declare.
3953 (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops)
3954 (catch_syscall_breakpoint_ops, catch_exec_breakpoint_ops)
3955 (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
3956 (masked_watchpoint_breakpoint_ops)
3957 (gnu_v3_exception_catchpoint_ops): Don't statically initialize.
3958 (dtor_catch_syscall, dtor_catch_exec): Indirect through the the
3959 base class ops table.
3960 (null_re_set, null_check_status, null_works_in_software_mode)
3961 (null_resources_needed, null_print_one_detail): Delete.
3962 (bkpt_dtor): Rename to ...
3963 (base_breakpoint_dtor): ... this. Make static.
3964 (bkpt_allocate_location): Rename to ...
3965 (base_breakpoint_allocate_location): ... this. Make static.
3966 (base_breakpoint_re_set): New.
3967 (internal_error_pure_virtual_called): New.
3968 (base_breakpoint_insert_location, base_breakpoint_remove_location)
3969 (base_breakpoint_breakpoint_hit, base_breakpoint_check_status)
3970 (base_breakpoint_works_in_software_mode)
3971 (base_breakpoint_resources_needed, base_breakpoint_print_it)
3972 (base_breakpoint_print_one_detail, base_breakpoint_print_mention)
3973 (base_breakpoint_print_recreate): New functions.
3974 (base_breakpoint_ops): New global.
3975 (bkpt_re_set, bkpt_insert_location, bkpt_remove_location)
3976 (bkpt_breakpoint_hit): Make static.
3977 (bkpt_check_status): Delete.
3978 (bkpt_resources_needed): Make static.
3979 (bkpt_works_in_software_mode): Delete.
3980 (bkpt_print_it, bkpt_print_mention, bkpt_print_recreate): Make
3982 (bkpt_breakpoint_ops, internal_breakpoint_ops)
3983 (momentary_breakpoint_ops): Don't statically initialize.
3984 (internal_bkpt_print_recreate, momentary_bkpt_print_recreate):
3986 (tracepoint_insert_location, tracepoint_remove_location)
3987 (tracepoint_check_status, tracepoint_works_in_software_mode)
3988 (tracepoint_print_it): Delete.
3989 (tracepoint_breakpoint_ops): Don't statically initialize.
3990 (initialize_breakpoint_ops): New.
3991 (_initialize_breakpoint): Call it.
3992 * breakpoint.h (null_re_set, null_works_in_software_mode)
3993 (null_resources_needed, null_check_status, null_print_one_detail):
3994 (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
3995 (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
3996 (bkpt_check_status, bkpt_resources_needed)
3997 (bkpt_works_in_software_mode, bkpt_print_it)
3998 (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate):
3999 Delete declarations.
4000 (initialize_breakpoint_ops): Declare.
4004 * breakpoint.c (bkpt_print_it, internal_bkpt_print_it)
4005 (momentary_bkpt_print_it): Simplify.
4009 Split internal, momentary and user breakpoints breakpoint_ops
4012 * breakpoint.c (internal_breakpoint_ops)
4013 (momentary_breakpoint_ops): Forward declare.
4014 (create_internal_breakpoint): Add new breakpoint_ops parameter.
4015 Pass it down, rather than hardcoding bkpt_breakpoint_ops.
4016 (create_overlay_event_breakpoint)
4017 (create_std_terminate_master_breakpoint)
4018 (create_exception_master_breakpoint): Create breakpoints with
4019 internal_breakpoint_ops vtable.
4020 (set_longjmp_breakpoint): Create momentary breakpoints with
4021 momentary_breakpoint_ops vtable, using
4022 momentary_breakpoint_from_master.
4023 (create_thread_event_breakpoint, create_jit_event_breakpoint)
4024 (create_solib_event_breakpoint): Create breakpoints with
4025 internal_breakpoint_ops vtable.
4026 (set_momentary_breakpoint): Create breakpoints with
4027 momentary_breakpoint_ops vtable.
4028 (momentary_breakpoint_from_master): New, factored out from
4029 clone_momentary_breakpoint.
4030 (clone_momentary_breakpoint): Adjust.
4031 (watch_command_1): Create scope breakpoints with
4032 momentary_breakpoint_ops vtable.
4033 (bkpt_re_set): Remove handling of internal and momentary
4035 (bkpt_print_mention, bkpt_print_recreate): New.
4036 (bkpt_breakpoint_ops): Adjust.
4037 (internal_bkpt_re_set, internal_bkpt_check_status)
4038 (internal_bkpt_print_it, internal_bkpt_print_mention)
4039 (internal_bkpt_print_recreate, internal_breakpoint_ops): New.
4040 (momentary_bkpt_re_set, momentary_bkpt_check_status)
4041 (momentary_bkpt_print_it, momentary_bkpt_print_mention)
4042 (momentary_bkpt_print_recreate): New.
4043 (momentary_breakpoint_ops): New.
4047 Implement most breakpoint_ops methods for all breakpoint types,
4048 and move the default handlings to the proper callbacks.
4050 * breakpoint.c (update_watchpoint): Always call the breakpoint's
4051 works_in_software_mode method.
4052 (insert_bp_location): Go through breakpoint_ops->insert_location
4053 for software and hardware watchpoints.
4054 (create_internal_breakpoint): Pass bkpt_breakpoint_ops as
4056 (remove_breakpoint_1): Go through breakpoint_ops->remove_location
4057 for software and hardware watchpoints.
4058 (print_it_typical): Delete.
4059 (print_bp_stop_message): Always call the breakpoint_ops->print_it
4061 (watchpoint_check): Adjust comment.
4062 (bpstat_check_location): Simply always call the breakpoint's
4063 breakpoint_hit method.
4064 (bpstat_stop_status): Always call the breakpoint's check_status
4065 method. Remove special cases for watchpoints and internal event
4066 breakpoints from here (moved to the check_status implementations).
4067 (print_one_breakpoint_location): Assume b->ops is never NULL.
4068 Remove static tracepoint marker id printing from here (moved to
4069 the print_one_detail callback implementation of tracepoints).
4070 (init_bp_location): Assert OPS is never NULL.
4071 (allocate_bp_location): Always call the breakpoint's
4072 allocate_location method, and remove the default code from here.
4073 (free_bp_location): Always call the location's dtor method, and
4074 remove the default code from here.
4075 (init_raw_breakpoint_without_location): Assert OPS is never NULL.
4076 (set_raw_breakpoint_without_location): Add new breakpoint_ops
4077 parameter. Pass it down.
4078 (set_raw_breakpoint): Ditto.
4079 (print_it_catch_fork): Adjust to take a bpstat as argument.
4080 (catch_fork_breakpoint_ops): Install methods.
4081 (print_it_catch_vfork): Adjust to take a bpstat as argument.
4082 (catch_vfork_breakpoint_ops): Install methods.
4083 (dtor_catch_syscall): Call the base dtor.
4084 (print_it_catch_syscall): Adjust to take a bpstat as argument.
4085 (catch_syscall_breakpoint_ops): Install methods.
4086 (dtor_catch_exec): Call the base dtor.
4087 (print_it_catch_exec): Adjust to take a bpstat as argument.
4088 (catch_exec_breakpoint_ops): Install methods.
4089 (hw_breakpoint_used_count, hw_watchpoint_used_count): Always call
4090 the breakpoint's resources_needed method, and remove the default
4092 (set_momentary_breakpoint): Pass bkpt_breakpoint_ops as
4094 (clone_momentary_breakpoint): Clone the original's ops.
4095 (mention): Always call the breakpoint's print_mention method, and
4096 remove the default code from here.
4097 (create_breakpoint_sal): Adjust to pass the ops to
4098 set_raw_breakpoint rather than setting it manually.
4099 (create_breakpoint): Assert ops is never NULL. Adjust to pass the
4100 ops to set_raw_breakpoint_without_location rather than setting it
4102 (break_command_1): Pass bkpt_breakpoint_ops as breakpoint_ops.
4103 (print_it_ranged_breakpoint): Adjust to take a bpstat as argument.
4104 (ranged_breakpoint_ops): Install methods.
4105 (break_range_command): Adjust to pass the ops to
4106 set_raw_breakpoint rather than setting it manually.
4107 (re_set_watchpoint, breakpoint_hit_watchpoint)
4108 (check_status_watchpoint, resources_needed_watchpoint)
4109 (works_in_software_mode_watchpoint, print_it_watchpoint)
4110 (print_mention_watchpoint, print_recreate_watchpoint): New
4112 (watchpoint_breakpoint_ops): Install new methods.
4113 (print_it_masked_watchpoint): New function.
4114 (masked_watchpoint_breakpoint_ops): Install new methods.
4115 (watch_command_1): Adjust to pass the right breakpoint_ops to
4116 set_raw_breakpoint_without_location rather than setting it
4117 manually later. Record the current pspace.
4118 (print_it_exception_catchpoint): Adjust to take a bpstat as
4120 (gnu_v3_exception_catchpoint_ops): Install new methods.
4121 (say_where): New function.
4122 (null_re_set, null_check_status, null_works_in_software_mode)
4123 (null_resources_needed, null_print_one_detail, bp_location_dtor):
4125 (bp_location_ops): New global.
4126 (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
4127 (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
4128 (bkpt_check_status, bkpt_resources_needed)
4129 (bkpt_works_in_software_mode, bkpt_print_it, bkpt_print_mention)
4130 (bkpt_print_recreate): New functions.
4131 (bkpt_breakpoint_ops): New global.
4132 (tracepoint_re_set, tracepoint_insert_location)
4133 (tracepoint_remove_location, tracepoint_breakpoint_hit)
4134 (tracepoint_check_status, tracepoint_works_in_software_mode)
4135 (tracepoint_print_it, tracepoint_print_one_detail)
4136 (tracepoint_print_mention, tracepoint_print_recreate): New
4138 (tracepoint_breakpoint_ops): New global.
4139 (delete_breakpoint): Always call the breakpoint's dtor method, and
4140 remove the default handling from here.
4141 (breakpoint_re_set_default): Make static.
4142 (breakpoint_re_set_one): Always call the breakpoints re_set
4143 method, and remove the default handling from here.
4144 (trace_command, ftrace_command, strace_command)
4145 (create_tracepoint_from_upload): Pass appropriate breakpoints_ops
4146 to create_breakpoint.
4147 (save_breakpoints): Always call the breakpoint's print_recreate
4148 method, and remove the default handling from here.
4150 * ada-lang.c (dtor_exception): Call the base dtor.
4151 (re_set_exception): Call the base method.
4152 (print_it_exception, print_it_catch_exception): Adjust to take a
4154 (catch_exception_breakpoint_ops): Install methods.
4155 (print_it_catch_exception_unhandled): Adjust to take a bpstat as
4157 (catch_exception_unhandled_breakpoint_ops): Install methods.
4158 (print_it_catch_assert): Adjust to take a bpstat as argument.
4159 (catch_assert_breakpoint_ops): Install methods.
4161 * breakpoint.h (struct breakpoint_ops): Adjust the print_it method
4162 to take a bpstat as argument.
4163 (enum print_stop_action): Add describing comments to each enum
4165 (breakpoint_re_set_default): Delete declaration.
4166 (null_re_set, null_works_in_software_mode, null_resources_needed)
4167 (null_check_status, null_print_one_detail): Declare.
4168 (bkpt_breakpoint_ops): Declare.
4169 (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
4170 (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
4171 (bkpt_check_status, bkpt_resources_needed)
4172 (bkpt_works_in_software_mode, bkpt_print_it)
4173 (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate):
4176 * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust to pass
4177 bkpt_breakpoint_ops.
4178 * python/py-breakpoint.c (bppy_init): Ditto.
4182 * MAINTAINERS (Write After Approval): Add myself to the list.
4186 * elfread.c (elf_rel_plt_read): Fix off-by-one bug.
4190 * i386-nat.c (I386_DR_VACANT, I386_DR_LOCAL_ENABLE)
4191 (I386_DR_GLOBAL_ENABLE, I386_DR_DISABLE, I386_DR_SET_RW_LEN)
4192 (I386_DR_GET_RW_LEN, I386_DR_WATCH_HIT): Add state parameter and
4194 (dr_mirror, dr_status_mirror, dr_control_mirror): Delete.
4195 (struct i386_debug_reg_state): New.
4196 (i386_init_dregs): New.
4198 (i386_cleanup_dregs): Use i386_init_dregs.
4199 (i386_show_dr): Add state parameter and adjust.
4200 (i386_insert_aligned_watchpoint): Ditto. Don't pass the info to
4202 (i386_remove_aligned_watchpoint): Likewise.
4203 (i386_handle_nonaligned_watchpoint): Add state parameter and adjust.
4204 (i386_update_inferior_debug_regs): New.
4205 (i386_insert_watchpoint): Work on a local mirror of the debug
4206 registers, and only update the inferior on success.
4207 (i386_remove_watchpoint): Ditto.
4208 (i386_region_ok_for_watchpoint): Adjust.
4209 (i386_stopped_data_address): Adjust.
4210 (i386_insert_hw_breakpoint): Adjust.
4211 (i386_remove_hw_breakpoint): Adjust.
4215 * amd64-tdep.c (amd64_pseudo_register_read_value): Rename
4216 from amd64_pseudo_register_read. Change arguments. Call
4217 mark_value_bytes_unavailable when needed.
4218 (amd64_init_abi): Use set_gdbarch_pseudo_register_read_value, not
4219 set_gdbarch_pseudo_register_read.
4220 * sentinel-frame.c (sentinel_frame_prev_register): Use
4221 regcache_cooked_read_value.
4222 * regcache.h (regcache_cooked_read_value): Declare.
4223 * regcache.c (regcache_cooked_read_value): New function.
4224 (regcache_cooked_read): Call
4225 gdbarch_pseudo_register_read_value if available.
4226 * i386-tdep.h (i386_pseudo_register_read_value): Declare.
4227 (i386_pseudo_register_read): Remove.
4228 * i386-tdep.c (i386_pseudo_register_read_into_value): Rename from
4229 i386_pseudo_register_read. Change arguments. Call
4230 mark_value_bytes_unavailable when needed.
4231 (i386_pseudo_register_read_value): New function.
4232 (i386_gdbarch_init): Call set_gdbarch_pseudo_register_read_value,
4233 not set_gdbarch_pseudo_register_read.
4234 * gdbarch.sh (pseudo_register_read_value): New method.
4235 * gdbarch.c, gdbarch.h: Rebuild.
4236 * findvar.c (value_from_register): Call get_frame_register_value.
4240 * event-top.c (cli_command_loop): Use get_prompt, get_suffix,
4242 (display_gdb_prompt): Likewise.
4243 (change_annotation_level): Likewise.
4244 (push_prompt): Likewise.
4245 (pop_prompt): Likewise.
4246 (handle_stop_sig): Use get_prompt with a level.
4247 * top.c (command_loop): Use get_prompt with a level.
4248 (set_async_annotation_level): Use set_prompt with a level.
4249 (get_prefix): New function.
4250 (set_prefix): Ditto.
4251 (set_suffix): Ditto.
4252 (get_suffix): Ditto.
4253 (get_prompt): Accept a level argument.
4254 (set_prompt): Accept a level argument. Free old prompts. Set
4255 new_async_prompt if level is 0.
4256 (init_main): Use set_prompt with a level. Do not set
4258 * event-top.h (PROMPT, SUFFIX, PREFIX): Move to top.c
4259 * top.h: Declare set_suffix, get_suffix, set_prefix, get_prefix.
4260 Modify set_prompt, get_prompt to account for levels.
4261 * tui/tui-interp.c (tui_command_loop): Use get_prompt with a
4263 * python/python.c (before_prompt_hook): Use set_prompt.
4267 * defs.h: Add guard against inclusion in gdbserver.
4268 (struct ptid, ptid_t): Move to common/ptid.h.
4269 (xfree, xzalloc, xasprintf, xvasprintf, xstrprintf, xstrvprintf,
4270 xsnprintf, internal_error): Move to common/common-utils.h.
4272 * gdb_assert.h: Move into common/ sub-directory.
4273 * gdb_locale.h: Ditto.
4274 * gdb_dirent.h: Ditto.
4275 * inferior.h (minus_one_ptid, null_ptid, ptid_build, pid_to_ptid,
4276 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid):
4277 Move into common/ptid.h.
4278 * xml-support.c (xml_escape_text): Move into common/xml-utils.c.
4279 (gdb_xml_create_parser_and_cleanup_1, xml_fetch_context_from_file):
4280 Change nomem to malloc_failure.
4281 * xml-support.h (xml_escape_text): Move into common/xml-utils.h.
4282 * utils.c (nomem): Rename to malloc_failure.
4283 (xmalloc, xzalloc, xrealloc, xcalloc, xfree, xstrprintf, xasprintf,
4284 xvasprintf, xstrvprintf, xsnprintf): Move to common/common-utils.c.
4285 (gdb_buildargv): Change nomem to malloc_failure.
4286 * infrun.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid,
4287 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal,
4288 ptid_is_pid): Move into common/ptid.c.
4289 (initialize_infrun): Delete initialization of null_ptid and
4291 * linux-nat.c (linux_nat_xfer_osdata): Defer to
4292 linux_common_xfer_osdata.
4293 * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c,
4294 common/ptid.c and common/buffer.c.
4295 (HFILES_NO_SRCDIR): Add common/common-utils.h, common/xml-utils.h,
4296 common/ptid.h, common/buffer.h and common/linux-osdata.h.
4297 (COMMON_OBS): Add xml-utils.o, common-utils.o, buffer.o and ptid.o.
4298 (common-utils.o, xml-utils.o, ptid.o, buffer.o, linux-osdata.o): New
4300 * common/gdb_assert.h: New.
4301 * common/gdb_dirent.h: New.
4302 * common/gdb_locale.h: New.
4303 * common/buffer.c: New.
4304 * common/buffer.h: New.
4305 * common/ptid.c: New.
4306 * common/ptid.h: New.
4307 * common/xml-utils.c: New.
4308 * common/xml-utils.h: New.
4309 * common/common-utils.c: New.
4310 * common/common-utils.h: New.
4311 * common/linux-osdata.c: New.
4312 * common/linux-osdata.h: New.
4313 * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-osdata.o.
4314 * config/arm/linux.mh (NATDEPFILES): Ditto.
4315 * config/i386/linux.mh (NATDEPFILES): Ditto.
4316 * config/i386/linux64.mh (NATDEPFILES): Ditto.
4317 * config/ia64/linux.mh (NATDEPFILES): Ditto.
4318 * config/m32r/linux.mh (NATDEPFILES): Ditto.
4319 * config/m68k/linux.mh (NATDEPFILES): Ditto.
4320 * config/mips/linux.mh (NATDEPFILES): Ditto.
4321 * config/pa/linux.mh (NATDEPFILES): Ditto.
4322 * config/powerpc/linux.mh (NATDEPFILES): Ditto.
4323 * config/powerpc/ppc64-linux.mh (NATDEPFILES): Ditto.
4324 * config/s390/s390.mh (NATDEPFILES): Ditto.
4325 * config/sparc/linux.mh (NATDEPFILES): Ditto.
4326 * config/sparc/linux64.mh (NATDEPFILES): Ditto.
4327 * config/xtensa/linux.mh (NATDEPFILES): Ditto.
4331 * NEWS: Add info macros and info definitions commands.
4335 * NEWS: Document Python prompt substitution hook.
4340 * macrotab.h (macro_callback_fn): Add new arguments to callback.
4341 * macrotab.c (foreach_macro): Ditto.
4342 (foreach_macro_in_scope): Ditto.
4343 * macrocmd.c (print_macro_callback): New function.
4344 (info_macro_command): Move some code to print_macro_definition.
4345 (print_macro_definition): New function.
4346 (print_one_macro): Add new arguments to callback.
4347 (info_definitions_command): New function.
4348 (info_macros_command): Ditto.
4349 (_initialize_macrocmd): Add info macros and info definitions commands.
4350 * symtab.c (add_macro_name): Add new arguments to callback.
4355 * top.c (set_prompt): Rewrite to free previous prompt, free
4356 asynch_new_prompt and set both on new prompts.
4357 * event-top.c (display_gdb_prompt): Add prompt substitution
4359 * python/python.c (before_prompt_hook): New function.
4363 * bfin-tdep.c (bfin_extract_return_value): Fix swapped
4364 arguments to store_unsigned_integer.
4368 * dwarf2read.c (process_enumeration_scope): Do not call new_symbol
4369 in some declaration-only cases.
4374 * dwarf2read.c (dwarf2_section_info_def): New typedef.
4375 (struct dwarf2_per_objfile) <types>: Change to a VEC.
4376 (struct dwarf2_per_cu_data) <from_debug_types>: Remove.
4377 <debug_type_section>: New field.
4378 (dwarf2_locate_sections): Push .debug_types sections onto VEC.
4379 (load_cu): Use appropriate section.
4380 (create_signatured_type_table_from_index): Add 'section'
4382 (dwarf2_read_index): Only allow a single .debug_types section.
4383 (dw2_get_file_names): Use appropriate section.
4384 (read_type_comp_unit_head): Add 'section' argument.
4385 (create_debug_types_hash_table): Loop over all .debug_types
4387 (init_cu_die_reader): Use appropriate section.
4388 (process_psymtab_comp_unit, load_partial_comp_unit)
4389 (load_full_comp_unit, read_die_and_children, find_partial_die)
4390 (lookup_die_type, determine_prefix, follow_die_offset): Update.
4391 (lookup_signatured_type_at_offset): Add 'section' argument.
4392 (read_signatured_type_at_offset): Add 'sect' argument.
4393 (read_signatured_type): Use appropriate section.
4394 (set_die_type, get_die_type_at_offset): Update.
4395 (dwarf2_per_objfile_free): Free all .debug_types sections, and
4397 (write_psymtabs_to_index): Don't allow index with more than one
4398 .debug_types section.
4402 Fix crash if referenced CU is aged out.
4403 * dwarf2loc.c (per_cu_dwarf_call): New variable back_to, use to for
4404 xfree of block.data.
4405 (indirect_pieced_value): New variable back_to, use to for xfree of
4407 (dwarf2_compile_expr_to_ax): New variable back_to, use to for xfree of
4409 * dwarf2read.c (dwarf2_find_base_address): New prototype.
4410 (load_cu): New function from ...
4411 (dw2_do_instantiate_symtab): ... the code here ...
4412 (process_full_comp_unit): ... and here.
4413 (dwarf2_fetch_die_location_block): Call load_cu first. Call xmemdup on
4418 * dwarf2loc.c (indirect_pieced_value): Use check_typedef for VALUE's
4423 * infrun.c (struct execution_control_state): New member
4424 stop_func_filled_in.
4425 (clear_stop_func, fill_in_stop_func): New functions.
4426 (handle_inferior_event): Call clear_stop_func rather than
4427 manipulating the execution control state directly.
4428 Call fill_in_stop_func lazily as required rather than
4429 directly calling find_pc_partial_function in all cases.
4433 * dwarf2read.c (read_subrange_type): Use attr_form_is_block when
4434 checking for variable-sized array.
4438 * varobj.h (varobj_languages): Add vlang_ada definition to the list
4439 of supported languages.
4440 * varobj.c: Add top definitions and basic implementation of the
4441 following callbacks: ada_number_of_children, ada_name_of_variable,
4442 ada_name_of_child, ada_path_expr_of_child, ada_value_of_root,
4443 ada_value_of_child, ada_type_of_child, ada_value_of_variable.
4444 (languages): Register Ada-specific callbacks.
4445 (variable_language): Add the Ada case in the language setter switch.
4449 * remote-mips.c (pmon_download): Fix ignored return value GCC warning.
4454 * dwarf2-frame.c (dwarf2_frame_ctx_funcs): New.
4455 (execute_stack_op): Use dwarf2_frame_ctx_funcs
4456 * dwarf2expr.c (dwarf_get_base_type): Access get_base_type via funcs.
4457 (execute_stack_op): Access read_reg, get_frame_base, read_mem,
4458 get_frame_cfa, get_tls_address and dwarf_call via funcs.
4459 * dwarf2expr.h (struct dwarf_expr_context): New forward declaration.
4460 (struct dwarf_expr_context_funcs): New, move here methods from ...
4461 (struct dwarf_expr_context): ... here. New fields funcs.
4462 * dwarf2loc.c (dwarf_expr_dwarf_call): Access get_frame_pc via funcs.
4463 (dwarf_expr_ctx_funcs): New.
4464 (dwarf2_evaluate_loc_desc_full): Use dwarf_expr_ctx_funcs.
4465 (needs_frame_dwarf_call): Access get_frame_pc via funcs.
4466 (needs_frame_ctx_funcs): New.
4467 (dwarf2_loc_desc_needs_frame): Use needs_frame_ctx_funcs.
4471 * MAINTAINERS (Write After Approval): Add myself to the list.
4475 * dwarf2-frame.c (decode_frame_entry, decode_frame_entry_1): Ensure
4476 that CIE pointer of an FDE really points to a CIE .
4480 * remote.c (remote_get_trace_status): Add comments.
4484 Code cleanup - constify struct lval_funcs.
4485 * dwarf2loc.c (pieced_value_funcs): Make it const.
4486 * infrun.c (siginfo_value_funcs): Likewise.
4487 * opencl-lang.c (opencl_value_funcs): Likewise.
4488 * valops.c (value_assign, value_ind): Make the funcs variable const.
4489 * value.c (struct value): Make location.computed.funcs target const.
4490 Rearrange the comments.
4491 (allocate_computed_value): Make the funcs parameter target const.
4492 (value_computed_funcs): Return the funcs target const.
4493 (value_free, value_copy, set_value_component_location): Make the funcs
4495 * value.h (allocate_computed_value): Make the funcs parameter target
4497 (value_computed_funcs): Return the funcs target const.
4498 * windows-tdep.c (tlb_value_funcs): Make it const.
4502 * remote.c (remote_get_trace_status): Initialize p.
4507 * remote.c (remote_get_trace_status): New variable ex. Put
4508 remote_get_noisy_reply into TRY_CATCH. Call exception_fprintf for it.
4512 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_regval_type>: Use
4513 value_from_contents for final conversion.
4518 * dwarf2loc.c (dwarf_expr_frame_base_1, dwarf2_evaluate_loc_desc_full):
4519 Indent prototypes so they do not get into tags.
4523 Code cleanup making also optimized out values lazy.
4524 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use
4525 allocate_optimized_out_value. Twice.
4526 (loclist_read_variable) Use allocate_optimized_out_value. Once.
4527 * findvar.c (read_var_value): Likewise.
4528 * value.c (allocate_optimized_out_value): New function.
4529 * value.h (allocate_optimized_out_value): New declaration.
4533 Fix occasional crash of CTRL-C during DWARF read in.
4534 * dwarf2read.c (dwarf2_mark_helper): Return on NULL CU.
4538 * regcache.c (struct regcache_descr): Fix typo.
4539 * i387-tdep.c (i387_supply_xsave): Fix typo.
4543 * dwarf2read.c (handle_DW_AT_stmt_list): New function.
4544 (read_file_scope, read_type_unit_scope): Use it.
4548 * dwarf2expr.c (read_sleb128): Fix signed extension overflowing host
4554 * python/python.c: Set gdbpy_should_print_stack default to off.
4555 (set_python): Deprecate maint set python print-stack to
4557 (_initialize_python): Deprecate maint set/show python print-stack.
4558 Add new prefix command, python. Add new setting, print-backtrace.
4559 * NEWS: Document set python print-stack. Document default change.
4563 * python/py-inferior.c (infpy_dealloc): New function.
4564 (inferior_to_inferior_object): Return a new object, or a
4565 new reference to the existing object.
4566 (find_thread_object): Cleanup references to inferior.
4567 (delete_thread_object): Ditto.
4568 * python/py-infthread.c (create_thread_object): Do not increment
4569 inferior reference count.
4573 * dwarf2loc.c (locexpr_regname): New function.
4574 (locexpr_describe_location_piece): Use it.
4575 (disassemble_dwarf_expression): Add per_cu argument. Use
4577 <DW_OP_GNU_deref_type, DW_OP_GNU_const_type,
4578 DW_OP_GNU_regval_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret>:
4580 (locexpr_describe_location_1): Add per_cu argument.
4581 (locexpr_describe_location): Update.
4582 (loclist_describe_location): Update.
4586 * dwarf2expr.c (execute_stack_op): Add QUIT.
4592 * remote.c (remote_start_remote): Add TRY_CATCH for
4593 remote_get_trace_status.
4594 * tracepoint.c (disconnect_tracing): Ditto.
4598 * cli/cli-setshow.c (do_setshow_command): Display var_zinteger
4599 variables as signed, not unsigned.
4603 * jit.c (jit_inferior_init): Reformat forward declaration.
4607 * MAINTAINERS (Write After Approval): Add myself to the list.
4611 * remote.c (remote_start_remote): Add TRY_CATCH for
4612 remote_get_trace_status.
4613 * tracepoint.c (disconnect_tracing): Ditto.
4617 * symtab.c (operator_chars): Now static.
4618 * linespec.c (operator_chars): Don't declare.
4622 * ui-out.h (ui_out_field_core_addr): Fix typo in comment.
4626 * gnu-v3-abi.c (gnuv3_rtti_type): Check TYPE_CPLUS_REALLY_JAVA.
4627 * gdbtypes.h (struct cplus_struct_type) <is_java>: New field.
4628 (TYPE_CPLUS_REALLY_JAVA): New macro.
4629 * dwarf2read.c (process_structure_scope): Set
4630 TYPE_CPLUS_REALLY_JAVA.
4634 * ada-lang.c: Fix typos.
4635 * amd64-tdep.c: Likewise.
4636 * breakpoint.c: Likewise.
4637 * cli/cli-decode.c: Likewise.
4638 * findcmd.c: Likewise.
4639 * inline-frame.c: Likewise.
4640 * mi/mi-main.c: Likewise.
4641 * minsyms.c: Likewise.
4642 * monitor.c: Likewise.
4643 * monitor.h: Likewise.
4644 * prologue-value.c: Likewise.
4645 * reverse.c: Likewise.
4646 * s390-tdep.c: Likewise.
4650 * jit.c (jit_inferior_init): Forward declare.
4651 (jit_breakpoint_re_set_internal): Call jit_inferior_init.
4655 * osabi.c (generic_elf_osabi_sniffer): Minor comment reformatting.
4659 * ada-tasks.c (KNOWN_TASKS_LIST): New macro.
4660 (tcb_fieldno): Add activation_link field.
4661 (get_known_tasks_addr): Moved and rewritten.
4662 (get_tcb_types_info): Set activation_link field.
4663 (read_known_tasks_array): Add parameter. Rewritten.
4664 (read_known_tasks_list): New function.
4665 (read_known_tasks): New function.
4666 (ada_build_task_list): Call read_known_tasks instead of
4667 read_known_tasks_array.
4668 * ravenscar-thread.c: Add first_task_name constant.
4669 (has_ravenscar_runtime): Check for task list too.
4673 * ada-tasks.c: Renames fieldno to actb_fieldno.
4674 (ada_get_task_number): Indentation.
4675 (get_tcb_types_info): Remove all parameters. Write directly
4677 (ptid_from_atcb_common): Adjust.
4678 (read_atcb): Adjust.
4682 * symtab.c (in_prologue): Remove mention of ppc's refine_prologue_limit.
4686 * ui-out.c (ui_out_field_core_addr): Mention that the function
4687 description is in the header file.
4688 * ui-out.h (ui_out_field_core_addr): Document function.
4692 * ui-out.c (ui_out_get_field_separator): Remove unused function.
4693 * ui-out.h (ui_out_get_field_separator): Remove prototype.
4697 * symtab.c (expand_line_sal): Remove empty line.
4701 * osabi.c (generic_elf_osabi_sniffer) <ELFOSABI_GNU>: Handle in the
4702 same way as ELFOSABI_NONE.
4703 <ELFOSABI_LINUX, ELFOSABI_HURD>: Remove cases.
4707 * breakpoint.c: Fix typos in comments.
4708 * linespec.c: Likewise.
4709 * symtab.c: Likewise.
4713 * dwarf2-frame.c (dwarf2_build_frame_info): Do not load .eh_frame
4714 section in separate object files.
4718 Fix false GCC warning.
4719 * linespec.c (decode_line_1): Initialize values.
4723 * linespec.c (find_method): Accept the function type automatically only
4724 if it was specified with parameter types.
4728 Stop on first linespec terminator instead of eating what we can.
4729 * linespec.c (is_linespec_boundary): New function.
4730 (name_end): Remove function.
4731 (keep_name_info): New parameter on_boundary, replace the body.
4732 (decode_line_1): Provide the parameter to keep_name_info.
4733 (decode_compound): Likewise. Drop the trailing java return type
4738 Fall back linespec to minimal symbols.
4739 * linespec.c (decode_line_1): New variable ex, saved_argptr. Protect
4740 decode_compound by TRY_CATCH, fall back on minsyms if it failed.
4741 (find_method, symbol_found): Change error to cplusplus_error.
4745 * symtab.c (symbol_find_demangled_name): Remove DMGL_VERBOSE.
4750 * dwarf2read.c (check_physname): New variable.
4751 (dwarf2_physname): Prefer DW_AT_linkage_name over dwarf2_compute_name.
4752 (show_check_physname): New function.
4753 (_initialize_dwarf2_read): Add `check-physname' for check_physname.
4757 * machoread.c (macho_symfile_read): Delete OBE comment.
4761 * machoread.c (struct macho_oso_data): Delete.
4762 (current_oso): Delete.
4763 (macho_relocate_common_syms): New function, mostly extracted
4765 (macho_add_oso_symfile): Call macho_relocate_common_syms.
4766 Remove code that sets and unset current_oso.
4767 (macho_symfile_relocate): Delete handling of common symbols,
4768 now moved to macho_relocate_common_syms.
4772 * darwin-nat.c (darwin_ptrace): Add documentation.
4773 Set errno to zero before calling ptrace. If ptrace returns
4774 -1 and errno is zero, then change then return zero.
4775 (darwin_kill_inferior): Issue a warning instead of triggering
4776 a failed assertion when the PT_KILL ptrace operations returned
4781 * darwin-nat.c (darwin_detach): Call darwin_resume_inferior
4782 only when inf->private->no_ptrace.
4786 * ada-lang.c (print_it_exception): Print temporary catchpoints
4787 as "Temporary catchpoint".
4788 (print_mention_exception): Likewise.
4792 * jv-lang.c (java_language_defn): Use java_printchar,
4794 (java_get_encoding): New function.
4795 (java_emit_char): Use generic_emit_char.
4796 (java_printchar): New function.
4797 (java_printstr): Likewise.
4801 * ada-typeprint.c (print_record_type): If unable to decode
4802 the name of the parent type, use the encoded name.
4806 * ada-typeprint.c (ada_print_type): Fix both PAD type and
4807 pointer to constrained packed array type output.
4808 * ada-valprint.c (ada_val_print_1): Fix pointer to constrained
4809 packed array output.
4813 * ada-typeprint.c (print_array_type): removed if condition on show
4814 being negative for bounds printing.
4818 * ada-lang.c (ada_identical_enum_types_p): New function.
4819 (symbols_are_identical_enums): New function.
4820 (remove_extra_symbols): Do nothing if NSYMS < 2.
4821 Use symbols_are_identical_enums.
4825 * ada-valprint.c (ada_value_print): Handle typedefs.
4829 * ada-lang.c (ada_evaluate_subexp): Add missing word in comment.
4833 * ada-lang.c (thin_descriptor_type): Deal with typedefs.
4834 (decode_constrained_packed_array): Likewise.
4835 (ada_evaluate_subexp) <TERNOP_SLICE>: Likewise.
4839 * ada-exp.y (convert_char_literal): Handle typedef types.
4843 * ada-lang.c (ada_remove_trailing_digits): Expand documentation.
4847 * varobj.c (varobj_create): Call do_cleanups on early exit path.
4848 * valops.c (find_overload_match): Call do_cleanups on early exit
4850 * solib.c (solib_find): Call do_cleanups on early exit path.
4854 * symfile-mem.c (symbol_file_add_from_memory): Call do_cleanups.
4855 * solib-svr4.c (open_symbol_file_object): Call do_cleanups on all
4856 return paths. Defer final do_cleanups until last return.
4857 * arm-tdep.c (arm_exidx_new_objfile): Make null cleanup after
4862 * Makefile.in (SUBDIR_MI_CFLAGS): Don't add -DMI_OUT=1.
4866 * MAINTAINERS (Write After Approval): Add myself to the list.
4870 Disable epilogue unwinders on recent GCCs.
4871 * amd64-tdep.c (amd64_in_function_epilogue_p): New variable symtab,
4872 initialize it, return 0 on EPILOGUE_UNWIND_VALID.
4873 * dwarf2read.c (process_full_comp_unit): Initialize
4874 EPILOGUE_UNWIND_VALID.
4875 * i386-tdep.c (i386_in_function_epilogue_p): New variable symtab,
4876 initialize it, return 0 on EPILOGUE_UNWIND_VALID.
4877 * symtab.h (struct symtab): New field epilogue_unwind_valid.
4881 Code cleanup - reformatting.
4882 * dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ...
4883 (producer_is_gcc_ge_4): ... here, change the return value.
4884 (process_full_comp_unit): New variable gcc_4_minor, adjust the value
4889 Fix non-only rename list for Fortran modules import.
4890 * cp-namespace.c (cp_scan_for_anonymous_namespaces): Adjust the
4891 cp_add_using_directive caller.
4892 (cp_add_using_directive): New parameter excludes, describe it. New
4893 variables ix and param. Compare if also excludes match. Allocate NEW
4894 with variable size, initialize EXCLUDES there.
4895 (cp_lookup_symbol_imports): New variable excludep, test
4896 current->EXCLUDES with it.
4897 * cp-support.h: Include vec.h.
4898 (struct using_direct): New field excludes, describe it.
4899 (DEF_VEC_P (const_char_ptr)): New.
4900 (cp_add_using_directive): New parameter excludes.
4901 * defs.h (const_char_ptr): New typedef.
4902 * dwarf2read.c (read_import_statement): New variables child_die,
4903 excludes and cleanups, read in excludes.
4904 (read_namespace): Adjust the cp_add_using_directive caller.
4909 * cp-namespace.c (cp_add_using_directive): Turn positive comparison to
4910 negative comparisons.
4914 * mi/mi-main.c (mi_cmd_list_features): Emit
4915 breakpoint-notifications.
4920 * valprint.h (generic_emit_char, generic_printstr): Declare.
4921 * valprint.c (wchar_printable, append_string_as_wide)
4922 (print_wchar): Move from c-lang.c.
4923 (generic_emit_char): New function; mostly taken from c_emit_char.
4924 (generic_printstr): New function; mostly taken from c_printstr.
4925 * f-valprint.c (f_val_print) <TYPE_CODE_ARRAY>: Handle strings
4926 represented as arrays.
4927 <TYPE_CODE_CHAR>: Treat as TYPE_CODE_INT; recognize as character
4929 * f-typeprint.c (f_type_print_base) <TYPE_CODE_CHAR>: Treat
4930 identically to TYPE_CODE_INT.
4931 * f-lang.c (f_get_encoding): New function.
4932 (f_emit_char): Use generic_emit_char.
4933 (f_printchar): Replace comment.
4934 (f_printstr): Use generic_printstr.
4935 * dwarf2read.c (read_base_type) <DW_ATE_unsigned>: Handle Fortran
4936 "character" types specially.
4937 <DW_ATE_signed_char, DW_ATE_unsigned_char>: Make TYPE_CODE_CHAR
4939 * c-lang.c (wchar_printable, append_string_as_wide, print_wchar):
4941 (c_emit_char): Call generic_emit_char.
4942 (c_printstr): Call generic_printstr.
4946 * breakpoint.c (bpstat_what): Removed duplicated case.
4950 * python/python-internal.h (PY_SSIZE_T_CLEAN): Define.
4954 * valops.c (find_overload_match): Call do_cleanups before early
4956 * top.c (execute_command): Call do_cleanups before early return.
4957 (command_loop): Likewise.
4958 * stack.c (backtrace_command): Make a null cleanup early. Don't
4959 conditionally call do_cleanups.
4960 * python/py-value.c (TRY_CATCH): Move cleanup handling into
4962 * python/py-breakpoint.c (gdbpy_breakpoint_has_py_cond): Rearrange
4963 so cleanups are always run.
4964 * mi/mi-cmd-var.c (mi_cmd_var_delete): Reset old_cleanups.
4965 * findcmd.c (parse_find_args): Call do_cleanups on early return
4967 * dbxread.c (elfstab_build_psymtabs): Make a null cleanup early.
4968 Don't conditionally call do_cleanups.
4969 * cli/cli-script.c (execute_user_command): Initialize 'old_chain'
4974 * MAINTAINERS (Write After Approval): Use default email address.
4978 * MAINTAINERS (Write After Approval): Add Eric Botcazou.
4982 * sparc-tdep.h (struct sparc_frame_cache): Add frame_offset,
4983 saved_regs_mask and copied_regs_mask fields.
4984 (sparc_record_save_insn): New prototype.
4985 * sparc-tdep.c (sparc_alloc_frame_cache): Initialize the new fields.
4986 (sparc_record_save_insn): New function.
4987 (sparc_analyze_prologue): Add head comment. Recognize store insns
4988 of call-saved registers. Use OFFSET consistently. Recognize flat
4989 frames and cache their settings.
4990 (sparc32_skip_prologue): Handle flat frames.
4991 (sparc_frame_cache): Add frame_offset to the base address.
4992 (sparc32_frame_cache): Adjust to new frame description.
4993 (sparc32_frame_prev_register): Likewise.
4994 * sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
4995 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
4996 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
4997 * sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_cache): Force the
4998 frame by calling sparc_record_save_insn.
4999 * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_cache): Likewise.
5000 * sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_cache): Likewise.
5001 * sparc64obsd-tdep.c (sparc64obsd_frame_cache): Likewise.
5005 * dwarf2read.c (struct dwarf2_section_info): Replace was_mmapped
5006 field by map_addr and map_len.
5007 (dwarf2_read_section): Adjust for the new bfd_mmap api.
5008 (munmap_section_buffer): Likewise.
5012 * varobj.c (update_dynamic_varobj_children): Make 'name' const.
5013 * symtab.h (lookup_struct, lookup_union, lookup_enum): Update.
5014 * python/python.c (gdbpy_parameter): Make 'arg' const.
5015 (execute_gdb_command): Likewise.
5016 (gdbpy_decode_line): Likewise. Copy it.
5017 (gdbpy_parse_and_eval): Make 'expr_string' const. Copy it.
5018 (gdbpy_write): Make 'arg' const.
5019 * python/py-type.c (typy_lookup_typename): Make 'type_name'
5021 (gdbpy_lookup_type): Likewise.
5022 * python/py-prettyprint.c (print_children): Make 'name' const.
5023 * python/py-param.c (parmpy_init): Make 'name' const. Copy it.
5024 * python/py-inferior.c (infpy_write_memory): Make 'buf_len' a
5026 * python/py-function.c (fnpy_init): Make 'name' const.
5027 * python/py-cmd.c (cmdpy_init): Make 'name' const. Copy it.
5028 (gdbpy_string_to_argv): Make 'input' const.
5029 * python/py-breakpoint.c (bppy_init): Make 'spec' const. Copy
5031 * gdbtypes.h (lookup_typename): Update.
5032 * gdbtypes.c (lookup_typename): Make 'name' const.
5033 (lookup_struct): Likewise.
5034 (lookup_union): Likewise.
5035 (lookup_enum): Likewise.
5039 * Makefile.in (HFILES_NO_SRCDIR): Add "common/" to
5040 gdb_thread_db.h. Move all common/ entries to be together.
5041 (TAGS): Don't depend on DEPFILES.
5045 * infrun.c (start_remote): Move call init_wait_for_inferior to ...
5046 * remote.c (remote_start_remote): ... here.
5047 * monitor.c (monitor_open): ... here.
5051 * gdbtypes.c (append_composite_type_field_aligned): Fix
5052 calculation of bit position based on alignment.
5056 * breakpoint.c (bpstat_stop_status): Call the check_status
5057 breakpoint_ops method.
5058 (print_one_breakpoint_location): Also print the condition for Ada
5059 exception catchpoints.
5060 (allocate_bp_location): New, factored out from
5061 allocate_bp_location.
5062 (allocate_bp_location): Adjust. Call the owner breakpoint's
5063 allocate_location method, if there is one.
5064 (free_bp_location): Call the locations's dtor method, if there is
5066 (init_raw_breakpoint_without_location): New breakpoint_ops
5068 (set_raw_breakpoint_without_location): Adjust.
5069 (init_raw_breakpoint): New breakpoint_ops parameter. Pass it down.
5070 (set_raw_breakpoint): Adjust.
5071 (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops)
5072 (catch_syscall_breakpoint_ops): Install NULL allocate_location,
5073 re_set and check_status methods.
5074 (init_catchpoint): Don't memset, initialize thread, addr_string
5075 and enable_state. Pass the ops down to init_raw_breakpoint.
5076 (install_catchpoint): Rename to ...
5077 (install_breakpoint): ... this, and make extern.
5078 (create_fork_vfork_event_catchpoint): Adjust.
5079 (catch_exec_breakpoint_ops): Install NULL allocate_location,
5080 re_set and check_status methods.
5081 (create_syscall_event_catchpoint): Adjust.
5082 (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
5083 (masked_watchpoint_breakpoint_ops): Install NULL
5084 allocate_location, re_set and check_status methods.
5085 (catch_exec_command_1): Adjust.
5086 (gnu_v3_exception_catchpoint_ops): Install NULL allocate_location,
5087 re_set and check_status methods.
5088 (create_ada_exception_breakpoint): Rename to ...
5089 (init_ada_exception_breakpoint): ... this. Add a struct
5090 breakpoint parameter, and delete the exp_string, cond_string and
5091 cond parameters. Use init_raw_breakpoint, and don't install or
5092 mention the breakpoint yet. Don't clear breakpoint fields that
5093 init_raw_breakpoint already clears.
5094 (re_set_breakpoint): Delete, split into ...
5095 (breakpoint_re_set_default, prepare_re_set_context): ... these new
5097 (breakpoint_re_set_one): Call the breakpoint's
5098 breakpoint_ops->re_set implementation, if there's one. Adjust.
5099 * breakpoint.h: Forward declare struct bpstats and struct bp_location.
5100 (struct bp_location_ops): New type.
5101 (struct bp_location): New field `ops'.
5102 (struct breakpoint_ops): New `allocate_location', `re_set' and
5103 `check_status' fields. Make `breakpoint_hit''s description match
5105 (init_bp_location): Declare.
5106 (breakpoint_re_set_default): Declare.
5107 (create_ada_exception_breakpoint): Rename to ...
5108 (init_ada_exception_breakpoint): ... this. Add a struct
5109 breakpoint parameter, and delete the exp_string, cond_string and
5111 (install_breakpoint): Declare.
5112 * ada-lang.c: Include exceptions.h.
5113 <Ada exceptions description>: Update.
5114 (struct ada_catchpoint_location): New type.
5115 (ada_catchpoint_location_dtor): New function.
5116 (ada_catchpoint_location_ops): New global.
5117 (ada_catchpoint): New type.
5118 (create_excep_cond_exprs): New function.
5119 (dtor_exception, allocate_location_exception, re_set_exception)
5120 (should_stop_exception, check_status_exception): New functions.
5121 (print_one_exception, print_mention_exception)
5122 (print_recreate_exception): Adjust.
5123 (dtor_catch_exception, allocate_location_catch_exception)
5124 (re_set_catch_exception, check_status_catch_exception): New
5126 (catch_exception_breakpoint_ops): Install them.
5127 (dtor_catch_exception_unhandled)
5128 (allocate_location_catch_exception_unhandled)
5129 (re_set_catch_exception_unhandled)
5130 (check_status_catch_exception_unhandled): New functions.
5131 (catch_exception_unhandled_breakpoint_ops): Install them.
5132 (dtor_catch_assert, allocate_location_catch_assert)
5133 (re_set_catch_assert, check_status_catch_assert): New functions.
5134 (catch_assert_breakpoint_ops): Install them.
5135 (ada_exception_catchpoint_p): Delete.
5136 (catch_ada_exception_command_split)
5137 (ada_exception_catchpoint_cond_string): Rename exp_string
5138 parameter to excep_string. Adjust.
5139 (ada_parse_catchpoint_condition): Delete.
5140 (ada_exception_sal): Rename the exp_string parameter to
5141 excep_string. Delete the cond_string and cond parameters.
5143 (ada_decode_exception_location): Rename the exp_string parameter
5144 to excep_string. Delete the cond_string and cond parameters.
5146 (create_ada_exception_catchpoint): New function.
5147 (catch_ada_exception_command, ada_decode_assert_location)
5148 (catch_assert_command): Adjust.
5149 * ada-lang.h (ada_exception_catchpoint_p): Delete declaration.
5153 * ada-lang.c: Include arch-utils.h.
5154 (ada_decode_exception_location): Make static.
5155 (catch_ada_exception_command): Moved here from breakpoint.c.
5156 (ada_decode_assert_location): Make static.
5157 (catch_assert_command): Moved here from breakpoint.c.
5158 (_initialize_ada_lang): Install the exception and assert
5159 catchpoint commands here.
5160 * ada-lang.h (ada_decode_exception_location)
5161 (ada_decode_assert_location): Delete declarations.
5162 * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): Moved to
5164 (create_ada_exception_breakpoint): Make extern.
5165 (catch_ada_exception_command, catch_assert_command): Moved to
5167 (add_catch_command): Make extern.
5168 (_initilize_breakpoint): Don't install the exception and assert
5169 catchpoint commands here.
5170 * breakpoint.h (CATCH_PERMANENT, CATCH_TEMPORARY): Moved from
5172 (add_catch_command, create_ada_exception_breakpoint): Declare.
5176 * breakpoint.c (init_raw_breakpoint_without_location): Don't add
5177 the breakpoint to the breakpoint chain here.
5178 (set_raw_breakpoint_without_location): Add the breakpoint to the
5179 breakpoint chain here.
5180 (init_raw_breakpoint): Adjust comments.
5181 (set_raw_breakpoint): Add the breakpoint to the breakpoint chain
5183 (init_catchpoint): Don't set the catchpoint's breakpoint number
5185 (install_catchpoint): New function.
5186 (create_fork_vfork_event_catchpoint)
5187 (create_syscall_event_catchpoint, catch_exec_command_1): Adjust to
5188 use install_catchpoint.
5192 * breakpoint.c (create_catchpoint_without_mention)
5193 (create_catchpoint): Delete.
5197 * breakpoint.h (struct breakpoint): Delete field `exec_pathname'.
5198 * breakpoint.c (init_raw_breakpoint_without_location): Remove
5199 reference to exec_pathname.
5200 (struct exec_catchpoint): New type.
5201 (dtor_catch_exec): New function.
5202 (insert_catch_exec, print_it_catch_exec, print_one_catch_exec): Adjust.
5203 (catch_exec_breakpoint_ops): Install dtor_catch_syscall.
5204 (catch_exec_command_1): Adjust to use init_catchpoint.
5205 (delete_breakpoint): Remove reference to exec_pathname.
5209 * breakpoint.h (struct breakpoint_ops): New field `dtor'.
5210 (struct breakpoint): Delete field `syscalls_to_be_caught'.
5211 * breakpoint.c (init_raw_breakpoint_without_location): Remove
5212 reference to syscalls_to_be_caught.
5213 (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops): Install a
5215 (struct syscall_catchpoint): New type.
5216 (dtor_catch_syscall): New function.
5217 (insert_catch_syscall, remove_catch_syscall)
5218 (breakpoint_hit_catch_syscall, print_one_catch_syscall)
5219 (print_recreate_catch_syscall): Adjust.
5220 (catch_syscall_breakpoint_ops): Install dtor_catch_syscall.
5221 (catch_exec_breakpoint_ops): Install a NULL `dtor'.
5222 (create_syscall_event_catchpoint): Adjust to use init_catchpoint.
5223 (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
5224 (masked_watchpoint_breakpoint_ops)
5225 (gnu_v3_exception_catchpoint_ops): Install a NULL `dtor'.
5226 (delete_breakpoint): Call the `dtor' breakpoint_ops method, if
5227 there is one. Remove references to syscalls_to_be_caught.
5228 (catching_syscall_number): Adjust.
5229 * ada-lang.c (catch_exception_breakpoint_ops)
5230 (catch_exception_unhandled_breakpoint_ops)
5231 (catch_assert_breakpoint_ops): Install a NULL `dtor'.
5235 * breakpoint.h (struct breakpoint): Delete forked_inferior_pid
5237 * breakpoint.c (init_raw_breakpoint_without_location): Remove
5238 reference to forked_inferior_pid.
5239 (struct fork_catchpoint): New type.
5240 (breakpoint_hit_catch_fork, print_it_catch_fork)
5241 (print_one_catch_fork, breakpoint_hit_catch_vfork)
5242 (print_it_catch_vfork, print_one_catch_vfork): Adjust.
5243 (create_fork_vfork_event_catchpoint): Adjust to use
5248 * breakpoint.c (add_to_breakpoint_chain)
5249 (init_raw_breakpoint_without_location): New functions, factored
5251 (set_raw_breakpoint_without_location): ... this one.
5252 (init_raw_breakpoint): New function, factored out from
5253 set_raw_breakpoint and adjusted to use
5254 init_raw_breakpoint_without_location.
5255 (set_raw_breakpoint): Adjust.
5256 (init_catchpoint): New function, factored out from
5257 create_catchpoint_without_mention and adjusted to use
5258 init_raw_breakpoint.
5259 (create_catchpoint_without_mention): Adjust.
5263 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_convert>: Treat type
5264 argument of 0 specially.
5268 * infrun.c (handle_inferior_event): Remove write-only local variable
5269 `sw_single_step_trap_p'.
5273 * symtab.c (lookup_language_this): End loop if block is NULL.
5277 * valops.c (value_of_this): Use lookup_language_this.
5278 * symtab.h (lookup_language_this): Declare.
5279 * symtab.c (lookup_language_this): New function.
5280 (lookup_symbol_aux): Use lookup_language_this.
5281 * ax-gdb.c (gen_expr) <OP_THIS>: Use lookup_language_this.
5285 * value.h (value_of_this): Update.
5286 (value_of_local): Remove.
5287 * valops.c (value_of_this): Rename from value_of_local. Change
5289 * p-exp.y (exp): Update.
5290 (variable): Likewise.
5291 * eval.c (evaluate_subexp_standard) <OP_THIS>: Use value_of_this.
5295 * valops.c (value_of_local): Complain if NAME is NULL.
5296 * std-operator.def (OP_OBJC_SELF): Remove.
5297 * parse.c (operator_length_standard) <OP_OBJC_SELF>: Remove.
5298 * objc-exp.y (name_not_typename): Use OP_THIS.
5299 * expprint.c (print_subexp_standard) <OP_THIS>: Print language's
5301 <OP_OBJC_SELF>: Remove.
5302 * eval.c (evaluate_subexp_standard) <OP_OBJC_SELF>: Remove.
5306 * python/py-events.h (gdb_py_events): Make it extern.
5307 * python/py-evtregistry.c (gdb_py_events): Declare.
5311 * remote.c (remote_trace_set_readonly_regions): Add check for
5312 remote_protocol_packets[PACKET_qXfer_traceframe_info].support before
5317 * arm-linux-tdep.c: Include "auxv.h".
5319 (ARM_LINUX_SIZEOF_VFP): Define.
5320 (arm_linux_supply_vfp): New function.
5321 (arm_linux_collect_vfp): Likewise.
5322 (arm_linux_regset_from_core_section): Handle .reg-arm-vfp sections.
5323 (arm_linux_fpa_regset_sections): New variable.
5324 (arm_linux_vfp_regset_sections): Likewise.
5325 (arm_linux_core_read_description): New function.
5326 (arm_linux_init_abi): Install arm_linux_core_read_description and
5327 arm_linux_fpa_regset_sections or arm_linux_vfp_regset_sections as
5328 appropriate for the architecture.
5329 * arm-tdep.h (struct gdbarch_tdep): Add member "vfpregset".
5330 (tdesc_arm_with_m): Declare.
5331 (tdesc_arm_with_iwmmxt): Likewise.
5332 (tdesc_arm_with_vfpv2): Likewise.
5333 (tdesc_arm_with_vfpv3): Likewise.
5334 (tdesc_arm_with_neon): Likewise.
5335 * arm-linux-nat.c: Move features/*.c includes ...
5336 * arm-tdep.c: ... here.
5337 * arm-linux-nat.c (arm_linux_read_description): Move initializing
5338 target description data structures ...
5339 * arm-tdep.c (_initialize_arm_tdep): ... here.
5340 * arm-linux-nat.c (HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3,
5341 HWCAP_VFPv3D16): Move definitions ...
5342 * arm-linux-tdep.h: ... here.
5346 * remote.c (remote_trace_set_readonly_regions): Add a check for
5351 * coffread.c (coffread_objfile): Rename from current_objfile.
5352 * dbxread.c (dbxread_objfile): Rename from current_objfile.
5353 * mdebugread.c (mdebugread_objfile): Rename from current_objfile.
5357 * jv-lang.c (jv_type_objfile_data_key, dynamics_objfile)
5358 (class_symtab): Remove.
5359 (jv_dynamics_progspace_key): New global.
5360 (jv_per_objfile_free): Reset program space data. Update assert.
5361 Don't clear globals.
5362 (get_dynamics_objfile): Use and set program space data.
5363 (get_java_class_symtab): Use get_dynamics_objfile.
5364 (add_class_symbol): Likewise.
5365 (java_link_class_type): Likewise.
5366 (java_object_type, jv_clear_object_type, set_java_object_type):
5368 (get_java_object_type): Update. Don't cache result.
5369 (is_object_type): Don't call set_java_object_type.
5370 (_initialize_java_language): Don't set jv_type_objfile_data_key;
5371 initialize jv_dynamics_progspace_key.
5375 * symtab.h (current_objfile): Don't declare.
5376 * objfiles.h (current_objfile): Don't declare.
5377 * objfiles.c (current_objfile): Remove.
5378 * mdebugread.c (current_objfile): New file-scope global.
5379 * dbxread.c (current_objfile): New file-scope global.
5380 * coffread.c (current_objfile): New file-scope global.
5384 * top.h (line): Rename to ...
5385 (saved_command_line): ... this.
5386 (linesize): Rename to ...
5387 (saved_command_line_size): ... this.
5388 * top.c (line): Rename to ...
5389 (saved_command_line): ... this.
5390 (linesize): Rename to ...
5391 (saved_command_line_size): ... this.
5392 (dont_repeat, command_line_input, dont_repeat_command): Adjust.
5393 * event-top.c (command_line_handler): Adjust.
5394 * main.c (captured_main): Adjust.
5398 * i386-tdep.c (i386_epilogue_frame_cache): Simplify code. Call
5399 get_frame_func instead of get_frame_pc to determine the code
5400 address used to construct the frame ID.
5401 (i386_epilogue_frame_unwind_stop_reason): Fix coding style.
5402 (i386_epilogue_frame_this_id): Likewise.
5403 (i386_epilogue_frame_prev_register): New function.
5404 (i386_epilogue_frame_unwind): Use i386_epilogue_frame_prev_register.
5405 (i386_stack_tramp_frame_sniffer): Fix coding style.
5406 (i386_stack_tramp_frame_unwind): Use i386_epilogue_frame_prev_register.
5407 (i386_gdbarch_init): Fix comments.
5411 * i386-tdep.c (i386_match_insn_block): Use length of the proper
5412 instruction when walking back through the instruction stream.
5416 * symtab.c (output_partial_symbol_filename): Exchange the filename and
5417 fullname parameters order.
5422 * dwarf2read.c (dw2_map_symbol_filenames): Use symbol_filename_ftype
5424 * psymtab.c (map_symbol_filenames_psymtab)
5425 (map_partial_symbol_filenames): Likewise.
5426 * psymtab.h: Include symfile.h.
5427 (map_partial_symbol_filenames): Use symbol_filename_ftype for fun.
5428 * symfile.h (symbol_filename_ftype): New.
5429 (struct quick_symbol_functions): Use symbol_filename_ftype for fun of
5430 map_symbol_filenames, clarify more the naming in comment.
5434 * cc-with-index.sh: Fix typos in comment.
5435 Look for ../../gdb, for fullname.exp.
5440 * cli/cli-cmds.c (shell_escape): Use waitpid.
5441 * rs6000-nat.c (exec_one_dummy_insn): Likewise.
5445 * xcoffread.c (dwarf2_xcoff_names): New variable.
5446 (aix_process_linenos): Add a guard.
5447 (xcoff_symfile_finish): Free dwarf2.
5448 (xcoff_initial_scan): Add dwarf2 support.
5452 * infcall.c (run_inferior_call): Don't mask async. Instead force
5453 a synchronous wait, if the target can async.
5455 * target.h (struct target_ops): Delete to_async_mask.
5456 (target_async_mask): Delete.
5457 * target.c (update_current_target): Delete references to to_async_mask.
5458 * linux-nat.c (linux_nat_async_mask_value): Delete.
5459 (linux_nat_is_async_p, linux_nat_can_async_p): Remove references
5460 to linux_nat_async_mask_value.
5461 (linux_nat_async_mask): Delete.
5462 (linux_nat_async, linux_nat_close): Remove references to
5463 linux_nat_async_mask_value.
5464 * record.c (record_async_mask_value): Delete.
5465 (record_async): Remove references to record_async_mask_value.
5466 (record_async_mask): Delete.
5467 (record_can_async_p, record_is_async_p): Remove references to
5468 record_async_mask_value.
5469 (init_record_ops, init_record_core_ops): Remove references to
5471 * remote.c (remote_async_mask_value): Delete.
5472 (init_remote_ops): Remove reference to remote_async_mask.
5473 (remote_can_async_p, remote_is_async_p): Remove references to
5474 remote_async_mask_value.
5475 (remote_async): Remove references to remote_async_mask_value.
5476 (remote_async_mask): Delete.
5478 * infrun.c (fetch_inferior_event): Don't claim registers changed
5479 if the current thread is already not executing.
5484 * breakpoint.c, breakpoint.h, cli/cli-dump.c, dwarf2expr.c,
5485 gdbarch.c, gdbarch.sh, remote.c: Various spelling fixes.
5489 * dwarf2expr.c (execute_stack_op) [DW_OP_deref]: Handle
5490 the case where ADDR_SIZE is different from TYPE_LENGTH (type).
5494 * python/py-inferior.c (python_inferior_exit): Use inferior's exit
5496 * python/py-exitedevent.c (create_exited_event_object): Change
5497 type of 'exit_code'. Optionally add exit_code attribute.
5498 (emit_exited_event): Change type of 'exit_code'.
5499 * python/py-event.h (emit_exited_event): Update.
5500 * mi/mi-interp.c (mi_inferior_exit): Print exit code.
5501 * infrun.c (handle_inferior_event): Set exit code fields on
5503 * inferior.h (struct inferior) <has_exit_code, exit_code>: New
5505 * inferior.c (exit_inferior_1): Initialize new fields.
5509 * dwarf2expr.c (get_signed_type): New function.
5510 (execute_stack_op) <DW_OP_shra>: Always perform a signed shift.
5514 * objc-lang.c (find_methods): Increment objfile_csym earlier.
5518 * top.h (simplified_command_loop): Delete declaration.
5522 * remote-sim.c (gdbsim_open): Add the strlen of " --sysroot=" and
5523 gdb_sysroot to the "len" variable. Append both to "arg_buf".
5527 * objfiles.h (obj_section_addr): Update reference to objfile from
5529 (obj_section_endaddr): Likewise.
5533 * MAINTAINERS: Update my email address and affiliation. Also
5539 * linespec.c (get_search_block): New function.
5540 (find_methods): Add FILE_SYMTATB parameter and use it and
5541 get_search_block to pass an appropriate block to
5542 lookup_symbol_in_namespace.
5543 (decode_line_1): Record if *ARGPTR is single-quote enclosed.
5544 Check if *ARGPTR starts with a filename first.
5545 If it does, call locate_first_half again to locate the next
5546 "first half" of the linespec.
5547 Pass FILE_SYMTATB to decode_objc and decode_compound.
5548 Swallow the trailing single-quote if IS_SQUOTE_ENCLOSED.
5549 (locate_first_half): Stop on the first colon seen.
5550 (decode_compound): Add FILE_SYMTAB parameter.
5551 Pass FILE_SYMTAB to lookup_prefix_sym and find_method.
5552 (lookup_prefix_sym): Add FILE_SYMTAB parameter and use
5553 get_search_block with lookup_symbol.
5554 (find_method): Add FILE_SYMTAB parameter and pass it to
5556 (decode_objc): Use get_search_block.
5561 * cp-namespace.c (ANONYMOUS_NAMESPACE_LEN): Remove.
5562 (cp_scan_for_anonymous_namespaces): Use CP_ANONYMOUS_NAMESPACE_STR
5563 and CP_ANONYMOUS_NAMESPACE_LEN.
5564 (cp_is_anonymous): Likewise.
5565 * cp-support.h (CP_ANONYMOUS_NAMESPACE_STR): Define.
5566 (CP_ANONYMOUS_NAMESPACE_LEN): Define.
5567 * dwarf2read.c (namespace_name): Likewise.
5568 (fixup_partial_die): Likewise.
5569 * linespec.c (decode_compound): If CP_ANONYMOUS_NAMESPACE_STR is
5570 seen in the input, keep it.
5574 * target.h (enum inferior_event_type): Delete INF_QUIT_REQ.
5575 * inf-loop.h (inferior_event_handler_wrapper): Delete.
5576 * inf-loop.c (inferior_event_handler_wrapper): Delete.
5577 (inferior_event_handler): Don't handle INF_QUIT_REQ.
5578 * remote.c (_initialize_remote): Register
5579 async_remote_interrupt_twice directly as
5580 sigint_remote_twice_token event.
5584 * target.h (enum inferior_event_type): Delete INF_ERROR.
5585 * inf-loop.c (inferior_event_handler): Don't handle INF_ERROR.
5589 * interps.c (interp_set): Don't cancel continuations.
5593 * linux-nat.c (linux_lwp_is_zombie): Use xsnprintf.
5597 * continuations.h (continuation_ftype): Add `err' parameter.
5598 Document parameters.
5599 (do_all_continuations, do_all_continuations_thread)
5600 (do_all_intermediate_continuations)
5601 (do_all_intermediate_continuations_thread)
5602 (do_all_inferior_continuations): Add `err' parameter.
5603 * continuations.c (do_my_continuations_1, do_my_continuations)
5604 (do_all_inferior_continuations, do_all_continuations_ptid)
5605 (do_all_continuations_thread_callback)
5606 (do_all_continuations_thread, do_all_continuations)
5607 (do_all_intermediate_continuations_thread_callback)
5608 (do_all_intermediate_continuations_thread)
5609 (do_all_intermediate_continuations): Add `err' parameter, and pass
5610 it down all the way to the continuations proper.
5611 * inf-loop.c (inferior_event_handler): If fetching an inferior
5612 event throws an error, don't pop the target, and still call the
5613 continuations, but with `err' set. Adjust all other continuation
5615 * breakpoint.c (until_break_command_continuation): Add `err'
5617 * infcmd.c (step_1_continuation): Add `err' parameter. Don't
5618 issue another step if `err' is set.
5619 (struct until_next_continuation_args): New.
5620 (until_next_continuation): Add `err' parameter. Adjust.
5621 (until_next_command): Adjust.
5622 (struct finish_command_continuation_args): Add `thread' field.
5623 (finish_command_continuation): Add `err' parameter. Handle it.
5624 (finish_forward): Adjust.
5625 (attach_command_continuation): Add `err' parameter. Handle it.
5626 * infrun.c (infrun_thread_stop_requested_callback): Adjust to
5627 cancel the continuations.
5628 * interps.c (interp_set): Adjust to cancel the continuations.
5629 * thread.c (clear_thread_inferior_resources): Adjust to cancel the
5630 continuations rather than discarding.
5631 (free_thread): Don't clear thread inferior resources here.
5632 (delete_thread_1): Do it here instead. And do it before removing
5633 the thread from the threads list. Tag the thread as exited before
5634 clearing thread inferior resources.
5638 * infcall.c (call_function_by_hand): Rephrase error message.
5642 * defs.h (struct thread_info, struct inferior): Delete forward
5644 * breakpoint.h (struct thread_info): New forward declaration.
5645 * observer.sh (struct inferior): New forward declaration.
5646 * python/python-internal.h (struct inferior): New forward
5651 * defs.h (struct continuation, continuation_ftype)
5652 (continuation_free_arg_ftype, add_continuation)
5653 (do_all_continuations, do_all_continuations_thread)
5654 (discard_all_continuations, discard_all_continuations_thread)
5655 (add_intermediate_continuation, do_all_intermediate_continuations)
5656 (do_all_intermediate_continuations_thread)
5657 (discard_all_intermediate_continuations)
5658 (discard_all_intermediate_continuations_thread)
5659 (add_inferior_continuation, do_all_inferior_continuations)
5660 (discard_all_inferior_continuations): Move to ...
5661 * continuations.h: ... this new file.
5662 * breakpoint.c, continuations.c, event-top.c, inf-loop.c,
5663 infcmd.c, inferior.c, infrun.c, interps.c: Include
5669 Fix PR 10970, PR 12702.
5670 * linux-nat.c (linux_lwp_is_zombie): New function.
5671 (wait_lwp): Initialize status. New variable prev_mask. Block signals.
5672 Check for linux_lwp_is_zombie. Use WNOHANG and sigsuspend.
5676 * defs.h (continuation_ftype, continuation_free_arg_ftype): New
5678 (add_continuation, add_intermediate_continuation)
5679 (add_inferior_continuation): Use them.
5680 * continuations.c (struct continuation): Use them.
5681 (make_continuation_ftype): Delete.
5682 (make_continuation, add_inferior_continuation, add_continuation)
5683 (add_intermediate_continuation): Use continuation_ftype and
5684 continuation_free_arg_ftype. Rename parameters to shorter names.
5688 * continuations.c (make_continuation): Make it return void.
5689 (do_my_continuations): Rename to ...
5690 (do_my_continuations_1): ... this. Remove old_chain parameter and
5692 (do_my_continuations): New.
5693 (discard_my_continuations): Rename to ...
5694 (discard_my_continuations_1): ... this. Remove old_chain
5695 parameter and adjust.
5696 (discard_my_continuations): New.
5697 (add_inferior_continuation): Simplify.
5698 (do_all_inferior_continuations): Reimplement on top
5699 do_my_continuations.
5700 (discard_all_inferior_continuations): Simplify.
5701 (add_continuation): Simplify.
5702 (do_all_continuations_ptid): Simplify.
5703 (discard_all_continuations_thread_callback): Simplify.
5704 (add_intermediate_continuation): Simplify.
5705 (discard_all_intermediate_continuations_thread_callback):
5710 * utils.c (struct continuation, add_continuation)
5711 (add_inferior_continuation)
5712 (do_all_inferior_continuations, discard_all_inferior_continuations)
5713 (restore_thread_cleanup, do_all_continuations_ptid)
5714 (do_all_continuations_thread_callback)
5715 (do_all_continuations_thread, do_all_continuations)
5716 (discard_all_continuations_thread_callback)
5717 (discard_all_continuations_thread, discard_all_continuations)
5718 (add_intermediate_continuation)
5719 (do_all_intermediate_continuations_thread_callback)
5720 (do_all_intermediate_continuations_thread)
5721 (do_all_intermediate_continuations)
5722 (discard_all_intermediate_continuations_thread_callback)
5723 (discard_all_intermediate_continuations_thread)
5724 (discard_all_intermediate_continuations): Move to ...
5725 * continuations.c: ... this new file, and adjust to no longer
5726 implement continuations on top of cleanups.
5727 * Makefile.in (SFILES): Add continuations.c.
5728 (COMMON_OBS): Add continuations.o.
5732 * inferior.h (enum exec_direction_kind): Delete EXEC_ERROR.
5733 * infrun.c (show_exec_direction_func): Don't handle EXEC_ERROR.
5734 Internal error on invalid values.
5735 * reverse.c: Don't handle EXEC_ERROR.
5736 * mi/mi-main.c: Don't handle EXEC_ERROR.
5740 * record.c: Include event-loop.h, inf-loop.h.
5741 (record_beneath_to_async): New global.
5742 (tmp_to_async): New global.
5743 (record_async_inferior_event_token): New global.
5744 (record_open_1): Don't error out if async is enabled.
5745 (record_open): Handle to_async. Create an async event source in
5747 (record_close): Delete the async event source.
5748 (record_resumed): New global.
5749 (record_execution_dir): New global.
5750 (record_resume, record_core_resume): Set them. Register the
5751 target on the event loop.
5752 (record_wait): Rename to ...
5753 (record_wait_1): ... this. Add more debug output. Handle
5754 TARGET_WNOHANG, and the target beneath returning
5755 TARGET_WAITKIND_IGNORE.
5756 (record_wait): Reimplement on top of record_wait_1.
5757 (record_async_mask_value): New global.
5758 (record_async, record_async_mask, record_can_async_p)
5759 (record_is_async_p, record_execution_direction): New functions.
5760 (init_record_ops, init_record_core_ops): Install new methods.
5761 * infrun.c (fetch_inferior_event): Temporarily switch the global
5762 execution direction to the direction the target was going.
5763 (execution_direction): Change type to int.
5764 * target.c (default_execution_direction): New function.
5765 (update_current_target): Inherit and de_fault
5766 to_execution_direction.
5767 * target.h (struct target_ops) <to_execution_direction>: New
5769 (target_execution_direction): New macro.
5770 * inferior.h (execution_direction): Change type to int.
5774 * infcall.c (call_function_by_hand): Don't allow calling functions
5775 in reverse execution mode.
5779 * infcmd.c (finish_command): Allow async finish in reverse.
5783 * gdb_thread_db.h: Delete. Move to ...
5784 * common/gdb_thread_db.h: ... here.
5788 * infcmd.c (finish_backward): Set a step-resume breakpoint at the
5789 function's entry point instead of a manually managed momentary
5790 breakpoint, and only ever issue one proceed call.
5791 * infrun.c (handle_inferior_event) <BPSTAT_WHAT_STEP_RESUME>: If
5792 doing a reverse-finish, switch to stepi mode, to do another step.
5793 (insert_step_resume_breakpoint_at_sal): Make public.
5794 (normal_stop): No need to save function value return registers if
5796 * inferior.h (insert_step_resume_breakpoint_at_sal): Declare.
5800 * breakpoint.h (enum bptype) <bp_hp_step_resume>: New.
5801 (enum bpstat_what_main_action): Move BPSTAT_WHAT_STEP_RESUME
5802 before BPSTAT_WHAT_STOP_SILENT. Add BPSTAT_WHAT_HP_STEP_RESUME
5804 * breakpoint.c (update_breakpoints_after_exec): Also delete hp
5805 step-resume breakpoints.
5806 (print_it_typical): Handle bp_hp_step_resume.
5807 (bpstat_what): Ditto.
5808 (bptype_string): Ditto.
5809 (print_one_breakpoint_location): Ditto.
5810 (allocate_bp_location): Ditto.
5812 (breakpoint_re_set_one): Ditto.
5813 * infrun.c (handle_inferior_event): Adjust. Split
5814 BPSTAT_WHAT_STEP_RESUME handling in BPSTAT_WHAT_STEP_RESUME and
5815 BPSTAT_WHAT_HP_STEP_RESUME.
5816 (insert_step_resume_breakpoint_at_sal): Rename to ...
5817 (insert_step_resume_breakpoint_at_sal_1): ... this. Add bptype
5818 parameter. Handle it.
5819 (insert_step_resume_breakpoint_at_sal): Reimplement on top of
5820 insert_step_resume_breakpoint_at_sal_1.
5821 (insert_step_resume_breakpoint_at_frame): Rename to ...
5822 (insert_hp_step_resume_breakpoint_at_frame): ... this. Adjust to
5823 set a high-priority step-resume breakpoint.
5824 (insert_step_resume_breakpoint_at_frame): Adjust comment.
5825 (insert_step_resume_breakpoint_at_caller): Ditto.
5829 * breakpoint.c (iterate_over_related_breakpoints): New.
5830 (do_map_delete_breakpoint): New.
5831 (delete_command): Pass do_map_delete_breakpoint to
5832 map_breakpoint_numbers.
5833 (do_disable_breakpoint): New.
5834 (do_map_disable_breakpoint): Iterate over the breakpoint's related
5836 (do_enable_breakpoint): Rename to ...
5837 (enable_breakpoint_disp): ... this.
5838 (enable_breakpoint): Adjust.
5839 (do_enable_breakpoint): New.
5840 (enable_once_breakpoint): Delete.
5841 (do_map_enable_breakpoint): New.
5842 (do_map_enable_once_breakpoint): New.
5843 (enable_once_command, enable_delete_command)
5844 (delete_trace_command): Iterate over the breakpoint's related
5849 * alpha-tdep.c (alpha_cannot_fetch_register): Don't return true
5850 for ALPHA_ZERO_REGNUM.
5851 (alpha_supply_int_regs): Explicitly supply zero as the value for
5852 ALPHA_ZERO_REGNUM in the register cache.
5853 * alpha-nat.c (fetch_osf_core_registers): Ditto.
5857 * gdb/gdb_thread_db.h: Remove HAVE_UINTPTR_T.
5861 * symfile.h (struct dwarf2_section_names): New type.
5862 (struct dwarf2_debug_sections): New type.
5863 (dwarf2_has_info): Add parameter.
5864 * dwarf2read.c (dwarf2_elf_names): New variable.
5865 (INFO_SECTION, ABBREV_SECTION, LINE_SECTION, LOC_SECTION)
5866 (MACINFO_SECTION, STR_SECTION, RANGES_SECTION, TYPES_SECTION)
5867 (FRAME_SECTION, EH_FRAME_SECTION, GDB_INDEX_SECTION): Remove.
5868 (dwarf2_has_info): Add names parameter. Pass names
5869 to dwarf2_locate_sections.
5870 (section_is_p): Rewrite using the names parameter.
5871 (dwarf2_locate_sections): Use section names from the names parameter.
5872 * coffread.c (coff_symfile_read): Adjust call to dwarf2_has_info.
5873 * elfread.c (read_psyms): Ditto.
5874 * machoread.c (macho_symfile_read): Ditto.
5879 * event-loop.c (handle_file_event): Don't handle POLLHUP as error.
5884 * linespec.c (keep_name_info): Add handling for "volatile" keyword.
5885 (decode_compound): Unconditionally call keep_name_info.
5889 * breakpoint.c (watchpoint_check): If the watchpoint went out of
5890 scope, clear its command list.
5891 (map_breakpoint_numbers): Don't walk the related breakpoints list
5896 * MAINTAINERS: Move Jim Blandy to past maintainers.
5900 * symfile.h (enum dwarf2_section_enum): New type.
5901 (dwarf2_get_section_info): New prototype.
5902 * dwarf2read.c (dwarf2_get_section_info): Replace parameter
5903 section_name by sect. Use a switch to select the info.
5904 * dwarf2-frame.c (warf2_get_section_info): Remove prototype.
5905 (dwarf2_build_frame_info): Adjust calls to dwarf2_get_section_info.
5909 * solib-svr4.c (svr4_solib_create_inferior_hook): Skip setting
5910 shared library event breakpoint if there's no execution.
5914 * breakpont.c (remove_hw_watchpoints): Remove unused function.
5915 * breakpoint.h remove_hw_watchpoints(): Remove prototype.
5919 * c-lang.c (evaluate_subexp_c): Use expect_type if it is not
5924 * python/lib/gdb/printing.py (register_pretty_printer): Add missing
5925 entry for RuntimeError to doc string.
5929 * sparc-tdep.c (sparc_skip_stack_check): Recognize a new instruction
5930 sequence for probing loops.
5934 * infrun.c (user_visible_resume_ptid): Fix typos in describing
5939 * sparc-nat.c (sparc_fetch_inferior_registers): Explicitly supply
5940 zero as the value for %g0 in the register cache.
5941 * sparc-tdep.c (sparc32_supply_gregset): Likewise.
5942 * sparc64-tdep.c (sparc64_supply_gregset): Likewise.
5946 * infrun.c (proceed): Set previous_inferior_ptid here.
5947 (init_wait_for_inferior): Initialize previous_inferior_ptid from
5948 inferior_ptid, not null_ptid.
5949 (wait_for_inferior): Don't initialize previous_inferior_ptid here.
5950 (fetch_inferior_event): Nor here.
5954 * inf-loop.c (inferior_event_handler): Only output a message if
5959 * MAINTAINERS: Update my e-mail address.
5963 * infrun.c (proceed): Switch the inferior event loop to
5964 INF_EXEC_COMPLETE if the target refused to resume from a
5969 * infcmd.c: Include "inf-loop.h".
5970 (step_once): When stepping into an inline subroutine, pretend the
5971 target has run. If the target can async, switch the inferior
5972 event loop to INF_EXEC_COMPLETE.
5973 * inferior.h (user_visible_resume_ptid): Declare.
5974 * infrun.c (user_visible_resume_ptid): New function, factored out
5977 * mi/mi-main.c (mi_execute_async_cli_command): Remove assertion
5978 that the current thread is running. Merge async and sync
5983 * infcmd.c (step_1): Simplify synchronous case.
5987 * tracepoint.c: Include exceptions.h.
5988 (TFILE_PID): Move higher in file.
5989 (tfile_open): Delay pushing the tfile target until we're assured
5990 the tfile header is present in the file. Wrap reading the initial
5991 newline-terminated lines in TRY_CATCH. Pop the target if the
5992 initial setup failed. Add the tfile's thread immediately
5993 aftwards, before any non-essential setup. Don't skip
5994 post_create_inferior if there are no traceframes present in the
5996 (tfile_close): Remove redundant check for null before xfree call.
5997 (tfile_thread_alive): New function.
5998 (init_tfile_ops): Register it as to_thread_alive callback.
6002 * tracepoint.c (tfile_open): Delete #if 0'd code.
6006 Fix -readnow for -gdwarf-4 unused type units.
6007 * dwarf2read.c (struct signatured_type): Remove the field offset.
6008 (create_signatured_type_table_from_index): Remove its initialization.
6009 (create_debug_types_hash_table): Likewise. Initialize per_cu.offset
6010 instead. Add a complaint call.
6011 (process_psymtab_comp_unit): Change assignment to gdb_assert.
6012 (process_type_comp_unit, lookup_die_type, dump_die_shallow)
6013 (lookup_signatured_type_at_offset, read_signatured_type)
6014 (write_one_signatured_type): Update the field for per_cu.
6018 * python/py-inferior.c (python_inferior_exit): Use
6020 (python_on_resume): Likewise.
6024 * breakpoint.c (bpstat_do_actions_1): Call prevent_dont_repeat.
6028 * tracepoint.c (tfile_trace_find): Return directly when num is -1.
6032 * xcoffread.c (read_xcoff_symtab): Initialize fcn_aux_saved.
6036 * dwarf2read.c (dwarf2_add_field): Constify.
6037 * value.c (value_static_field): Constify.
6038 * gdbtypes.h (struct main_type) <field.field_location.physname>:
6040 * ax-gdb.c (gen_static_field): Constify
6044 * linux-nat.c (kill_callback): Use SIGKILL first.
6048 * ada-lang.c (print_it_exception): Avoid use of sprintf.
6052 * value.c (value_fn_field): Constify.
6053 * symtab.c (gdb_mangle_name): Constify.
6054 * stabsread.c (update_method_name_from_physname): Make 'physname'
6056 * p-typeprint.c (pascal_type_print_method_args): Make arguments
6057 const. Use explicit fputc_filtered loop.
6058 (pascal_type_print_base): Constify.
6059 * p-lang.h (pascal_type_print_method_args): Update.
6060 * linespec.c (add_matching_methods): Constify.
6061 (add_constructors): Likewise.
6062 * jv-typeprint.c (java_type_print_base): Constify.
6063 * gdbtypes.h (struct cplus_struct_type)
6064 <fn_fieldlist.fn_field.physname>: Now const.
6065 * dwarf2read.c (compute_delayed_physnames): Constify.
6066 (dwarf2_add_member_fn): Likewise.
6067 * c-typeprint.c (c_type_print_base): Constify. Use cleanups.
6071 * infrun.c (resume): Mention which is the current thread, and its
6072 current PC in debug output.
6073 (prepare_to_proceed): Mention the thread switching in debug
6078 * linux-thread-db.c (try_thread_db_load_from_pdir_1): Fix absolute
6079 path check. Use xmalloc and cleanups.
6080 (try_thread_db_load_from_dir): Use xmalloc and cleanups.
6084 * cp-valprint.c (cp_print_value_fields): Catch errors from
6089 * dwarf2read.c (dwarf2_get_die_type): Call
6090 get_die_type_at_offset.
6091 * dwarf2expr.c (dwarf_get_base_type): Handle NULL return from
6092 get_base_type function.
6096 * infrun.c (handle_inferior_event) <handling deferred step>: Clear
6101 * python/py-auto-load.c (source_section_scripts): Mention objfile
6106 * linux-thread-db.c (try_thread_db_load_from_pdir_1): New function.
6107 (try_thread_db_load_from_pdir): Call it. If unable to find
6108 libthread_db in directory of libpthread, see if we're looking at
6109 the separate-debug-info copy.
6111 * python/py-autoload.c (print_script): Print "Missing" instead of
6112 "No" for missing scripts.
6113 (info_auto_load_scripts): Tweak "Loaded" column to fit "Missing".
6117 * ui-file.c (stdio_file_write_async_safe): Add comment.
6121 * ui-file.c (stdio_file_write_async_safe): Add empty check for build.
6125 Support $pdir and $sdir in libthread-db-search-path.
6126 * NEWS: Mention $sdir,$pdir.
6127 * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): Add $sdir:$pdir.
6128 * linux-thread-db.c (try_thread_db_load_from_pdir): New function.
6129 (try_thread_db_load_from_sdir): New function.
6130 (try_thread_db_load_from_dir): New function.
6131 (thread_db_load_search): Handle $pdir, $sdir. Remove trying of
6132 system directories if search of libthread-db-search-path fails,
6133 that is now done via $sdir.
6134 (has_libpthread): New function.
6135 (thread_db_load): Remove search for libthread_db in directory of
6136 libpthread, that is now done via $pdir.
6138 * NEWS: Mention "info auto-load-scripts".
6139 * python/py-auto-load.c (struct auto_load_pspace_info): New member
6140 script_not_found_warning_printed.
6141 (init_loaded_scripts_info): Renamed from create_loaded_scripts_hash,
6142 all callers updated. Initialize script_not_found_warning_printed.
6143 (get_auto_load_pspace_data_for_loading): New function.
6144 (maybe_add_script): New function.
6145 (source_section_scripts): Simplify. Only print one warning regardless
6146 of the number of auto-load scripts not found.
6147 (clear_section_scripts): Clear script_not_found_warning_printed.
6148 (auto_load_objfile_script): Record script in hash table.
6149 (count_matching_scripts): New function.
6150 (maybe_print_script): Renamed from maybe_print_section_script, all
6151 callers updated. Rewrite to use ui_out_*.
6152 (info_auto_load_scripts): Renamed from
6153 maintenance_print_section_scripts, all callers updated.
6154 (gdbpy_initialize_auto_load): "maintenance print section-scripts"
6155 renamed as "info auto-load-scripts".
6159 * dwarf2expr.c (read_uleb128): Cast intermediate result.
6160 (read_sleb128): Likewise.
6164 * dwarf2loc.c (disassemble_dwarf_expression): Fix instruction
6169 * linux-nat.c (debug_linux_nat_async): Delete.
6170 Replace all references to use debug_linux_nat instead.
6171 (show_debug_linux_nat_async): Delete.
6172 (sigchld_handler): Call ui_file_write_async_safe instead of
6174 (_initialize_linux_nat): Remove `set debug lin-lwp-async'.
6175 * ui-file.c (struct ui_file): New member to_write_async_safe.
6176 (null_file_write_async_safe): New function.
6177 (ui_file_write_async_safe): New function.
6178 (set_ui_file_write_async_safe): New function.
6179 (ui_file_new): Initialize to_write_async_safe.
6180 (stdio_file_write_async_safe): New function.
6181 (struct stdio_file): New member fd.
6182 (stdio_file_new): Initialize to_write_async_safe, fd.
6183 (stdio_file_read, stdio_file_isatty): New stdio->fd instead of calling
6185 * ui-file.h (ui_file_write_async_safe_ftype): New typedef.
6186 (set_ui_file_write_async_safe): Declare.
6187 (ui_file_write_async_safe): Declare.
6191 * utils.c (do_value_free): New function.
6192 (make_cleanup_value_free): Likewise.
6193 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle value
6195 (dwarf2_loc_desc_needs_frame): Call
6196 make_cleanup_value_free_to_mark.
6197 * dwarf2expr.h (struct dwarf_expr_context) <mark>: Remove field.
6198 * dwarf2expr.c (free_dwarf_expr_context): Don't call
6200 (new_dwarf_expr_context): Don't call value_mark.
6201 * dwarf2-frame.c (execute_stack_op): Call
6202 make_cleanup_value_free_to_mark.
6203 * defs.h (make_cleanup_value_free): Declare.
6207 * mi/mi-main.c (mi_cmd_execute): Use cleanup from
6208 prepare_execute_command.
6209 * top.c (prepare_execute_command): Return cleanup.
6210 (execute_command): Use cleanup from prepare_execute_command.
6211 * top.h (prepare_execute_command): Change prototype to return
6213 * defs.h (struct value): Add opaque declaration.
6214 (make_cleanup_value_free_to_mark): Add prototype.
6215 * utils.c (do_value_free_to_mark): New function.
6216 (make_cleanup_value_free_to_mark): Likewise.
6220 * dwarf2expr.c (execute_stack_op) <DW_OP_shr>: Unconditionally
6221 cast left-hand-side to unsigned.
6226 * value.h (value_from_contents): Declare.
6227 * value.c (value_from_contents): New function.
6228 * dwarf2read.c (dwarf_stack_op_name): Add new values.
6229 (dwarf2_get_die_type): New function.
6230 * dwarf2loc.c (dwarf_expr_get_base_type): New function.
6231 (allocate_piece_closure): Acquire reference to values.
6232 (read_pieced_value): Update for value-based expressions.
6233 (write_pieced_value): Likewise.
6234 (free_pieced_value_closure): Call value_free as needed.
6235 (dwarf2_evaluate_loc_desc_full): Set get_base_type field.
6236 Update for value-based expressions.
6237 * dwarf2loc.h (dwarf2_get_die_type): Declare.
6238 * dwarf2expr.h (struct dwarf_stack_value) <value>: Change type.
6239 <get_base_type>: New field.
6240 (struct dwarf_expr_piece) <v.value>: Change type.
6241 <v.regno>: New field.
6242 (struct dwarf_expr_context) <mark>: New field.
6243 (dwarf_expr_piece, dwarf_expr_fetch): Update.
6244 (dwarf_expr_pop, dwarf_expr_push): Remove.
6245 (dwarf_expr_push_address): Declare.
6246 * dwarf2expr.c (dwarf_arch_cookie): New global.
6247 (struct dwarf_gdbarch_types): New.
6248 (dwarf_gdbarch_types_init, dwarf_expr_address_type): New
6250 (dwarf_expr_push): Change type of 'value' argument. Update. Now
6252 (dwarf_expr_push_address): New function.
6253 (dwarf_expr_pop): Now static.
6254 (dwarf_expr_fetch): Change return type.
6255 (dwarf_require_integral): New function.
6256 (dwarf_expr_fetch): Simplify.
6257 (add_piece): Update.
6258 (base_types_equal_p, dwarf_get_base_type, get_unsigned_type): New
6260 (execute_stack_op) <sign_ext>: Remove.
6261 Use values for DWARF stack.
6262 <DW_OP_GNU_const_type, DW_OP_GNU_deref_type,
6263 DW_OP_GNU_regval_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret>:
6265 (_initialize_dwarf2expr): New function.
6266 (add_piece): Update.
6267 (new_dwarf_expr_context): Set new field.
6268 (free_dwarf_expr_context): Call value_free_to_mark.
6269 * dwarf2-frame.c (no_base_type): New function.
6270 (execute_stack_op): Set get_base_type field. Update.
6274 * dwarf2read.c (read_common_block): Fix formatting.
6278 * breakpoint.c (disable_breakpoint): Disable all locations
6279 associated with a tracepoint on target if a trace experiment is
6281 (disable_command): Disable a specific tracepoint location on target if
6282 a trace experiment is running.
6283 (do_enable_breakpoint): Enable all locations associated with a
6284 tracepoint on target if a trace experiment is running.
6285 (enable_command) Enable a specific tracepoint location on target if a
6286 trace experiment is running.
6287 * target.c (update_current_target): Add INHERIT and de_fault clauses for
6288 to_supports_enable_disable_tracepoint, to_enable_tracepoint and
6289 to_disable_tracepoint.
6290 * target.h: Add declaration of struct bp_location.
6291 (struct target_ops): Add new functions
6292 to_supports_enable_disable_tracepoint, to_enable_tracepoint and
6293 to_disable_tracepoint to target operations.
6294 (target_supports_enable_disable_tracepoint): New macro.
6295 (target_enable_tracepoint): New macro.
6296 (target_disable_tracepoint): New macro.
6297 * remote.c (struct remote_state): Add new field.
6298 (remote_enable_disable_tracepoint_feature): New.
6299 (remote_protocol_features): Add new entry.
6300 (remote_supports_enable_disable_tracepoint): New.
6301 (remote_enable_tracepoint): New.
6302 (remote_disable_tracepoint): New.
6303 (init_remote_ops): Add remote_enable_tracepoint,
6304 remote_disable_tracepoint and remote_supports_enable_disable_tracepoint
6305 to remote operations.
6306 * tracepoint.c (start_tracing): Allow tracing to start without any
6307 tracepoints enabled with just a warning if they can be re-enabled
6309 * NEWS: Add news item for the new behaviour of the enable and disable
6310 GDB commands when applied to tracepoints.
6311 Add news items for the new remote packets QTEnable and QTDisable.
6315 * config.in: Regenerate.
6316 * configure: Regenerate.
6317 * configure.ac <--with-system-readline> (for readline_echoing_p):
6319 * tui/tui-io.c (tui_old_readline_echoing_p): Rename to ...
6320 (tui_old_rl_echoing_p): ... here.
6321 (tui_setup_io): Rename extern declaration readline_echoing_p to
6322 _rl_echoing_p. Adjust assignments for the both renames.
6326 * symtab.c (lookup_symtab): Run cleanup before returning.
6330 * dwarf2read.c (handle_data_member_location): New function.
6331 (dwarf2_add_field): Use it.
6332 (read_common_block): Likewise.
6336 Make addrs->SECTINDEX always defined.
6337 * symfile.c (relative_addr_info_to_section_offsets): Check for
6338 SECTINDEX -1, not for zero ADDR.
6339 (addrs_section_compar): Remove checking for invalid SECTINDEX.
6340 (addr_info_make_relative): Set SECTINDEX to -1 for unmatched entries.
6341 * symfile.h (struct section_addr_info) <sectindex>: Update the comment
6346 * linux-thread-db.c: Whitespace cleanup.
6347 (try_thread_db_load_1): Fix comment.
6349 * linux-thread-db.c (set_libthread_db_search_path): New function.
6350 (_initialize_thread_db): Add setter for libthread-db-search-path.
6354 * NEWS: Mention --with-iconv-bin.
6355 * configure.ac: New option --with-iconv-bin.
6356 * configure: Regenerate.
6357 * config.in: Regenerate.
6358 * defs.h (relocate_gdb_directory): Declare.
6359 * main.c (relocate_gdb_directory): Renamed from relocate_directory,
6360 removed progname parameter, and exported. All callers updated.
6361 * charset.c (find_charset_names): Use --with-iconv-bin if specified.
6363 * linux-nat.c (lin_lwp_attach_lwp): For !WIPSTOPPED case,
6364 adding missing call to restore_child_signals_mask.
6368 * inferior.h (wait_for_inferior): Remove `thread_exec_as_sigtrap'
6370 * infrun.c (proceed, start_remote): Adjust.
6371 (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter,
6372 and adjust to not handle it.
6373 * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
6374 * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
6375 * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
6376 * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
6377 * windows-nat.c (do_initial_windows_stuff): Adjust.
6378 * infcmd.c (attach_command): Adjust.
6379 (notice_new_inferior): Adjust.
6383 * ppc-linux-tdep.c (ppu2spu_prev_register): Handle pseudo registers.
6384 (ppu2spu_unwind_register): Mark pseudo registers unavailable.
6385 * spu-tdep.c (op_selb): Use correct value.
6389 * spu-linux-nat.c (spu_symbol_file_add_from_memory): Add NULL
6390 "parent" parameter to symbol_file_add_from_bfd call.
6395 Implement support for PowerPC BookE masked watchpoints.
6396 * NEWS: Mention masked watchpoint support. Create "Changed commands"
6398 * breakpoint.h (struct breakpoint_ops) <works_in_software_mode>: New
6399 method. Initialize to NULL in all existing breakpoint_ops instances.
6400 (struct breakpoint) <hw_wp_mask>: New field.
6401 * breakpoint.c (is_masked_watchpoint): Add prototype.
6402 (update_watchpoint): Don't set b->val for masked watchpoints. Call
6403 breakpoint's breakpoint_ops.works_in_software_mode if available.
6404 (watchpoints_triggered): Handle the case of a hardware masked
6406 (watchpoint_check): Likewise.
6407 (works_in_software_mode_watchpoint): New function.
6408 (insert_masked_watchpoint, remove_masked_watchpoint)
6409 (resources_needed_masked_watchpoint)
6410 (works_in_software_mode_masked_watchpoint, print_it_masked_watchpoint)
6411 (print_one_detail_masked_watchpoint, print_mention_masked_watchpoint)
6412 (print_recreate_masked_watchpoint, is_masked_watchpoint): New
6414 (masked_watchpoint_breakpoint_ops): New structure.
6415 (watch_command_1): Check for the existence of the `mask' parameter.
6416 Set b->ops according to the type of hardware watchpoint being created.
6417 * ppc-linux-nat.c (ppc_linux_insert_mask_watchpoint)
6418 (ppc_linux_remove_mask_watchpoint)
6419 (ppc_linux_masked_watch_num_registers): New functions.
6420 (_initialize_ppc_linux_nat): Initialize to_insert_mask_watchpoint,
6421 to_remove_mask_watchpoint and to_masked_watch_num_registers.
6422 * target.c (update_current_target): Mention to_insert_mask_watchpoint,
6423 to_remove_mask_watchpoint, and to_masked_watch_num_registers.
6424 (target_insert_mask_watchpoint, target_remove_mask_watchpoint)
6425 (target_masked_watch_num_registers): New functions.
6426 * target.h (struct target_ops) <to_insert_mask_watchpoint>,
6427 <to_remove_mask_watchpoint>, <to_masked_watch_num_registers>: New
6429 (target_insert_mask_watchpoint, target_remove_mask_watchpoint)
6430 (target_masked_watch_num_registers): Add prototypes.
6435 * dwarf2read.c (struct dwarf2_cu): New field has_loclist.
6436 (producer_is_gcc_ge_4_0): New function.
6437 (process_full_comp_unit): Set also symtab->locations_valid. Move the
6438 symtab->language code.
6439 (var_decode_location): Set cu->has_loclist.
6440 * symtab.c (skip_prologue_sal): New variables saved_pc, force_skip and
6441 skip. Intialize force_skip from locations_valid. Move the prologue
6442 skipping code into two passes.
6443 * symtab.h (struct symtab): Make the primary field a bitfield. New
6444 field locations_valid.
6448 * c-exp.y (qualified_name): Call destructor_name_p with $1.type.
6449 (classify_inner_name): Call cp_lookup_nested_type with
6451 * cp-namespace.c (cp_lookup_nested_type): New variable
6452 saved_parent_type. Call CHECK_TYPEDEF for parent_type. Call
6453 type_name_no_tag_or_error with saved_parent_type.
6454 * dwarf2read.c (load_partial_dies): Read in any children of
6455 DW_TAG_typedef with complaint in such case.
6456 * gdbtypes.c (type_name_no_tag_or_error): New function.
6457 * gdbtypes.h (type_name_no_tag_or_error): New prototype.
6458 * valops.c (destructor_name_p): New comment for parameter type. Remove
6459 type const. Make dname and cp const. Call type_name_no_tag_or_error.
6460 * value.h (destructor_name_p): Remove type const.
6464 * symtab.c (compare_symbol_name): New function.
6465 (completion_list_add_name, expand_partial_symbol_name): Call it,
6466 remove the variable ncmp.
6467 (default_make_symbol_completion_list_break_on): Reduce SYM_TEXT_LEN,
6472 Demote to sw watchpoint only in update_watchpoint.
6473 * breakpoint.c (update_watchpoint): Change between software and
6474 hardware watchpoint for all kinds of watchpoints, not just
6475 read/write ones. Determine b->exact value here instead of
6476 in watch_command_1. Error out if there are not enough resources
6477 for a read or access hardware watchpoint.
6478 (watch_command_1): Remove logic of checking whether there are
6479 enough resources available, since update_watchpoint will do that
6480 work now. Don't set b->exact here. Catch exceptions thrown by
6481 update_watchpoint and delete the watchpoint.
6482 (can_use_hardware_watchpoint): Remove exact_watchpoints argument.
6483 Use target_exact_watchpoints instead.
6484 (delete_breakpoint): Notify observers only if deleted watchpoint
6485 has a breakpoint number assigned to it.
6489 * MAINTAINERS: Add myself as a write-after-approval maintainer.
6493 * i386-tdep.c (i386_in_stack_tramp_p, i386_stack_tramp_frame_sniffer):
6495 (i386_stack_tramp_frame_unwind): New static global.
6496 (i386_match_pattern): New function, extracted from i386_match_insn.
6497 (i386_match_insn): Use i386_match_pattern.
6498 (i386_match_insn_block): New function.
6499 (i386_tramp_chain_in_reg_insns)
6500 (i386_tramp_chain_on_stack_insns): New static variables.
6501 (i386_gdbarch_init): Add i386_stack_tramp_frame_unwind to list
6506 * configure.host (xscale*): Don't handle target.
6507 * configure.tgt (thumb*-*-* | strongarm*-*-* | xscale-*-*): Don't
6512 * gdb_wait.h: remove WAITTYPE and WCOREDUMP.
6518 | * elfread.c (elf_symtab_read): Stop memory leak.
6522 * nto-tdep.c (nto_target): Replace deprecated call to
6523 cygwin_conv_to_posix_path functions by cygwin_conv_path calls.
6527 Fix false GCC warning.
6528 * breakpoint.c (do_enable_breakpoint): Initialize orig_enable_state.
6532 * breakpoint.c (update_watchpoint): Move code to change
6533 the enable state of breakpoint from here ...
6534 (do_enable_breakpoint): ... to here.
6538 * valprint.c (val_print_array_elements): Fixed poor performance
6539 of printing very large arrays with repeat_count_threshold set
6540 to unlimited. New comment.
6544 * mi/mi-parse.c (mi_parse): Remove incorrect sizeof.
6545 (mi_parse): Likewise.
6546 * breakpoint.c (break_range_command): Use sizeof char*, not
6548 (create_breakpoint): Likewise.
6549 (parse_breakpoint_sals): Likewise.
6553 * linux-nat.c (linux_child_remove_fork_catchpoint)
6554 (linux_child_remove_vfork_catchpoint)
6555 (linux_child_remove_exec_catchpoint): New functions.
6556 (linux_target_install_ops): Install them.
6562 * varobj.c (install_default_visualizer): Do not install a
6563 visualizer if the varobj is CPLUS_FAKE_CHILD.
6564 (construct_visualizer): Likewise.
6568 * symtab.c (expand_partial_symbol_name): New variable NCMP. Support
6569 case insensitive comparison.
6573 * infrun.c (proceed): Revert previous change.
6574 (resume): Instead, handle the case of signal delivery while stepping
6575 off a breakpoint location here, and only if software single-stepping
6576 is used. Handle nested signals.
6580 * arm-tdep.c (copy_unmodified): Rename to ...
6581 (arm_copy_unmodified): .. this. New.
6582 (copy_preload): Move common part to ...
6583 (install_preload): .. this. New.
6584 (arm_copy_preload): New.
6585 (copy_preload_reg): Move common part to ...
6586 (install_preload_reg): ... this. New.
6587 (arm_copy_preload_reg): New.
6588 (copy_b_bl_blx): Move common part to ...
6589 (install_b_bl_blx): .. this. New.
6590 (arm_copy_b_bl_blx): New.
6591 (copy_bx_blx_reg): Move common part to ...
6592 (install_bx_blx_reg): ... this. New.
6593 (arm_copy_bx_blx_reg): New.
6594 (copy_alu_reg): Move common part to ...
6595 (install_alu_reg): ... this. New.
6596 (arm_copy_alu_reg): New.
6597 (copy_alu_shifted_reg): Move common part to ...
6598 (install_alu_shifted_reg): ... this. New.
6599 (copy_ldr_str_ldrb_strb): Move common part to ...
6600 (install_ldr_str_ldrb_strb): ... this. New.
6601 (arm_copy_ldr_str_ldrb_strb): New.
6602 (copy_copro_load_store): Move some common part to ...
6603 (install_copy_copro_load_store): ... this. New.
6604 (arm_copy_copro_load_store): New.
6606 (arm_copy_svc): Renamed from copy_svc.
6607 (copy_undef): Delete.
6608 (arm_copy_undef): Renamed from copy_undef.
6609 (decode_ext_reg_ld_st): Delete.
6610 (arm_decode_ext_reg_ld_st): Renamed from decode_ext_reg_ld_st.
6611 (decode_svc_copro): Delete.
6612 (arm_decode_svc_copro): Renamed from decode_svc_copro.
6613 (copy_copro_load_store, copy_alu_imm): update callers.
6614 (copy_extra_ld_st, copy_block_xfer): Likewise.
6615 (decode_misc_memhint_neon, decode_unconditional): Likewise.
6616 (decode_miscellaneous, decode_dp_misc): Likewise.
6617 (decode_ld_st_word_ubyte, decode_media): Likewise.
6618 (decode_b_bl_ldmstm, decode_ext_reg_ld_st): Likewise.
6619 (decode_svc_copro, decode_misc_memhint_neon): Likewise.
6620 (decode_unconditional, decode_miscellaneous): Likewise.
6621 (decode_media, decode_b_bl_ldmstm): Likewise.
6622 (arm_process_displaced_insn): Likewise..
6623 (decode_misc_memhint_neon): Delete.
6624 (arm_decode_misc_memhint_neon): Renamed from decode_misc_memhint_neon.
6625 (decode_miscellaneous): Delete.
6626 (arm_decode_miscellaneous): Renamed from decode_miscellaneous.
6627 (decode_dp_misc): Delete.
6628 (arm_decode_dp_misc): Renamed from decode_dp_misc.
6629 (decode_ld_st_word_ubyte): Delete.
6630 (arm_decode_ld_st_word_ubyte): Renamed from decode_ld_st_word_ubyte.
6631 (decode_media): Delete.
6632 (arm_decode_media): Renamed from decode_media.
6633 (decode_b_bl_ldmstm): Delete.
6634 (arm_decode_b_bl_ldmstm): Renamed from decode_b_bl_ldmstm.
6635 (decode_ext_reg_ld_st): Delete.
6636 (arm_decode_ext_reg_ld_st): Renamed from decode_ext_reg_ld_st.
6637 (decode_unconditional): Delete.
6638 (arm_decode_unconditional): Renamed from decode_unconditional.
6642 Case insensitive lookups implementation.
6643 * dwarf2read.c: Include ctype.h.
6644 (struct mapped_index): New field version.
6645 (mapped_index_string_hash): New parameter index_version. New comment
6646 for it. Call tolower appropriately.
6647 (find_slot_in_mapped_hash): New variable cmp, initialize it, use it.
6648 Choose the right index version for mapped_index_string_hash.
6649 (dwarf2_read_index): Support also the index version 5. Initialize the
6650 new struct mapped_index field version.
6651 (hash_strtab_entry): Pass INT_MAX for the new parameter, explain why.
6652 (find_slot): Explain the version needs. Pass INT_MAX for the new
6654 (write_psymtabs_to_index): Produce version 5.
6655 * minsyms.c (lookup_minimal_symbol): New variable cmp, initialize it,
6656 use it. New comment for SYMBOL_MATCHES_SEARCH_NAME.
6657 * psymtab.c (lookup_partial_symbol): Find the
6658 SYMBOL_MATCHES_SEARCH_NAME start of the found block of matching
6660 * symtab.c (lookup_symbol_in_language): Remove the case_sensitive_off
6662 (search_symbols): Pass REG_ICASE to regcomp for case_sensitive_off.
6663 (completion_list_add_name): New variable ncmp, initialize it, use it.
6664 * symtab.h (SYMBOL_HASH_NEXT): Always call tolower.
6665 * utils.c (strcmp_iw): Support case_sensitive_off.
6666 (strcmp_iw_ordered): Sort in a way compatible with case_sensitive_off.
6667 New function comment part. New variables saved_string1,
6668 saved_string2 and case_pass. Add a proper second pass.
6672 Replace re_comp/re_exec by regcomp/regexec.
6673 * symtab.c (struct search_symbols_data): New fields preg, preg_p.
6674 (search_symbols_name_matches): Use them, use regexec.
6675 (search_symbols): New variable retval_chain, adjust the use of
6676 old_chain against it. Replace re_comp by regcomp. Use the new struct
6677 search_symbols_data fields, use regexec instead of re_exec.
6681 Format the code for the next patch.
6682 * dwarf2read.c (struct mapped_index): Include delimiting newlines.
6683 * utils.c (strcmp_iw_ordered): Reformat the code for the next patch.
6684 New variables c1 and c2.
6688 * infrun.c (proceed): Do not single-step into signal delivery
6689 when stepping off a breakpoint location.
6690 (insert_step_resume_breakpoint_at_frame): Move prototype earlier.
6691 (insert_step_resume_breakpoint_at_caller): Likewise.
6692 (insert_step_resume_breakpoint_at_sal): Likewise.
6693 (insert_longjmp_resume_breakpoint): Likewise.
6697 * common/linux-ptrace.h: Remove include <sys/wait.h>.
6701 * procfs.c (procfs_pass_signals): Fix advance declaration.
6705 * target.h (struct target_ops): Remove to_notice_signals;
6706 add to_pass_signals.
6707 (target_notice_signals): Remove.
6708 (target_pass_signals): Add prototype.
6709 * target.c (update_current_target): Remove to_notice_signals;
6710 mention to_pass_signals.
6711 (target_pass_signals): New function.
6712 (debug_to_notice_signals): Remove.
6713 (setup_target_debug): Do not install debug_to_notice_signals.
6715 * infrun.c (signal_pass): New global.
6716 (resume): Call target_pass_signals.
6717 (handle_inferior_event): Report all signals while stepping over
6718 non-steppable watchpoint. Reset trap_expected to ensure breakpoints
6719 are re-inserted when stepping over a signal handler.
6720 (signal_cache_update): New function.
6721 (signal_stop_update): Call it.
6722 (signal_print_update): Likewise.
6723 (signal_pass_update): Likewise.
6724 (handle_command): Call signal_cache_update and target_pass_signals
6725 instead of target_notice_signals.
6726 (_initialize_infrun): Initialize signal_pass.
6728 * linux-nat.c (pass_mask): New global.
6729 (linux_nat_pass_signals): New function.
6730 (linux_nat_create_inferior): Report all signals initially.
6731 (linux_nat_attach): Likewise.
6732 (linux_nat_resume): Use pass_mask to decide whether to directly
6733 handle an inferior signal.
6734 (linux_nat_wait_1): Likewise.
6735 (linux_nat_add_target): Install to_pass_signals callback.
6737 * nto-procfs.c (notice_signals): Remove.
6738 (procfs_resume): Do not call notice_signals.
6739 (procfs_notice_signals): Remove.
6740 (procfs_pass_signals): New function.
6741 (init_procfs_ops): Install to_pass_signals callback instead of
6742 to_notice_signals callback.
6743 (_initialize_procfs): Report all signals initially.
6745 * procfs.c (procfs_notice_signals): Remove.
6746 (procfs_pass_signals): New function.
6747 (procfs_target): Install to_pass_signals callback instead of
6748 to_notice_signals callback.
6749 (register_gdb_signals): Remove.
6750 (procfs_debug_inferior): Report all signals initially.
6751 (procfs_init_inferior): Remove redundant register_gdb_signals call.
6753 * remote.c (remote_pass_signals): Add numsigs and pass_signals
6754 parameters; use them instead of calling signal_..._state routines.
6755 (remote_notice_signals): Remove.
6756 (remote_start_remote): Report all signals initially.
6757 (remote_resume): Do not call remote_pass_signals.
6758 (_initialize_remote): Install to_pass_signals callback instead of
6759 to_notice_signals callback.
6763 * breakpoint.c (user_settable_breakpoint): Delete.
6764 (user_breakpoint_p): Remove check on user_settable_breakpoint.
6765 (delete_command): Check user_breakpoint_p instead of looking at
6766 the breakpoint's type.
6767 (disable_command): Ditto.
6768 (enable_command): Ditto.
6769 (delete_trace_command): Use user_breakpoint_p instead of looking
6770 at the breakpoint number directly. When checking if there are
6771 user visible tracepoints, in order to know whether to ask the user
6772 for confirmation, check whether the breakpoint is actually a
6777 * python/py-breakpoint.c (gdbpy_breakpoint_created): Fix
6782 MI breakpoint notifications.
6784 * annotate.c (breakpoint_changed): Adjust parameter type.
6785 * breakpoint.c (set_breakpoint_condition): Adjust to change
6786 in breakpoint_modified type.
6787 (breakpoint_set_commands): Likewise.
6788 (do_map_commands_command): Likewise.
6789 (bpstat_check_breakpoint_conditions): Notify that breakpoint has
6790 changed after bumping hit count.
6791 (bpstat_stop_status): Likewise.
6792 (print_one_breakpoint_location): Don't wrap in tuple here.
6793 (print_one_breakpoint): Always print individual locations.
6794 For locations, use unnamed tuple.
6795 (disable_breakpoints_in_unloaded_shlib): Notify that breakpoint
6797 (create_catchpoint, create_syscall_event_catchpoint): Call
6798 breakpoint_created obsever.
6799 (mention): Don't call breakpoint_created observer.
6800 (create_breakpoint_sal): Call breakpoint_created observer.
6801 (create_breakpoint, watch_command_1): Likewise.
6802 (create_ada_exception_breakpoint): Likewise.
6803 (delete_breakpoint): Call breakpoint_deleted breakpoint.
6804 (locations_are_equal): New.
6805 (update_breakpoint_locations): If locations were changed, notify.
6806 (set_ignore_count, disable_breakpoint, do_enable_breakpoint):
6807 Call breakpoint_modified observer.
6809 * mi/mi-cmd-break.c (breakpoint_notify): Adjust.
6810 (mi_cmd_break_insert): Don't set observers for modify and delete.
6811 * mi/mi-interp.c (mi_suppress_breakpoint_notifications): New.
6812 (mi_breakpoint_created, mi_breakpoint_deleted)
6813 (mi_breakpoint_modified): New.
6814 (mi_interpreter_init): Hook the above.
6815 * mi/mi-main.c (mi_cmd_execute): Disable breakpoint notifications
6816 while -break-* commands are executing.
6817 * mi/mi-main.h (mi_suppress_breakpoint_notifications): New.
6818 * mi/mi-out.c (struct ui_out_data): New field original_buffer.
6820 (mi_ui_out_impl): Hook in mi_redirect.
6821 (mi_field_skip): True to the name, skip the field, don't output
6822 a field with an empty value.
6824 * python/py-breakpoint.c (gdbpy_breakpoint_created)
6825 (gdbpy_breakpoint_deleted): Adjust.
6826 * tui/tui-hooks.c (tui_event_create_breakpoint)
6827 (tui_event_delete_breakpoint, tui_event_modify_breakpoint): Adjust.
6831 * nto-procfs.c (procfs_insert_hw_watchpoint): Fix prototype.
6832 (procfs_remove_hw_watchpoint): Likewise.
6836 * remote.c (remote_start_remote): Ack packet after sending the
6841 * linux-nat.c: Move common macros to ...
6842 Include linux-ptrace.h.
6843 * common/linux-ptrace.h: ... here. New.
6847 * elfread.c (elf_symfile_read): Protect dwarf2_initialize_objfile by
6848 !objfile_has_partial_symbols. New comment.
6849 * objfiles.c (objfile_has_partial_symbols): Call HAS_SYMBOLS if
6850 SYM_READ_PSYMBOLS is not present. Extend the comment.
6851 * symfile.h (struct sym_fns): Extend the sym_read_psymbols comment.
6855 * defs.h (ENUM_BITFIELD): Remove.
6860 * NEWS: Document the new gdbserver --once option.
6864 * MAINTAINERS: Update my email address.
6868 * gdb_wchar.h (USE_INTERMEDIATE_ENCODING_FUNCTION): New macro.
6869 (INTERMEDIATE_ENCODING): Change value to intermediate_encoding
6870 function call if __STDC_ISO_10646__ macro is defined.
6871 (intermediate_encoding): New prototype.
6872 * charset.c (your_gdb_wchar_t_is_bogus): New extern test variable
6873 to generate compile time error for unsupported gdb_wchar_t size.
6874 (ENDIAN_SUFFIX): New macro.
6875 (intermediate_encoding): New function.
6879 * ada-lang.c (struct add_partial_datum): Update the comment for
6880 expand_partial_symbol_name.
6881 (ada_add_partial_symbol_completions): Rename to ...
6882 (ada_expand_partial_symbol_name): ... here, change return type, update
6883 function comment, call symbol_completion_match instead of
6884 symbol_completion_add.
6885 (ada_make_symbol_completion_list): Use now expand_partial_symbol_names
6886 and ada_expand_partial_symbol_name.
6887 * dwarf2read.c (dw2_expand_symtabs_matching): Support NULL
6889 (dw2_map_symbol_names): Remove.
6890 (dwarf2_gdb_index_functions): Unlist dw2_map_symbol_names.
6891 * psymtab.c (map_symbol_names_psymtab): Remove.
6892 (expand_symtabs_matching_via_partial): Support NULL FILE_MATCHER.
6893 Support KIND == ALL_DOMAIN. Exchange the NAME_MATCHER and KIND check
6895 (psym_functions): Unlist map_symbol_names_psymtab.
6896 (map_partial_symbol_names): Rename to ...
6897 (expand_partial_symbol_names): ... here, change the FUN type, call
6898 expand_symtabs_matching with ALL_DOMAIN and NULL FILE_MATCHER now.
6899 * psymtab.h (map_partial_symbol_names): Rename to ...
6900 (expand_partial_symbol_names): ... here, change the FUN type.
6901 * symfile.h (struct quick_symbol_functions): Update the description of
6902 expand_symtabs_matching. Remove map_symbol_names.
6903 * symtab.c (search_symbols): Add ALL_DOMAIN to the function comment.
6904 (struct add_name_data): Update the comment for
6905 expand_partial_symbol_name.
6906 (add_partial_symbol_name): Rename to ...
6907 (expand_partial_symbol_name): ... here. Replace
6908 completion_list_add_name call by strncmp.
6909 (default_make_symbol_completion_list_break_on): Use now
6910 expand_partial_symbol_names and expand_partial_symbol_name.
6911 * symtab.h (enum search_domain): New element ALL_DOMAIN.
6915 * dwarf2read.c (save_gdb_index_command): Replace format
6916 documentation with a pointer to the manual.
6920 * regcache.c: Include remote.h.
6921 (enum regcache_dump_what) <regcache_dump_remote>: New enum value.
6922 (regcache_dump): Handle regcache_dump_remote.
6923 (maintenance_print_remote_registers): New function.
6924 (_initialize_regcache): Install "maint print remote-registers"
6926 * remote.c (map_regcache_remote_table): New function, factored out
6928 (init_remote_state): ... here.
6929 (remote_register_number_and_offset): New.
6930 * remote.h (remote_register_number_and_offset): Declare.
6934 * regcache.c (get_thread_arch_regcache): If creating a regcache for
6935 null_ptid, assume and allow a NULL address space, instead of
6936 asking the target for the ptid's address space.
6937 * infrun.c (ptid_is_pid): Remove assertion.
6941 * windows-tdep.c (windows_xfer_shared_library):
6942 * windows-nat.c (get_module_name, windows_make_so):
6943 * v850-tdep.c (v850_handle_pushm):
6944 * utils.c (null_cleanup, gdb_realpath):
6945 * ui-out.c (get_next_header):
6946 * tracepoint.c (clear_traceframe_info):
6947 * symtab.c (lookup_symtab):
6948 * serial.h (struct serial_ops):
6949 * mipsread.c (read_alphacoff_dynamic_symtab):
6950 * infcmd.c (print_return_value):
6951 * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address):
6952 * f-exp.y (parse_number):
6953 * exceptions.c (catch_exceptions):
6954 * dummy-frame.c (dummy_frame_this_id):
6955 * defs.h (struct cleanup):
6956 * breakpoint.c (disable_breakpoints_in_unloaded_shlib):
6957 * arm-tdep.c (arm_push_dummy_call):
6958 * amd64-tdep.h (amd64_collect_xsave):
6959 * amd64-tdep.c (amd64_collect_xsave):
6960 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache):
6961 * README (typing): Remove duplicate words.
6962 * cli/cli-decode.c (lookup_cmd_composition): Add comma.
6963 * infrun.c (siginfo_value_read): Fix typo.
6964 * solib-frv.c (frv_fdpic_find_global_pointer): Likewise.
6965 * top.c (source_line_number): Add comma.
6969 * thread.c (any_live_thread_of_process): Prioritize threads
6970 that are not executing.
6971 * gdbthread.h (any_live_thread_of_process): Update comment
6972 as per above change.
6976 * xcoffread.c (process_xcoff_symbol): Remove useless cast.
6977 (scan_xcoff_symtab): Likewise.
6981 * xcoffread.c (process_xcoff_symbol): ARI fix: Avoid assignment
6987 * xstormy16-tdep.c (xstormy16_push_dummy_call): Add local
6988 variables to simplify code and avoid == operator at end of
6989 line as this is against GNU coding standards.
6993 * solib-svr4.c (svr4_keep_data_in_core): Rename local variable
6994 lm_name to name_lm to avoid conflict with lm_name function.
6998 ARI fixes: Use only lowercase function name for static functions.
6999 * nto-tdep.c (LM_ADDR): Rename to...
7000 (lm_addr): New function name.
7001 (nto_relocate_section_addresses): Adapt to change above.
7002 * solib-sunos.c (LM_ADDR): Rename to...
7003 (lm_addr): New function name.
7004 (LM_NEXT): Rename to...
7005 (lm_next): New function name.
7006 (sunos_current_sos, sunos_relocate_section_addresses): Adapt to
7007 function name changes above.
7008 * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Rename to...
7009 (lm_addr_from_link_map): New function name.
7010 (HAS_LM_DYNAMIC_FROM_LINK_MAP): Rename to...
7011 (has_lm_dynamic_from_link_map): New function name.
7012 (LM_DYNAMIC_FROM_LINK_MAP): Rename to...
7013 (lm_dynamic_from_link_map): New function name.
7014 (LM_ADDR_CHECK): Rename to...
7015 (lm_addr_check): New function name.
7016 (LM_NEXT): Rename to...
7017 (lm_next): New function name.
7018 (LM_PREV): Rename to...
7019 (lm_prev): New function name.
7020 (LM_NAME): Rename to...
7021 (lm_name): New function name.
7022 (IGNORE_FIRST_LINK_MAP_ENTRY): Rename to...
7023 (ignore_first_link_map_entry): New function name.
7024 (svr4_keep_data_in_core): Adapt to function name changes above.
7025 (svr4_current_sos): Likewise.
7026 (enable_break): Likewise.
7027 (svr4_relocate_section_addresses): Likewise.
7032 * xtensa-tdep.c (xtensa_register_type): Use xstrprintf instead of
7033 sprintf. Simplify code and avoid loosing memory.
7034 (xtensa_register_reggroup_p): Extract assignment out of IF clause.
7035 (call0_frame_cache): Remove && operator from end of line.
7039 Fix libraries displacement if they change whether they were prelinked.
7040 * solib-svr4.c (LM_ADDR_CHECK): Set L_ADDR even if the DYNAMIC pointer
7041 does not match. Comment why.
7045 * corelow.c: Include wrapper.h.
7046 (core_open): Call now gdb_target_find_new_threads.
7047 * wrapper.c: Include target.h.
7048 (gdb_target_find_new_threads): New.
7049 * wrapper.h (gdb_target_find_new_threads): New declaration.
7053 * linux-thread-db.c (find_new_threads_callback): Exit on zero TI_TID
7054 even if !TARGET_HAS_EXECUTION.
7058 Fix convert_code_addr_to_desc_addr for ppc64 files after eu-strip.
7059 * elfread.c (elf_symfile_read): New variable synth_abfd, pass it to
7060 bfd_get_synthetic_symtab.
7061 * jit.c (jit_register_code): Pass NULL to the new parameter parent.
7062 * machoread.c (macho_add_oso_symfile): Pass main_objfile to the new
7063 parameter parent, remove the call to add_separate_debug_objfile.
7064 * solib.c (solib_read_symbols): Pass NULL to the new parameter parent.
7065 * symfile-mem.c (symbol_file_add_from_memory): Likewise.
7066 * symfile.c (symbol_file_add_with_addrs_or_offsets): New parameter
7067 parent, new comment for it, call add_separate_debug_objfile for it.
7068 (symbol_file_add_separate): Pass objfile as the parameter parent,
7069 remove the call to add_separate_debug_objfile.
7070 (symbol_file_add_from_bfd): New parameter parent, pass it.
7071 (symbol_file_add): Pass NULL to the new parameter parent.
7072 * symfile.h (symbol_file_add_from_bfd): New parameter parent.
7076 * elfread.c (elf_symtab_read): Do not ignore .L symbols if they are
7081 Fix Python access to inlined frames.
7082 * python/py-frame.c (frapy_read_var): Find BLOCK using get_frame_block.
7083 * python/py-symbol.c (gdbpy_lookup_symbol): Likewise.
7087 * dwarf2read.c (add_index_entry): Use VEC_last, not VEC_length.
7091 * MAINTAINERS: Add myself to write-after-approval section.
7095 * remote-sim.c (sim_command_completer): New function.
7096 (_initialize_remote_sim): Set completer to sim_command_completer.
7100 * breakpoint.c (print_exception_catchpoint): Rename to ...
7101 (print_it_exception_catchpoint): ... this.
7102 (gnu_v3_exception_catchpoint_ops): Update with new name
7103 for print_it_exception_catchpoint.
7107 * MAINTAINERS: Add myself for write after approval privileges.
7111 * MAINTAINERS: Add myself as a write-after-approval maintainer.
7115 * breakpoint.c (watch_command_1): Remove colon from exp_string.
7119 * breakpoint.c (save_breakpoints): Verify whether
7120 breakpoint_ops.print_recreate is defined before calling it.
7124 Fix failure with --enable-maintainer-mode.
7125 * Makefile.in (aclocal_m4_deps): Updated gnulib dependencies.
7130 * symtab.c (search_symbols): Reorder the KIND description in the
7131 function comment. Remove the unused 4th element of types, types2,
7132 types3 and types4. New gdb_assert on KIND.
7133 (symtab_symbol_info): Remove the unused 4th element of classnames.
7134 New gdb_assert on KIND.
7135 * symtab.h (enum search_domain): New warning in the enum comment.
7136 Assign numbers to the elements VARIABLES_DOMAIN, FUNCTIONS_DOMAIN and
7141 Fix crash of gdb save-index on a STABS file.
7142 * dwarf2read.c (write_psymtabs_to_index): Return also on no
7147 Fix DW_AT_accessibility compatibility with gcc-4.6+.
7148 * dwarf2read.c: Include ctype.h.
7149 (producer_is_gxx_lt_4_6, dwarf2_default_access_attribute): New
7151 (dwarf2_add_field): Fix new_field->accessibility by calling
7152 dwarf2_default_access_attribute. Restructure setting accessibility
7154 (dwarf2_add_member_fn): New variable accessibility. Fix fnp
7155 is_private and is_protected by calling
7156 dwarf2_default_access_attribute.
7160 * rx-tdep.c (rx_frame_unwind): Add default_frame_unwind_stop_reason
7161 to the initialization.
7165 * Add default_frame_unwind_stop_reason value to libunwind_frame_unwind
7170 Remove support for old Cygwin 1.5 versions.
7171 * remote-fileio.c: Remove macros used to emulate new cygwin_conv_path
7172 function on old Cygwin version.
7173 * windows-nat.c: Remove cygwin version check and always define
7174 __USEWIDE for Cygwin compilation.
7178 * arm-linux-tdep.c (arm_linux_copy_svc): Remove parameters INSN
7180 * arm-tdep.c (cleanup_svc): Handle variable instruction size.
7181 (arm_copy_svc): Remove parameters INSN and TO.
7182 (decode_svc_copro): Update caller.
7183 * arm-tdep.h (struct displaced_step_closure): Remove parameters
7184 from function pointer `copy_svc_os'.
7188 * arm-tdep.c (cleanup_branch): Set a correct return address in
7189 LR for ARM and Thumb.
7194 * dictionary.c (dict_hash): Use SYMBOL_HASH_NEXT.
7195 * dwarf2read.c (mapped_index_string_hash): Refer to SYMBOL_HASH_NEXT
7196 in the function comment, a new note on values compatibility.
7197 * minsyms.c (msymbol_hash_iw, msymbol_hash): Use SYMBOL_HASH_NEXT.
7198 * symtab.h (SYMBOL_HASH_NEXT): New.
7202 * ppc-linux-nat.c (check_condition): Add len output parameter.
7203 Set it based on the memory region referenced in the condition
7204 expression. Update all callers.
7208 Fix crash regression on systems featuring .gdb_index.
7209 * objfiles.c (free_objfile): Move the
7210 forget_cached_source_info_for_objfile call earlier. Comment it.
7211 Extend the comment for objfile_free_data.
7215 Fix regression of displaying the debug format.
7216 * buildsym.c (end_symtab): Set symtab's debugformat and producer from
7221 * cli/cli-interp.c (struct captured_execute_command_args):
7223 (do_captured_execute_command): Remove.
7224 (safe_execute_command): Use TRY_CATCH.
7225 * cli/cli-script.c (struct wrapped_read_command_file_args):
7227 (wrapped_read_command_file): Remove.
7228 (script_from_file): Use TRY_CATCH.
7229 * exceptions.c (catch_exception): Remove.
7230 * exceptions.h (catch_exception): Remove.
7231 (deprecated_throw_reason): Update comment.
7232 * mi/mi-main.c (captured_mi_execute_command): Change 'data'
7233 argument to 'context'.
7234 (mi_execute_command): Use TRY_CATCH.
7235 * remote.c (struct start_remote_args): Remove.
7236 (remote_start_remote): Update; change arguments.
7237 (remote_open_1): Use TRY_CATCH.
7241 * tracepoint.c (scope_info): Update.
7242 * symtab.c (decode_line_spec): Update.
7243 * python/python.c (gdbpy_decode_line): Update.
7244 * linespec.h (decode_line_1): Update.
7245 * linespec.c (decode_line_1): Remove 'not_found_ptr' argument.
7246 (decode_compound, find_method, symtab_from_filename)
7247 (decode_variable): Likewise.
7248 * cli/cli-cmds.c (edit_command): Update.
7249 (list_command): Update.
7250 * breakpoint.c (parse_breakpoint_sals): Remove 'not_found_ptr'
7252 (create_breakpoint): Update.
7253 (until_break_command): Update.
7254 (addr_string_to_sals): Update.
7255 (decode_line_spec_1): Update.
7259 * breakpoint.c (struct captured_parse_breakpoint_args): Remove.
7260 (do_captured_parse_breakpoint): Remove.
7261 (create_breakpoint): `e' is now volatile. Remove `parse_args'.
7262 Use TRY_CATCH directly.
7266 * symtab.h (free_symtab): Remove.
7267 (forget_cached_source_info_for_objfile): Declare.
7268 * symmisc.c (free_symtab): Remove.
7269 * source.c (forget_cached_source_info_for_objfile): New function.
7270 (forget_cached_source_info): Use it.
7271 * objfiles.c (free_objfile): Simplify check before calling
7272 clear_current_source_symtab_and_line. Call
7273 forget_cached_source_info_for_objfile.
7277 * mdebugread.c (psymtab_to_symtab_1): Copy linetable to obstack.
7278 (new_symtab): Don't set `free_code' on symtab.
7279 (new_linetable): Properly handle size==0.
7280 * symtab.h (struct symtab) <free_code, free_func>: Remove.
7281 * symmisc.c (free_symtab): Don't free the linetable. Don't call
7283 * jv-lang.c (struct jv_per_objfile_data): New.
7284 (jv_per_objfile_free): Free the data.
7285 (get_dynamics_objfile): Allocate a jv_per_objfile_data.
7286 (get_java_class_symtab): Set the `dict' field on the
7287 jv_per_objfile_data.
7288 (free_class_block): Remove.
7289 * buildsym.c (end_symtab): Don't set `free_code' or `free_func' on
7294 * symfile.c (reread_symbols): Update.
7295 * objfiles.h (struct objfile) <cp_namespace_symtab>: Remove
7297 * objfiles.c (allocate_objfile): Update.
7298 * cp-support.h (cp_check_possible_namespace_symbols): Don't
7300 * cp-namespace.c (lookup_symbol_file): Don't call
7301 lookup_possible_namespace_symbol.
7302 (initialize_namespace_symtab, get_possible_namespace_block)
7303 (free_namespace_block, cp_check_possible_namespace_symbols)
7304 (check_possible_namespace_symbols_loop)
7305 (check_one_possible_namespace_symbol)
7306 (lookup_possible_namespace_symbol): Remove.
7307 (maintenance_cplus_namespace): Replace with notice.
7308 (_initialize_cp_namespace): Deprecate `maint cplus namespace'.
7312 * xcoffread.c (read_xcoff_symtab): Make `debugfmt' const.
7313 * symtab.h (struct symtab) <producer, debugformat>: Now const.
7314 * symmisc.c (free_symtab): Don't free debugformat.
7315 * buildsym.h (struct subfile) <producer, debugformat>: Now const.
7316 (record_debugformat, record_producer): Document.
7317 * buildsym.c (end_symtab): Don't save debugformat and producer
7319 (end_symtab): Don't free debugformat and producer fields.
7320 (record_debugformat): Don't call xstrdup.
7321 (record_producer): Likewise.
7325 * source.c (find_source_lines): Remove LSEEK_NOT_LINEAR code.
7326 (source_line_charpos, source_charpos_line): Remove.
7330 * symtab.h (domain_enum): Split in two...
7331 (enum search_domain): New.
7332 (search_symbols): Update.
7333 * symtab.c (print_symbol_info, symtab_symbol_info): Remove
7334 redundant declarations.
7335 (search_symbols): Change 'kind' argument to search_domain.
7337 (print_symbol_info): Likewise.
7338 (symtab_symbol_info): Likewise.
7339 * symfile.h (struct quick_symbol_functions)
7340 <pre_expand_symtabs_matching>: Change type of 'kind' argument.
7341 <expand_symtabs_matching>: Likewise.
7342 * psymtab.c (pre_expand_symtabs_matching_psymtabs): Update.
7343 (expand_symtabs_matching_via_partial): Update.
7344 * dwarf2read.c (dw2_pre_expand_symtabs_matching): Update.
7345 (dw2_expand_symtabs_for_function): Update.
7346 * block.h: Moved anonymous enum...
7347 * defs.h (enum block_enum): ... here. Now named.
7351 GDB 7.3 branch created (branch timestamp: 2011-04-01 01:00 UTC)
7352 * version.in: Bump version to 7.3.50.20110403-cvs.
7356 * NEWS: Create a new section for the next release branch.
7357 Rename the section of the current branch, now that it has
7362 * arm-tdep.c (arm_gdbarch_init): Enfore correct register number
7363 for "fpscr" in target description.
7367 * dwarf2read.c (find_slot_in_mapped_hash): New variable back_to,
7368 initialize it. Delay HASH initialization. Strip the part after open
7369 parenthesis for languages with qualifiers. Call do_cleanups.
7373 * utils.c (report_command_stats): Don't print `-' for negative
7378 * ada-lang.c (ada_is_simple_array_type, ada_value_slice_from_ptr)
7379 (ada_value_slice, empty_array, to_fixed_array_type): Deal with
7384 * breakpoint.h (bpdisp_text): Add declaration.
7385 * breakpoint.c (bpdisp_text): Make non-static.
7386 * ada-lang.c: #include "mi/mi-common.h".
7387 (print_it_exception): Rewrite to improve GDB/MI output.
7391 * arm-tdep.h (struct address_space): Add forward declaration.
7395 * arm-tdep.h (arm_insert_single_step_breakpoint): Add prototype.
7396 * arm-tdep.c (arm_override_mode): New global.
7397 (arm_pc_is_thumb): Respect arm_override_mode. Remove single-step
7398 execution mode heuristics.
7399 (thumb_get_next_pc_raw): Remove INSERT_BKTP argument; always insert
7400 second single-step breakpoint if needed, using
7401 arm_insert_single_step_breakpoint.
7402 (arm_get_next_pc_raw): Remove INSERT_BKTP argument. Only handle
7403 ARM execution mode, do not call thumb_get_next_pc_raw.
7404 (arm_get_next_pc): Encode execution mode in return value. Call
7405 either arm_get_next_pc_raw or thumb_get_next_pc_raw.
7406 (arm_insert_single_step_breakpoint): New function.
7407 (arm_software_single_step): Call it.
7408 * arm-linux-tdep.c (arm_linux_sigreturn_return_addr): Add IS_THUMB
7409 argument to return execution mode of sigreturn target.
7410 (arm_linux_syscall_next_pc): Use it.
7411 (arm_linux_copy_svc): Update call.
7412 (arm_linux_software_single_step): Call
7413 arm_insert_single_step_breakpoint.
7417 * dwarf2read.c (dwarf2_read_index): Fix .gdb_index version number in
7422 * varobj.c (update_dynamic_varobj_children): Properly handle
7423 errors from iterator.
7427 * dwarf2read.c (dwarf2_name): Initialize DEMANGLED. Avoid demangling
7428 struct linkage name twice.
7432 * python/py-prettyprint.c (print_stack_unless_memory_error): Add
7433 missing ">" to message.
7437 * varobj.c (instantiate_pretty_printer): Remove duplicate
7442 * i386-tdep.c (i386_frame_prev_register): Unwind SP from memory
7443 if neither saved value nor register available (e.g. signal frame).
7447 * macroexp.c (expand): Avoid uninitialized variable
7452 * breakpoint.c (break_range_command): Fix typo in comment.
7457 Implement support for PowerPC BookE ranged breakpoints.
7458 * NEWS: Mention support for ranged breakpoints on embedded PowerPC.
7459 * breakpoint.h (struct bp_target_info) <length>: New member
7461 (struct breakpoint_ops) <breakpoint_hit>: Take struct bp_location
7462 instead of struct breakpoint as argument, and also add ASPACE
7463 and BP_ADDR arguments. Update all callers.
7464 (struct breakpoint_ops) <print_one_detail>: New method.
7465 (struct breakpoint) <addr_string_range_end>: New member variable.
7466 * breakpoint.c (breakpoint_location_address_match): Add function
7468 (insert_bp_location): Set bl->target_info.length.
7469 (breakpoint_here_p): Call breakpoint_location_address_match.
7470 (moribund_breakpoint_here_p): Likewise.
7471 (regular_breakpoint_inserted_here_p): Likewise.
7472 (breakpoint_thread_match): Likewise.
7473 (bpstat_stop_status): Likewise.
7474 (bpstat_check_location): Move call to
7475 breakpoint_ops.breakpoint_hit to the top.
7476 (print_one_breakpoint_location): Call
7477 breakpoint_ops.print_one_detail if available.
7478 (breakpoint_address_match_range): New function.
7479 (breakpoint_location_address_match): Likewise.
7480 (breakpoint_locations_match): Compare the length field of the
7482 (hw_breakpoint_used_count): Count resources used by all locations
7483 in a breakpoint, and use breakpoint_ops.resources_needed if
7485 (breakpoint_hit_ranged_breakpoint): New function.
7486 (resources_needed_ranged_breakpoint): Likewise.
7487 (print_it_ranged_breakpoint): Likewise.
7488 (print_one_ranged_breakpoint): Likewise.
7489 (print_one_detail_ranged_breakpoint): Likewise.
7490 (print_mention_ranged_breakpoint): Likewise.
7491 (print_recreate_ranged_breakpoint): Likewise.
7492 (ranged_breakpoint_ops): New structure.
7493 (find_breakpoint_range_end): New function.
7494 (break_range_command): Likewise.
7495 (delete_breakpoint): Free addr_string_range_end.
7496 (update_breakpoint_locations): Add SALS_END argument. Update
7497 all callers. Calculate breakpoint length if a non-zero SALS_END
7498 is given. Call breakpoint_locations_match instead of
7499 breakpoint_address_match.
7500 (reset_breakpoint): Find SaL of the end of the range if B is a
7502 (_initialize_breakpoint): Register break-range command.
7503 * defs.h (print_core_address): Add function prototype.
7504 * ppc-linux-nat.c (ppc_linux_ranged_break_num_registers): New
7506 (ppc_linux_insert_hw_breakpoint): Support ranged breakpoints.
7507 (ppc_linux_remove_hw_breakpoint): Likewise.
7508 (_initialize_ppc_linux_nat): Initialize
7509 to_ranged_break_num_registers.
7510 * target.c (update_current_target): Add comment about
7511 to_ranged_break_num_registers.
7512 (target_ranged_break_num_registers): New function.
7513 * target.h (struct target_ops) <to_ranged_break_num_registers>:
7515 (target_ranged_break_num_registers): Add function prototype.
7516 * ui-out.c (ui_out_field_core_addr): Move address-printing logic to ...
7517 * utils.c (print_core_address): ... here.
7521 * breakpoint.c (addr_string_to_sals): Avoid uninitialized
7522 variable compiler warning.
7526 * breakpoint.c (breakpoint_re_set_one): Factor out breakpoint-resetting
7528 (re_set_breakpoint): ... to here ...
7529 (addr_string_to_sals): ... and here.
7533 * Makefile.in (SFILES): Add missing C sources.
7534 (HFILES_NO_SRCDIR): Remove gdbserver subdirectory headers.
7535 Add missing headers.
7539 * .gitignore: New file.
7543 * NEWS: Mention new cfi device simulation.
7547 * dwarf2read.c (fixup_partial_die): Handle linkage name on
7548 otherwise anonymous types.
7549 (dwarf2_name): Likewise.
7550 * valops.c (value_struct_elt_for_reference): Refine artificial
7551 type logic. Call error if j==-1.
7555 Fix false GCC warning.
7556 * infcall.c (find_function_addr): Initialize funaddr.
7560 Fix mingw compilation with --enable-targets=all.
7561 * remote-mips.c (gdb_usleep.h): Include header.
7562 (mips_enter_debug): Use gdb_usleep instead of sleep.
7566 Support resolution of STT_GNU_IFUNC via breakpoints.
7567 * breakpoint.c (print_it_typical): Support bp_gnu_ifunc_resolver and
7568 bp_gnu_ifunc_resolver_return.
7569 (bpstat_what): Rename parameter to bs_head, new variable bs, adjust
7570 the loop. Support bp_gnu_ifunc_resolver and
7571 bp_gnu_ifunc_resolver_return. New comment after the loop. New loop
7572 for bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return
7574 (bptype_string, print_one_breakpoint_location): Support
7575 bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return.
7576 (user_settable_breakpoint): Return true also for
7577 bp_gnu_ifunc_resolver.
7578 (allocate_bp_location): Support bp_gnu_ifunc_resolver and
7579 bp_gnu_ifunc_resolver_return.
7580 (set_breakpoint_location_function): New parameter explicit_loc,
7581 describe it. Call find_pc_partial_function_gnu_ifunc with new
7582 variable IS_GNU_IFUNC and adjust the address for STT_GNU_IFUNC if
7583 EXPLICIT_LOC is not set.
7584 (set_raw_breakpoint): Set EXPLICIT_LOC for
7585 set_breakpoint_location_function.
7586 (clone_momentary_breakpoint): Use true for EXPLICIT_LOC of
7587 set_breakpoint_location_function.
7588 (mention): Support bp_gnu_ifunc_resolver and
7589 bp_gnu_ifunc_resolver_return.
7590 (add_location_to_breakpoint): Set EXPLICIT_LOC for
7591 set_breakpoint_location_function.
7592 (update_breakpoint_locations): Remove static.
7593 (breakpoint_re_set_one): Support bp_gnu_ifunc_resolver and
7594 bp_gnu_ifunc_resolver_return.
7595 * breakpoint.h (enum bptype): New fields bp_gnu_ifunc_resolver and
7596 bp_gnu_ifunc_resolver_return.
7597 (update_breakpoint_locations): New declaration.
7598 * elfread.c: Include gdbthread.h and regcache.h.
7599 (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop): New
7601 (elf_gnu_ifunc_fns): Install them.
7602 * minsyms.c (stub_gnu_ifunc_resolver_stop)
7603 (stub_gnu_ifunc_resolver_return_stop): New functions.
7604 (stub_gnu_ifunc_fns): Install them.
7605 * symtab.h (struct gnu_ifunc_fns): New fields gnu_ifunc_resolver_stop
7606 and gnu_ifunc_resolver_return_stop.
7607 (gnu_ifunc_resolver_stop, gnu_ifunc_resolver_return_stop): New.
7611 STT_GNU_IFUNC reader implementation.
7612 * elfread.c: Include gdbtypes.h, value.h and infcall.h.
7613 (SYMBOL_GOT_PLT_SUFFIX, elf_rel_plt_read)
7614 (elf_objfile_gnu_ifunc_cache_data, struct elf_gnu_ifunc_cache)
7615 (elf_gnu_ifunc_cache_hash, elf_gnu_ifunc_cache_eq)
7616 (elf_gnu_ifunc_record_cache, elf_gnu_ifunc_resolve_by_cache)
7617 (elf_gnu_ifunc_resolve_by_got, elf_gnu_ifunc_resolve_name)
7618 (elf_gnu_ifunc_resolve_addr): New.
7619 (elf_symfile_read): Call elf_rel_plt_read.
7620 (elf_gnu_ifunc_fns): New.
7621 (_initialize_elfread): Initialize elf_objfile_gnu_ifunc_cache_data.
7622 Install elf_gnu_ifunc_fns.
7623 * infcall.c (find_function_return_type): New function.
7624 (find_function_addr): Resolve TYPE_GNU_IFUNC functions, if possible.
7625 * minsyms.c (stub_gnu_ifunc_resolve_addr)
7626 (stub_gnu_ifunc_resolve_name): New functions.
7627 (stub_gnu_ifunc_fns, gnu_ifunc_fns_p): New variables.
7628 * symtab.h (struct gnu_ifunc_fns, gnu_ifunc_resolve_addr)
7629 (gnu_ifunc_resolve_name, gnu_ifunc_fns_p): New.
7633 Code cleanup for later STT_GNU_IFUNC support.
7634 * infcall.c (find_function_addr): Remove variable code, use explicit
7635 dereferences for it. Move VALUE_TYPE initialization later.
7639 GDB find_pc_partial_function support for STT_GNU_IFUNC.
7640 * blockframe.c (cache_pc_function_is_gnu_ifunc): New variable.
7641 (clear_pc_function_cache): Clear it.
7642 (find_pc_partial_function): Rename to ...
7643 (find_pc_partial_function_gnu_ifunc): ... this function. New
7644 parameter is_gnu_ifunc_p, describe it. Set *IS_GNU_IFUNC_P.
7645 (find_pc_partial_function): New wrapper for this function.
7646 * symtab.h (find_pc_partial_function_gnu_ifunc): New declaration.
7650 GDB internal type support for STT_GNU_IFUNC.
7651 * elfread.c (record_minimal_symbol): Support mst_text_gnu_ifunc.
7652 (elf_symtab_read): Set mst_text_gnu_ifunc for
7653 BSF_GNU_INDIRECT_FUNCTION.
7654 * eval.c (evaluate_subexp_standard): Support TYPE_GNU_IFUNC.
7655 * gdbtypes.c (init_type): Support TYPE_FLAG_GNU_IFUNC,
7656 builtin_func_func, nodebug_text_gnu_ifunc_symbol and
7657 nodebug_got_plt_symbol.
7658 * gdbtypes.h (enum type_flag_value): New entry TYPE_FLAG_GNU_IFUNC.
7659 (TYPE_GNU_IFUNC): New.
7660 (struct main_type): New field flag_gnu_ifunc.
7661 (struct builtin_type): New field builtin_func_func.
7662 (struct objfile_type): New fields nodebug_text_gnu_ifunc_symbol and
7663 nodebug_got_plt_symbol.
7664 * minsyms.c (lookup_minimal_symbol_text): Support mst_text_gnu_ifunc.
7665 (in_gnu_ifunc_stub): New.
7666 (prim_record_minimal_symbol, find_solib_trampoline_target): Support
7668 * parse.c (write_exp_msymbol): New variable ifunc_msym. Detect and
7669 support mst_text_gnu_ifunc. Support mst_slot_got_plt.
7670 * solib-svr4.c (svr4_in_dynsym_resolve_code): Return true also for
7672 * symmisc.c (dump_msymbols): Support mst_text_gnu_ifunc.
7673 * symtab.c (search_symbols): Likewise.
7674 * symtab.h (enum minimal_symbol_type): New fields mst_text_gnu_ifunc
7675 and mst_slot_got_plt.
7676 (in_gnu_ifunc_stub): New declaration.
7680 Support a ring of related breakpoints.
7681 * breakpoint.c (watchpoint_del_at_next_stop): New, move here code from
7682 other functions, add gdb_assert.
7683 (update_watchpoint, watchpoint_check): Add gdb_assert. Use
7684 watchpoint_del_at_next_stop.
7685 (bpstat_check_watchpoint): Use watchpoint_del_at_next_stop.
7686 (bpstat_stop_status): Handle ring in related_breakpoint.
7687 (set_raw_breakpoint_without_location): Initialize ring in
7689 (delete_breakpoint): Handle ring in related_breakpoint, use
7690 watchpoint_del_at_next_stop.
7691 (map_breakpoint_numbers): Handle ring in related_breakpoint.
7696 * dwarf2read.c (prepare_one_comp_unit): Don't call set_cu_language
7697 with `language_minimal'.
7701 * arm-tdep.c (arm_elf_make_msymbol_special): Use ARM_SYM_BRANCH_TYPE
7702 instead of checking for STT_ARM_TFUNC symbol type.
7706 * linespec.c (symbol_found): Restore line-based result for
7707 non-LOC_LABEL symbols.
7711 * tui/tui-source.c (tui_set_source_content): Use filename_cmp
7712 instead of strcmp for comparison.
7713 (tui_source_is_displayed): Likewise.
7714 * tui/tui-winsource.c (tui_update_breakpoint_info): Likewise.
7718 * dwarf2read.c (lookup_signatured_type): Use DW_FORM_ref_sig8 in
7720 (skip_one_die): Use DW_FORM_ref_sig8, not DW_FORM_sig8.
7721 (find_partial_die_in_comp_unit): Likewise in comment.
7722 (read_attribute_value): Likewise.
7723 (lookup_die_type): Likewise.
7724 (dwarf_form_name): Likewise.
7725 (dump_die_shallow): Likewise.
7726 (follow_die_ref_or_sig): Likewise.
7730 PR breakpoints/11816:
7731 * linespec.c (decode_line_1): Parse `function:label' linespecs.
7732 (decode_compound): Update.
7733 (find_function_symbol): New function.
7734 (decode_dollar): Update.
7735 (decode_label): Add 'function_symbol' parameter. Handle
7736 function-relative labels.
7737 (decode_variable): Update.
7738 (symbol_found): Add 'function_symbol' parameter. Use label's PC,
7739 not its line. Set `special_display' and canonical name for
7744 * linespec.h (struct linespec_result) <special_display>: New
7746 * breakpoint.h (struct breakpoint) <display_canonical>: New
7748 * breakpoint.c (print_breakpoint_location): Respect
7750 (create_breakpoint_sal): Add 'display_canonical' parameter.
7751 (create_breakpoints_sal): Update.
7752 (create_breakpoint): Update.
7756 * symtab.c (decode_line_spec): Update.
7757 * linespec.c (build_canonical_line_spec): Change type of
7759 (decode_line_2, decode_line_1, decode_objc, decode_compound)
7760 (find_method, decode_all_digits, decode_dollar, decode_label)
7761 (symbol_found): Likewise.
7762 (init_linespec_result): New function.
7763 * breakpoint.c (struct captured_parse_breakpoint_args)
7764 <canonical_p>: New field, replaces addr_string_p.
7765 (create_breakpoints_sal): Add 'canonical' parameter, replacing
7767 (parse_breakpoint_sals): Likewise.
7768 (do_captured_parse_breakpoint): Update.
7769 (create_breakpoint): Use struct linespec_result.
7770 (until_break_command): Update.
7771 (breakpoint_re_set_one): Update.
7772 (decode_line_spec_1): Update.
7773 * linespec.h (struct linespec_result): New.
7774 (init_linespec_result): Declare.
7778 * regcache.c (regcache_raw_read): If the target didn't supply a
7779 given raw register, mark it as unavailable.
7783 * breakpoint.c (clear_command): Use filename_cmp
7784 instead of strcmp for comparison.
7785 * buildsym.c (watch_main_source_file_lossage): Likewise.
7786 (patch_subfile_names): Use IS_DIR_SEPARATOR instead of
7787 checking just for slash.
7788 * dbxread.c (read_dbx_symtab): Use lbasename instead of
7789 strrchr and filename_cmp instead of strcmp for filenames.
7790 (add_old_header_file): Use filename_cmp
7791 instead of strcmp for comparison.
7792 * exec.c (exec_set_section_address): Likewise.
7793 * macrotab.c (macro_lookup_inclusion): Likewise.
7794 (macro_lookup_inclusion): Likewise.
7795 * elfread.c (_initialize_elfread): Likewise.
7796 (elfstab_offset_sections): Likewise.
7797 (elfstab_offset_sections): Use lbasename instead of
7799 * mdebugread.c (parse_partial_symbols): Likewise.
7800 (arse_partial_symbols): Use filename_(n)cmp instead of
7801 str(n)cmp for comparison.
7802 * minsyms.c (lookup_minimal_symbol): Likewise.
7803 * psymtab.c (read_psymtabs_with_filename): Likewise.
7804 * solib.c (solib_read_symbols): Likewise.
7805 (reload_shared_libraries_1): Likewise.
7806 * symmisc.c (maintenance_print_symbols): Likewise.
7807 * symfile.c (separate_debug_file_exists): Likewise.
7808 (reread_symbols): Likewise.
7809 (find_separate_debug_file_by_debuglink): Likewise.
7810 * remote-fileio.c (remote_fileio_func_rename): Likewise.
7811 * source.c (add_path): Likewise.
7812 * symtab.c (filename_seen): Likewise.
7813 (file_matches): Likewise.
7814 (print_symbol_info): Likewise.
7815 (maybe_add_partial_symtab_filename): Likewise.
7816 (make_source_files_completion_list): Likewise.
7817 * xml-syscall.c (init_sysinfo): Likewise.
7818 * windows-nat.c (_initialize_check_for_gdb_ini): Use
7819 IS_DIR_SEPARATOR for checking for trailing path separator.
7823 * dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_entry_value. New
7824 label abort_expression.
7825 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle
7826 DWARF_VALUE_OPTIMIZED_OUT.
7831 * c-typeprint.c (c_type_print_args): Change parameter show_artificial
7832 to linkage_name. Invert its value. Update the function comment.
7833 (c_type_print_varspec_suffix): Invert it at the caller.
7834 * dwarf2read.c (dwarf2_compute_name): Invert it at the caller.
7838 * infcmd.c (post_create_inferior): Ignore NOT_AVAILABLE_ERROR
7839 errors when reading the `stop_pc'.
7840 * printcmd.c (pc_prefix): Use get_frame_pc_if_available instead of
7845 * NEWS: Document gdb.Write stream keyword.
7851 * dwarf2read.c (producer_is_gxx_lt_4_6): New function.
7852 (dwarf2_add_field): Fix new_field->accessibility for
7853 cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
7859 * python/py-function.c (fnpy_call): Treat GdbErrors differently to
7860 other error classes. Do not print stack trace.
7864 * dwarf2read.c (producer_is_gxx_lt_4_6): New function.
7865 (dwarf2_add_field): Fix new_field->accessibility for
7866 cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
7870 * arm-tdep.c (arm_analyze_prologue): Do not abort parsing when
7871 encountering a load via a non-SP register.
7875 * tramp-frame.c (tramp_frame_prepend_unwinder): Set stop_reason
7876 field in returned unwinder.
7880 * ada-lang.c (replace_operator_with_call): Copy also GDBARCH.
7884 * ada-lang.c (replace_operator_with_call): Use xzalloc instead
7889 * frame.c (frame_unwind_register): Throw an error if unwinding the
7891 * get_prev_frame_1 (get_prev_frame_1): Ask the unwinder if there's
7892 an unwind stop reason.
7893 (frame_stop_reason_string): Handle UNWIND_UNAVAILABLE.
7894 * frame.h (enum unwind_stop_reason) <UNWIND_OUTERMOST,
7895 UNWIND_UNAVAILABLE>: New.
7896 * inline-frame.c (inline_frame_unwind): Install
7897 default_frame_unwind_stop_reason.
7898 * frame-unwind.c: Include "exceptions.h".
7899 (frame_unwind_find_by_frame): Swallow NOT_AVAILABLE_ERROR errors.
7900 (default_frame_unwind_stop_reason): New.
7901 * frame-unwind.h (frame_unwind_stop_reason_ftype): New typedef.
7902 (default_frame_unwind_stop_reason): Declare.
7903 (struct frame_unwind) <stop_reason>: New function pointer.
7905 * dummy-frame.c: Install default_frame_unwind_stop_reason.
7906 * dwarf2-frame.c: Include exceptions.h.
7907 (struct dwarf2_frame_cache) <unavailable_retaddr>: New field.
7908 (dwarf2_frame_cache): Swallow NOT_AVAILABLE_ERROR errors when
7909 computing the CFA. If such an error was thrown, set
7910 unavailable_retaddr.
7911 (dwarf2_frame_unwind_stop_reason): New.
7912 (dwarf2_frame_this_id): Don't build a frame id if the CFA was
7914 (dwarf2_frame_unwind): Install dwarf2_frame_unwind_stop_reason.
7915 (dwarf2_signal_frame_unwind): Ditto.
7917 * amd64-tdep.c: Include "exceptions.h".
7918 (struct amd64_frame_cache): New field "base_p".
7919 (amd64_init_frame_cache): Clear it.
7920 (amd64_frame_cache_1): New, factored out from amd64_frame_cache.
7921 Avoid reading registers with functions that throw if the register
7922 is not necessary to compute the frame base.
7923 (amd64_frame_cache): Reimplement wrapping amd64_frame_cache_1, and
7924 swallowing NOT_AVAILABLE_ERROR.
7925 (amd64_frame_unwind_stop_reason): New.
7926 (amd64_frame_this_id): Don't build a frame id if the frame base
7928 (amd64_frame_unwind): Install amd64_frame_unwind_stop_reason.
7929 (amd64_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
7930 base_p if the frame base was computable.
7931 (amd64_sigtramp_frame_unwind_stop_reason): New.
7932 (amd64_sigtramp_frame_this_id): Don't build a frame id if the
7933 frame base was unavailable.
7934 (amd64_sigtramp_frame_unwind): Install
7935 amd64_sigtramp_frame_unwind_stop_reason.
7936 (amd64_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
7937 base_p if the frame base was computable.
7938 (amd64_epilogue_frame_unwind_stop_reason): New.
7939 (amd64_epilogue_frame_this_id): Don't build a frame id if the
7940 frame base was unavailable.
7941 (amd64_epilogue_frame_unwind): Install
7942 amd64_epilogue_frame_unwind_stop_reason.
7943 * i386-tdep.c: Include "exceptions.h".
7944 (struct i386_frame_cache): New field "base_p".
7945 (i386_init_frame_cache): Clear it.
7946 (i386_frame_cache_1): New, factored out from amd64_frame_cache.
7947 Avoid reading registers with functions that throw if the register
7948 is not necessary to compute the frame base.
7949 (i386_frame_cache): Reimplement wrapping amd64_frame_cache_1, and
7950 swallowing NOT_AVAILABLE_ERROR.
7951 (i386_frame_unwind_stop_reason): New.
7952 (i386_frame_this_id): Don't build a frame id if the frame base was
7954 (i386_frame_prev_register): Handle unavailable SP.
7955 (i386_frame_unwind): Install i386_frame_unwind_stop_reason.
7956 (i386_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
7957 base_p if the frame base was computable.
7958 (i386_epilogue_frame_unwind_stop_reason): New.
7959 (i386_epilogue_frame_this_id): Don't build a frame id if the frame
7960 base was unavailable.
7961 (i386_epilogue_frame_unwind): Install
7962 i386_epilogue_frame_unwind_stop_reason.
7963 (i386_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
7964 base_p if the frame base was computable.
7965 (i386_sigtramp_frame_unwind_stop_reason): New.
7966 (i386_sigtramp_frame_this_id): Don't build a frame id if the frame
7967 base was unavailable.
7968 (i386_sigtramp_frame_unwind): Install
7969 i386_sigtramp_frame_unwind_stop_reason.
7970 * sentinel-frame.c (sentinel_frame_prev_register): Use the value
7971 type's size, not the register's.
7972 (sentinel_frame_unwind): Install default_frame_unwind_stop_reason.
7974 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind): Install
7975 default_frame_unwind_stop_reason.
7976 * alpha-tdep.c (alpha_sigtramp_frame_unwind)
7977 (alpha_heuristic_frame_unwind): Ditto.
7978 * amd64obsd-tdep.c (amd64obsd_trapframe_unwind): Ditto.
7979 * arm-tdep.c (arm_prologue_unwind, arm_stub_unwind): Ditto.
7980 * avr-tdep.c (avr_frame_unwind): Ditto.
7981 * cris-tdep.c (cris_sigtramp_frame_unwind, cris_frame_unwind):
7983 * frv-linux-tdep.c (frv_linux_sigtramp_frame_unwind): Ditto.
7984 * frv-tdep.c (frv_frame_unwind): Ditto.
7985 * h8300-tdep.c (h8300_frame_unwind): Ditto.
7986 * hppa-hpux-tdep.c (hppa_hpux_sigtramp_frame_unwind): Ditto.
7987 * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind): Ditto.
7988 * hppa-tdep.c (hppa_frame_unwind, hppa_fallback_frame_unwind)
7989 (hppa_stub_frame_unwind): Ditto.
7990 * i386obsd-tdep.c (i386obsd_trapframe_unwind): Ditto.
7991 * ia64-tdep.c (ia64_frame_unwind, ia64_sigtramp_frame_unwind)
7992 (ia64_libunwind_frame_unwind)
7993 (ia64_libunwind_sigtramp_frame_unwind): Ditto.
7994 * iq2000-tdep.c (iq2000_frame_unwind): Ditto.
7995 * lm32-tdep.c (lm32_frame_unwind): Ditto.
7996 * m32c-tdep.c (m32c_unwind): Ditto.
7997 * m32r-linux-tdep.c (m32r_linux_sigtramp_frame_unwind): Ditto.
7998 * m32r-tdep.c (m32r_frame_unwind): Ditto.
7999 * m68hc11-tdep.c (m68hc11_frame_unwind): Ditto.
8000 * m68k-tdep.c (m68k_frame_unwind): Ditto.
8001 * m68klinux-tdep.c (m68k_linux_sigtramp_frame_unwind): Ditto.
8002 * m88k-tdep.c (m88k_frame_unwind): Ditto.
8003 * mep-tdep.c (mep_frame_unwind): Ditto.
8004 * microblaze-tdep.c (microblaze_frame_unwind): Ditto.
8005 * mips-tdep.c (mips_insn16_frame_unwind, mips_insn32_frame_unwind)
8006 (mips_stub_frame_unwind): Ditto.
8007 * mn10300-tdep.c (mn10300_frame_unwind): Ditto.
8008 * moxie-tdep.c (moxie_frame_unwind): Ditto.
8009 * mt-tdep.c (mt_frame_unwind): Ditto.
8010 * ppc-linux-tdep.c (ppu2spu_unwind): Ditto.
8011 * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_unwind): Ditto.
8012 * rs6000-tdep.c (rs6000_frame_unwind): Ditto.
8013 * s390-tdep.c (s390_frame_unwind, s390_stub_frame_unwind)
8014 (s390_sigtramp_frame_unwind): Ditto.
8015 * score-tdep.c (score_prologue_unwind): Ditto.
8016 * sh-tdep.c (sh_frame_unwind): Ditto.
8017 * sh64-tdep.c (sh64_frame_unwind): Ditto.
8018 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_unwind): Ditto.
8019 * sparc-tdep.c (sparc32_frame_unwind): Ditto.
8020 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_unwind): Ditto.
8021 * sparc64-tdep.c (sparc64_frame_unwind): Ditto.
8022 * sparc64fbsd-tdep.c (sparc64fbsd_sigtramp_frame_unwind): Ditto.
8023 * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_unwind): Ditto.
8024 * sparc64obsd-tdep.c (sparc64obsd_frame_unwind)
8025 (sparc64obsd_trapframe_unwind): Ditto.
8026 * sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_unwind): Ditto.
8027 * sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_unwind): Ditto.
8028 * spu-tdep.c (spu_frame_unwind, spu2ppu_unwind): Ditto.
8029 * v850-tdep.c (v850_frame_unwind): Ditto.
8030 * vax-tdep.c (vax_frame_unwind): Ditto.
8031 * vaxobsd-tdep.c (vaxobsd_sigtramp_frame_unwind): Ditto.
8032 * xstormy16-tdep.c (frame_unwind xstormy16_frame_unwind): Ditto.
8033 * xtensa-tdep.c (xtensa_unwind): Ditto.
8037 * tui/tui-hooks.c (tui_selected_frame_level_changed_hook): Assume
8038 there's always a frame. Use get_frame_pc_if_available instead of
8039 get_frame_pc, and if there's no PC available, don't look up a
8044 * stack.c (print_frame_local_vars, print_frame_arg_vars): Handle
8049 * tracepoint.c (set_traceframe_context): Handle unavailable PC
8054 * frame.h (frame_unwind_caller_pc_if_available): Declare.
8055 * frame.c (frame_unwind_caller_pc_if_available): New.
8056 * stack.c (frame_info): Handle unavailable PC.
8060 * frame.c (frame_unwind_pc): Rename to ...
8061 (frame_unwind_pc_if_available): ... this. New `pc' output
8062 parameter. Change return type to int. Gracefully handle
8063 gdbarch_unwind_pc throwing NOT_AVAILABLE_ERROR. Return 0 if that
8064 happened, or 1 otherwise.
8065 (frame_unwind_pc): Reimplement on top of
8066 frame_unwind_pc_if_available.
8067 (get_frame_func): Rename to ...
8068 (get_frame_func_if_available): New `pc' output parameter. Change
8069 return type to int. Gracefully handle the PC not being available.
8070 (get_frame_func): Reimplement on top of
8071 get_frame_func_if_available.
8072 (select_frame): Handle the PC being unavailable.
8073 (get_prev_frame): Handle the PC being unavailable.
8074 (get_frame_pc_if_available): New.
8075 (get_frame_address_in_block_if_available): New.
8076 (find_frame_sal): Handle the frame PC not being available.
8077 * frame.h (get_frame_pc_if_available): Declare.
8078 (get_frame_address_in_block_if_available): Declare.
8079 (get_frame_func_if_available): Declare.
8080 * stack.c (print_frame_info): Handle the PC being unavailable.
8081 (find_frame_funname): Ditto.
8082 (print_frame): Handle the PC being unavailable.
8083 (get_frame_language): Ditto.
8084 * blockframe.c (get_frame_block): Ditto.
8085 * macroscope.c (default_macro_scope): Ditto.
8086 * tui/tui-stack.c (tui_show_frame_info): Ditto.
8090 * dwarf2loc.c (dwarf2_evaluate_loc_desc): Catch
8091 NOT_AVAILABLE_ERROR when evaluating the location expression.
8095 * dwarf2loc.c (read_pieced_value): Handle get_frame_register_bytes
8096 returning that the register piece is unavailable/optimized out.
8097 (write_pieced_value): Handle get_frame_register_bytes returning
8098 that the register piece is unavailable/optimized out when doing a
8099 read-modify write of a bitfield.
8100 * findvar.c (value_from_register): Handle get_frame_register_bytes
8101 returning that the register piece is unavailable/optimized out.
8102 * frame.c (get_frame_register_bytes): New parameters `optimizedp'
8103 and `unavailablep'. Throw error on bad debug info. Use
8104 frame_register instead of frame_register_read, to fill in the new
8106 * frame.h (get_frame_register_bytes): New parameters `optimizedp'
8108 * valops.c: (value_assign): Adjust, and handle
8109 get_frame_register_bytes failing.
8110 * spu-tdep.c: Include exceptions.h.
8111 (spu_software_single_step): Adjust, and handle
8112 get_frame_register_bytes failing.
8113 (spu_get_longjmp_target): Ditto.
8114 * gdbarch.sh (register_to_value): Change to return int. New
8115 parameters `optimizedp' and `unavailablep'.
8116 * gdbarch.h, gdbarch.c: Regenerate.
8117 * i386-tdep.c (i386_register_to_value): Adjust to new
8118 gdbarch_register_to_value interface.
8119 * i387-tdep.c (i387_register_to_value): Ditto.
8120 * i387-tdep.h (i387_register_to_value): Ditto.
8121 * alpha-tdep.c (alpha_register_to_value): Ditto.
8122 * ia64-tdep.c (ia64_register_to_value): Ditto.
8123 * m68k-tdep.c (m68k_register_to_value): Ditto.
8124 * mips-tdep.c (mips_register_to_value): Ditto.
8125 * rs6000-tdep.c (rs6000_register_to_value): Ditto.
8129 * findvar.c (value_of_register): Mark the value as unavailable, if
8130 the register is unavailable.
8131 * frame.h (frame_register_unwind): New `unavailablep' parameter.
8132 (frame_register): New `unavailablep' parameter.
8133 (frame_register_read): Update comment.
8134 * frame.c (frame_register_unwind): New `unavailablep' parameter.
8135 Set it if the register is unavailable. If the register is
8136 unavailable, clear the output buffer.
8137 (frame_register): New `unavailablep' parameter. Pass it down.
8138 (frame_unwind_register): Adjust.
8139 (put_frame_register): Adjust.
8140 (frame_register_read): Adjust. Also return false if the register
8142 (frame_register_unwind_location): Adjust.
8143 * sentinel-frame.c (sentinel_frame_prev_register): If the register
8144 is unavailable, mark the value accordingly.
8145 * stack.c (frame_info): Handle unavailable registers.
8149 * mi/mi-main.c (register_changed_p): Handle REG_UNAVAILABLE, and
8150 simplify, using regcache_cooked_read.
8154 * regcache.h (regcache_raw_read, regcache_raw_read_signed)
8155 (regcache_raw_read_unsigned, regcache_raw_read_signed)
8156 (regcache_raw_read_unsigned, regcache_raw_read_part)
8157 (regcache_cooked_read, regcache_cooked_read_signed)
8158 (regcache_cooked_read_unsigned, regcache_cooked_read_part)
8159 (regcache_cooked_read_ftype): Change return to enum
8161 * regcache.c: Include exceptions.h
8162 (regcache_save): Adjust to handle REG_UNAVAILABLE registers.
8163 (do_cooked_read): Change return to enum register_status. Always
8164 forward to regcache_cooked_read.
8165 (regcache_raw_read): Change return to enum register_status. If
8166 the register is not REG_VALID, memset the buffer. Return the
8168 (regcache_raw_read_signed): Handle non-REG_VALID registers and
8169 return the register's status.
8170 (regcache_raw_read_unsigned): Ditto.
8171 (regcache_cooked_read): Change return to enum register_status.
8172 Assert that with read-only regcaches, the register's status must
8173 be known. If the regcache is read-only, and the register is not
8174 REG_VALID, memset the buffer. Return the register's status.
8175 (regcache_cooked_read_signed): Change return to enum
8176 register_status. Handle non-REG_VALID registers and return the
8178 (regcache_cooked_read_unsigned): Change return to enum
8179 register_status. Handle non-REG_VALID registers and return the
8181 (regcache_xfer_part, regcache_raw_read_part)
8182 (regcache_cooked_read_part): Change return to enum
8183 register_status. Return the register's status.
8184 (regcache_read_pc): Throw NOT_AVAILABLE_ERROR if the register is
8186 (regcache_dump): Handle unavailable cooked registers.
8187 * frame.c (do_frame_register_read): Adjust interface to match
8188 regcache_cooked_read_ftype.
8189 * gdbarch.sh (pseudo_register_read): Change return to enum
8191 * gdbarch.h, gdbarch.c: Regenerate.
8193 * i386-tdep.h (i386_pseudo_register_read): Change return to enum
8195 * i386-tdep.c (i386_pseudo_register_read): Change return to enum
8196 register_status. If reading a raw register indicates the raw
8197 register is not valid, return the raw register's status,
8198 otherwise, return REG_VALID.
8199 * amd64-tdep.c (amd64_pseudo_register_read): Change return to enum
8200 register_status. Handle non-REG_VALID raw registers and return
8201 the register's status.
8202 * arm-tdep.c (arm_neon_quad_read)
8203 (arm_pseudo_read): Change return to enum register_status. Handle
8204 non-REG_VALID raw registers and return the register's status.
8205 * avr-tdep.c (avr_pseudo_register_read): Ditto.
8206 * frv-tdep.c (frv_pseudo_register_read): Ditto.
8207 * h8300-tdep.c (h8300_pseudo_register_read): Ditto.
8208 * hppa-tdep.c (hppa_pseudo_register_read): Ditto.
8209 * m32c-tdep.c (m32c_move_reg_t): Change return to enum
8211 (m32c_raw_read, m32c_raw_write, m32c_banked_read)
8212 (m32c_banked_write, m32c_sb_read, m32c_sb_write, m32c_part_read)
8213 (m32c_part_write, m32c_cat_read, m32c_cat_write)
8214 (m32c_r3r2r1r0_read, m32c_r3r2r1r0_write)
8215 (m32c_pseudo_register_read): Change return to enum
8216 register_status. Adjust.
8217 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Change return to
8218 enum register_status. Return the register's status.
8219 * mep-tdep.c (mep_pseudo_cr32_read): Change return to enum
8220 register_status. Return the register's status.
8221 (mep_pseudo_cr64_read, mep_pseudo_register_read): Ditto.
8222 * mips-tdep.c (mips_pseudo_register_read): Ditto.
8223 * mt-tdep.c (mt_pseudo_register_read): Ditto.
8224 * rs6000-tdep.c (move_ev_register_func): New typedef.
8225 (e500_move_ev_register): Use it. Change return to enum
8226 register_status. Return the register's status.
8227 (do_regcache_raw_read): New function.
8228 (do_regcache_raw_write): New function.
8229 (e500_pseudo_register_read): Change return to enum
8230 register_status. Return the register's status. Use
8231 do_regcache_raw_read.
8232 (e500_pseudo_register_write): Adjust. Use do_regcache_raw_write.
8233 (dfp_pseudo_register_read): Change return to enum register_status.
8234 Return the register's status.
8235 (vsx_pseudo_register_read): Ditto.
8236 (efpr_pseudo_register_read): Ditto.
8237 (rs6000_pseudo_register_read): Ditto.
8238 * s390-tdep.c (s390_pseudo_register_read): Change return to enum
8239 register_status. Return the register's status.
8240 * sh64-tdep.c (pseudo_register_read_portions): New function.
8241 (sh64_pseudo_register_read): Change return to enum
8242 register_status. Use pseudo_register_read_portions. Return the
8244 * ia64-tdep.c (ia64_pseudo_register_read): Change return to enum
8245 register_status. Return the register's status.
8246 * sh-tdep.c (pseudo_register_read_portions): New function.
8247 (sh_pseudo_register_read): Change return to enum register_status.
8248 Use pseudo_register_read_portions. Return the register's status.
8249 * sparc-tdep.c (sparc32_pseudo_register_read): Change return to
8250 enum register_status. Return the register's status.
8251 * sparc64-tdep.c (sparc64_pseudo_register_read): Ditto.
8252 * spu-tdep.c (spu_pseudo_register_read_spu)
8253 (spu_pseudo_register_read): Ditto.
8254 * xtensa-tdep.c (xtensa_register_read_masked)
8255 (xtensa_pseudo_register_read): Ditto.
8256 * bfin-tdep.c (bfin_pseudo_register_read): Ditto.
8260 * python/py-value.c (valpy_getitem): Fix formatting of error function
8265 ARI fixes: Add missing internationalization markups throughout
8267 * darwin-nat-info.c: Ditto.
8270 * mi/mi-main.c: Ditto.
8274 ARI fixes: Add missing internationalization markups throughout
8277 * cp-name-parser.y: Ditto.
8280 * objc-exp.y: Ditto.
8285 ARI fixes: Messages should have no trailing new lines.
8286 * darwin-nat.c (mach_check_error): Remove trailing new line from
8287 warning function call message.
8288 * record.c (bfdcore_read): Idem for error call.
8292 * common/signals.c (target_signal_from_host): Add _ markup to error
8293 function call message.
8294 (target_signal_to_host): Add _ markup and remove trailing new line
8295 from warning call message.
8296 (target_signal_from_command): Add _ markup to error function call
8303 * python/python.c (gdbpy_write): Accept a stream argument and
8304 operate to the appropriate stream.
8305 (gdbpy_flush): Likewise.
8306 (_initialize_python): Add stream constants.
8307 (finish_python_initialization): Add GdbOutputErrorFile class.
8311 * MAINTAINERS: Add myself as a write-after-approval maintainer.
8315 * amd64-tdep.c (amd64_relocate_instruction): Fix ordering of arguments
8316 to store_signed_integer. Add debug message when relocating CALL
8317 instructions. Fix formatting of debug message.
8318 * i386-tdep.c (i386_relocate_instruction): Ditto.
8322 * target.h (struct target_ops): Remove to_lookup_symbol field.
8323 (target_lookup_symbol): Delete macro.
8324 * target.c (nosymbol, debug_to_lookup_symbol): Delete.
8325 (update_current_target, setup_target_debug): Remove handling
8326 of to_lookup_symbol target_ops field.
8327 * ada-tasks.c (get_known_tasks_addr): Remove use of
8328 target_lookup_symbol.
8329 * coffread.c (coff_symtab_read): Likewise.
8330 * dbxread.c (read_dbx_symtab): Ditto.
8335 * configure.ac: Add getthrds declaration check.
8336 * configure, config.in: Regenerate.
8337 * aix-thread.c (getthrds): Declare only if not already declared
8338 in procinfo.h. More declaration out of get_signaled_thread to
8343 * python/py-symtab.c: Populate symtab_object_methods,
8345 (stpy_is_valid): New function.
8346 (salpy_is_valid): Ditto.
8347 * python/py-symbol.c: Declare symbol_object_methods. Populate.
8348 (sympy_is_valid): New function.
8349 * python/py-objfile.c: Declare objfile_object_methods. Populate.
8350 (objfpy_is_valid): New function.
8351 * python/py-inferior.c: Populate inferior_object_methods.
8352 (infpy_is_valid): New function.
8353 * python/py-infthread.c: Populate thread_object_methods.
8354 (thpy_is_valid): New function.
8355 * python/py-block.c: Declare block_object_methods. Populate. Declare
8356 block_iterator_object_methods. Populate.
8357 (blpy_is_valid): New function.
8358 (blpy_iter_is_valid): Ditto.
8362 * linespec.c (find_methods): Canonicalize NAME before looking
8364 (name_end): New function.
8365 (keep_name_info): New function.
8366 (decode_line_1): Use keep_name_info.
8367 (decode_compound): Likewise.
8368 * cli/cli-utils.h (remove_trailing_whitespace): New function.
8369 * cli/cli-utils.c (remove_trailing_whitespace): Likewise.
8372 * linespec.c (locate_first_half): Keep overload information, too.
8373 (decode_compound): Use a string to represent break characters
8375 If P points to a break character, do not increment it.
8376 For C++ and Java, keep overload information and relevant keywords.
8377 If we cannot find a symbol, search the minimal symbols.
8380 * linespec.c (decode_compound): Rename SAVED_ARG to
8382 Make a copy of THE_REAL_SAVED_ARG in SAVED_ARG and strip
8384 Pass a valid block to lookup_symbol.
8385 (lookup_prefix_sym): Likewise.
8386 (find_method): Construct search name based on SYM_CLASS instead
8388 * psymtab.c (lookup_partial_symbol): Add language parameter.
8389 (lookup_symbol_aux_psymtabs): Likewise.
8390 Don't assume that the psymtab we found was the right one. Search
8391 for the desired symbol in the symtab to be certain.
8392 (psymtab_search_name): New function.
8393 (lookup_partial_symbol): Use psymtab_search_name.
8394 Add language parameter.
8395 (read_symtabs_for_function): Add language parameter and pass to
8396 lookup_partial_symbol.
8397 (find_symbol_file_from_partial): Likewise.
8402 * dwarf2read.c (noop_record_line): New function.
8403 (dwarf_decode_lines): Ignore line tables for GCd functions.
8407 Fix ARI warnings about new lines at the end of messages, which
8408 are unneeded as there is a new line added at the end of the message
8410 * darwin-nat.c (darwin_stop_inferior): Ditto.
8411 * dec-thread.c (dec_thread_get_ada_task_ptid): Ditto.
8412 * dfp.c (decimal_to_number): Ditto.
8413 * exec.c (print_section_info): Ditto.
8414 * i386-darwin-nat.c (darwin_set_sstep): Ditto.
8415 * osdata.c (get_osdata): Ditto.
8416 * record.c (bfdcore_write): Ditto.
8417 * remote-mips.c (mips_readchar): Ditto.
8418 * remote.c (read_ptid): Ditto.
8419 * ser-mingw.c (ser_windows_raw): Ditto.
8420 * tracepoint.c (add_local_symbols): Ditto.
8421 * windows-nat.c (fake_create_process): Ditto.
8425 * tracepoint.c (stop_tracing): Don't declare.
8426 * event-top.c (after_char_processing_hook): Add `(void)'.
8430 * NEWS: Add Parameter sub-classing description.
8434 * MAINTAINERS: Update my e-mail address.
8438 * MAINTAINERS: Add myself for write after approval privileges.
8442 * frame.c (find_frame_sal): Assert sym is not null.
8444 * dbxread.c (process_one_symbol): Assert 'name' is not null.
8446 * objc-lang.c (selectors_info): Check strchr for null result.
8448 * stabsread.c (define_symbol): Guard against bad stabstring input.
8452 Remove trailing spaces and tabulations from pascal language
8457 p-valprint.c: Ditto.
8461 * dwarf2read.c (dwarf2_get_pc_bounds): Require HIGH strictly higher
8462 than LOW. Comment it.
8463 (read_partial_die): Call complaint for inappropriate zero LOWPC or
8464 HIGHPC not strictly higher than LOWPC.
8468 Fix formatting of function declarations returning a pointer in
8470 * varobj.c (varobj_add_child): Ditto.
8471 * hppa-tdep.h (hppa_init_objfile_priv_data): Ditto.
8472 * inferior.h (get_displaced_step_closure_by_addr): Ditto.
8476 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Add support
8477 for the "generic" vector ABI used with GCC 4.3 and later.
8478 (ppc64_sysv_abi_return_value): Likewise.
8482 * infcall.c (call_function_by_hand): Function return value is
8483 always a non_lval, even when using struct_return.
8487 * printcmd.c (ALL_DISPLAYS_SAFE): New.
8488 (map_display_numbers): New.
8489 (do_delete_display): New.
8490 (undisplay_command): Use map_display_numbers.
8491 (do_enable_disable_display): New.
8492 (enable_disable_display_command): New function.
8493 (enable_display): Delete.
8494 (enable_display_command): New.
8495 (disable_display_command): Reimplement.
8496 (_initialize_printcmd): Adjust "enable display" command to use
8497 `enable_display_command' as callback.
8501 * NEWS: Add Python breakpoint 'stop' operation.
8505 * NEWS: Delete duplicate entry. Fix typo.
8509 Fix ARI warning about function names in first column.
8510 Put prototype declaration on same line as return type.
8511 * objc-exp.y: Ditto.
8513 * python/py-stopevent.h: Ditto.
8514 For long function names, split parameters to
8515 allow function name on same line as return type.
8516 * solib-pa64.c: Ditto.
8519 For long function declaration, use single line.
8520 * hppa-tdep.h: Ditto.
8521 * inferior.h: Ditto.
8525 * python/python.h: Declare gdbpy_should_stop and
8526 gdbpy_breakpoint_has_py_cond.
8527 * python/python.c: Add python.h to includes. Remove python.h from
8528 HAVE_PYTHON definition
8529 (gdbpy_should_stop): New dummy function.
8530 (gdbpy_breakpoint_has_py_cond): New dummy function.
8531 * python/py-breakpoint.c (bppy_init): Rewrite to allow
8532 sub-classing capabilities.
8533 (gdbpy_should_stop): New function.
8534 (gdbpy_breakpoint_has_py_cond): New function.
8535 (local_setattro): New function.
8536 * breakpoint.c (condition_command): Add check for Python 'stop'
8538 (bpstat_check_breakpoint_conditions): Execute Python 'stop'
8539 operation function as part of stop/continue tests.
8544 * dwarf2loc.c (dwarf_expr_dwarf_call): Remove 'return'.
8545 (needs_frame_dwarf_call): Likewise.
8549 Fix ARI warning about functions without parameters that do not
8551 * breakpoint.c (all_tracepoints): Replace () by (void).
8552 * f-exp.y (match_string_literal): Ditto.
8554 * m2-exp.y (yylex): Ditto.
8555 * mep-tdep.c (current_me_module): Ditto.
8556 (current_options): Ditto.
8557 (current_cop_data_bus_width): Ditto.
8558 (current_cr_names): Ditto.
8559 (current_cr_is_float): Ditto.
8560 (current_ccr_names): Ditto.
8561 * objc-exp.y (yylex): Ditto.
8562 * p-exp.y (yylex): Ditto.
8563 * remote.c (send_interrupt_sequence): Ditto.
8564 * tracepoint.c (current_trace_status): Ditto.
8565 * python/py-evts.c (gdbpy_initialize_py_events): Ditto.
8566 * python/py-prettyprint.c (push_dummy_python_frame): Ditto.
8570 * cli/cli-decode.h (CMD_LIST_AMBIGUOUS): Define.
8571 * cli/cli-decode.c (lookup_cmd_1): Use CMD_LIST_AMBIGUOUS.
8572 (lookup_cmd): Test for CMD_LIST_AMBIGUOUS.
8573 * completer.c (complete_line_internal): Use CMD_LIST_AMBIGUOUS.
8574 * top.c (set_verbose): Use CMD_LIST_AMBIGUOUS.
8576 * event-loop-c (delete_async_signal_handler): Assert prev_ptr.
8577 (delete_async_event_handler): Ditto.
8579 * python/py-breakpoint.c (bppy_set_condition): Stop memory leak.
8581 * python/py-breakpoint.c (bppy_get_commands): Fix memory leak.
8583 * top.c (set_verbose): Assert showcmd was found.
8587 * xtensa-tdep.c (warning_once): Correct style issues.
8591 * arm-tdep.c (copy_ldr_str_ldrb_strb): Remove redundant statements.
8595 * common/aclocal.m4: Remove.
8599 * xtensa-tdep.c (windowing_enabled): Remove inline attribute.
8600 (xtensa_write_register, xtensa_read_register): Likewise.
8601 (xtensa_hextochar): Removed.
8602 (xtensa_init_reggroups): Replace xtensa_hextochar () by explicit code.
8606 * xtensa-tdep.c (xtensa_c0reg_t): Update comments.
8607 (xtensa_call0_frame_cache_t): Update comments. New fields added.
8608 (xtensa_alloc_frame_cache): Add initialization for new fields.
8609 (xtensa_frame_cache): Change the way how call0_frame_cache () is called.
8610 (warning_once): New function.
8611 (xtensa_insn_kind): New item c0opc_and.
8612 (call0_classify_opcode): Add the case for AND instruction.
8613 (call0_track_op): Change arguments. New local variable litbase.
8614 Add the case to handle c0opc_and. Update algorithms for c0opc_mov,
8615 c0opc_l32r, c0opc_s32i to take into account dynamic stack adjustments
8617 Add cases for c0opc_l32e, c0opc_s32e, c0opc_rfwo, c0opc_rfwu.
8618 (call0_analyze_prologue): Update the comments. Change arguments.
8619 Add the variety of updates to handle extended prologues, which now can
8620 conduct dynamic stack adjustments.
8621 (call0_frame_cache): Likewise.
8622 (xtensa_skip_prologue): Update call0_analyze_prologue () function call.
8623 (xtensa_gdbarch_init): Initialize xtensa_session_once_reported.
8627 * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
8628 (cmd_qtframe): Ditto.
8629 (cmd_qtbuffer): Ditto.
8630 (cmd_bigqtbuffer): Ditto.
8634 * tracepoint.c (trace_actions_command): Update.
8635 * thread.c (thread_apply_command): Update.
8636 * reverse.c (delete_bookmark_command): Update.
8637 (bookmarks_info): Update.
8638 * printcmd.c (undisplay_command): Update.
8639 * memattr.c (mem_enable_command): Update.
8640 (mem_disable_command): Update.
8641 (mem_delete_command): Update.
8642 * inferior.c (detach_inferior_command): Update.
8643 (kill_inferior_command): Update.
8644 (remove_inferior_command): Update.
8645 * cli/cli-utils.h (struct get_number_or_range_state): New.
8646 (init_number_or_range): Declare.
8647 (get_number_or_range): Update.
8648 * cli/cli-utils.c (init_number_or_range): New function.
8649 (get_number_or_range): Change 'pp' parameter to 'state'. Remove
8651 (number_is_in_list): Update.
8652 * breakpoint.h (get_tracepoint_by_number): Update.
8653 * breakpoint.c (map_breakpoint_numbers): Update for change to
8654 get_number_or_range.
8655 (find_location_by_number): Use get_number, not
8656 get_number_or_range.
8657 (trace_pass_set_count): New function.
8658 (trace_pass_command): Update for change to get_number_or_range.
8660 (get_tracepoint_by_number): Remove 'multi_p' parameter; add
8665 * python/py-param.c (add_setshow_generic): Add set/show callback
8666 parameters. Register Python object context.
8667 (get_show_value): New function.
8668 (get_set_value): New function.
8669 (call_doc_function): New function.
8670 (get_doc_string): Move behind get_show_value/get_set_value.
8674 * fbsd-nat.c (fbsd_make_corefile_notes): Constify local `fname'.
8678 * xtensa-tdep.c (xtensa_read_register): Add comment.
8679 (xtensa_write_register): Likewise.
8680 (xtensa_hextochar): Add comment and update to match coding conventions.
8681 (xtensa_frame_cache, xtensa_return_value): Follow coding conventions.
8682 (execute_l32e, execute_s32e, execute_code): Update comments.
8683 (xtensa_exception_handler_t): Update to match coding conventions.
8684 (xtensa_insn_kind): Likewise.
8688 * mi-cmd-disas.c (mi_cmd_disassemble): Fix memory leak.
8692 * nto-tdep.c (nto_find_and_open_solib): Constify local `base'.
8696 * thread.c (restore_selected_frame): Handle frame_level == -1.
8697 (make_cleanup_restore_current_thread): Use
8698 get_selected_frame_if_set.
8699 * frame.h (get_selected_frame_if_set): Declare.
8700 * frame.c (get_selected_frame_if_set): New function.
8704 * cli/cli-cmds.c (shell_escape): Use lbasename.
8705 * coffread.c (coff_start_symtab): Constify parameter.
8706 (complete_symtab): Constify `name' parameter.
8707 (coff_symtab_read): Constify `filestring' local.
8708 (coff_getfilename): Constify return and `result' local.
8710 * fbsd-nat.c (fbsd_make_corefile_notes): Use lbasename.
8711 * linux-fork.c (info_checkpoints_command): Use lbasename.
8712 * linux-nat.c (linux_nat_make_corefile_notes): Use lbasename.
8713 * minsyms.c (lookup_minimal_symbol): Use lbasename.
8714 * nto-tdep.c (nto_find_and_open_solib): Use lbasename.
8715 * procfs.c (procfs_make_note_section): Use lbasename.
8716 * tui/tui-io.c (printable_part): Constity return and parameter.
8718 (print_filename): Constify parameters, and local `s'.
8719 (tui_rl_display_match_list): Constify local `temp'.
8725 Fix DWARF-3+ DW_AT_accessibility default assumption.
8726 * dwarf2read.c (dwarf2_add_field): Fix new_field->accessibility for
8727 cu->header.version >= 3.
8731 * common/Makefile.in: Remove.
8732 * common/configure: Remove.
8733 * common/configure.ac: Remove.
8740 * common/Makefile.in: Add copyright header.
8744 * Makefile.in: Remove signals.o from COMMON_OBS. Link
8746 * configure.ac: Add common to sub dir.
8747 * configure: Regenerate.
8751 * xtensa-tdep.c (call0_ret): New function.
8752 (xtensa_skip_prologue): Speed up analysis.
8756 * xtensa-tdep.c (xtensa_register_reggroup_p): Count in all registers
8757 while executing MI command -data-list-changed-registers.
8761 * xtensa-tdep.c (xtensa_read_register): New function.
8762 (xtensa_write_register): New function.
8763 (xtensa_find_register_by_name): New function.
8764 (xtensa_windowed_frame_cache): Update comments in type description.
8765 (xtensa_frame_cache): Likewise.
8766 (xtensa_window_interrupt_insn): New function.
8767 (xtensa_frame_cache): Add analysis for Xtensa Window Exception frames.
8768 (xtensa_insn_kind): Add new instructions.
8769 (rwx_special_register): New function.
8770 (call0_classify_opcode): Add new instructions to the analysis.
8771 (a0_saved, a7_saved, a11_saved): New variables.
8772 (a0_was_saved, a7_was_saved, a11_was_saved): New variables.
8773 (execute_l32e): New function.
8774 (execute_s32e): New function.
8775 (xtensa_exception_handler_t): New type.
8776 (execute_code): New function.
8777 (xtensa_window_interrupt_frame_cache): New function to conduct frame
8778 analysis for Xtensa Window Exception handlers.
8782 * xtensa-tdep.c (TX_PS): New.
8783 (windowing_enabled): Update to count for Call0 ABI.
8784 (xtensa_hextochar): New.
8785 (xtensa_init_reggroups): Make algorithm generic.
8786 (xtensa_frame_cache): Use TX_PS on Tiny Xtensa.
8790 * xtensa-tdep.h (XTENSA_MAX_COPROCESSOR): Update.
8794 * i386-tdep.c (i386_follow_jump): Check return value of
8796 (i386_analyze_struct_return): Ditto.
8797 (i386_skip_probe): Ditto.
8798 (i386_match_insn): Ditto.
8799 (i386_skip_noop): Ditto.
8800 (i386_analyze_frame_setup): Ditto.
8801 (i386_analyze_register_saves): Ditto.
8802 (i386_skip_prologue): Ditto.
8803 (i386_skip_main_prologue): Ditto.
8805 * target.c (read_whatever_is_readable): Fix memory leak.
8807 * i386-tdep.c (i386_process_record): Document fall through.
8811 Fix DWARF-3+ DW_AT_accessibility default assumption.
8812 * dwarf2read.c (dwarf2_add_field): Fix new_field->accessibility for
8813 cu->header.version >= 3.
8817 * remote.c (remote_check_symbols): Skip if the target has no
8822 * target.c (read_whatever_is_readable): Reformat comment,
8823 with a minor typo fix. Minor reformatting of the code.
8827 * arm-tdep.c: Remove prototype declaration displaced_in_arm_mode.
8828 (displaced_read_reg): Add `dsc' parameter, remove `from' parameter.
8829 Use cached result instead of calling displaced_in_arm_mode again.
8830 (branch_write_pc, alu_write_pc, load_write_pc): Add `dsc' parameter.
8831 (displaced_write_reg, copy_preload, copy_preload_reg): Callers update.
8832 (cleanup_copro_load_store, copy_copro_load_store): Likewise.
8833 (cleanup_branch, copy_bx_blx_reg, copy_alu_imm): Likewise.
8834 (cleanup_alu_reg, copy_alu_reg, cleanup_alu_shifted_reg): Likewise.
8835 (copy_alu_shifted_reg, cleanup_load, cleanup_store): Likewise.
8836 (copy_extra_ld_st, copy_ldr_str_ldrb_strb): Likewise.
8837 (cleanup_block_load_all, cleanup_block_store_pc): Likewise.
8838 (cleanup_block_load_pc, copy_block_xfer): Likewise.
8839 * arm-linux-tdep.c (arm_linux_copy_svc): Callers update.
8840 (arm_catch_kernel_helper_return): Likewise.
8841 * gdb/arm-tdep.h : Update function declarations.
8845 * dwarf2loc.c (indirect_pieced_value): Assert 'piece' not null.
8847 * ser-unix.c (hardwire_get_tty_state): Stop memory leak.
8849 * mi/mi-cmd-env.c (_initialize_mi_cmd_env): Free environment.
8851 * elfread.c (elf_symtab_read): Stop memory leak.
8853 * main.c (captured_main): Fix memory leak.
8857 * ada-lang.c (compare_names): Call is_name_suffix with string1
8862 * xcoffread.c (xcoff_sym_fns): Update.
8863 * symfile.h (struct sym_fns) <sym_read_psymbols>: New field.
8864 (enum symfile_add_flags) <SYMFILE_NO_READ>: New constant.
8865 * symfile.c (syms_from_objfile): Handle SYMFILE_NO_READ.
8866 (symbol_file_add_with_addrs_or_offsets): Likewise.
8867 (reread_symbols): Handle OBJF_PSYMTABS_READ.
8868 * somread.c (som_sym_fns): Update.
8869 * psymtab.h (require_partial_symbols): Declare.
8870 * psymtab.c (require_partial_symbols): New function.
8871 (ALL_OBJFILE_PSYMTABS_REQUIRED): New macro.
8872 (ALL_OBJFILE_PSYMTABS): Undef.
8873 (ALL_PSYMTABS): Move from psympriv.h.
8874 (lookup_partial_symtab, find_pc_sect_psymtab)
8875 (lookup_symbol_aux_psymtabs, relocate_psymtabs)
8876 (find_last_source_symtab_from_partial)
8877 (forget_cached_source_info_partial)
8878 (print_psymtab_stats_for_objfile, read_symtabs_for_function)
8879 (expand_partial_symbol_tables, read_psymtabs_with_filename)
8880 (map_symbol_names_psymtab, map_symbol_filenames_psymtab)
8881 (find_symbol_file_from_partial, map_matching_symbols_psymtab)
8882 (expand_symtabs_matching_via_partial, maintenance_info_psymtabs):
8883 Use ALL_OBJFILE_PSYMTABS_REQUIRED.
8884 * psympriv.h (ALL_PSYMTABS): Move to psymtab.c.
8885 * objfiles.h (OBJF_PSYMTABS_READ): New macro.
8886 * objfiles.c (objfile_has_partial_symbols): Handle lazily-read
8888 * mipsread.c (ecoff_sym_fns): Update.
8889 * machoread.c (macho_sym_fns): Update.
8890 * elfread.c (elf_symfile_read): Set up for lazy psymtab reading.
8891 (read_psyms): New function.
8892 (elf_sym_fns, elf_sym_fns_gdb_index): Update.
8893 (elf_sym_fns_lazy_psyms): New global.
8894 * dwarf2read.c (dwarf2_initialize_objfile): Don't call
8895 dwarf2_build_psymtabs.
8896 * dbxread.c (aout_sym_fns): Update.
8897 * coffread.c (coff_sym_fns): Update.
8901 * infrun.c (print_exited_reason): Include inferior id and pid in
8906 * target.h (struct target_ops) <to_has_execution>: Add ptid_t
8908 (target_has_execution_1): Update.
8909 (target_has_execution_current): Declare.
8910 (target_has_execution): Call target_has_execution_current.
8911 (default_child_has_execution): Update.
8912 * target.c (default_child_has_execution): Add 'the_ptid'
8914 (target_has_execution_1): Likewise.
8915 (target_has_execution_current): New function.
8916 (add_target): Update.
8917 (init_dummy_target): Update.
8918 * remote-m32r-sdi.c (m32r_has_execution): New function.
8919 (init_m32r_ops): Use it.
8920 * record.c (record_core_has_execution): Now static. Add
8921 'the_ptid' parameter.
8922 * inferior.c (have_live_inferiors): Don't save current thread.
8923 Use target_has_execution_1.
8927 * Makefile.in (aclocal_m4_deps): Remove gnulib/m4/memcmp.m4.
8931 * elfread.c (elf_symtab_read): Minor reformatting.
8935 * objc-lang.c (selectors_info): Minor reformatting.
8939 * ada-lang.c (compare_names): Add FALLTHROUGH comment.
8944 * ada-valprint.c (ada_val_print_array): Move the declaration of
8945 "byte_order" and "elttype" inside the block where these variables
8946 are actually used. Remove some special handling for the case
8947 where "elttype" and "eltlen" are null. Replace by a comment
8948 and a couple of assertion checks.
8952 * source.c (add_path): Replace semicolon at end of block.
8953 * dwarf2expr.c (execute_stack_op): Ditto.
8957 * bfin-tdep.c: Include sim-regno.h and gdb/sim-bfin.h.
8958 * configure.tgt (bfin-*-*linux*): Define gdb_sim.
8959 (bfin-*-*): Likewise.
8963 * dwarf2expr.c (execute_stack_op): Delete superfluous semicolon.
8964 * mdebugread.c (parse_symbol): Ditto.
8965 * parse.c (parse_exp_in_context): Ditto.
8966 * source.c (add_path): Ditto.
8967 * utils.c (gnu_debuglink_crc32): Ditto.
8968 * varobj.c (variable_language): Ditto.
8970 * linux-tdep.c (linux_get_siginfo_type): Stop memory leak.
8974 * linux-fork.c (inferior_call_waitptid): Fix copy/paste error.
8976 * symfile.c (simple_overlay_update): Check for null return value
8977 from lookup_minimal_symbol.
8979 * xml-syscall.c (syscall_start_syscall): Assert name is non null.
8983 * eval.c (parse_and_eval_address_1): Remove function.
8984 * linespec.c (decode_indirect): Call parse_to_comma_and_eval
8985 instead of parse_and_eval_address_1.
8986 * value.h (parse_and_eval_address_1): Remove prototype.
8990 * remote.c (putpkt_binary): Document that case stmt falls through.
8994 * breakpointc (print_it_typical): Move NULL check from here...
8995 (print_bp_stop_message): ... to here.
8999 * breakpoint.c (enable_command): Use break instead of continue,
9000 and fill in a missing break.
9001 (disable_command): Ditto.
9005 * inflow.c (terminal_init_inferior_with_pgrp): Copy ttystate.
9006 (terminal_save_ours): Remove misleading comment.
9007 (inflow_inferior_data_cleanup): Free ttystate.
9008 (inflow_inferior_exit): Likewise.
9009 (copy_terminal_info): Copy ttystate.
9011 * serial.c (serial_copy_tty_state): New function.
9012 * serial.h (serial_copy_tty_state): Add prototype.
9013 (struct serial_ops): Add copy_tty_state callback.
9014 * ser-base.c (ser_base_copy_tty_state): New function.
9015 * ser-base.h (ser_base_copy_tty_state): Add prototype.
9016 * ser-go32.c (dos_copy_tty_state): New function.
9017 (dos_ops): Install copy_tty_state callback.
9018 * ser-mingw.c (_initialize_ser_windows): Likewise.
9019 * ser-pipe.c (_initialize_ser_pipe): Likewise.
9020 * ser-unix.c (hardwire_copy_tty_state): New function.
9021 (_initialize_ser_hardwire): Install it.
9025 * breakpoint.c (create_breakpoint): Add missing break statement.
9027 Reverting this patch:
9028 * infcall.c (call_function_by_hand): Add break statements for lint.
9030 Reverting this patch:
9031 * cli/cli-script.c (script_from_file): Add break for lint.
9035 * solib.c (reload_shared_libraries_1): Close memory leak.
9040 * dwarf2read.c (process_psymtab_comp_unit): Handle case where
9045 * remote-fileio.c (remote_fileio_func_fstat): Initialize all
9046 fields of struct 'st' to zero.
9048 * tui/tui-winsource.c (tui_update_source_window_as_is): Initialize
9049 sal.pspace before calling set_current_source_symtab_and_line.
9053 * Makefile.in (configure-common): Remove. Let Makefile
9054 in dir common to rebuild itself.
9055 (common/Makefile): Likewise.
9059 * utils.c (parse_escape): Add i18n markup in error message.
9063 * gdb/arm-tdep.c (shifted_reg_val): Replace magic number 15 with
9065 (thumb_get_next_pc_raw, arm_get_next_pc_raw): Likewise.
9066 (displaced_write_reg, displaced_read_reg): Likewise.
9067 (copy_ldr_str_ldrb_strb, cleanup_block_load_all): Likewise.
9068 (cleanup_block_load_pc, copy_block_xfer): Likewise.
9069 (cleanup_branch): Replace magic number 14 and 15 with
9070 ARM_LR_REGNUM and ARM_PC_REGNUM respectively.
9074 * maint.c (maintenance_do_deprecate): No need to check for NULL.
9076 * cli/cli-script.c (script_from_file): Add break for lint.
9078 * mdebugread.c (parse_partial_symbols): Fix indent.
9080 * target-descriptions.c (tdesc_gdb_type): No need to call
9081 xstrdup, callee saves a copy.
9083 * printcmd.c (print_scalar_formatted): Use strncpy for safety.
9085 * infcall.c (call_function_by_hand): Add break statements for lint.
9087 * utils.c (parse_escape): Escape the escape char.
9089 * python/py-inferior.c (build_inferior_list): Error out if
9090 PyList_Append fails.
9091 (gdbpy_inferiors): Error out if build_inferior_list fails.
9093 * linux-nat.c (linux_nat_xfer_partial): Preserve errno around
9096 * record.c (record_restore): Move printf to before error return.
9100 * arm-tdep.h (struct displaced_step_closure): Add two new fields
9101 is_thumb and insn_size.
9102 * arm-tdep.c (displaced_read_reg): Adjust correct pipeline offset
9103 on both ARM and Thumb mode.
9104 (arm_process_displaced_insn): Set is_thumb and insn_size.
9105 (arm_displaced_init_closure): Handle both 16-bit and 32-bit.
9106 (arm_displaced_step_fixup): Likewise.
9110 * cli/cli-dump.c (dump_bfd_file): Check error return and warn.
9112 * jv-lang.c (evaluate_subexp_java): Conditional can't be true.
9114 * dwarf2read.c (dwarf2_compute_name): NAME cannot be null here.
9116 * cli/cli-dump.c (restore_binary_file): Validate ftell return value.
9118 * ada-lang.c (ada_make_symbol_completion_list): Replace malloc
9121 * ada-lang.c (aggregate_assign_others): Rename inner scope variable
9122 which shadows function parameter.
9124 * tracepoint.c (create_tsv_from_upload): Superfluous call
9125 to xstrdup. Callee already calls xstrdup.
9127 * linespec.c (decode_line_1): Remove unnecessary null check.
9129 * tracepoint.c (scope_info): Fix mem leak, remove underused
9132 * python/py-prettyprint.c (apply_val_pretty_printer): Remove
9133 superfluous null check.
9135 * std-regs.c (value_of_builtin_frame_pc_reg): Frame can't be null.
9136 (value_of_builtin_frame_fp_reg): Ditto.
9138 * event-top.c (display_gdb_prompt): Remove superfluous null check.
9140 * python/py-prettyprint.c (apply_val_pretty_printer): VAL may
9143 * linespec.c (decode_line_1): Check for null before dereference.
9145 * reverse.c (record_restore): Move null-check to before pointer
9148 * python/py-utils.c (gdbpy_obj_to_string): Delete unused variable.
9150 * objc-lang.c (selectors_info): Add explanitory comment.
9151 (classes_info): Ditto.
9155 * arm-linux-tdep.c (ARM_LDR_PC_SP_4): Add define.
9156 (arm_linux_restart_syscall_init): Handle both on-stack and in-kernel
9157 versions of the trampoline. Handle Thumb vs. ARM addresses.
9158 (arm_kernel_linux_restart_syscall_tramp_frame): New global.
9159 (arm_linux_init_abi): Install it.
9160 * arm-tdep.c (arm_psr_thumb_bit): Make global.
9161 * arm-tdep.c (arm_psr_thumb_bit): Add prototype.
9165 * ui-out.c (ui_out_field_core_addr): Make local char buffer
9166 a little bigger, to avoid possibility of an overflow.
9168 * breakpoint.c (breakpoint_adjustment_warning): Make local char
9169 buffers a little bigger, to avoid possibility of an overflow.
9171 * coffread.c (coff_getfilename): Add check to avoid overflow.
9173 * objc-lang.c (selectors_info): Add a small safety margin to
9175 (classes_info): Error out on too long REGEXP.
9177 * infrun.c (handle_inferior_event): Remove unused function call.
9179 * fork-child.c (fork_inferior): Remove ifdef'd code and
9182 * linux-thread-db.c (attach_thread): Discard unused value.
9184 * linux-nat.c (linux_handle_extended_wait): Delete unused variable.
9186 * remote.c (remote_get_noisy_reply): Discard unused value.
9187 (remote_vcont_resume): Ditto.
9188 (remote_stop_ns): Ditto.
9190 * linespec.c (decode_objc): Delete unused variable.
9192 * tui/tui-regs.c (tui_register_format): Delete unused variable.
9194 * dwarf2read.c (add_partial_symbol): Discard unused values.
9195 (read_base_type): Delete unused variable.
9197 * dbxread.c (read_dbx_symtab): Discard unused value.
9199 * eval.c (evaluate_subexp_standard): Delete unused variable,
9200 and discard unused values.
9202 * infcmd.c (_initialize_infcmd): Discard unused values.
9204 * stabsread.c (rs6000_builtin_type): Missing break statement.
9206 * dbxread.c (process_one_symbol): Discard unused value.
9208 * coffread.c (coff_end_symtab): Delete unused variable.
9210 * dwarf2read.c (dw2_get_file_names): Discard unused value.
9211 (dwarf2_add_typedef): Delete unused variable.
9212 (read_namespace): Ditto.
9213 (dwarf_decode_macros): Ditto.
9215 * m2-lang.c (evaluate_subexp_modula2): Discard unused variable.
9217 * opencl-lang.c (evaluate_subexp_opencl): Discard unused value.
9219 * p-valprint.c (pascal_val_print): Discard unused value.
9221 * utils.c (nquery): Call va_end before return;
9225 * proc-service.c (ps_plog): Call va_end before return.
9229 * python/python.c (gdbpy_value_cst): New global.
9230 (_initialize_python): Initialize it.
9231 * python/python-internal.h (gdbpy_value_cst): Declare.
9232 * python/py-value.c (convert_value_from_python): Use
9237 * python/py-cmd.c (cmdpy_init): Fix memory leak.
9239 * breakpoint.c (catch_syscall_completer): Free malloced list.
9241 * jv-lang.c (java_primitive_type_from_name): Add missing break.
9243 * opencl-lang.c (lval_func_check_validity): Rename inner variables.
9244 (lval_func_check_synthetic_pointer): Ditto.
9245 (lval_func_free_closure): Fix use-after-free.
9249 * psymtab.c (expand_partial_symbol_tables): Use
9250 ALL_OBJFILE_PSYMTABS.
9254 * objc-lang.c (selectors_info): Error on too long REGEXP.
9258 * python/py-param.c (set_parameter_value): Add missing
9261 * linux-record.c (record_linux_system_call): Add missing
9266 * breakpoint.c (print_one_breakpoint_location): Remove unused
9267 argument PRINT_ADDRESS_BITS. Update callers.
9268 (print_one_breakpoint): Likewise.
9272 * breakpoint.c (wrap_indent_at_field): New function.
9273 (print_breakpoint_location): Use it instead of WRAP_INDENT argument.
9274 Allocate ui_stream locally instead of using STB argument.
9275 (print_one_breakpoint_location): Update call.
9276 * ui-out.c (ui_out_query_field): New function.
9277 * ui-out.h (ui_out_query_field): Add prototype.
9282 * ada-exp.y (write_object_renaming): Add FALLTHROUGH comment.
9286 * objc-lang.c (selectors_info): Prevent string overrun.
9288 * tui/tui-stack.c (tui_get_function_from_frame): Fix off by one
9291 * symtab.c (rbreak_command): Move variable 'file_name' to
9294 * d-valprint.c (dynamic_array_type): Avoid shadowing a function
9295 param with a local variable of the same name.
9299 * value.c (value_from_history_ref): New function.
9300 * value.h (value_from_history_ref): Export.
9301 * cli/cli-utils.c (get_number_trailer): Use value_from_history_ref
9302 to parse value history references.
9303 * cli/cli-utils.h (get_number_trailer): Update comment.
9307 * inferior.c (detach_inferior_command): Use get_number_or_range.
9308 (kill_inferior_command): Ditto.
9309 (remove_inferior_command): Ditto.
9310 (initialize_inferiors): Make command names plural.
9311 Update help strings.
9315 * darwin-nat-info.c: Fix comment typo.
9316 * dwarf2expr.h: Ditto.
9317 * fbsd-nat.c: Ditto.
9318 * fbsd-nat.h: Ditto.
9319 * frame-unwind.h: Ditto.
9321 * hppa-hpux-tdep.c: Ditto.
9322 * i386-linux-nat.c: Ditto.
9323 * linux-nat.c: Ditto.
9324 * nbsd-nat.c: Ditto.
9325 * nbsd-nat.h: Ditto.
9326 * ppc-linux-tdep.c: Ditto.
9329 * tui/tui-winsource.c: Ditto.
9333 * breakpoint.c (reattach_breakpoints): Avoid resource leak (ui_file).
9335 * maint.c (maintenance_do_deprecate): Plug a memory leak.
9337 * dwarf2loc.c (insert_bits): Avoid shadowing a function param
9338 with a local variable of the same name.
9340 * i387-tdep.c (i387_supply_fxsave): Avoid shadowing a function
9341 param with a local variable of the same name.
9342 (i387_supply_xsave): Ditto.
9344 * linux-low.c (linux_nat_xfer_osdata): Rename local variable so
9345 that it does not shadow a function parameter.
9347 * i386-nat.c (i386_length_and_rw_bits): Document that case
9348 statement is meant to fall through.
9350 * expprint.c (dump_subexp_body_standard): Document that case
9351 statement is meant to fall through.
9353 * amd64-linux-tdep.c (amd64_linux_syscall_record): Delete
9354 dead if statement. Condition can't be false.
9358 * arm-tdep.c: Fix typos in comments.
9359 * bsd-uthread.c: Ditto.
9360 * completer.c: Ditto.
9362 * cp-namespace.c: Ditto.
9363 * cp-support.c: Ditto.
9364 * cris-tdep.c: Ditto.
9366 * dwarf2read.c: Ditto.
9368 * gdbtypes.h: Ditto.
9369 * inferior.h: Ditto.
9370 * mdebugread.c: Ditto.
9371 * mips-tdep.c: Ditto.
9372 * ppc-linux-nat.c: Ditto.
9373 * ppc-linux-tdep.c: Ditto.
9374 * printcmd.c: Ditto.
9375 * sol-thread.c: Ditto.
9376 * solib-frv.c: Ditto.
9378 * sparc64-tdep.c: Ditto.
9379 * spu-tdep.c: Ditto.
9380 * stabsread.c: Ditto.
9385 * python/py-block.c: Ditto.
9386 * python/py-symbol.c: Ditto.
9387 * python/py-symtab.c: Ditto.
9388 * python/py-value.c: Ditto.
9389 * tui/tui-win.c: Ditto.
9393 * inferior.c (print_inferior): Accept a string instead of an int
9394 for requested_inferiors, and use get_number_or_range to parse it.
9395 (info_inferiors_command): Pass args string to print_inferior.
9396 (initialize_inferiors): Change help string for info inferiors.
9397 * inferior.h (print_inferior): Export prototype change.
9401 * common/ax.def (invalid2): Set to 0x31.
9405 * dwarf2loc.c (disassemble_dwarf_expression) <DW_OP_breg[0-9]+>: Use
9407 (disassemble_dwarf_expression) <DW_OP_bregx>: Drop variable offset,
9409 (disassemble_dwarf_expression) <DW_OP_fbreg>: Use L and plongest.
9413 * Makefile.in (clean): Make clean should remove generated files
9414 observer.h and observer.inc.
9418 Revert the following patch (not approved yet):
9420 * Makefile.in (HFILES_NO_SRCDIR): Add printcmd.h.
9421 * ax-gdb.c (gen_printf_expr_callback): New function.
9422 * ax-gdb.h (gen_printf_expr_callback): Forward declare.
9423 * ax-general.c (ax_memcpy): New function.
9424 (ax_print): Handle "printf".
9426 * ax.h (ax_memcpy): Forward declare.
9427 * common/ax.def (invalid2): Removed.
9428 (printf): New entry.
9429 * printcmd.c (printcmd.h): New include.
9430 (string_printf): New function.
9431 (ui_printf): Removed.
9432 (printf_command): Remove static. Call string_printf.
9433 (eval_command): Call string_printf.
9434 * printcmd.h: New file.
9435 * tracepoint.c (validate_actionline,
9436 encode_actions_1): handle printf_command.
9440 * ax-general.c (ax_pick): Add missing newline.
9444 * breakpoint.c (breakpoint_1): Change first argument from an int
9445 to a char pointer, so that the function now accepts a list of
9446 breakpoints rather than just one. Use new function
9447 'number_is_in_list' to implement.
9448 (breakpoints_info): Pass char * instead of int to breakpoint_1.
9449 (watchpoints_info): Ditto.
9450 (tracepoints_info): Ditto.
9451 (maintenance_info_breakpoints): Ditto.
9452 (_initialize_breakpoint): Update help strings to reflect the fact
9453 that these functions can now take more than one argument.
9454 * cli/cli-utils.c (number_is_in_list): New function.
9455 * cli/cli-utils.h (number_is_in_list): Export.
9459 * memattr.c (mem_enable_command): Use get_number_or_range.
9460 (mem_disable_command): Ditto.
9461 (mem_delete_command): Ditto.
9462 (_initialize_mem): Tweak usage message to reflect multiple
9467 Add gdb.lookup_global_symbol python function.
9469 * python/py-symbol.c (gdbpy_lookup_global_symbol): New function.
9470 * python/python-internal.h (gdbpy_lookup_global_symbol): Declare it.
9471 * python/python.c (GdbMethods): Add entry for lookup_global_symbol.
9475 * language.c (language_class_name_from_physname): Rename
9476 'curr_language' argument to 'lang'; use in body.
9480 * cli/cli-utils.c (number_is_in_list): Check for zero return.
9484 * frame-unwind.h: Fix comment to mention the this frame, not the
9489 * symfile.c (auto_solib_limit): Remove.
9490 * symfile.h (auto_solib_limit): Remove.
9494 * Makefile.in (INSTALLED_LIBS): Delete. Update comment.
9498 * gdbthread.h (print_thread_info): Change prototype.
9499 * thread.c (print_thread_info): Accept char* instead of int for
9500 requested_threads argument. Use new function number_is_in_list
9501 to determine which threads to list.
9502 (info_threads_command): Pass char* to print_thread_info.
9503 * cli/cli-utils.c (number_is_in_list): New function.
9504 * cli/cli-utils.h (number_is_in_list): Export.
9505 * mi/mi-main.c (mi_cmd_thread_info): Pass char* to
9507 (print_one_inferior): Ditto.
9508 (mi_cmd_list_thread_groups): Ditto.
9512 * common/Makefile.in (CFLAGS): New.
9513 (COMPILE): Add $(CFLAGS).
9517 * breakpoint.c (catch_syscall_command_1): Fix typo.
9521 * reverse.c: Include cli-utils.h.
9522 * printcmd.c: Include cli-utils.h.
9523 (string_printf): Use skip_spaces.
9524 * cli/cli-utils.h: New file.
9525 * cli/cli-utils.c: New file.
9526 * cli/cli-dump.h (skip_spaces): Move to cli-utils.h.
9527 * cli/cli-dump.c (skip_spaces): Move to cli-utils.c.
9528 * breakpoint.h (get_number, get_number_or_range): Move to
9530 * breakpoint.c: Include cli-utils.h.
9531 (get_number_trailer, get_number, get_number_or_range)
9532 (ep_skip_leading_whitespace): Move to cli-utils.c.
9533 (create_breakpoint_sal, find_condition_and_thread)
9534 (decode_static_tracepoint_spec, watch_command_1)
9535 (watch_maybe_just_location, ep_parse_optional_if_clause)
9536 (catch_fork_command_1, catch_exec_command_1)
9537 (catch_syscall_command_1): Use skip_spaces, skip_to_space.
9538 * Makefile.in (SUBDIR_CLI_OBS): Add cli-utils.o.
9539 (SUBDIR_CLI_SRCS): Add cli-utils.c.
9540 (HFILES_NO_SRCDIR): Add cli-utils.h.
9541 (cli-utils.o): New target.
9545 * remote.c (remote_close): Reset INFERIOR_PTID to NULL_PTID
9546 before calling discard_all_inferiors.
9550 * opencl-lang.c (STRUCT_OCL_TYPE): Remove.
9551 (struct builtin_opencl_type): Remove.
9552 (builtin_opencl_type): Change return type to "struct type **".
9553 (lookup_opencl_vector_type): Update caller.
9554 (opencl_language_arch_info): Copy primitive type vector from gdbarch.
9555 (build_opencl_types): Install plain array of "struct type *"
9556 instead of "struct builtin_opencl_type".
9561 * arm-linux-nat.c: Include "observer.h" and "gdbthread.h".
9562 (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define.
9563 (struct arm_linux_hwbp_cap): New type.
9564 (arm_linux_get_hwbp_cap): New function.
9565 (arm_linux_get_hw_breakpoint_count): Likewise.
9566 (arm_linux_get_hw_watchpoint_count): Likewise.
9567 (arm_linux_can_use_hw_breakpoint): Likewise.
9568 (arm_hwbp_type): New type.
9569 (arm_hwbp_control_t): Likewise.
9570 (struct arm_linux_hw_breakpoint): Likewise.
9571 (struct arm_linux_thread_points): Likewise.
9572 (arm_threads): New global variable.
9573 (arm_linux_find_breakpoints_by_tid): New function.
9574 (arm_hwbp_control_initialize): Likewise.
9575 (arm_hwbp_control_is_enabled): Likewise.
9576 (arm_hwbp_control_disable): Likewise.
9577 (arm_linux_hw_breakpoint_initialize): Likewise.
9578 (arm_linux_get_hwbp_type): Likewise.
9579 (arm_linux_hw_watchpoint_initialize): Likewise.
9580 (arm_linux_hw_breakpoint_equal): Likewise.
9581 (arm_linux_insert_hw_breakpoint1): Likewise.
9582 (arm_linux_remove_hw_breakpoint1): Likewise.
9583 (arm_linux_insert_hw_breakpoint): Likewise.
9584 (arm_linux_remove_hw_breakpoint): Likewise.
9585 (arm_linux_region_ok_for_hw_watchpoint): Likewise.
9586 (arm_linux_insert_watchpoint): Likewise.
9587 (arm_linux_remove_watchpoint): Likewise.
9588 (arm_linux_stopped_data_address): Likewise.
9589 (arm_linux_stopped_by_watchpoint): Likewise.
9590 (arm_linux_watchpoint_addr_within_range): Likewise.
9591 (arm_linux_new_thread): Likewise.
9592 (arm_linux_thread_exit): Likewise.
9593 (_initialize_arm_linux_nat): Install hardware breakpoint/watchpoint
9594 related target callbacks. Register arm_linux_new_thread and
9595 arm_linux_thread_exit.
9596 * arm-tdep.h (arm_pc_is_thumb): Add prototype.
9597 * arm-tdep.c (arm_pc_is_thumb): Make global.
9598 (arm_gdbarch_init): Call set_gdbarch_have_nonsteppable_watchpoint.
9602 * breakpoint.c (update_watchpoint): Do not attempt to recreate
9603 per-frame locations while within a function epilogue.
9607 * ser-mingw.c (ser_windows_close): Reformat comment to better conform
9608 to GNU coding standards.
9612 Allow use of mingw native on Windows 95 OS.
9613 * ser-mingw.c (CancelIo): New macro for dynamically loaded DLL entry.
9614 (ser_windows_close): Only call CancelIo if function exists.
9615 (_initialize_ser_windows): Use LoadLirary/GetProcAddress
9616 to check for existence of CancelIo function in kernel32 DLL.
9620 * Makefile.in (HFILES_NO_SRCDIR): Add printcmd.h.
9621 * ax-gdb.c (gen_printf_expr_callback): New function.
9622 * ax-gdb.h (gen_printf_expr_callback): Forward declare.
9623 * ax-general.c (ax_memcpy): New function.
9624 (ax_print): Handle "printf".
9626 * ax.h (ax_memcpy): Forward declare.
9627 * common/ax.def (invalid2): Removed.
9628 (printf): New entry.
9629 * printcmd.c (printcmd.h): New include.
9630 (string_printf): New function.
9631 (ui_printf): Removed.
9632 (printf_command): Remove static. Call string_printf.
9633 (eval_command): Call string_printf.
9634 * printcmd.h: New file.
9635 * tracepoint.c (validate_actionline,
9636 encode_actions_1): handle printf_command.
9640 * reverse.c (delete_one_bookmark): Argument is now bookmark
9641 id rather than pointer to bookmark struct.
9642 (delete_bookmark_command): Use get_number_or_range.
9643 (goto_bookmark_command): Parse with get_number instead of strtoul.
9644 (bookmark_1): New function. Print info for one bookmark.
9645 (bookmarks_info): Use get_number_or_range and bookmark_1.
9649 * thread.c (info_threads_command): Re-implement using
9650 get_number_or_range.
9651 (thread_apply_command): Ditto.
9655 * common/ax.def: New file.
9656 * ax.h (enum agent_op): Use ax.def.
9657 * ax-general.c (aop_map): Use ax.def.
9661 * ax-general.c (aop_map): Add pick and rot.
9662 * dwarf2loc.c (compile_dwarf_to_ax) <DW_OP_over>: Reimplement.
9663 <DW_OP_rot>: Implement.
9664 * ax.h (enum agent_op) <aop_pick, aop_rot>: New constants.
9666 * ax-general.c (ax_pick): New function.
9670 * Makefile.in (HFILES_NO_SRCDIR): Don't mention ada-operator.inc.
9675 * cp-support.c (make_symbol_overload_list_namespace): Do not call
9676 make_symbol_overload_list_block with NULL BLOCK.
9677 * valarith.c (unop_user_defined_p): Resolve also TYPE_CODE_TYPEDEF.
9681 * breakpoint.c (get_number_trailer): No longer accept a NULL PP.
9682 * breakpoint.h (get_number_or_range): Declare.
9683 * printcmd.c (ALL_DISPLAYS): Declare.
9684 (delete_display): Reimplement taking a display pointer.
9685 (undisplay_command): Accept a range of displays to delete, using
9686 get_number_or_range.
9690 * c-valprint.c (c_val_print): Add embedded_offset to address
9691 for arrays of unspecified length.
9692 * p-valprint.c (pascal_val_print): Likewise.
9696 * gdb/arm-tdep.c (arm_displaced_step_copy_insn): Move code to ...
9697 (arm_process_displaced_insn): .. here. Remove parameter INSN.
9698 (thumb_process_displaced_insn): New.
9699 * gdb/arm-linux-tdep.c (arm_linux_displaced_step_copy_insn): Update
9700 call to arm_process_displaced_insn.
9701 * gdb/arm-tdep.h : Update declaration of arm_process_displaced_insn.
9705 * dwarf2loc.h (dwarf2_compile_expr_to_ax): Declare.
9706 * dwarf2loc.c (dwarf2_compile_expr_to_ax): Rename from
9707 compile_dwarf_to_ax. No longer static. Call
9708 dwarf2_compile_cfa_to_ax.
9709 (locexpr_tracepoint_var_ref): Update.
9710 (loclist_tracepoint_var_ref): Update.
9711 * dwarf2-frame.h (dwarf2_compile_cfa_to_ax): Declare.
9712 * dwarf2-frame.c (execute_cfa_program): Remove 'this_frame'
9713 argument; add 'gdbarch' and 'pc'.
9714 (dwarf2_compile_cfa_to_ax): New function.
9715 (dwarf2_frame_cache): Update.
9719 * ada-lang.c (ada_type_of_array): Fix the size of the array
9720 in the case of an unconstrained packed array.
9724 * common/Makefile.in: Add more targets for make.
9728 * dwarf2loc.c (unimplemented): Fix typo.
9732 * dwarf2loc.c (unimplemented): Handle unnamed opcodes.
9733 (compile_dwarf_to_ax) <default>: Use unimplemented.
9734 <DW_OP_deref>: Update.
9735 (disassemble_dwarf_expression): Update.
9736 * dwarf2read.c (dwarf_stack_op_name): Remove 'def' argument.
9737 (decode_locdesc): Update.
9738 * dwarf2expr.h (dwarf_stack_op_name): Update.
9742 * ax.h (struct aop_map) <name>: Now const.
9746 * ax-gdb.c.c (gen_expr) <UNOP_MEMVAL>: Handle value kinds other
9751 * infrun.c (get_displaced_step_closure_by_addr): New.
9752 * inferior.h: Declare it.
9753 * arm-tdep.c: (arm_pc_is_thumb): Call
9754 get_displaced_step_closure_by_addr. Adjust MEMADDR if it
9761 * tracepoint.c (memrange_sortmerge): Fix list A's end calculation.
9766 * value.c (value_contents_copy_raw): Extend describing comment.
9767 Assert that the destination contents we're overwriting are wholly
9769 (value_contents_copy): Extend describing comment.
9774 * value.c (value_available_contents_eq): Remove redundant local
9775 variables. Fix available contents comparision.
9776 * value.h (value_available_contents_eq): Extend describing
9781 * thread.c (info_threads_command): Add missing i18n markup and remove
9786 * breakpoint.c (longjmp_names): New variable.
9787 (struct breakpoint_objfile_data): New type.
9788 (breakpoint_objfile_key): New variable.
9789 (msym_not_found): New variable.
9790 (msym_not_found_p): New predicate.
9791 (get_breakpoint_objfile_data): New function.
9792 (create_overlay_event_breakpoint): Check per-objfile cache for
9794 (create_longjmp_master_breakpoint): Likewise.
9795 (create_std_terminate_master_breakpoint): Likewise.
9796 (create_exception_master_breakpoint): Likewise.
9797 (_initialize_breakpoint): Register per-objfile data key.
9801 * breakpoint.c ((create_overlay_event_breakpoint): Const-propagate
9803 (create_longjmp_master_breakpoint): Loop over longjmp names.
9804 (create_std_terminate_master_breakpoint): Const-propagate parameter
9806 (update_breakpoints_after_exec): Adjust.
9807 (breakpoint_re_set): Adjust.
9811 * thread.c (info_threads_command): Process arg as thread id,
9812 or list of thread ids.
9813 (thread_find_command): New command.
9814 (_initialize_thread): Document argument for info threads.
9815 Document 'thread find' command.
9816 * NEWS: Document new command "thread find".
9820 * Makefile.in (ACLOCAL_AMFLAGS): Add `-I ../config'.
9821 * aclocal.m4: Regenerated with aclocal-1.11.1.
9822 * common/configure: Regenerate with autoconf-2.64.
9826 * opencl-lang.c (build_opencl_types): Set the size of the built-in
9827 bool data type to a size of one byte.
9832 * target.c (memory_xfer_live_readonly_partial): Document where to
9833 look for interface description.
9838 * arm-tdep.c (copy_ldr_str_ldrb_strb): Replace PC with SP in
9839 order to store PC value on stack instead of text section.
9843 * rs6000-tdep.c (IS_EFP_PSEUDOREG): Use correct constant for
9844 the EFP register set size.
9845 (efpr_pseudo_register_read): Use regcache_raw_read_part to read
9846 data from the VMX register.
9847 (efpr_pseudo_register_write): Use regcache_raw_write_part to read
9848 and write data from/to the VMX register.
9852 * command.h (enum command_class): New class 'no_set_class', for
9853 "show" commands without a corresponding "set" command.
9854 * value.c (_initialize_values): Use 'no_set_class' for "show values".
9855 * copying.c (_initialize_copying): Ditto for "show copying" and
9857 * cli/cli-cmds.c (init_cli_cmds): Ditto for "show commands" and
9859 * cli/cli-setshow.c (cmd_show_list): Skip "show" commands for
9860 which there is no corresponding "set" command (eg. "show copying").
9865 * exec.c (section_table_available_memory): Change `len' parameter
9867 * exec.h (section_table_available_memory): Ditto.
9868 * value.h (read_value_memory): Rename the `offset' parameter to
9874 * memrange.c (compare_mem_ranges): Mention sort order in
9876 (normalize_mem_ranges): Add comment. Fix ra->length calculation.
9877 * tracepoint.c (traceframe_available_memory): Extend comment to
9878 mention what happens to RESULT when the target does not support
9884 * value.c (mark_value_bytes_unavailable): Fix indexing the `bef'
9889 * value.c (value_bits_valid, value_bits_synthetic_pointer):
9890 No longer handle NULL values.
9894 * exceptions.h (NOT_AVAILABLE_ERROR): New error.
9895 * value.c: Include "exceptions.h".
9896 (require_available): Throw NOT_AVAILABLE_ERROR instead of a
9898 * cp-abi.c: Include gdb_assert.h.
9899 (baseclass_offset): Add `embedded_offset' and `val' parameters.
9900 Assert the method is implemented. Wrap NOT_AVAILABLE_ERROR
9902 * cp-abi.h (baseclass_offset): Add `embedded_offset' and `val'
9903 parameters. No longer returns -1 on error.
9904 (struct cp_abi_ops) <baseclass_offset>: Add `embedded_offset' and
9906 * cp-valprint.c: Include exceptions.h.
9907 (cp_print_value): Handle NOT_AVAILABLE_ERROR errors when fetching
9908 the baseclass_offset. Handle unavailable base classes. Use
9909 val_print_invalid_address.
9910 * p-valprint.c: Include exceptions.h.
9911 (pascal_object_print_value): Handle NOT_AVAILABLE_ERROR errors
9912 when fetching the baseclass_offset. No longer expect
9913 baseclass_offset returning -1. Handle unavailable base classes.
9914 Use val_print_invalid_address.
9915 * valops.c (dynamic_cast_check_1): Rename `contents' parameter to
9916 `valaddr' parameter, and change its type to gdb_byte pointer. Add
9917 `embedded_offset' and `val' parameters. Adjust.
9918 (dynamic_cast_check_2): Rename `contents' parameter to `valaddr'
9919 parameter, and change its type to gdb_byte pointer. Add
9920 `embedded_offset' and `val' parameters. Adjust. No longer expect
9921 baseclass_offset returning -1.
9922 (value_dynamic_cast): Use value_contents_for_printing rather than
9923 value_contents. Adjust.
9924 (search_struct_field): No longer expect baseclass_offset returning
9926 (search_struct_method): If reading memory from the target is
9927 necessary, wrap it in a new value to pass to baseclass_offset. No
9928 longer expect baseclass_offset returning -1.
9929 (find_method_list): No longer expect baseclass_offset returning
9930 -1. Use value_contents_for_printing rather than value_contents.
9931 * valprint.c (val_print_invalid_address): New function.
9932 * valprint.h (val_print_invalid_address): Declare.
9933 * gdbtypes.c (is_unique_ancestor_worker): New `embedded_offset'
9934 and `val' parameters. No longer expect baseclass_offset returning
9936 * gnu-v2-abi.c: Include "exceptions.h".
9937 (gnuv2_baseclass_offset): Add `embedded_offset' and `val'
9938 parameters. Handle unavailable memory. Recurse through
9939 gnuv2_baseclass_offset directly, rather than through
9940 baseclass_offset. No longer returns -1 on not found, instead
9942 * gnu-v3-abi.c (gnuv3_baseclass_offset): Add `embedded_offset' and
9943 `val' parameters. Adjust.
9947 * tracepoint.c (memrange_sortmerge): Don't merge ranges that are
9948 almost but not quite adjacent.
9952 * value.h (value_entirely_available): Declare.
9953 * value.c (value_entirely_available): New function.
9954 * c-valprint.c (c_value_print): Don't try fetching the pointer's
9955 real type if the pointer is unavailable.
9959 * valops.c (value_repeat): Use read_value_memory instead of
9964 * value.h (value_contents_copy, value_contents_copy_raw): Declare.
9965 * value.c (value_contents_copy_raw, value_contents_copy): New
9967 (value_primitive_field): Use value_contents_copy_raw instead of
9969 * valops.c (value_fetch_lazy): Use value_contents_copy instead of
9971 (value_array, value_slice): Ditto.
9972 * valarith.c (value_subscripted_rvalue): Use
9973 value_contents_copy_raw instead of memcpy.
9977 <unavailable> references.
9979 * valops.c (get_value_at): Use value_from_contents_and_address,
9980 avoiding read_memory.
9984 * c-valprint.c (c_val_print): Print a string with unavailable
9985 contents as an array.
9989 * value.h (unpack_bits_as_long): Delete declaration.
9990 (unpack_value_bits_as_long): Declare.
9991 (unpack_value_field_as_long): Declare.
9992 (value_field_bitfield): Declare.
9993 * value.c (unpack_bits_as_long): Rename to...
9994 (unpack_value_bits_as_long_1): ... this. Add embedded_offset and
9995 value parameters. Return the extracted result in a new output
9996 parameter. If the value contents are unavailable, return false,
9997 otherwise return true.
9998 (unpack_value_bits_as_long): New.
9999 (unpack_field_as_long): Rename to...
10000 (unpack_value_field_as_long_1): ... this. Add embedded_offset and
10001 Add embedded_offset and value parameters. Return the extracted
10002 result in a new output parameter. If the value contents are
10003 unavailable, return false, otherwise return true.
10004 (unpack_value_field_as_long): New.
10005 (unpack_field_as_long_1): New.
10006 (unpack_field_as_long): Reimplement as wrapper around
10007 unpack_value_field_as_long_1.
10008 (value_field_bitfield): New function.
10009 * valops.c (value_fetch_lazy): When fetching a bitfield, use
10010 unpack_value_bits_as_long. Mark the value as unavailable, if it
10012 * jv-valprint.c (java_print_value_fields): Use
10013 value_field_bitfield.
10014 * p-valprint.c (pascal_object_print_value_fields): Use
10015 value_field_bitfield.
10016 * cp-valprint.c (cp_print_value_fields): Use value_field_bitfield.
10020 * value.c (get_internalvar_integer): Also return the int value of
10021 TYPE_CODE_INT INTERNALVAR_VALUE values.
10022 (set_internalvar): Don't special case TYPE_CODE_INT.
10026 * value.c (struct internalvar) <enum internalvar_kind>: Remove
10027 INTERNALVAR_POINTER.
10029 (value_of_internalvar): Remove INTERNALVAR_POINTER handling.
10030 (set_internalvar): Remove special TYPE_CODE_PTR handling.
10031 (preserve_one_internalvar): Remove INTERNALVAR_POINTER handling.
10035 * value.h (value_available_contents_eq): Declare.
10036 * value.c (find_first_range_overlap): New function.
10037 (value_available_contents_eq): New function.
10038 * valprint.c (val_print_array_elements): Use
10039 value_available_contents_eq.
10040 * ada-valprint.c (val_print_packed_array_elements): Use
10041 value_available_contents_eq.
10042 * jv-valprint.c (java_value_print): Use
10043 value_available_contents_eq.
10047 * target.c (target_read_live_memory): New function.
10048 (memory_xfer_live_readonly_partial): New.
10049 (memory_xfer_partial): If reading from a traceframe, fallback to
10050 reading unavailable read-only memory from read-only regions of
10051 live target memory.
10052 * tracepoint.c (disconnect_tracing): Adjust.
10053 (set_current_traceframe): New, factored out from
10054 set_traceframe_number.
10055 (set_traceframe_number): Reimplement to only change the traceframe
10056 number on the GDB side.
10057 (do_restore_current_traceframe_cleanup): Adjust.
10058 (make_cleanup_restore_traceframe_number): New.
10059 (cur_traceframe_number): New global.
10060 (tfile_open): Set cur_traceframe_number to no traceframe.
10061 (set_tfile_traceframe): New function.
10062 (tfile_trace_find): If looking up a traceframe using any method
10063 other than by number, make sure the current tfile traceframe
10064 matches gdb's current traceframe. Update the current tfile
10065 traceframe if the lookup succeeded.
10066 (tfile_fetch_registers, tfile_xfer_partial)
10067 (tfile_get_trace_state_variable_value): Make sure the remote
10068 traceframe matches gdb's current traceframe.
10069 * remote.c (remote_traceframe_number): New global.
10070 (remote_open_1): Set it to -1.
10071 (set_remote_traceframe): New function.
10072 (remote_fetch_registers, remote_store_registers)
10073 (remote_xfer_memory, remote_xfer_partial)
10074 (remote_get_trace_state_variable_value): Make sure the remote
10075 traceframe matches gdb's current traceframe.
10076 (remote_trace_find): If looking up a traceframe using any method
10077 other than by number, make sure the current remote traceframe
10078 matches gdb's current traceframe. Update the current remote
10079 traceframe if the lookup succeeded.
10080 * infrun.c (fetch_inferior_event): Adjust.
10081 * tracepoint.h (set_current_traceframe): Declare.
10082 (get_traceframe_number, set_traceframe_number): Add describing
10087 Mark pieces of values as unavailable if the corresponding memory
10090 * valops.c: Include tracepoint.h.
10091 (value_fetch_lazy): Use read_value_memory.
10092 (read_value_memory): New.
10093 * value.h (read_value_memory): Declare.
10094 * dwarf2loc.c (read_pieced_value): Use read_value_memory.
10095 * exec.c (section_table_available_memory): New function.
10096 * exec.h (section_table_available_memory): Declare.
10100 * Makefile.in (SFILES): Add memrange.c.
10101 (HFILES_NO_SRCDIR): Add memrange.h.
10102 (COMMON_OBS): Add memrange.o.
10103 * memrange.c: New file.
10104 * memrange.h: New file.
10105 * tracepoint.c: Include memrange.h.
10106 (struct mem_range): Delete.
10107 (mem_range_s): Delete.
10108 (traceframe_available_memory): New function.
10109 * tracepoint.h (traceframe_available_memory): Declare.
10113 * target.h (struct traceframe_info): Forward declare.
10114 (enum target_object): Add TARGET_OBJECT_TRACEFRAME_INFO.
10115 (struct target_ops) <to_traceframe_info>: New field.
10116 (target_traceframe_info): New.
10117 * target.c (update_current_target): Inherit and default
10118 to_traceframe_info.
10119 * remote.c (PACKET_qXfer_traceframe_info): New.
10120 (remote_protocol_features): Register qXfer:traceframe-info:read.
10121 (remote_xfer_partial): Handle TARGET_OBJECT_TRACEFRAME_INFO.
10122 (remote_traceframe_info): New.
10123 (init_remote_ops): Install it.
10124 (_initialize_remote): Install "set/show remote traceframe-info"
10126 * tracepoint.h (parse_traceframe_info): Declare.
10127 * tracepoint.c (struct mem_range): New.
10128 (mem_range_s): New typedef.
10129 (struct traceframe_info): New.
10130 (traceframe_info): New global.
10131 (free_traceframe_info): New function.
10132 (clear_traceframe_info): New function.
10133 (start_tracing, tfind_1, set_traceframe_number): Clear traceframe
10135 (build_traceframe_info): New function.
10136 (tfile_traceframe_info): New function.
10137 (init_tfile_ops): Install tfile_traceframe_info.
10138 (traceframe_info_start_memory, free_result): New functions.
10139 (memory_attributes, traceframe_info_elements): New globals.
10140 (parse_traceframe_info, get_traceframe_info): New functions.
10141 * features/traceframe-info.dtd: New file.
10142 * Makefile.in (XMLFILES): Add traceframe-info.dtd.
10146 Base support for <unavailable> value contents.
10148 * value.h (value_bytes_available): Declare.
10149 (mark_value_bytes_unavailable): Declare.
10150 * value.c (struct range): New struct.
10151 (range_s): New typedef.
10152 (ranges_overlap): New function.
10153 (range_lessthan): New function.
10154 (ranges_contain_p): New function.
10155 (struct value) <unavailable>: New field.
10156 (value_bytes_available): New function.
10157 (mark_value_bytes_unavailable): New function.
10158 (require_not_optimized_out): Constify parameter.
10159 (require_available): New function.
10160 (value_contents_all, value_contents): Require all bytes be
10162 (value_free): Free `unavailable'.
10163 (value_copy): Copy `unavailable'.
10164 * valprint.h (val_print_unavailable): Declare.
10165 * valprint.c (valprint_check_validity): Rename `offset' parameter
10166 to `embedded_offset'. If printing a scalar, check whether the
10167 value chunk is available.
10168 (val_print_unavailable): New.
10169 (val_print_scalar_formatted): Check whether the value is
10171 * python/py-prettyprint.c (apply_val_pretty_printer): Refuse
10172 pretty-printing unavailable values.
10176 Fix const/volatile qualifiers of C++ types, PR c++/12328.
10177 * c-typeprint.c (c_type_print_args): Update the function comment. New
10178 variable param_type, initialize it. Remove const/volatile qualifiers
10179 for language_cplus and !show_artificial. Use param_type.
10183 * symtab.c (find_pc_sect_line): New variable objfile, initialize it
10184 from S. Iterate S using ALL_OBJFILE_SYMTABS. Verify BV for each S.
10185 * symtab.h (struct symtab) <next>: Comment extension.
10189 * Makefile.in (CLEANDIRS): Remove duplicated common dir.
10193 * common/Makefile.in: Add copyright header.
10197 * infrun.c (proceed): Move switching out and in of tfind mode from
10199 (fetch_inferior_event): ... to here.
10203 * Makefile.in: Remove signals.o from COMMON_OBS. Link
10205 * configure.ac: Add common to sub dir.
10206 * configure: Regenerate.
10212 * common/Makefile.in: New.
10213 * common/configure.ac: New.
10214 * common/aclocal.m4: New.
10215 * common/configure: Generate.
10219 * vec.h (VEC_block_remove): Place VEC_ASSERT_INFO on the right
10220 side of the parenthesis.
10224 * vec.h (VEC_block_remove): Fix comment.
10228 * linux-nat.c (linux_nat_filter_event): Fix typo in comment.
10232 * i386-tdep.c (i386_process_record): Rename l suffixes to d suffixes
10233 in comments for pcmpgtd, pcmpeqd, psubd, paddd, pcmpgtd, pcmpeqd,
10239 * i386-tdep.c (i386_process_record) <0x660f3807>: Fix the comment to
10241 (i386_process_record) <lddqu>: Fix the opcode to 0xf20ff0.
10242 (i386_process_record) <0x0f3807>: Fix the comment to phsubsw.
10246 * dwarf2read.c (read_subroutine_type): Set special calling
10247 convention flag for functions compiled by IBM XL C for OpenCL.
10248 * ppc-sysv-tdep.c: Include "dwarf2.h"
10249 (ppc_sysv_abi_push_dummy_call): Implement IBM OpenCL vector types
10250 calling convention.
10251 (do_ppc_sysv_return_value): Add FUNC_TYPE argument. Implement
10252 IBM OpenCL vector types calling convention.
10253 (ppc_sysv_abi_return_value): Pass through FUNC_TYPE.
10254 (ppc_sysv_abi_broken_return_value): Likewise.
10255 (ppc64_sysv_abi_push_dummy_call): Implement IBM OpenCL vector
10256 types calling convention.
10257 (ppc64_sysv_abi_return_value): Likewise.
10258 * spu-tdep.c: Include "dwarf2.h"
10259 (spu_return_value): Implement IBM OpenCL vector types calling
10264 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Implement
10265 correct ABI for AltiVec vector arguments.
10269 * valprint.c (val_print): Extend comment.
10270 * ada-valprint.c (ada_valprint): Rewrite comment deferring
10271 interface explanation to val_print.
10272 (ada_val_print_array): Adjust comment to current interface.
10273 (print_field_values): Adjust comment to current interface.
10274 * c-valprint.c (c_val_print): Rewrite comment deferring interface
10275 explanation to val_print.
10276 * f-valprint.c (f_val_print): Ditto.
10277 * jv-valprint.c (java_val_print): Ditto.
10278 * m2-valprint.c (m2_val_print): Ditto.
10279 * p-valprint.c (pascal_val_print): Ditto.
10283 * breakpoint.c (parse_breakpoint_sals): Fix description.
10288 * python/py-inferior.c (python_on_normal_stop): New function.
10289 (python_on_resume): New function.
10290 (python_inferior_exit): New function.
10291 (gdbpy_initialize_inferior): Add normal_stop, target_resumed, and
10292 inferior_exit observers.
10293 * python/py-evtregistry.c: New file.
10294 * python/py-threadevent.c : New file.
10295 * python/py-event.c: New file.
10296 * python/py-evts.c: New file.
10297 * python/py-continueevent.c: New file.
10298 * python/py-bpevent.c: New file.
10299 * python/py-signalevent.c: New file.
10300 * python/py-exetiedevent.c: New file.
10301 * python/py-breakpoint.c (gdbpy_breakpoint_from_bpstats): New function.
10302 Move struct breakpoint_object from here...
10303 * python/python-internal.h: ... to here.
10304 * python/py-event.h: New file.
10305 * python/py-events.h: New file.
10306 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-breakpointstopevent.o,
10307 py-continueevent.o, py-event.o, py-eventregistry.o, py-events.o,
10308 py-exitedevent.o, py-signalstopevent.o, and py-stopevent.o.
10309 (SUBDIR_PYTHON_SRCS): Add py-breakpointstopevent.c,
10310 py-continueevent.c, py-event.c, py-eventregistry.c, py-events.c,
10311 py-exitedevent.c, py-signalstopevent.c, and py-stopevent.c.
10312 Add build rules for all the above.
10316 * dwarf2read.c (dwarf2_section_empty_p): New function.
10317 (dwarf2_read_section): Use dwarf2_section_empty_p.
10318 (dwarf2_section_size): New function.
10319 (dwarf2_get_section_info): Unconditionally read section.
10320 (dwarf2_read_index): Use dwarf2_section_empty_p.
10321 (partial_read_comp_unit_head): Use dwarf2_section_size.
10322 (dwarf2_symbol_mark_computed): Likewise.
10326 * NEWS: Add item for "catch syscall" on mips*-linux* targets.
10330 * mips-linux-tdep.c: Include xml-syscall.h.
10331 (mips_linux_get_syscall_number): New function.
10332 (mips_linux_init_abi): Add calls to
10333 mips_linux_get_syscall_number() and set_xml_syscall_file_name().
10334 * data-directory/Makefile.in (SYSCALLS_FILES): Add
10335 mips-o32-linux.xml, mips-n32-linux.xml and mips-n64-linux.xml
10336 * syscalls/mips-n32-linux.xml: New file.
10337 * syscalls/mips-n64-linux.xml: New file.
10338 * syscalls/mips-o32-linux.xml: New file.
10342 * dwarf2read.c (dwarf2_ranges_read): Skip empty range entries.
10343 Complain about inverted range entries.
10344 (dwarf2_record_block_ranges): Likewise.
10349 * breakpoint.c (update_watchpoint): Fix name of the
10350 update_global_location_list function.
10351 (print_one_breakpoint): Fix typo.
10352 (_initialize_breakpoint): Remove extra space in hbreak help
10354 * breakpoint.h (struct bp_location) <length>: Fix field
10359 * regcache.c (registers_changed_ptid): Don't explictly always
10360 clear `current_regcache'. Only clear current_thread_ptid and
10361 current_thread_arch when PTID matches. Only reinit the frame
10362 cache if PTID matches the current inferior_ptid. Move alloca(0)
10364 (registers_changed): ... here.
10368 * arm-tdep.c (arm_skip_stack_protector): Accept any symbol that
10369 starts with __stack_chk_guard as stack guard symbol.
10373 * disasm.c (compare_lines): Handle the end of sequence markers
10374 within the line table to better support disassembling over
10375 compilation unit boundaries.
10379 * arm-tdep.c (skip_prologue_function): Add GDBARCH and IS_THUMB
10380 arguments. Skip in-prologue calls to glibc __aeabi_read_tp
10381 implementation even if no symbols are available.
10382 (thumb_analyze_prologue): Update call to skip_prologue_function.
10383 (arm_analyze_prologue): Likewise.
10387 * arm-tdep.c: Include "observer.h".
10388 (arm_prologue_this_id): Use frame PC if get_frame_func returns 0.
10389 (arm_exidx_data_key): New static variable.
10390 (struct arm_exidx_entry, arm_exidx_entry_s): New data types.
10391 (struct arm_exidx_data): Likewise.
10392 (arm_exidx_data_free): New function.
10393 (arm_compare_exidx_entries): Likewise.
10394 (arm_obj_section_from_vma): Likewise.
10395 (arm_exidx_new_objfile): Likewise.
10396 (arm_find_exidx_entry): Likewise.
10397 (arm_exidx_fill_cache): Likewise.
10398 (arm_exidx_unwind_sniffer): Likewise.
10399 (arm_exidx_unwind): New global variable.
10400 (arm_gdbarch_init): Append unwinder arm_exidx_unwind.
10401 (_initialize_arm_tdep): Attach arm_exidx_new_objfile to new_objfile
10402 observer. Register arm_exidx_data_key as objfile data.
10406 * arm-tdep.c (arm_analyze_load_stack_chk_guard): Avoid build break
10407 due to accessing uninitialized variable. Fix indentation.
10411 * c-valprint.c (c_value_print): When doing virtual base pointer
10412 adjustment, create a new value with adjusted contents rather than
10413 changing the contents of the value being printed (and getting it
10418 * xml-support.c (xml_find_attribute): New.
10419 (xinclude_start_include): Use it.
10420 * xml-support.h (xml_find_attribute): Declare.
10421 * memory-map.c (memory_map_start_memory)
10422 (memory_map_start_property): Use xml_find_attribute.
10423 * osdata.c (osdata_start_osdata, osdata_start_column): Use
10424 xml_find_attribute.
10425 * remote.c (start_thread): Use xml_find_attribute.
10426 * solib-target.c (library_list_start_segment)
10427 (library_list_start_section, library_list_start_library)
10428 (library_list_start_list): Use xml_find_attribute.
10429 * xml-tdesc.c (tdesc_start_target, tdesc_start_feature)
10430 (tdesc_start_union, tdesc_start_struct, tdesc_start_flags)
10431 (tdesc_start_field): Use xml_find_attribute.
10435 * opencl-lang.c (STRINGIFY): Rename to OCL_STRING.
10436 (BUILD_OCL_VTYPES): Update.
10440 * configure.ac: Work around non-GNU sed limitation when computing
10441 python version number.
10442 * configure: Regenerate.
10446 Fix debug printing of TYPE_INSTANCE.
10447 * expprint.c (print_subexp_standard) <TYPE_INSTANCE>: New.
10448 (dump_subexp_body_standard) <TYPE_INSTANCE>: New.
10452 Fix debug printing of BINOP_IN, OP_OBJC_MSGCALL,
10453 OP_F77_UNDETERMINED_ARGLIST, OP_COMPLEX, OP_OBJC_SELECTOR, OP_NAME,
10454 OP_OBJC_NSSTRING, OP_F90_RANGE and OP_DECFLOAT.
10455 * ada-operator.inc: Rename the file to ...
10456 * ada-operator.def: ... here, wrap all the entries by macro OP.
10457 * expprint.c (op_name_standard): Remove all the entries. Include
10458 "std-operator.def" instead.
10459 * expression.h (enum exp_opcode): Include "std-operator.def" and
10460 "ada-operator.def". Move all the entries ...
10461 * std-operator.def: ... here, wrap all the entries by macro OP.
10465 * breakpoint.h (remove_jit_event_breakpoints): New prototype.
10466 * breakpoint.c (remove_jit_event_breakpoints): New function.
10467 * jit.c (jit_descriptor_addr): Delete.
10468 (registering_code): Delete.
10469 (clear_int): Delete.
10470 (jit_inferior_data): New variable.
10471 (struct jit_inferior_data): New type.
10472 (get_jit_inferior_data): New function.
10473 (jit_inferior_data_cleanup): New function.
10474 (jit_read_descriptor): Adjust.
10475 (jit_register_code): Adjust.
10476 (jit_breakpoint_re_set_internal): New function; move code here ...
10477 (jit_inferior_init): ... from here.
10478 (jit_breakpoint_re_set): Adjust.
10479 (jit_reset_inferior_data_and_breakpoints): New function.
10480 (jit_inferior_created_observer): Adjust.
10481 (jit_inferior_exit_hook): Adjust.
10482 (jit_executable_changed_observer): New function.
10483 (jit_event_handler): Adjust.
10484 (_initialize_jit): Adjust.
10488 * m32r-tdep.c (m32r_gdbarch_init): Replace accidentally deleted
10494 * python/python.c (execute_gdb_command): Call
10495 prevent_dont_repeat.
10496 * top.c (suppress_dont_repeat): New global.
10497 (dont_repeat): Use it.
10498 (prevent_dont_repeat): New function.
10499 * command.h (prevent_dont_repeat): Declare.
10503 * infcmd.c (finish_backward): Use breakpoint_set_silent.
10504 * python/py-breakpoint.c (bppy_set_silent): Use
10505 breakpoint_set_silent.
10506 (bppy_set_thread): Use breakpoint_set_thread.
10507 (bppy_set_task): Use breakpoint_set_task.
10508 * breakpoint.h (breakpoint_set_silent, breakpoint_set_thread)
10509 (breakpoint_set_task): Declare.
10510 (make_breakpoint_silent): Remove.
10511 * breakpoint.c (breakpoint_set_silent): New function.
10512 (breakpoint_set_thread): Likewise.
10513 (breakpoint_set_task): Likewise.
10514 (make_breakpoint_silent): Remove.
10518 * breakpoint.h (user_breakpoint_p): Declare.
10519 * breakpoint.c (user_breakpoint_p): New function.
10520 (breakpoint_1): Use it.
10521 (save_breakpoints): Likewise.
10525 * configure.ac: Add handling of Python distribution on Windows.
10526 * python-config.py: If the LIBS, SYSLIBS, LIBPL and/or LINKFORSHARED
10527 sysconfig variables are not defined, then do not use them.
10528 On Windows, if LIBPL is not defined, then use prefix + '/libs'
10529 instead. On Windows, return all paths using forward-slashes
10530 rather than backslashes.
10534 * configure.ac: Remove fallback behavior for building
10535 against Python. Remove tweaking of Python include path.
10536 Add PYTHON_CPPFLAGS and PYTHON_LIBS substitution.
10537 (AC_TRY_LIBPYTHON): Adjust program used in linking test.
10538 If link is successful, set PYTHON_CPPFLAGS and PYTHON_LIBS.
10539 Always restore CPPFLAGS and LIBS after linking test.
10540 * configure: Regenerated.
10541 * Makefile.in (INTERNAL_CPPFLAGS): Add @PYTHON_CPPFLAGS@.
10542 (INSTALLED_LIBS, CLIBS): Add @PYTHON_LIBS@.
10543 * python/python-internal.h: Adjust includes of Python .h files.
10547 * tracepoint.c (traceframe_walk_blocks): Add missing i18n markup
10552 * inflow.c (gdb_has_a_terminal): Fix typo in interactive_mode
10557 * arm-linux-nat.c: Update calls to regcache_register_status
10558 instead of regcache_valid_p.
10559 * aix-thread.c: Likewise.
10560 * i386gnu-nat.c: Likewise.
10565 * valops.c (compare_parameters): Verify TYPE_NFIELDS before
10566 touching TYPE_FIELD_ARTIFICIAL.
10570 * MAINTAINERS: Move myself from Responsible Maintainers to Authorized
10575 * tracepoint.c (tfile_xfer_partial): If there's no traceframe
10576 selected, don't try iterating over the traceframe's blocks.
10577 (tfile_has_stack): If there's no traceframe selected, then there's
10579 (tfile_has_registers): If there's no traceframe selected, then
10580 there's no registers.
10584 * target.c (memory_xfer_partial): No need to restore shadows if we
10585 haven't read anything.
10589 * mips-tdep.c (mips_print_register): Use get_frame_register_value
10590 and val_print_scalar_formatted.
10594 * tracepoint.c (tfile_read): New.
10595 (tfile_open): Use it.
10596 (tfile_get_traceframe_address): Use it.
10597 (tfile_trace_find): Use it.
10598 (walk_blocks_callback_func): New typedef.
10599 (match_blocktype): New function.
10600 (traceframe_walk_blocks): New function.
10601 (traceframe_find_block_type): New function.
10602 (tfile_fetch_registers, tfile_xfer_partial)
10603 (tfile_get_trace_state_variable_value): Use
10604 traceframe_find_block_type and tfile_read.
10608 * remote-mips.c: Add internationalization mark ups. Remove
10609 trailing \n from already marked up strings.
10613 * python/py-prettyprint.c (print_string_repr): Clear
10614 'addressprint' option when calling val_print_string.
10615 (print_children): Handle Val_pretty_default. Clear 'addressprint'
10616 option when calling val_print_string.
10620 * python/python.c (gdbpy_solib_name): Use gdb_py_longest and
10622 * python/python-internal.h (GDB_PY_LL_ARG, GDB_PY_LLU_ARG): New
10624 (gdb_py_longest, gdb_py_ulongest): New typedefs.
10625 (gdb_py_long_from_longest, gdb_py_long_from_ulongest)
10626 (gdb_py_long_as_ulongest): New defines.
10627 (gdb_py_object_from_longest, gdb_py_object_from_ulongest)
10628 (gdb_py_int_as_long): Declare.
10629 * python/py-value.c (valpy_lazy_string): Use gdb_py_longest,
10630 GDB_PY_LL_ARG, gdb_py_object_from_longest.
10631 (valpy_long): Add comment.
10632 * python/py-utils.c (get_addr_from_python): Use
10633 gdb_py_long_as_ulongest. Handle overflow properly.
10634 (gdb_py_object_from_longest): New function.
10635 (gdb_py_object_from_ulongest): Likewise.
10636 (gdb_py_int_as_long): Likewise.
10637 * python/py-type.c (typy_array): Use gdb_py_int_as_long.
10638 * python/py-symtab.c (salpy_get_pc): Use
10639 gdb_py_long_from_ulongest.
10640 (salpy_get_line): Use PyInt_FromLong.
10641 * python/py-param.c (set_parameter_value): Use
10642 gdb_py_int_as_long.
10643 * python/py-lazy-string.c (stpy_get_address): Use
10644 gdb_py_long_from_ulongest.
10645 * python/py-frame.c (frapy_pc): Use gdb_py_long_from_ulongest.
10646 * python/py-cmd.c (cmdpy_completer): Use gdb_py_int_as_long.
10647 * python/py-breakpoint.c (bppy_set_thread): Use
10648 gdb_py_int_as_long.
10649 (bppy_set_task): Likewise.
10650 (bppy_set_ignore_count): Likewise.
10651 (bppy_set_hit_count): Likewise.
10652 * python/py-block.c (blpy_get_start): Use
10653 gdb_py_object_from_ulongest.
10654 (blpy_get_end): Likewise.
10655 (gdbpy_block_for_pc): Use gdb_py_ulongest and GDB_PY_LLU_ARG.
10660 * gdb/objfiles.h (struct objfile) <addr_low>: New field.
10661 * gdb/solib.c (solib_read_symbols): Check for addr_low in
10662 equality test for objfile, initialize addr_low if needed.
10666 * tui/tui-regs.c (tui_register_format): Remove dead code.
10670 * printcmd.c (print_formatted): Use val_print_scalar_formatted
10671 instead of print_scalar_formatted.
10672 (print_scalar_formatted): Don't handle 's' format strings here,
10673 and add an assertion that we never see such format here.
10674 * valprint.h (val_print_scalar_formatted): Declare.
10675 * valprint.c (val_print_scalar_formatted): New.
10676 * c-valprint.c (c_val_print): Use val_print_scalar_formatted
10677 instead of print_scalar_formatted.
10678 * jv-valprint.c (java_val_print): Ditto.
10679 * p-valprint.c (pascal_val_print): Ditto.
10680 * ada-valprint.c (ada_val_print_1): Ditto.
10681 * f-valprint.c (f_val_print): Ditto.
10682 * infcmd.c (registers_info): Ditto.
10683 * m2-valprint.c (m2_val_print): Ditto.
10687 * m2-valprint.c (print_unbounded_array): Pass
10688 value_contents_for_printing rather than value_contents, to
10689 m2_print_array_contents. Also pass in the value.
10693 * dwarf2read.c (dwarf2_read_index, write_psymtabs_to_index)
10694 (save_gdb_index_command): Switch to .gdb_index version 4.
10698 * mi/mi-main.c (get_register): Use get_frame_register_value rather
10699 than frame_register, and always pass a valid value to val_print.
10703 Centralize printing "<optimized out>".
10705 * valprint.h (val_print_optimized_out): Declare.
10706 * cp-valprint.c (cp_print_value_fields): Use
10707 val_print_optimized_out.
10708 * jv-valprint.c (java_print_value_fields): Ditto.
10709 * p-valprint.c (pascal_object_print_value_fields): Ditto.
10710 * printcmd.c (print_formatted): Ditto.
10711 * valprint.c (valprint_check_validity): Ditto.
10712 (value_check_printable): Ditto.
10713 (val_print_optimized_out): New.
10717 * infcmd.c (default_print_registers_info): Allocate values so to
10718 never pass a NULL value to val_print.
10722 * cp-valprint.c (cp_print_value): Treat the 'skip' local as
10723 boolean. Make sure to always pass a value that matches the
10724 contents buffer to callees. Preserve `address' for following
10726 * value.c (value_contents_for_printing_const): New.
10727 (value_address): Constify value argument.
10728 * value.h (value_contents_for_printing_const): Declare.
10729 (value_address): Constify value argument.
10733 * regcache.c (struct regcache_descr): Rename
10734 sizeof_raw_register_valid_p field to sizeof_raw_register_status,
10735 and sizeof_cooked_register_valid_p to
10736 sizeof_cooked_register_status.
10737 (init_regcache_descr): Adjust.
10738 (struct regcache): Rename register_valid_p field to
10740 (regcache_xmalloc_1, regcache_xfree, regcache_save)
10741 (do_cooked_read): Adjust.
10742 (regcache_valid_p): Rename to ...
10743 (regcache_register_status): ... this. Adjust.
10744 (regcache_invalidate): Adjust.
10745 (regcache_raw_read, regcache_cooked_read, regcache_raw_write):
10747 (regcache_raw_supply): Adjust. If buf i NULL, mark the register
10748 as unavailable, not valid.
10749 (regcache_dump): Adjust.
10750 * regcache.h (enum register_status): New.
10751 (regcache_register_status): Declare.
10752 (regcache_invalidate): Delete declaration.
10753 * corelow.c (get_core_registers): Adjust.
10754 * tracepoint.c (tfile_fetch_registers): Adjust.
10755 * trad-frame.c (REG_VALUE): Rename to ...
10756 (TF_REG_VALUE): ... this.
10757 (REG_UNKNOWN): Rename to ...
10758 (TF_REG_UNKNOWN): ... this.
10759 (trad_frame_set_value, trad_frame_set_unknown): Adjust.
10760 * mi/mi-main.c (register_changed_p): Adjust.
10764 * regcache.c (struct regcache_descr): Remove outdated comment.
10765 (init_regcache_descr): Remove sizeof_raw_register_valid_p
10767 (regcache_xmalloc): Rename to ...
10768 (regcache_xmalloc_1): ... this. Add `readonly_p' parameter.
10769 Allocate the regcache type accordingly.
10770 (regcache_xmalloc): New as wrapper around regcache_xmalloc_1.
10771 (regcache_xfree): Asser the source is also readonly. Copy sizeof
10772 cooked registers, not raw.
10773 (regcache_dup_no_passthrough): Delete.
10774 (get_thread_arch_regcache): Use regcache_xmalloc_1.
10775 * h8300-tdep.c (h8300_push_dummy_call): Tweak comment to not
10776 mention obsolete write_register_bytes.
10777 * regcache.h (regcache_dup_no_passthrough): Delete declaration.
10781 Stop remote_read_bytes from handling partial reads itself.
10783 * remote-fileio.c: Include target.h.
10784 (remote_fileio_write_bytes): Delete.
10785 (remote_fileio_func_open, remote_fileio_func_write)
10786 (remote_fileio_func_rename, remote_fileio_func_unlink): Use
10787 target_read_memory.
10788 (remote_fileio_func_stat): Use target_read_memory and
10789 target_write_memory.
10790 (remote_fileio_func_gettimeofday): Use target_write_memory.
10791 (remote_fileio_func_system): Use target_read_memory.
10792 * remote.c (remote_write_bytes): Make it static.
10793 (remote_read_bytes): Don't handle partial reads here.
10794 * remote.h (remote_read_bytes): Delete declaration.
10798 Simplify XML parsing a bit.
10800 * xml-support.h (gdb_xml_parse_quick): Declare.
10801 * xml-support.c (gdb_xml_create_parser_and_cleanup_1): Renamed
10802 from gdb_xml_create_parser_and_cleanup, and added `old_chain'
10804 (gdb_xml_create_parser_and_cleanup): Reimplement on top of
10805 gdb_xml_create_parser_and_cleanup_1.
10806 (gdb_xml_parse_quick): New.
10807 * memory-map.c (parse_memory_map): Use gdb_xml_parse_quick.
10808 * osdata.c (osdata_parse): Ditto.
10809 * remote.c (remote_threads_info): Ditto.
10810 * solib-target.c (solib_target_parse_libraries): Ditto.
10811 * xml-syscall.c (syscall_parse_xml): Ditto.
10812 * xml-tdesc.c (tdesc_parse_xml): Ditto.
10816 * configure.tgt (mips*-*-elf): New; just like mips*-*-*, but
10817 with remote-mips.o added to gdb_target_obs.
10818 * Makefile.in (ALL_TARGET_OBS): Add remote-mips.o.
10822 * ada-valprint.c (val_print_packed_array_elements): Pass the
10823 correct struct value to val_print.
10824 (ada_val_print_1): Ditto.
10828 Don't lose embedded_offset in printing routines throughout.
10830 * valprint.h (val_print_array_elements): Change prototype.
10831 * valprint.c (val_print_array_elements): Add `embedded_offset'
10832 parameter, and adjust to pass it down to val_print, while passing
10833 `valaddr' or `address' unmodified. Take embedded_offset into
10834 account when checking repetitions.
10835 * c-valprint.c (c_val_print): Pass embedded_offset to
10836 val_print_array_elements instead of adjusting `valaddr' and
10838 * m2-valprint.c (m2_print_array_contents, m2_val_print): Pass
10839 embedded_offset to val_print_array_elements instead of adjusting
10841 * p-lang.h (pascal_object_print_value_fields): Adjust prototype.
10842 * p-valprint.c (pascal_val_print): Pass embedded_offset to
10843 val_print_array_elements and pascal_object_print_value_fields
10844 instead of adjusting `valaddr'.
10845 (pascal_object_print_value_fields): Add `offset' parameter, and
10847 (pascal_object_print_value): Add `offset' parameter, and adjust to
10849 (pascal_object_print_static_field): Use
10850 value_contents_for_printing/value_embedded_offset, rather than
10852 * ada-valprint.c (val_print_packed_array_elements): Add `offset'
10853 parameter, and adjust to use it. Use
10854 value_contents_for_printing/value_embedded_offset, rather than
10856 (ada_val_print): Rename `valaddr0' parameter to `valaddr'.
10857 (ada_val_print_array): Add `offset' parameter, and adjust to use
10859 (ada_val_print_1): Rename `valaddr0' parameter to `valaddr', and
10860 `embedded_offset' to `offset'. Don't re-adjust `valaddr'.
10861 Instead work with offsets. Use
10862 value_contents_for_printing/value_embedded_offset, rather than
10863 value_contents. Change `defer_val_int' local type to CORE_ADDR,
10864 and use value_from_pointer to extract a target pointer, rather
10865 than value_from_longest.
10866 (print_variant_part): Add `offset' parameter. Replace
10867 `outer_valaddr' parameter by a new `outer_offset' parameter.
10868 Don't re-adjust `valaddr'. Instead pass down adjusted offsets.
10869 (ada_value_print): Use
10870 value_contents_for_printing/value_embedded_offset, rather than
10872 (print_record): Add `offset' parameter, and adjust to pass it
10874 (print_field_values): Add `offset' parameter. Replace
10875 `outer_valaddr' parameter by a new `outer_offset' parameter.
10876 Don't re-adjust `valaddr'. Instead pass down adjusted offsets.
10877 Use value_contents_for_printing/value_embedded_offset, rather than
10879 * d-valprint.c (dynamic_array_type): Use
10880 value_contents_for_printing/value_embedded_offset, rather than
10882 * jv-valprint.c (java_print_value_fields): Add `offset' parameter.
10883 Don't re-adjust `valaddr'. Instead pass down adjusted offsets.
10884 (java_print_value_fields): Take `offset' into account. Don't
10885 re-adjust `valaddr'. Instead pass down adjusted offsets.
10886 (java_val_print): Take `embedded_offset' into account. Pass it to
10887 java_print_value_fields.
10888 * f-valprint.c (f77_print_array_1): Add `embedded_offset'
10889 parameter. Don't re-adjust `valaddr' or `address'. Instead pass
10890 down adjusted offsets.
10891 (f77_print_array): Add `embedded_offset' parameter. Pass it down.
10892 (f_val_print): Take `embedded_offset' into account.
10896 * inflow.c: Include "gdbcmd.h".
10897 (interactive_mode): New static global, moved here from top.c.
10898 (show_interactive_mode): New function, moved here from top.c.
10899 use gdb_has_a_terminal instead of input_from_terminal_p to
10900 determine the current mode.
10901 (gdb_has_a_terminal): Add handling of the "iteractive-mode"
10903 (_initialize_inflow): Add the "set/show interactive-mode"
10904 commands. Moved here from top.c, after having adjusted slightly
10906 * top.c (interactive_mode, show_interactive_mode): Delete, moved
10908 (input_from_terminal_p): Remove handling of "interactive-mode"
10909 setting, moved to infow.c.
10910 (init_main): Remove creation of the "set/show interactive-mode"
10911 commands, moved to inflow.c.
10915 * NEWS: Add entry for native ia64-hpux support.
10920 * thread.c (free_thread): Free 'name'.
10921 (print_thread_info): Emit thread name. Change CLI output.
10922 (thread_name_command): New function.
10923 (do_captured_thread_select): Emit newline.
10924 (_initialize_thread): Register 'thread name' command.
10925 * target.h (struct target_ops) <to_thread_name>: New field.
10926 (target_thread_name): New macro.
10927 * target.c (update_current_target): Handle to_thread_name.
10928 * python/py-infthread.c (thpy_get_name): New function.
10929 (thpy_set_name): Likewise.
10930 (thread_object_getset): Add "name".
10931 * linux-nat.c (linux_nat_thread_name): New function.
10932 (linux_nat_add_target): Set to_thread_name.
10933 * gdbthread.h (struct thread_info) <name>: New field.
10937 * ada-valprint.c (ada_print_scalar): Remove unsigned char downcast.
10938 (ada_val_print_1): Likewise.
10942 * rs6000-tdep.c (rs6000_skip_prologue): Make sure that the prologue
10943 upper limit address is not greater than the function end address
10944 when the upper limit could not be computed using the debugging
10949 * cli/cli-cmds.c (apropos_command): Free the compiled regex. Use
10951 * utils.c: Include gdb_regex.h.
10952 (do_regfree_cleanup): New function.
10953 (make_regfree_cleanup): Likewise.
10954 (get_regcomp_error): Likewise.
10955 * gdb_regex.h (make_regfree_cleanup, get_regcomp_error): Declare.
10959 * cli/cli-cmds.c (apropos_command): Fix formatting. Don't call
10960 re_compile_fastmap.
10964 * p-exp.y (intvar): New static variable, used to set CURRENT_TYPE
10965 for internal variables.
10966 (last_was_structop): New static variable.
10967 (COMPLETE): New token.
10968 (field_exp): New rule to group all '.' suffix handling.
10969 Add mark_struct_expression calls when approriate to be able
10970 to correctly find fields for completion.
10971 (yylex): Adapt to handle field completion and set INTVAR when
10976 * arm-tdep.c (arm_register_reggroup_p): FPS register is in
10977 save_reggroup, restore_reggroup and all_reggroup.
10981 * ada-valprint. (ada_printchar): Use the correct type length
10982 in call to ada_emit_char.
10983 * c-valprint.c (c_val_print): Remove cast in call to LA_PRINT_CHAR.
10987 * solib-som.h (hpux_major_release): Declare variable here.
10988 * solib-som.c: Remove <sys/utsname.h> header.
10989 (DEFAULT_HPUX_MAJOR_RELEASE): New macro.
10990 (hpux_major_release): Make global, change default value to
10991 DEFAULT_HPUX_MAJOR_RELEASE.
10992 (get_hpux_major_release): Simply return HPUX_MAJOR_RELEASE.
10993 * hppa-hpux-nat.c: Add <sys/utsname.h> include.
10994 Add "solib-som.h" header.
10995 (set_hpux_major_release): New function.
10996 (_initialize_hppa_hpux_nat): Call set_hpux_major_release.
11000 * configure.tgt (*-*-uclinux*): Match more Linux os targets
11004 * ia64-hpux-nat.c (ia64_hpux_fetch_register): Remove trailing
11005 new-line at end of warning message.
11006 (ia64_hpux_store_register): Remove trailing new-line at end of
11008 * ia64-hpux-tdep.c: Rephrase comment.
11009 * solib-ia64-hpux.c (struct dld_info): Change type of field
11010 dld_flags from "long long" to ULONGEST.
11014 * target.h (deprecated_child_ops): Delete declaration.
11015 * target.c (deprecated_child_ops): Delete definition.
11019 * Makefile.in (hpux-thread.o): Delete rule.
11020 * configure.ac: Don't check for HPUX DCE threads support.
11021 * configure, config.in: Regenerate.
11022 * hppa-hpux-nat.c (child_suppress_run): Delete.
11023 (hppa_hpux_child_can_run): Delete.
11024 (_initialize_hppa_hpux_nat): Don't override to_can_run.
11025 * hpux-thread.c: Delete.
11029 * hpux-thread.c (hpux_pid_to_str): Delete.
11033 * ada-valprint.c (ada_emit_char): Remove strange code.
11034 Check that c is <= UCHAR_MAX before passing it to isascii.
11035 (char_at): Do not assume that TYPE_LEN is either 1 or 2.
11039 * top.c (input_from_terminal_p): Restrict the use of interactive_mode
11040 to the case where instream is stdin.
11044 * ia64-tdep.h (struct regcache): Forward declare.
11045 (struct ia64_infcall_ops): New struct type.
11046 (struct gdbarch_tdep): New fields "find_global_pointer_from_solib"
11048 * ia64-tdep.c (ia64_find_global_pointer_from_dynamic_section):
11049 Renames ia64_find_global_pointer.
11050 (ia64_find_global_pointer, ia64_allocate_new_rse_frame)
11051 (ia64_store_argument_in_slot, ia64_set_function_addr: New function.
11052 (ia64_push_dummy_call): Adjust to use the new tdep ia64_infocall_ops
11054 (ia64_infcall_ops): New static global constant.
11055 (ia64_gdbarch_init): Set tdep->infcall_ops.
11056 * ia64-hpux-nat.c (ia64_hpux_xfer_solib_got): New function.
11057 (ia64_hpux_xfer_partial): Add TARGET_OBJECT_HPUX_SOLIB_GOT handing.
11058 * ia64-hpux-tdep.c: Include "regcache.h", "gdbcore.h" and "inferior.h".
11059 (ia64_hpux_dummy_code): New static global constant.
11060 (ia64_hpux_push_dummy_code, ia64_hpux_allocate_new_rse_frame)
11061 (ia64_hpux_store_argument_in_slot, ia64_hpux_set_function_addr)
11062 (ia64_hpux_dummy_id, ia64_hpux_find_global_pointer_from_solib):
11064 (ia64_hpux_infcall_ops): New static global constant.
11065 (ia64_hpux_init_abi): Install gdbarch and tdep methods needed
11066 for inferior function calls to work properly on ia64-hpux.
11070 * target.h (enum target_object): Add TARGET_OBJECT_HPUX_UREGS.
11071 * ia64-tdep.h (struct frame_info): forward declaration.
11072 (struct gdbarch_tdep): Add field size_of_register_frame.
11073 * ia64-tdep.c (ia64_access_reg): Use tdep->size_of_register_frame
11074 to determine the size of the register frame.
11075 (ia64_size_of_register_frame): New function.
11076 (ia64_gdbarch_init): Set tdep->size_of_register_frame.
11077 * ia64-hpux-tdep.c: Include "target.h" and "frame.h".
11078 (IA64_HPUX_UREG_REASON): New macro.
11079 (ia64_hpux_stopped_in_syscall, ia64_hpux_size_of_register_frame):
11081 (ia64_hpux_init_abi): Set tdep->size_of_register_frame.
11082 * ia64-hpux-nat.c (ia64_hpux_xfer_uregs): New function.
11083 (ia64_hpux_xfer_partial): Add handling of TARGET_OBJECT_HPUX_UREGS
11088 Add support for ia64-hpux.
11089 * config/ia64/hpux.mh, ia64-hpux-nat.c, ia64-hpux-tdep.c,
11090 ia64-hpux-tdep.h, solib-ia64-hpux.c, solib-ia64-hpux.h: New files.
11092 * configure.host: Add handling for ia64-hpux hosts. Add associated
11094 * configure.tgt: Add handling for ia64-hpux targets.
11095 * Makefile.in (ALL_64_TARGET_OBS): Add ia64-hpux-tdep.o.
11096 (HFILES_NO_SRCDIR): Add ia64-hpux-tdep.h.
11097 (ALLDEPFILES): Add ia64-hpux-nat.c ia64-hpux-tdep.c.
11101 [ttrace] Compute thread list immediately after attach.
11102 * inf_ttrace_attach (inf_ttrace_create_threads_after_attach):
11104 (inf_ttrace_attach): Use it.
11108 * libunwind-frame.c (libunwind_frame_cache): Do not return NULL
11109 if we could not determine the frame's function address. Instead,
11110 use the frame's PC, and then continue.
11114 * libunwind-frame.c (__LITTLE_ENDIAN, __BIG_ENDIAN): Define if
11115 not already defined.
11119 * ia64-tdep.c (ia64_struct_type_p): New function.
11120 (ia64_extract_return_value): Handle integral values that are
11121 less than 8 bytes long.
11122 (ia64_push_dummy_call): Likewise.
11126 * ia64-tdep.c (floatformat_ia64_ext_little): Renames
11127 floatformat_ia64_ext.
11128 (floatformat_ia64_ext_big): New static const.
11129 (floatformats_ia64_ext): Set first entry to &floatformat_ia64_ext_big.
11133 * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Fix error
11135 * mi/mi-main.c (mi_cmd_thread_select): Fix error messages.
11136 (mi_cmd_thread_list_ids): Likewise.
11137 (mi_cmd_data_list_changed_registers): Likewise.
11138 (mi_cmd_data_list_register_values): Likewise.
11139 (mi_cmd_data_write_register_values): Likewise.
11140 (mi_cmd_data_evaluate_expression): Likewise.
11141 (mi_cmd_data_read_memory): Likewise.
11142 (mi_cmd_data_read_memory_bytes): Likewise.
11143 (mi_cmd_data_write_memory): Likewise.
11144 (mi_cmd_enable_timings): Likewise.
11145 * mi/mi-interp.c (mi_cmd_interpreter_exec): Fix error messages.
11146 * mi/mi-cmd-var.c (mi_cmd_var_create): Fix error messages.
11147 (mi_cmd_var_delete): Likewise.
11148 (mi_cmd_var_set_format): Likewise.
11149 (mi_cmd_var_show_format): Likewise.
11150 (mi_cmd_var_info_num_children): Likewise.
11151 (mi_cmd_var_list_children): Likewise.
11152 (mi_cmd_var_info_type): Likewise.
11153 (mi_cmd_var_info_expression): Likewise.
11154 (mi_cmd_var_show_attributes): Likewise.
11155 (mi_cmd_var_assign): Likewise.
11156 (mi_cmd_var_update): Likewise.
11157 (mi_cmd_enable_pretty_printing): Likewise.
11158 (mi_cmd_var_set_update_range): Likewise.
11159 * mi/mi-cmd-target.c (mi_cmd_target_file_get): Fix error
11161 (mi_cmd_target_file_put): Likewise.
11162 (mi_cmd_target_file_delete): Likewise.
11163 * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames): Fix error
11165 (mi_cmd_stack_info_depth): Likewise.
11166 (mi_cmd_stack_list_locals): Likewise.
11167 (mi_cmd_stack_list_args): Likewise.
11168 (mi_cmd_stack_select_frame): Likewise.
11169 (mi_cmd_stack_select_frame): Likewise.
11170 (mi_cmd_stack_info_frame): Likewise.
11171 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Fix error
11173 (mi_cmd_file_list_exec_source_files): Likewise.
11174 * mi/mi-cmd-env.c (mi_cmd_env_pwd): Fix error messages.
11175 (mi_cmd_env_cd): Likewise.
11176 (mi_cmd_env_path): Likewise.
11177 (mi_cmd_env_dir): Likewise.
11178 (mi_cmd_inferior_tty_show): Likewise.
11179 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Fix error messages.
11180 * mi/mi-cmd-break.c (mi_cmd_break_insert): Fix error messages.
11181 (mi_cmd_break_watch): Likewise.
11185 * ppc-linux-nat.c (booke_cmp_hw_point): Fix whitespace.
11186 (ppc_linux_insert_hw_breakpoint): Likewise.
11187 (ppc_linux_remove_hw_breakpoint): Likewise.
11188 (ppc_linux_insert_watchpoint): Likewise.
11193 PR fortran/11104 and DWARF unbound arrays detection.
11194 * dwarf2read.c (read_subrange_type): Set zero length on unspecified
11195 upper bound. Set TYPE_HIGH_BOUND_UNDEFINED if not language_ada on
11196 unspecified upper bound.
11197 * eval.c (evaluate_subexp_standard) <multi_f77_subscript>: Remove
11198 variables array_size_array, tmp_type and offset_item. New variable
11199 array. Remove call to f77_get_upperbound. New variables array_type
11200 and index. Call value_subscripted_rvalue for each dimenasion. Remove
11201 the final call to deprecated_set_value_type.
11205 Make value allocations more lazy.
11206 * ada-lang.c (coerce_unspec_val_to_type): Use allocate_value_lazy
11207 instead of allocate_value and set_value_lazy when possible.
11208 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use allocate_value_lazy
11209 instead of allocate_value and set_value_lazy.
11210 * findvar.c (value_of_register_lazy): Likewise.
11211 (read_var_value): Remove V preallocation, call just check_typedef in
11212 advance. Move allocate_value to LOC_CONST, LOC_LABEL,
11213 LOC_CONST_BYTES. Use allocate_value_lazy in LOC_STATIC, LOC_ARG,
11214 LOC_REF_ARG, LOC_LOCAL, LOC_BLOCK. Set ADDR instead of
11215 set_value_address and break in LOC_BLOCK. Use allocate_value_lazy and
11216 remove lval_memory set in LOC_REGPARM_ADDR. Use allocate_value_lazy
11217 in LOC_UNRESOLVED and LOC_OPTIMIZED_OUT. Add setting lval_memory at
11218 the end, remove set_value_lazy there.
11219 * valarith.c (value_subscripted_rvalue): Use allocate_value_lazy
11220 instead of allocate_value and set_value_lazy when possible.
11221 * valops.c (value_fetch_lazy): Do nop for value_optimized_out VAL.
11222 * value.c (allocate_computed_value): Use allocate_value_lazy instead
11223 of allocate_value and set_value_lazy.
11224 (value_from_contents_and_address): Use allocate_value_lazy instead of
11225 allocate_value and set_value_lazy when possible.
11229 * disasm.c (dump_insns): Support dumping opcodes for MI.
11230 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Allow mode to control
11231 dumping of instruction opcodes.
11235 * configure.tgt: Detect GNU/kFreeBSD and set `gdb_osabi'
11240 * thread.c (do_captured_thread_select): Emit newline before
11245 * s390-tdep.c: Comment cleanup, mostly periods and spaces.
11246 * score-tdep.c: Ditto.
11247 * score-tdep.h: Ditto.
11248 * ser-base.c: Ditto.
11249 * ser-go32.c: Ditto.
11252 * ser-mingw.c: Ditto.
11253 * ser-pipe.c: Ditto.
11254 * ser-tcp.c: Ditto.
11255 * ser-unix.c: Ditto.
11256 * sh64-tdep.c: Ditto.
11257 * shnbsd-nat.c: Ditto.
11258 * sh-tdep.c: Ditto.
11259 * sh-tdep.h: Ditto.
11261 * solib-darwin.c: Ditto.
11262 * solib-frv.c: Ditto.
11264 * solib-irix.c: Ditto.
11265 * solib-osf.c: Ditto.
11266 * solib-pa64.c: Ditto.
11267 * solib-som.c: Ditto.
11268 * solib-spu.c: Ditto.
11269 * solib-sunos.c: Ditto.
11270 * solib-svr4.c: Ditto.
11272 * sol-thread.c: Ditto.
11273 * somread.c: Ditto.
11276 * sparc64-linux-tdep.c: Ditto.
11277 * sparc64-tdep.c: Ditto.
11278 * sparc-linux-nat.c: Ditto.
11279 * sparc-linux-tdep.c: Ditto.
11280 * sparc-sol2-nat.c: Ditto.
11281 * sparc-sol2-tdep.c: Ditto.
11282 * sparc-tdep.c: Ditto.
11283 * sparc-tdep.h: Ditto.
11284 * spu-tdep.c: Ditto.
11285 * stabsread.c: Ditto.
11286 * stabsread.h: Ditto.
11288 * symfile.c: Ditto.
11289 * symfile.h: Ditto.
11290 * symmisc.c: Ditto.
11294 * target-descriptions.c: Ditto.
11295 * target-descriptions.h: Ditto.
11297 * target-memory.c: Ditto.
11298 * terminal.h: Ditto.
11301 * tracepoint.c: Ditto.
11302 * tracepoint.h: Ditto.
11303 * trad-frame.h: Ditto.
11304 * typeprint.c: Ditto.
11308 * ui-file.c: Comment cleanup, mostly periods and spaces.
11309 * ui-file.h: Ditto.
11313 * v850-tdep.c: Ditto.
11314 * valarith.c: Ditto.
11316 * valprint.c: Ditto.
11317 * valprint.h: Ditto.
11322 * vax-tdep.c: Ditto.
11325 * version.h: Ditto.
11326 * windows-nat.c: Ditto.
11327 * windows-tdep.c: Ditto.
11328 * xcoffread.c: Ditto.
11329 * xcoffsolib.c: Ditto.
11330 * xml-support.c: Ditto.
11331 * xstormy16-tdep.c: Ditto.
11332 * xtensa-tdep.c: Ditto.
11333 * xtensa-tdep.h: Ditto.
11337 * breakpoint.c (resources_needed_watchpoint): Fix indentation.
11338 * gdbtypes.c (is_scalar_type_recursive): Fix formatting.
11343 Implement support for PowerPC BookE ranged watchpoints.
11345 (struct breakpoint_ops) <resources_needed>: New method.
11346 Initialize to NULL in all existing breakpoint_ops instances.
11347 (struct breakpoint) <exact>: New field.
11348 (target_exact_watchpoints): Declare external global.
11349 * breakpoint.c (target_exact_watchpoints): New global flag.
11350 (update_watchpoint): Set b->type to bp_hardware_watchpoint and
11351 b->enable_state to bp_enabled before calling
11352 hw_watchpoint_used_count.
11353 (hw_watchpoint_used_count): Iterate over all bp_locations in a
11354 watchpoint. Call breakpoint's breakpoint_ops.resources_needed
11356 (insert_watchpoint, remove_watchpoint): Use fixed length of 1 byte
11357 if the watchpoint is exact.
11358 (resources_needed_watchpoint): New function.
11359 (watchpoint_breakpoint_ops): Add resources_needed_watchpoint.
11360 (watch_command_1): Set b->exact if the user asked for an exact
11361 watchpoint and one can be set.
11362 (can_use_hardware_watchpoint): Add exact_watchpoints argument.
11363 Pass fixed length of 1 to target_region_ok_for_hw_watchpoint if
11364 the user asks for an exact watchpoint and one can be set. Return
11365 number of needed debug registers to watch the expression.
11366 * gdbtypes.c (is_scalar_type): New function, based on
11367 valprint.c:scalar_type_p.
11368 (is_scalar_type_recursive): New function.
11369 * gdbtypes.h (is_scalar_type_recursive): Declare.
11370 * ppc-linux-nat.c (ppc_linux_region_ok_for_hw_watchpoint): Always
11371 handle regions when ranged watchpoints are available.
11372 (create_watchpoint_request): New function.
11373 (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint): Use
11374 create_watchpoint_request.
11375 * rs6000-tdep.c (show_powerpc_exact_watchpoints): New function.
11376 (_initialize_rs6000_tdep): Add `exact-watchpoints' boolean to the
11377 `set powerpc' and `show powerpc' commands.
11378 * target.h (struct target_ops) <to_region_ok_for_hw_watchpoint>:
11379 Mention documentation comment in the target macro.
11380 (target_region_ok_for_hw_watchpoint): Document return value.
11384 * breakpoint.c (update_watchpoint): Decide on using a software or
11385 hardware watchpoint after the bp_locations are created.
11389 Convert hardware watchpoints to use breakpoint_ops.
11390 * breakpoint.h (breakpoint_ops) <insert>: Rename to...
11391 <insert_location>: ... this. Return int instead of void.
11392 Accept pointer to struct bp_location instead of pointer to
11393 struct breakpoint. Adapt all implementations.
11394 (breakpoint_ops) <remove>: Rename to...
11395 <remove_location>: ... this. Accept pointer to struct bp_location
11396 instead of pointer to struct breakpoint. Adapt all implementations.
11397 * breakpoint.c (insert_catchpoint): Delete function.
11398 (insert_bp_location): Call the watchpoint or catchpoint's
11399 breakpoint_ops.insert method.
11400 (remove_breakpoint_1): Call the watchpoint or catchpoint's
11401 breakpoint_ops.remove method.
11402 (insert_watchpoint, remove_watchpoint): New functions.
11403 (watchpoint_breakpoint_ops): New structure.
11404 (watch_command_1): Initialize the OPS field.
11405 * inf-child.c (inf_child_insert_fork_catchpoint)
11406 (inf_child_remove_fork_catchpoint, inf_child_insert_vfork_catchpoint)
11407 (inf_child_remove_vfork_catchpoint, inf_child_insert_exec_catchpoint)
11408 (inf_child_remove_exec_catchpoint, inf_child_set_syscall_catchpoint):
11410 (inf_child_target): Remove initialization of to_insert_fork_catchpoint,
11411 to_remove_fork_catchpoint, to_insert_vfork_catchpoint,
11412 to_remove_vfork_catchpoint, to_insert_exec_catchpoint,
11413 to_remove_exec_catchpoint and to_set_syscall_catchpoint.
11414 * target.c (update_current_target): Change default implementation of
11415 to_insert_fork_catchpoint, to_remove_fork_catchpoint,
11416 to_insert_vfork_catchpoint, to_remove_vfork_catchpoint,
11417 to_insert_exec_catchpoint, to_remove_exec_catchpoint and
11418 to_set_syscall_catchpoint to return_one.
11419 (debug_to_insert_fork_catchpoint, debug_to_insert_vfork_catchpoint)
11420 (debug_to_insert_exec_catchpoint): Report return value.
11421 * target.h (to_insert_fork_catchpoint, to_insert_vfork_catchpoint)
11422 (to_insert_exec_catchpoint): Change declaration to return int instead
11427 * arm-tdep.c: Internationalization.
11429 * charset.c: Ditto.
11430 * fork-child.c: Ditto.
11431 * nto-procfs.c: Ditto.
11432 * ppc-sysv-tdep.c: Ditto.
11434 * remote-mips.c: Ditto.
11436 * rs6000-nat.c: Ditto.
11437 * rs6000-tdep.c: Ditto.
11441 * xml-support.c: Ditto.
11442 * mi/mi-cmd-break.c: Ditto.
11443 * mi/mi-cmd-var.c: Ditto.
11444 * mi/mi-interp.c: Ditto.
11445 * mi/mi-main.c: Ditto.
11449 * remote-sim.c (gdbsim_store_register): Update API to
11450 sim_store_register to check more error conditions.
11454 * nto-procfs.c: Comment cleanup, mostly periods and spaces.
11455 * nto-tdep.c: Ditto.
11456 * nto-tdep.h: Ditto.
11457 * objc-exp.y: Ditto.
11458 * objc-lang.c: Ditto.
11459 * objfiles.c: Ditto.
11460 * objfiles.h: Ditto.
11461 * observer.c: Ditto.
11462 * opencl-lang.c: Ditto.
11465 * parser-defs.h: Ditto.
11468 * posix-hdep.c: Ditto.
11469 * ppcbug-rom.c: Ditto.
11470 * ppc-linux-nat.c: Ditto.
11471 * ppc-linux-tdep.c: Ditto.
11472 * ppc-linux-tdep.h: Ditto.
11473 * ppcnbsd-tdep.c: Ditto.
11474 * ppcobsd-tdep.c: Ditto.
11475 * ppcobsd-tdep.h: Ditto.
11476 * ppc-sysv-tdep.c: Ditto.
11477 * ppc-tdep.h: Ditto.
11478 * printcmd.c: Ditto.
11479 * proc-abi.c: Ditto.
11480 * proc-flags.c: Ditto.
11482 * proc-utils.h: Ditto.
11483 * progspace.h: Ditto.
11484 * prologue-value.c: Ditto.
11485 * prologue-value.h: Ditto.
11486 * psympriv.h: Ditto.
11487 * psymtab.c: Ditto.
11488 * p-typeprint.c: Ditto.
11489 * p-valprint.c: Ditto.
11490 * ravenscar-sparc-thread.c: Ditto.
11491 * ravenscar-thread.c: Ditto.
11492 * ravenscar-thread.h: Ditto.
11494 * regcache.c: Ditto.
11495 * regcache.h: Ditto.
11497 * remote-fileio.c: Ditto.
11498 * remote-fileio.h: Ditto.
11500 * remote-m32r-sdi.c: Ditto.
11501 * remote-mips.c: Ditto.
11502 * remote-sim.c: Ditto.
11503 * rs6000-aix-tdep.c: Ditto.
11504 * rs6000-nat.c: Ditto.
11505 * rs6000-tdep.c: Ditto.
11509 * charset.c (validate): Internationalization.
11510 * coffread.c (read_one_sym): Ditto.
11511 * dwarf2read.c (dwarf2_attach_fields_to_type): Ditto.
11512 * h8300-tdep.c (H8300_extract_return_value): Ditto.
11513 * inflow.c (new_tty): Ditto.
11514 * iq2000-tdep.c (iq2000_breakpoint_from_pc): Ditto.
11515 * m32c-tdep.c (m32c_return_value): Ditto.
11516 * mep-tdep.c (mep_store_return_value): Ditto.
11517 * score-tdep.c (score7_fetch_insn): Ditto.
11518 * ser-mingw.c (pipe_windows_open): Ditto.
11519 * sh64-tdep.c (sh64_extract_return_value): Ditto.
11520 * spu-tdep.c (spu_register_type): Ditto.
11521 * tracepoint.c (trace_find_command): Ditto.
11522 * valarith.c (value_pos): Ditto.
11526 * ada-valprint.c (printstr): Minor comment reformatting.
11530 * m32r-rom.c (m32r_upload_command): Fix up ARI warnings for _
11535 * h8300-tdep.c: Comment cleanup, mostly periods and spaces.
11536 * hppa-hpux-tdep.c: Ditto.
11537 * hppa-linux-nat.c: Ditto.
11538 * hppa-linux-tdep.c: Ditto.
11539 * hppanbsd-tdep.c: Ditto.
11540 * hppa-tdep.c: Ditto.
11541 * hppa-tdep.h: Ditto.
11542 * hpux-thread.c: Ditto.
11543 * i386-cygwin-tdep.c: Ditto.
11544 * i386-darwin-nat.c: Ditto.
11545 * i386gnu-nat.c: Ditto.
11546 * i386-linux-nat.c: Ditto.
11547 * i386-linux-tdep.c: Ditto.
11548 * i386-nat.c: Ditto.
11549 * i386-nat.h: Ditto.
11550 * i386nbsd-tdep.c: Ditto.
11551 * i386-sol2-nat.c: Ditto.
11552 * i386-stub.c: Ditto.
11553 * i386-tdep.c: Ditto.
11554 * i386-tdep.h: Ditto.
11555 * i387-tdep.c: Ditto.
11556 * ia64-linux-nat.c: Ditto.
11557 * ia64-linux-tdep.c: Ditto.
11558 * ia64-tdep.c: Ditto.
11559 * infcall.c: Ditto.
11560 * infcall.h: Ditto.
11562 * inferior.c: Ditto.
11563 * inferior.h: Ditto.
11564 * infloop.c: Ditto.
11567 * interps.c: Ditto.
11568 * interps.h: Ditto.
11569 * iq2000-tdep.c: Ditto.
11570 * irix5-nat.c: Ditto.
11574 * jv-lang.c: Ditto.
11575 * jv-lang.h: Ditto.
11576 * jv-typeprint.c: Ditto.
11577 * jv-valprint.c: Ditto.
11578 * language.c: Ditto.
11579 * language.h: Ditto.
11580 * linespec.c: Ditto.
11581 * linux-fork.c: Ditto.
11582 * linux-nat.c: Ditto.
11583 * linux-thread-db.c: Ditto.
11584 * lm32-tdep.c: Ditto.
11588 * m2-exp.y: Comment cleanup, mostly periods and spaces.
11589 * m2-lang.c: Ditto.
11590 * m2-typeprint.c: Ditto.
11591 * m2-valprint.c: Ditto.
11592 * m32c-tdep.c: Ditto.
11593 * m32r-linux-nat.c: Ditto.
11594 * m32r-rom.c: Ditto.
11595 * m32r-tdep.c: Ditto.
11596 * m32r-tdep.h: Ditto.
11597 * m68hc11-tdep.c: Ditto.
11598 * m58klinux-nat.c: Ditto.
11599 * m68k-tdep.c: Ditto.
11600 * m88k-tdep.c: Ditto.
11601 * m88k-tdep.h: Ditto.
11602 * machoread.c: Ditto.
11603 * macrocmd.c: Ditto.
11604 * macroexp.c: Ditto.
11605 * macrotab.c: Ditto.
11608 * mdebugread.c: Ditto.
11609 * mdebugread.h: Ditto.
11610 * memattr.c: Ditto.
11611 * memattr.h: Ditto.
11612 * memory-map.h: Ditto.
11613 * mep-tdep.c: Ditto.
11614 * microblaze-rom.c: Ditto.
11615 * microblaze-tdep.c: Ditto.
11616 * minsyms.c: Ditto.
11617 * mips-irix-tdep.c: Ditto.
11618 * mips-linux-nat.c: Ditto.
11619 * mips-linux-tdep.c: Ditto.
11620 * mips-linux-tdep.h: Ditto.
11621 * mipsnbsd-nat.c: Ditto.
11622 * mipsnbsd-tdep.c: Ditto.
11623 * mipsread.c: Ditto.
11624 * mips-tdep.c: Ditto.
11625 * mips-tdep.h: Ditto.
11626 * mn10300-linux-tdep.c: Ditto.
11627 * mn10300-tdep.c: Ditto.
11628 * mn10300-tdep.h: Ditto.
11629 * monitor.c: Ditto.
11630 * monitor.h: Ditto.
11631 * moxie-tdep.c: Ditto.
11632 * moxie-tdep.h: Ditto.
11633 * mt-tdep.c: Ditto.
11637 * bfin-tdep.h (BFIN_A0_DOT_W_REGNUM): Fix typo in name.
11641 * fbsd-nat.c (fbsd_find_memory_regions): Fix typo.
11645 * charset.c (_initialize_charset): Fix typo in string.
11649 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Mark up error message
11651 * tui/tui-layout.c (tui_set_layout_for_display_command):
11652 Split line so that operator goes to beginning of line.
11653 * tui/tui-winsource.c (tui_horizontal_source_scroll): Move
11654 assignment out of if statement.
11658 * ada-lang.c: Comment cleanup, mostly periods and spaces.
11659 * ada-lang.h: Ditto.
11660 * ada-tasks.c: Ditto.
11661 * ada-valprint.c: Ditto.
11662 * aix-threads.c: Ditto.
11663 * alpha-linux-nat.c: Ditto.
11664 * alpha-linux-tdep.c: Ditto.
11665 * alpha-mdebug-tdep.c: Ditto.
11666 * alpha-nat.c: Ditto.
11667 * alpha-osf1-tdep.c: Ditto.
11668 * alpha-tdep.c: Ditto.
11669 * alphabsd-nat.c: Ditto.
11670 * alphabsd-tdep.c: Ditto.
11671 * amd64-darwin-tdep.c: Ditto.
11672 * amd64-linux-nat.c: Ditto.
11673 * amd64-linux-tdep.c: Ditto.
11674 * amd64-sol2-tdep.c: Ditto.
11675 * amd64-tdep.c: Ditto.
11676 * amd64-fbsd-tdep.c: Ditto.
11677 * amd64-nbsd-tdep.c: Ditto.
11678 * amd64-obsd-tdep.c: Ditto.
11679 * amd64-linux-nat.c: Ditto.
11680 * amd64-linux-tdep.c: Ditto.
11681 * arm-tdep.c: Ditto.
11682 * arm-tdep.h: Ditto.
11683 * armnbsd-nat.c: Ditto.
11684 * avr-tdep.c: Ditto.
11685 * bfin-tdep.c: Ditto.
11686 * bsd-kvm.c: Ditto.
11687 * c-typeprintc: Ditto.
11688 * c-valprint.c: Ditto.
11689 * coff-pe-read.h: Ditto.
11690 * coffreead.c: Ditto.
11691 * cris-tdep.c: Ditto.
11693 * darwin-nat-info.c: Ditto.
11694 * darwin-nat.c: Ditto.
11695 * dbug-rom.c: Ditto.
11696 * dbxread.c: Ditto.
11699 * dec-thread.c: Ditto.
11701 * demangle.c: Ditto.
11702 * dicos-tdep.c: Ditto.
11703 * dictionary.c: Ditto.
11704 * dictionary.h: Ditto.
11705 * dink32-rom.c: Ditto.
11707 * doublest.c: Ditto.
11709 * dummy-frame.c: Ditto.
11710 * dwarf2-frame.c: Ditto.
11711 * dwarf2expr.c: Ditto.
11712 * dwarf2loc.c: Ditto.
11713 * dwarf2read.c: Ditto.
11714 * elfread.c: Ditto.
11715 * environ.c: Ditto.
11717 * event-top.h: Ditto.
11718 * exceptions.c: Ditto.
11719 * exceptions.h: Ditto.
11721 * expprint.c: Ditto.
11722 * expression.h: Ditto.
11726 * f-typeprint.c: Ditto.
11727 * f-valprint.c: Ditto.
11728 * fbsd-nat.c: Ditto.
11729 * findvar.c: Ditto.
11730 * fork-child.c: Ditto.
11733 * frv-linux-tdep.c: Ditto.
11734 * frv-tdep.c: Ditto.
11736 * gdb-stabs.h: Ditto.
11737 * gdb_assert.h: Ditto.
11738 * gdb_string.h: Ditto.
11739 * gdb_thread_db.h: Ditto.
11740 * gdb_wait.h: Ditto.
11741 * gdbarch.sh: Ditto.
11742 * gdbcore.h: Ditto.
11743 * gdbthread.h: Ditto.
11744 * gdbtypes.c: Ditto.
11745 * gdbtypes.h: Ditto.
11746 * gnu-nat.c: Ditto.
11747 * gnu-nat.h: Ditto.
11748 * gnu-v2-abi.c: Ditto.
11749 * gnu-v3-abi.c: Ditto.
11750 * go32-nat.c: Ditto.
11751 * gdbarch.c: Regenerate.
11752 * gdbarch.h: Regenerate.
11756 * ax-gdb.c: Adjust some long output strings.
11757 * breakpoint.c: Ditto.
11758 * charset.c: Ditto.
11760 * infcall.c: Ditto.
11762 * linux-nat.c: Ditto.
11763 * solib-pa64.c: Ditto.
11764 * solib-som.c: Ditto.
11770 * python/python.c (GdbMethods): Add "newest_frame" method.
11771 * python/python-internal.h (gdbpy_newest_frame): Declare.
11772 * python/py-frame.c (gdbpy_newest_frame): New function.
11776 * jit.h (struct jit_code_entry): use ULONGEST for symfile_size.
11777 * jit.c (jit_debug): New variable.
11778 (show_jit_debug): New function.
11779 (struct target_buffer): Use ULONGEST.
11780 (bfd_open_from_target_memory): Likewise.
11781 (jit_register_code, jit_inferior_init): Add debug output.
11782 (_initialize_jit): Register "debug jit" command.
11786 * frame.h (enum frame_type) <INLINE_FRAME>: Fix comment.
11787 * python/py-frame.c (gdbpy_initialize_frames): Add INLINE_FRAME
11792 * python/py-frame.c (frapy_block): Use get_frame_block.
11796 Do not stop on SIGPRIO signals by default
11797 * infrun.c (_initialize_infrun): Unset signal_stop and
11798 signal_print for TARGET_SIGNAL_PRIO.
11802 * ada-tasks.c: Fix style violation in comment.
11806 * linespec.c (decode_compound, find_method): Remove trailing \n
11807 at end of error string.
11808 * solib-irix.c (irix_current_sos): Likewise.
11809 * varobj.c (uninstall_variable): Likewise.
11813 * copyright.py: New script.
11814 * copyright.sh (byhand): Add *.ads, *.adb, *.gpr and *.inc.
11815 Launch emacs without exec'ing. Call copyright.py afterwards.
11819 * addrmap.c: Shorten lines of >= 80 columns.
11820 * arch-utils.c: Ditto.
11821 * arch-utils.h: Ditto.
11823 * ax-general.c: Ditto.
11825 * blockframe.c: Ditto.
11826 * breakpoint.c: Ditto.
11827 * buildsym.c: Ditto.
11829 * c-typeprint.c: Ditto.
11830 * charset.c: Ditto.
11831 * coffread.c: Ditto.
11832 * command.h: Ditto.
11833 * corelow.c: Ditto.
11835 * cp-namespace.c: Ditto.
11836 * cp-support.c: Ditto.
11837 * dbug-rom.c: Ditto.
11838 * dbxread.c: Ditto.
11842 * dictionary.c: Ditto.
11844 * doublest.c: Ditto.
11845 * dwarf2-frame.c: Ditto.
11846 * dwarf2expr.c: Ditto.
11847 * dwarf2loc.c: Ditto.
11848 * dwarf2read.c: Ditto.
11849 * elfread.c: Ditto.
11851 * event-loop.c: Ditto.
11852 * event-loop.h: Ditto.
11853 * exceptions.h: Ditto.
11855 * expprint.c: Ditto.
11856 * expression.h: Ditto.
11858 * f-valprint.c: Ditto.
11859 * findcmd.c: Ditto.
11860 * frame-base.c: Ditto.
11861 * frame-unwind.c: Ditto.
11862 * frame-unwind.h: Ditto.
11866 * gdb-stabs.h: Ditto.
11867 * gdb_assert.h: Ditto.
11868 * gdb_dirent.h: Ditto.
11869 * gdb_obstack.h: Ditto.
11870 * gdbcore.h: Ditto.
11871 * gdbtypes.c: Ditto.
11872 * gdbtypes.h: Ditto.
11873 * inf-ttrace.c: Ditto.
11874 * infcall.c: Ditto.
11878 * inline-frame.h: Ditto.
11879 * language.c: Ditto.
11880 * language.h: Ditto.
11881 * libunwind-frame.c: Ditto.
11882 * libunwind-frame.h: Ditto.
11883 * linespec.c: Ditto.
11884 * linux-nat.c: Ditto.
11885 * linux-nat.h: Ditto.
11886 * linux-thread-db.c: Ditto.
11887 * machoread.c: Ditto.
11888 * macroexp.c: Ditto.
11889 * macrotab.c: Ditto.
11892 * mdebugread.c: Ditto.
11893 * memattr.c: Ditto.
11894 * minsyms.c: Ditto.
11895 * monitor.c: Ditto.
11896 * monitor.h: Ditto.
11897 * objfiles.c: Ditto.
11898 * objfiles.h: Ditto.
11900 * p-typeprint.c: Ditto.
11901 * p-valprint.c: Ditto.
11903 * printcmd.c: Ditto.
11904 * proc-events.c: Ditto.
11906 * progspace.c: Ditto.
11907 * progspace.h: Ditto.
11908 * psympriv.h: Ditto.
11909 * psymtab.c: Ditto.
11911 * regcache.c: Ditto.
11912 * regcache.h: Ditto.
11913 * remote-fileio.c: Ditto.
11915 * ser-mingw.c: Ditto.
11916 * ser-tcp.c: Ditto.
11917 * ser-unix.c: Ditto.
11920 * solib-frv.c: Ditto.
11921 * solib-irix.c: Ditto.
11922 * solib-osf.c: Ditto.
11923 * solib-pa64.c: Ditto.
11924 * solib-som.c: Ditto.
11925 * solib-sunos.c: Ditto.
11926 * solib-svr4.c: Ditto.
11927 * solib-target.c: Ditto.
11929 * somread.c: Ditto.
11931 * stabsread.c: Ditto.
11932 * stabsread.c: Ditto.
11935 * symfile-mem.c: Ditto.
11936 * symfile.c: Ditto.
11937 * symfile.h: Ditto.
11938 * symmisc.c: Ditto.
11941 * target-descriptions.c: Ditto.
11942 * target-memory.c: Ditto.
11945 * terminal.h: Ditto.
11948 * tracepoint.c: Ditto.
11949 * tracepoint.h: Ditto.
11950 * ui-file.c: Ditto.
11951 * ui-file.h: Ditto.
11953 * user-regs.c: Ditto.
11954 * user-regs.h: Ditto.
11956 * valarith.c: Ditto.
11958 * valprint.c: Ditto.
11959 * valprint.h: Ditto.
11964 * xcoffread.c: Ditto.
11965 * xcoffsolib.c: Ditto.
11966 * xcoffsolib.h: Ditto.
11967 * xml-syscall.c: Ditto.
11968 * xml-tdesc.c: Ditto.
11972 * cli/cli-cmds.c: Shorten lines of >= 80 columns.
11973 * cli/cli-decode.c: Ditto.
11974 * cli/cli-dump.c: Ditto.
11975 * cli/cli-logging.c: Ditto.
11976 * cli/cli-script.c: Ditto.
11977 * cli/cli-setshow.c: Ditto.
11978 * common/signals.c: Ditto.
11979 * mi/mi-cmd-break.c: Ditto.
11980 * mi/mi-cmd-disas.c: Ditto.
11981 * mi/mi-cmd-stack.c: Ditto.
11982 * mi/mi-cmd-var.c: Ditto.
11983 * mi/mi-cmds.c: Ditto.
11984 * mi/mi-common.h: Ditto.
11985 * mi/mi-console.c: Ditto.
11986 * mi/mi-interp.c: Ditto.
11987 * mi/mi-main.c: Ditto.
11988 * osf-share/cma_attr.c: Ditto.
11989 * osf-share/cma_deb_core.h: Ditto.
11990 * osf-share/cma_debug_client.h: Ditto.
11991 * osf-share/cma_handle.h: Ditto.
11992 * osf-share/cma_mutex.h: Ditto.
11993 * osf-share/cma_stack_int.h: Ditto.
11994 * osf-share/cma_tcb_defs.h: Ditto.
11995 * python/py-auto-load.c: Ditto.
11996 * python/py-breakpoint.c: Ditto.
11997 * python/py-cmd.c: Ditto.
11998 * python/py-frame.c: Ditto.
11999 * python/py-objfile.c: Ditto.
12000 * python/py-param.c: Ditto.
12001 * python/py-progspace.c: Ditto.
12002 * python/py-symbol.c: Ditto.
12003 * python/py-value.c: Ditto.
12004 * python/python-internal.h: Ditto.
12005 * python/python.c: Ditto.
12006 * tui/tui-data.c: Ditto.
12007 * tui/tui-disasm.c: Ditto.
12008 * tui/tui-hooks.c: Ditto.
12009 * tui/tui-io.c: Ditto.
12010 * tui/tui-layout.c: Ditto.
12011 * tui/tui-regs.c: Ditto.
12012 * tui/tui-source.c: Ditto.
12013 * tui/tui-stack.c: Ditto.
12014 * tui/tui-win.c: Ditto.
12015 * tui/tui-windata.c: Ditto.
12016 * tui/tui-winsource.c: Ditto.
12020 * configure.ac, gdb.1: Copyright year update.
12024 * frame.c (get_prev_frame_1) <UNWIND_INNER_ID>: New variables
12025 this_pc_in_block, morestack_msym and morestack_name. Check for
12026 "__morestack" minimal symbol there.
12030 * symfile.c (find_sym_fns): Add call to dont_repeat.
12034 Copyright year update in most files (performed by copyright.sh).
12038 * top.c (print_gdb_version): Update copyright year in version output.
12040 For older changes see ChangeLog-2010.
12046 version-control: never