Remove a VEC from dwarf2read.c
[deliverable/binutils-gdb.git] / gdb / ChangeLog
1 2018-06-09 Tom Tromey <tom@tromey.com>
2
3 * dwarf2read.c (process_cu_includes): Update.
4 (process_full_comp_unit): Update.
5 * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6 std::vector.
7
8 2018-06-08 Paul Koning <paul_koning@dell.com>
9
10 PR gdb/23252
11
12 * python/python.c (do_start_initialization):
13 Avoid call to internal Python API.
14 (init__gdb_module): New function.
15
16 2018-06-08 Gary Benson <gbenson@redhat.com>
17
18 * linux-thread-db.c (valprint.h): New include.
19 (struct check_thread_db_info): New structure.
20 (check_thread_db_on_load, tdb_testinfo): New static globals.
21 (check_thread_db, check_thread_db_callback): New functions.
22 (try_thread_db_load_1): Run integrity checks if requested.
23 (maintenance_check_libthread_db): New function.
24 (_initialize_thread_db): Register "maint check libthread-db"
25 and "maint set/show check-libthread-db".
26 * NEWS: Mention the above new commands.
27
28 2018-06-08 Tom Tromey <tom@tromey.com>
29
30 * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
31 now a method.
32
33 2018-06-08 Tom Tromey <tom@tromey.com>
34
35 * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
36
37 2018-06-08 Tom Tromey <tom@tromey.com>
38
39 * common/btrace-common.h (struct btrace_data): Add constructor,
40 destructor, move assignment operator.
41 <empty, clear, fini>: New methods.
42 <format>: Initialize.
43 (btrace_data_init, btrace_data_fini, btrace_data_clear)
44 (btrace_data_empty): Don't declare.
45 * common/btrace-common.c (btrace_data_init): Remove.
46 (btrace_data::fini): Rename from btrace_data_fini.
47 (btrace_data::empty): Rename from btrace_data_empty.
48 (btrace_data::clear): Rename from btrace_data_clear. Return
49 bool.
50 * btrace.h (make_cleanup_btrace_data): Don't declare.
51 * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
52 (parse_xml_btrace): Update.
53 (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
54 (maint_btrace_clear_packet_history_cmd): Update.
55
56 2018-06-07 Pedro Alves <palves@redhat.com>
57
58 * target.h (target_ops) <beneath>: Now a method. All references
59 updated.
60 (class target_stack): New.
61 * target.c (g_target_stack): New.
62 (g_current_top_target): Delete.
63 (current_top_target): Get the top target out of g_target_stack.
64 (target_stack::push, target_stack::unpush): New.
65 (push_target, unpush_target): Reimplement.
66 (target_is_pushed): Reimplement in terms of g_target_stack.
67 (target_ops::beneath, target_stack::find_beneath): New.
68
69 2018-06-07 Pedro Alves <palves@redhat.com>
70
71 * target.h (find_target_beneath): Delete declaration.
72 * target.c (find_target_beneath): Delete definition.
73 * aix-thread.c: All callers of find_target_beneath adjusted to
74 call target_ops::beneath instead.
75 * bsd-uthread.c: Likewise.
76 * linux-thread-db.c: Likewise.
77 * ravenscar-thread.c: Likewise.
78 * sol-thread.c: Likewise.
79 * spu-multiarch.c: Likewise.
80
81 2018-06-07 Pedro Alves <palves@redhat.com>
82
83 * target.h (target_ops) <beneath>: Now a method. All references
84 updated.
85 (target_ops) <m_beneath>: New.
86 * target.c (target_ops::beneath): New.
87 * corelow.c: Adjust all references to target_ops::beneath.
88 * linux-thread-db.c: Likewise.
89 * make-target-delegates: Likewise.
90 * record-btrace.c: Likewise.
91 * record-full.c: Likewise.
92 * remote.c: Likewise.
93 * target.c: Likewise.
94 * target-delegates.c: Regenerate.
95
96 2018-06-07 Pedro Alves <palves@redhat.com>
97
98 * target.h (target_stack): Delete.
99 (current_top_target): Declare function.
100 * target.c (target_stack): Delete.
101 (g_current_top_target): New.
102 (current_top_target): New function.
103 * auxv.c: Use current_top_target instead of target_stack
104 throughout.
105 * avr-tdep.c: Likewise.
106 * breakpoint.c: Likewise.
107 * corefile.c: Likewise.
108 * elfread.c: Likewise.
109 * eval.c: Likewise.
110 * exceptions.c: Likewise.
111 * frame.c: Likewise.
112 * gdbarch-selftests.c: Likewise.
113 * gnu-v3-abi.c: Likewise.
114 * ia64-tdep.c: Likewise.
115 * ia64-vms-tdep.c: Likewise.
116 * infcall.c: Likewise.
117 * infcmd.c: Likewise.
118 * infrun.c: Likewise.
119 * linespec.c: Likewise.
120 * linux-tdep.c: Likewise.
121 * minsyms.c: Likewise.
122 * ppc-linux-nat.c: Likewise.
123 * ppc-linux-tdep.c: Likewise.
124 * procfs.c: Likewise.
125 * regcache.c: Likewise.
126 * remote.c: Likewise.
127 * rs6000-tdep.c: Likewise.
128 * s390-linux-nat.c: Likewise.
129 * s390-tdep.c: Likewise.
130 * solib-aix.c: Likewise.
131 * solib-darwin.c: Likewise.
132 * solib-dsbt.c: Likewise.
133 * solib-spu.c: Likewise.
134 * solib-svr4.c: Likewise.
135 * solib-target.c: Likewise.
136 * sparc-tdep.c: Likewise.
137 * sparc64-tdep.c: Likewise.
138 * spu-tdep.c: Likewise.
139 * symfile.c: Likewise.
140 * symtab.c: Likewise.
141 * target-descriptions.c: Likewise.
142 * target-memory.c: Likewise.
143 * target.c: Likewise.
144 * target.h: Likewise.
145 * tracefile-tfile.c: Likewise.
146 * tracepoint.c: Likewise.
147 * valops.c: Likewise.
148 * valprint.c: Likewise.
149 * value.c: Likewise.
150 * windows-tdep.c: Likewise.
151 * mi/mi-main.c: Likewise.
152
153 2018-06-07 Tom Tromey <tom@tromey.com>
154
155 * valprint.h (build_address_symbolic): Declare.
156 * printcmd.c (print_address_symbolic): Update.
157 (build_address_symbolic): Change "name" and "filename" to
158 std::string.
159 * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
160 Update.
161 * defs.h (build_address_symbolic): Remove declaration.
162
163 2018-06-07 Alan Hayward <alan.hayward@arm.com>
164
165 * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
166 (aarch64_vnv_type): Add function.
167 (aarch64_pseudo_register_name): Add V regs for SVE.
168 (aarch64_pseudo_register_type): Likewise.
169 (aarch64_pseudo_register_reggroup_p): Likewise.
170 (aarch64_pseudo_read_value_2): Use V0 offset for SVE
171 (aarch64_pseudo_read_value): Add V regs for SVE.
172 (aarch64_pseudo_write_2): Use V0 offset for SVE
173 (aarch64_pseudo_write): Add V regs for SVE.
174 * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
175
176 2018-06-06 Sergio Durigan Junior <sergiodj@redhat.com>
177
178 * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
179 (sve_vl_from_vq): Likewise.
180
181 2018-06-05 Tom Tromey <tom@tromey.com>
182
183 * cli/cli-cmds.c (show_version): Update.
184 * top.c (print_gdb_version): Add "interactive" parameter.
185 Update.
186 * main.c (captured_main_1): Update.
187 * top.h (print_gdb_version): Add "interactive" parameter and a
188 comment.
189
190 2018-06-05 David Malcolm <dmalcolm@redhat.com>
191
192 * common/enum-flags.h: Add trailing semicolon to example in
193 comment.
194
195 2018-06-05 Tom Tromey <tom@tromey.com>
196
197 PR cli/12326:
198 * NEWS: Add entry about pager.
199 * utils.c (pagination_disabled_for_command): New global.
200 (prompt_for_continue): Allow "c" response to prompt.
201 (reinitialize_more_filter): Clear
202 pagination_disabled_for_command.
203 (fputs_maybe_filtered): Check pagination_disabled_for_command.
204
205 2018-06-04 Tom Tromey <tom@tromey.com>
206
207 * ada-lang.h (ada_lookup_symbol_list): Update.
208 * ada-lang.c (resolve_subexp): Update.
209 (symbols_are_identical_enums): Change type of syms. Remove nsyms
210 parameter.
211 (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
212 (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
213 results parameter to std::vector.
214 (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
215 Update.
216 * ada-exp.y (block_lookup): Update.
217 (select_possible_type_sym): Change type of syms. Remove nsyms
218 parameter.
219 (write_var_or_type, write_name_assoc): Update.
220
221 2018-06-04 Joel Brobecker <brobecker@adacore.com>
222
223 * windows-nat.c (windows_nat_target::xfer_partial): Return
224 TARGET_XFER_E_IO if we need to delegate to the target beneath
225 but BENEATH is NULL.
226
227 2018-06-04 Simon Marchi <simon.marchi@ericsson.com>
228
229 * Makefile.in (config.status): Add configure.nat as a
230 dependency.
231
232 2018-06-04 Tom Tromey <tom@tromey.com>
233
234 * cp-name-parser.y (cpname_state): Add method declarations.
235 (HANDLE_QUAL): Update.
236 (cpname_state::d_grab, cpname_state::fill_comp)
237 (cpname_state::make_operator, cpname_state::make_dtor)
238 (cpname_state::make_builtin_type, cpname_state::make_name)
239 (cpname_state::d_qualify, cpname_state::d_int_type)
240 (cpname_state::d_unary, cpname_state::d_binary): Now methods.
241 (%union): Move earlier.
242
243 2018-06-04 Alan Hayward <alan.hayward@arm.com>
244
245 * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
246
247 2018-06-04 Alan Hayward <alan.hayward@arm.com>
248
249 * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
250 (aarch64_pseudo_write_1): Likewise.
251 (aarch64_pseudo_read_value): Use helper.
252 (aarch64_pseudo_write): Likewise.
253
254 2018-06-04 Pedro Alves <palves@redhat.com>
255
256 * darwin-nat.c (darwin_ops): Delete.
257 (darwin_attach_pid): Use get_native_target.
258
259 2018-06-04 Alan Hayward <alan.hayward@arm.com>
260
261 * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
262 * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
263
264 2018-06-04 Alan Hayward <alan.hayward@arm.com>
265
266 * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
267 * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
268 (aarch64_gdbarch_init): Check for SVE.
269 * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
270
271 2018-06-04 Alan Hayward <alan.hayward@arm.com>
272
273 * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
274 * aarch64-tdep.h (aarch64_read_description): Likewise.
275 * arch/aarch64.c (aarch64_create_target_description): Likewise.
276 * arch/aarch64.h (aarch64_create_target_description): Likewise.
277 * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
278 * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
279 * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
280
281 2018-06-02 Simon Marchi <simon.marchi@ericsson.com>
282
283 * value.c (value_fetch_lazy_bitfield): New.
284 (value_fetch_lazy_memory): New.
285 (value_fetch_lazy_register): New.
286 (value_fetch_lazy): Factor out to smaller functions.
287
288 2018-06-01 Tom Tromey <tom@tromey.com>
289
290 * cp-name-parser.y (backslashable, represented): Now const.
291
292 2018-06-01 Tom Tromey <tom@tromey.com>
293
294 * cp-name-parser.y: Include parser-defs.h.
295 (parser_fprintf): Remove declaration.
296
297 2018-06-01 Tom Tromey <tom@tromey.com>
298
299 * cp-name-parser.y: Use %pure-parser, %lex-param, and
300 %parse-param.
301 (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
302 (global_result): Remove globals.
303 (struct cpname_state): New.
304 (yyparse): Don't declare.
305 (yylex, yyerror): Move declarations after %union.
306 (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
307 (make_name): Add state parameter.
308 Update all callers.
309 (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
310 parameter.
311 (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
312 Update.
313 (yylex): Add lvalp, state parameters.
314 (yyerror): Add state parameter.
315 (cp_demangled_name_to_comp): Update.
316
317 2018-06-01 Tom Tromey <tom@tromey.com>
318
319 * cp-name-parser.y (parser_fprintf): Declare.
320 (GDB_YY_REMAP_PREFIX): Define.
321 Include yy-remap.h. Don't redefine yy* identifiers.
322
323 2018-06-01 Tom Tromey <tom@tromey.com>
324
325 * python/py-type.c (typy_legacy_template_argument): Update.
326 * cp-support.h (cp_demangled_name_to_comp): Update.
327 * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
328 parameter to be a "std::string *".
329 (main): Update.
330
331 2018-06-01 H.J. Lu <hongjiu.lu@intel.com>
332
333 * ada-lex.l: Include "diagnostics.h" instead of
334 "common/diagnostics.h".
335 * unittests/environ-selftests.c: Likewise.
336 * common/diagnostics.h: Moved to ../include.
337
338 2018-06-01 Joel Brobecker <brobecker@adacore.com>
339
340 * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
341 to language_mode_manual while calling breakpoint_re_set_one.
342
343 2018-06-01 Tom Tromey <tom@tromey.com>
344
345 * valops.c (value_cast_structs, destructor_name_p): Update.
346 * symtab.c (gdb_mangle_name): Update.
347 * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
348 Update.
349 * p-valprint.c (pascal_object_is_vtbl_ptr_type)
350 (pascal_object_print_value_fields, pascal_object_print_value):
351 Update.
352 * p-typeprint.c (pascal_type_print_derivation_info): Update.
353 * linespec.c (find_methods): Update.
354 * gdbtypes.h (type_name_no_tag): Remove.
355 (type_name_or_error): Rename from type_name_no_tag_or_error.
356 * gdbtypes.c (type_name_no_tag): Remove.
357 (type_name_or_error): Rename from type_name_no_tag_or_error.
358 (lookup_struct_elt_type, check_typedef): Update.
359 * expprint.c (print_subexp_standard): Update.
360 * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
361 * d-namespace.c (d_lookup_nested_symbol): Update.
362 * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
363 (cp_print_class_member): Update.
364 * cp-namespace.c (cp_lookup_nested_symbol): Update.
365 * completer.c (add_struct_fields): Update.
366 * c-typeprint.c (cp_type_print_derivation_info)
367 (c_type_print_varspec_prefix, c_type_print_base_struct_union):
368 Update.
369 * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
370 (ada_prefer_type, ada_is_exception_sym): Update.
371
372 2018-06-01 Tom Tromey <tom@tromey.com>
373
374 * valops.c (enum_constant_from_type, value_namespace_elt)
375 (value_maybe_namespace_elt): Update.
376 * valarith.c (find_size_for_pointer_math): Update.
377 * target-descriptions.c (make_gdb_type): Update.
378 * symmisc.c (print_symbol): Update.
379 * stabsread.c (define_symbol, read_type)
380 (complain_about_struct_wipeout, add_undefined_type)
381 (cleanup_undefined_types_1): Update.
382 * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
383 (rust_range_type_p, val_print_struct, rust_print_struct_def)
384 (rust_internal_print_type, rust_composite_type)
385 (rust_evaluate_funcall, rust_evaluate_subexp)
386 (rust_inclusive_range_type_p): Update.
387 * python/py-type.c (typy_get_tag): Update.
388 * p-typeprint.c (pascal_type_print_base): Update.
389 * mdebugread.c (parse_symbol, parse_type): Update.
390 * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
391 Update.
392 * guile/scm-type.c (gdbscm_type_tag): Update.
393 * go-lang.c (sixg_string_p): Update.
394 * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
395 Update.
396 * gdbtypes.h (struct main_type) <tag_name>: Remove.
397 (TYPE_TAG_NAME): Remove.
398 * gdbtypes.c (type_name_no_tag): Simplify.
399 (check_typedef, check_types_equal, recursive_dump_type)
400 (copy_type_recursive, arch_composite_type): Update.
401 * f-typeprint.c (f_type_print_base): Update. Print "Type" prefix
402 in summary mode when needed.
403 * eval.c (evaluate_funcall): Update.
404 * dwarf2read.c (fixup_go_packaging, read_structure_type)
405 (process_structure_scope, read_enumeration_type)
406 (read_namespace_type, read_module_type, determine_prefix): Update.
407 * cp-support.c (inspect_type): Update.
408 * coffread.c (process_coff_symbol, decode_base_type): Update.
409 * c-varobj.c (c_is_path_expr_parent): Update.
410 * c-typeprint.c (c_type_print_base_struct_union): Update.
411 (c_type_print_base_1): Update. Print struct/class/union/enum in
412 summary when using C language.
413 * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
414 (gen_maybe_namespace_elt): Update.
415 * ada-lang.c (ada_type_name): Simplify.
416 (empty_record, ada_template_to_fixed_record_type_1)
417 (template_to_static_fixed_type)
418 (to_record_with_fixed_variant_part, ada_check_typedef): Update.
419
420 2018-06-01 Tom Tromey <tom@tromey.com>
421
422 * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
423 c_print_type.
424 * c-typeprint.c (c_print_type_1): Add "language" parameter.
425 (c_print_type): Update.
426 (c_print_type): New overload.
427 (c_type_print_varspec_prefix, c_type_print_args)
428 (c_type_print_varspec_suffix, c_print_type_no_offsets)
429 (c_type_print_base_struct_union, c_type_print_base_1)
430 (cp_type_print_method_args): Add "language" parameter.
431 (c_type_print_base): Update.
432 * c-lang.h (c_print_type): Add new overload.
433
434 2018-06-01 Tom Tromey <tom@tromey.com>
435
436 * typeprint.h (c_type_print_varspec_suffix): Don't declare.
437 * c-typeprint.c (c_type_print_varspec_suffix): Now static.
438
439 2018-06-01 Alan Hayward <alan.hayward@arm.com>
440
441 * aarch64-tdep.c (aarch64_sve_register_names): New const
442 var.
443 * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
444 (AARCH64_SVE_Z_REGS_NUM): New define.
445 (AARCH64_SVE_P_REGS_NUM): Likewise.
446 (AARCH64_SVE_NUM_REGS): Likewise.
447
448 2018-05-31 Uros Bizjak <ubizjak@gmail.com>
449
450 * nat/linux-ptrace.h [__alpha__]
451 (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
452 definitions.
453
454 2018-05-31 Maciej W. Rozycki <macro@mips.com>
455
456 * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
457 the endianness selected.
458 * NEWS: Document `set endian auto' mode operation update.
459
460 2018-05-31 Alan Hayward <alan.hayward@arm.com>
461
462 * Makefile.in: Add new header.
463 * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
464 (sve_vl_from_vg): Likewise.
465 (sve_vq_from_vl): Likewise.
466 (sve_vl_from_vq): Likewise.
467 (sve_vq_from_vg): Likewise.
468 (sve_vg_from_vq): Likewise.
469 * configure.nat: Add new c file.
470 * nat/aarch64-sve-linux-ptrace.c: New file.
471 * nat/aarch64-sve-linux-ptrace.h: New file.
472
473 2018-05-31 Alan Hayward <alan.hayward@arm.com>
474
475 * aarch64-linux-nat.c (aarch64_linux_read_description):
476 Add parmeter zero.
477 * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
478 Likewise.
479 * aarch64-tdep.c (tdesc_aarch64_list): Add.
480 (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
481 (aarch64_gdbarch_init): Add parmeter zero.
482 * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
483 * arch/aarch64.c (aarch64_create_target_description): Check VQ.
484 * arch/aarch64.h (aarch64_create_target_description): Add VQ.
485 parmeter.
486 * doc/gdb.texinfo: Describe SVE feature
487 * features/aarch64-sve.c: New file.
488
489 2018-05-31 Omair Javaid <omair.javaid@linaro.org>
490
491 PR gdb/23210
492 * gdbarch.sh (significant_addr_bit): Default to zero when
493 not set by target architecture.
494 * gdbarch.c: Re-generated.
495 * utils.c (address_significant): Update.
496
497 2018-05-30 Joel Brobecker <brobecker@adacore.com>
498
499 * stack.c (func_command): Remove trailing newline in call to error.
500
501 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
502
503 * regcache.h (regcache_raw_collect): Remove, update callers to
504 use regcache::raw_collect.
505 * regcache.c (regcache_raw_collect): Remove.
506
507 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
508
509 * regcache.h (regcache_raw_supply): Remove, update callers to
510 use detached_regcache::raw_supply.
511 * regcache.c (regcache_raw_supply): Remove.
512
513 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
514
515 * regcache.h (regcache_cooked_write_part): Remove, update
516 callers to use regcache::cooked_write_part.
517 * regcache.c (regcache_cooked_write_part): Remove.
518
519 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
520
521 * regcache.h (regcache_cooked_read_part): Remove, update callers
522 to use readable_regcache::cooked_read_part.
523 * regcache.c (regcache_cooked_read_part): Remove.
524
525 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
526
527 * regcache.h (regcache_cooked_read_value): Remove, update
528 callers to use readable_regcache::cooked_read_value.
529 * regcache.c (regcache_cooked_read_value): Remove.
530
531 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
532
533 * regcache.h (regcache_cooked_write): Remove, update callers to
534 use regcache::cooked_write.
535 * regcache.c (regcache_cooked_write): Remove.
536
537 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
538
539 * regcache.h (regcache_invalidate): Remove, update callers to
540 use detached_regcache::invalidate instead.
541 * regcache.c (regcache_invalidate): Remove.
542
543 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
544
545 * regcache.h (regcache_raw_write_part): Remove, update callers
546 to use regcache::raw_write_part instead.
547 * regcache.c (regcache_raw_write_part): Remove.
548
549 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
550
551 * regcache.h (regcache_raw_read_part): Remove, update callers to
552 use readable_regcache::raw_read_part instead.
553 * regcache.c (regcache_raw_read_part): Remove.
554
555 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
556
557 * regcache.h (regcache_cooked_read): Remove, update callers to
558 use readable_regcache::cooked_read instead.
559 * regcache.c (regcache_cooked_read): Remove.
560
561 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
562
563 * regcache.h (regcache_raw_write): Remove, update callers to use
564 regcache::raw_write instead.
565 * regcache.c (regcache_raw_write): Remove.
566
567 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
568
569 * regcache.h (regcache_raw_read): Remove, update callers to use
570 readable_regcache::raw_read instead.
571 * regcache.c (regcache_raw_read): Remove.
572
573 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
574
575 * regcache.h (regcache_raw_update): Remove, update callers to
576 use readable_regcache::raw_update instead.
577 * regcache.c (regcache_raw_update): Remove.
578
579 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
580
581 * regcache.h (regcache_register_status): Remove, update callers
582 to use reg_buffer::get_register_status directly instead.
583 * regcache.c (regcache_register_status): Remove.
584
585 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
586
587 * regcache.h (regcache_get_ptid): Remove, update all callers to
588 call regcache::ptid instead.
589 * regcache.c (regcache_get_ptid): Remove.
590
591 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
592
593 * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
594
595 2018-05-30 Pedro Alves <palves@redhat.com>
596
597 * common/common-exceptions.h (exception_rethrow): Use
598 ATTRIBUTE_NORETURN.
599
600 2018-05-29 Simon Marchi <simon.marchi@polymtl.ca>
601
602 * breakpoint.c (print_solib_event, check_status_catch_solib):
603 Remove struct keyword in range-based for loops.
604 * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
605 * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
606 Likewise.
607 * linespec.c (find_superclass_methods, search_minsyms_for_name):
608 Likewise.
609 * symfile.c (addr_info_make_relative): Likewise.
610 * thread.c (value_in_thread_stack_temporaries): Likewise.
611
612 2018-05-29 Weimin Pan <weimin.pan@oracle.com>
613
614 * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
615 * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
616 * coff-pe-read.c (add_pe_forwarded_sym): Replace
617 lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
618 * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
619 * jit.c (jit_breakpoint_re_set_internal): Likewise.
620 * printcmd.c (info_address_command): Likewise.
621
622 2018-05-29 Tom Tromey <tom@tromey.com>
623
624 * windows-nat.c (handle_exception): Update fall-through comment.
625
626 2018-05-29 Tom Tromey <tom@tromey.com>
627
628 * progspace.h (so_list_ptr): Remove typedef. Don't declare VEC.
629 (struct program_space) <added_solibs>: Now a std::vector.
630 * breakpoint.c (print_solib_event): Update.
631 (check_status_catch_solib): Update.
632 * progspace.c (clear_program_space_solib_cache): Update.
633 * solib.c (update_solib_list): Update.
634
635 2018-05-29 Tom Tromey <tom@tromey.com>
636
637 * python/py-type.c (typy_richcompare): Update.
638 * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
639 * gdbtypes.h (types_deeply_equal): Return bool.
640 (types_equal): Likewise.
641 * gdbtypes.c (type_equality_entry_d): Remove typedef. Don't
642 declare VEC.
643 (check_types_equal): Change worklist to std::vector. Return
644 bool.
645 (struct type_equality_entry): Add constructor.
646 (compare_maybe_null_strings): Return bool.
647 (check_types_worklist): Return bool. Change worklist to
648 std::vector.
649 (types_deeply_equal): Use std::vector.
650 (types_equal): Return bool.
651 (compare_maybe_null_strings): Simplify.
652
653 2018-05-29 Tom Tromey <tom@tromey.com>
654
655 * record-btrace.c (tp_t): Remove typedef. Don't declare VEC.
656
657 2018-05-29 Tom Tromey <tom@tromey.com>
658
659 * objc-lang.h: Don't include cp-support.h.
660 * common/gdb_vecs.h (const_char_ptr): Remove typedef. Don't
661 declare VEC.
662
663 2018-05-27 Tom Tromey <tom@tromey.com>
664
665 * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
666
667 2018-05-25 Tom Tromey <tom@tromey.com>
668
669 * value.c (value::location): Initialize.
670
671 2018-05-25 Tom Tromey <tom@tromey.com>
672
673 * dbxread.c (init_bincl_list): Remove.
674 (bincl_list): Now a std::vector.
675 (bincls_allocated, next_bincl): Remove.
676 (free_bincl_list, do_free_bincl_list_cleanup)
677 (make_cleanup_free_bincl_list): Remove.
678 (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
679 unique_xmalloc_ptr.
680 (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
681 (struct header_file_location): Add constructor.
682 (add_bincl_to_list): Remove.
683
684 2018-05-25 Tom Tromey <tom@tromey.com>
685
686 * tui/tui.c (tui_enable): Update.
687 * mi/mi-interp.c (mi_interp::init): Update.
688 * interps.h (class interp) <name>: New method.
689 <m_name>: Rename from name.
690 (~scoped_restore_interp): Update.
691 * interps.c (interp::interp): Update.
692 (interp_add, interp_set, interp_lookup_existing)
693 (current_interp_named_p): Update.
694
695 2018-05-25 Tom Tromey <tom@tromey.com>
696
697 * interps.c (interp_name): Remove.
698 * mi/mi-interp.c (mi_interp::init): Update.
699 * interps.h (interp_name): Remove.
700 (~scoped_restore_interp): Update.
701 * tui/tui.c (tui_enable): Update.
702
703 2018-05-25 Tom Tromey <tom@tromey.com>
704
705 * utils.c (fputs_maybe_filtered): Update.
706 * linespec.c (decode_line_full): Update.
707 * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
708 (mi_print_breakpoint_for_event, mi_solib_loaded)
709 (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
710 (mi_user_selected_context_changed): Update.
711 * mi/mi-main.c (mi_execute_command): Update.
712 * cli/cli-script.c (execute_control_command): Update.
713 * python/python.c (execute_gdb_command): Update.
714 * solib.c (info_sharedlibrary_command): Update.
715 * interps.c (interp_ui_out): Remove.
716 * interps.h (interp_ui_out): Remove.
717
718 2018-05-25 Tom Tromey <tom@tromey.com>
719
720 * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
721 * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
722 * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
723
724 2018-05-25 Tom Tromey <tom@tromey.com>
725
726 * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
727 * interps.c (interp_exec): Use scoped_restore.
728
729 2018-05-25 Tom Tromey <tom@tromey.com>
730
731 * remote.c (remote_target::remote_file_get): Use
732 gdb::byte_vector.
733 (remote_target::remote_file_put): Likewise.
734
735 2018-05-25 Tom Tromey <tom@tromey.com>
736
737 * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
738 a std::string.
739 (get_pe_section_index, add_pe_exported_sym): Update.
740 (read_pe_exported_syms): Use gdb::def_vector.
741
742 2018-05-25 Tom Tromey <tom@tromey.com>
743
744 * frame.c (remove_prev_frame): Remove.
745 (get_prev_frame_if_no_cycle): Use TRY/CATCH.
746
747 2018-05-25 Maciej W. Rozycki <macro@mips.com>
748
749 * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
750 Remove prototypes.
751 * mips-linux-nat.c (supply_fpregset): Always call
752 `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
753 (fill_fpregset): Always call `mips64_fill_fpregset' rather than
754 `mips_fill_fpregset'.
755 * mips-linux-tdep.c (mips_supply_fpregset)
756 (mips_supply_fpregset_wrapper, mips_fill_fpregset)
757 (mips_fill_fpregset_wrapper): Remove functions.
758 (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
759 (mips_linux_fpregset): Remove variable.
760 (mips_linux_iterate_over_regset_sections): Use
761 `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
762 (mips_linux_o32_sigframe_init): Remove comment.
763
764 2018-05-25 Pedro Alves <palves@redhat.com>
765
766 * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
767 (struct readahead_cache, struct packet_reg, struct
768 remote_arch_state, class remote_state): Move higher up in the
769 file.
770 (remote_target::m_remote_state): Now an object instead of a pointer.
771 (remote_target::get_remote_state): Adjust.
772
773 2018-05-24 Andrew Burgess <andrew.burgess@embecosm.com>
774
775 * stack.c (select_and_print_frame): Delete.
776 (struct function_bounds): Move struct within function.
777 (func_command): Most content moved into new function
778 find_frame_for_function, use new function, print result, add
779 function comment.
780 (find_frame_for_function): New function, now returns a result.
781
782 2018-05-24 Philippe Waroquiers <philippe.waroquiers@skynet.be>
783
784 * stack.c (iterate_over_block_arg_vars): Fix comment.
785 (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
786
787 2018-05-24 Andrew Burgess <andrew.burgess@embecosm.com>
788
789 PR gdb/23203
790 * frame.c
791 (scoped_restore_selected_frame::scoped_restore_selected_frame):
792 Define.
793 (scoped_restore_selected_frame::~scoped_restore_selected_frame):
794 Define.
795 * frame.h (class scoped_restore_selected_frame): New class.
796 * stack.c (print_frame_local_vars): Remove catching and rethrowing
797 of any exception, use scoped_restore_selected_frame to restore the
798 frame instead.
799
800 2018-05-24 Pedro Alves <palves@redhat.com>
801
802 * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
803 override.
804
805 2018-05-23 Tom Tromey <tom@tromey.com>
806
807 * complaints.c (struct complaints): Remove.
808 (symfile_complaint_book): Remove.
809 (series): New global.
810 (complaint_internal): Update.
811 (clear_complaints): Update.
812
813 2018-05-23 Tom Tromey <tom@tromey.com>
814
815 * complaints.c (counters): New global.
816 (struct complain): Remove.
817 (struct complaints) <root>: Remove.
818 (complaint_sentinel): Remove.
819 (symfile_complaint_book): Update.
820 (find_complaint) Remove.
821 (complaint_internal, clear_complaints): Update.
822
823 2018-05-23 Tom Tromey <tom@tromey.com>
824
825 * complaints.c (struct complain) <file, line>: Remove.
826 (find_complaint): Remove file, line parameters.
827 (complaint_internal): Update.
828
829 2018-05-23 Tom Tromey <tom@tromey.com>
830
831 * complaints.c (vcomplaint): Remove.
832 (complaint_internal) Merge in contents of vcomplaint.
833
834 2018-05-23 Tom Tromey <tom@tromey.com>
835
836 * complaints.c (struct complaints) <explanation>: Remove.
837 (symfile_explanations): Remove.
838 (symfile_complaint_book): Update.
839 (vcomplaint): Update.
840 (struct explanation): Remove.
841
842 2018-05-23 Tom Tromey <tom@tromey.com>
843
844 * complaints.c (symfile_complaints): Remove.
845 (complaint_internal): Remove "complaints" parameter.
846 (clear_complaints, vcomplaint): Remove "c" parameter.
847 (get_complaints): Remove.
848 * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
849 (dwarf2_debug_line_missing_file_complaint)
850 (dwarf2_debug_line_missing_end_sequence_complaint)
851 (dwarf2_complex_location_expr_complaint)
852 (dwarf2_const_value_length_mismatch_complaint)
853 (dwarf2_section_buffer_overflow_complaint)
854 (dwarf2_macro_malformed_definition_complaint)
855 (dwarf2_invalid_attrib_class_complaint)
856 (create_addrmap_from_index, dw2_symtab_iter_next)
857 (dw2_expand_marked_cus)
858 (dw2_debug_names_iterator::find_vec_in_debug_names)
859 (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
860 (create_debug_type_hash_table, init_cutu_and_read_dies)
861 (partial_die_parent_scope, add_partial_enumeration)
862 (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
863 (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
864 (read_import_statement, read_file_scope, create_dwo_cu_reader)
865 (create_cus_hash_table, create_dwp_hash_table)
866 (inherit_abstract_dies, read_func_scope, read_call_site_scope)
867 (dwarf2_rnglists_process, dwarf2_ranges_process)
868 (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
869 (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
870 (handle_struct_member_die, process_structure_scope)
871 (read_array_type, read_common_block, read_module_type)
872 (read_tag_pointer_type, read_typedef, read_base_type)
873 (read_subrange_type, load_partial_dies, partial_die_info::read)
874 (partial_die_info::read, partial_die_info::read)
875 (partial_die_info::read, read_checked_initial_length_and_offset)
876 (dwarf2_string_attr, read_formatted_entries)
877 (dwarf_decode_line_header)
878 (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
879 (new_symbol, dwarf2_const_value_attr, lookup_die_type)
880 (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
881 (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
882 (get_signatured_type, get_DW_AT_signature_type)
883 (decode_locdesc, file_file_name, consume_improper_spaces)
884 (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
885 (dwarf_decode_macro_bytes, dwarf_decode_macros)
886 (dwarf2_symbol_mark_computed, set_die_type)
887 (read_attribute_value): Update.
888 * stap-probe.c (handle_stap_probe, get_stap_base_address):
889 Update.
890 * dbxread.c (unknown_symtype_complaint)
891 (lbrac_mismatch_complaint, repeated_header_complaint)
892 (set_namestring, function_outside_compilation_unit_complaint)
893 (read_dbx_symtab, process_one_symbol): Update.
894 * gdbtypes.c (stub_noname_complaint): Update.
895 * windows-nat.c (handle_unload_dll): Update.
896 * coffread.c (coff_symtab_read, enter_linenos, decode_type)
897 (decode_base_type): Update.
898 * xcoffread.c (bf_notfound_complaint, ef_complaint)
899 (eb_complaint, record_include_begin, record_include_end)
900 (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
901 (process_xcoff_symbol, read_symbol)
902 (function_outside_compilation_unit_complaint)
903 (scan_xcoff_symtab): Update.
904 * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
905 * buildsym.c (finish_block_internal, make_blockvector)
906 (end_symtab_get_static_block, augment_type_symtab): Update.
907 * dtrace-probe.c (dtrace_process_dof)
908 (dtrace_static_probe_ops::get_probes): Update.
909 * complaints.h (struct complaint): Don't declare.
910 (symfile_complaints): Remove.
911 (complaint_internal): Remove "complaints" parameter.
912 (complaint): Likewise.
913 (clear_complaints): Likewise.
914 * symfile.c (syms_from_objfile_1, finish_new_objfile)
915 (reread_symbols): Update.
916 * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
917 (dwarf2_frame_cache, decode_frame_entry): Update.
918 * dwarf2loc.c (dwarf_reg_to_regnum): Update.
919 * objc-lang.c (lookup_objc_class, lookup_child_selector)
920 (info_selectors_command): Update.
921 * macrotab.c (macro_include, check_for_redefinition)
922 (macro_undef): Update.
923 * objfiles.c (filter_overlapping_sections): Update.
924 * stabsread.c (invalid_cpp_abbrev_complaint)
925 (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
926 (define_symbol, error_type, read_type, rs6000_builtin_type)
927 (stabs_method_name_from_physname, read_member_functions)
928 (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
929 (attach_fields_to_type, complain_about_struct_wipeout)
930 (read_range_type, read_args, common_block_start)
931 (common_block_end, cleanup_undefined_types_1, scan_file_globals):
932 Update.
933 * mdebugread.c (index_complaint, unknown_ext_complaint)
934 (basic_type_complaint, bad_tag_guess_complaint)
935 (bad_rfd_entry_complaint, unexpected_type_code_complaint)
936 (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
937 (parse_procedure, parse_lines)
938 (function_outside_compilation_unit_complaint)
939 (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
940 (bad_tag_guess_complaint, reg_value_complaint): Update.
941 * cp-support.c (demangled_name_complaint): Update.
942 * macroscope.c (sal_macro_scope): Update.
943 * dwarf-index-write.c (class debug_names): Update.
944
945 2018-05-23 Tom Tromey <tom@tromey.com>
946
947 * complaints.c (clear_complaints): Remove "noisy" parameter.
948 * complaints.h (clear_complaints): Update.
949 * symfile.c (syms_from_objfile_1, finish_new_objfile)
950 (reread_symbols): Update.
951
952 2018-05-23 Tom Tromey <tom@tromey.com>
953
954 * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
955 SUBSEQUENT_MESSAGE.
956 (vcomplaint, clear_complaints): Update.
957 (symfile_explanations): Remove some messages.
958
959 2018-05-23 Tom Tromey <tom@tromey.com>
960
961 * complaints.c (internal_complaint): Remove.
962 * complaints.h (internal_complaint): Remove.
963
964 2018-05-22 Maciej W. Rozycki <macro@mips.com>
965
966 * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
967
968 2018-05-22 Pedro Alves <palves@redhat.com>
969
970 * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
971 (remote_fileio_badfd, remote_fileio_return_errno)
972 (remote_fileio_return_success, remote_fileio_func_open)
973 (remote_fileio_func_open, remote_fileio_func_close)
974 (remote_fileio_func_read, remote_fileio_func_write)
975 (remote_fileio_func_lseek, remote_fileio_func_rename)
976 (remote_fileio_func_unlink, remote_fileio_func_stat)
977 (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
978 (remote_fileio_func_isatty, remote_fileio_func_system): Add
979 remote_target parameter.
980 (remote_fio_func_map) <func>: Add remote_target parameter.
981 (do_remote_fileio_request, remote_fileio_request):
982 * remote-fileio.h (remote_fileio_request):
983 * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
984 remote_target parameter.
985 (remote_notif_process, handle_notification): Adjust to pass down
986 the remote.
987 (remote_notif_state_allocate): Add remote_target parameter. Save
988 it.
989 * remote-notif.h (struct remote_target): Forward declare.
990 (struct notif_client) <parse, ack, can_get_pending_events>: Add
991 remote_target parameter.
992 (struct remote_notif_state) <remote>: New field.
993 (remote_notif_ack, remote_notif_parse): Add remote_target
994 parameter.
995 (remote_notif_state_allocate, remote_notif_state_allocate): Add
996 remote_target parameter.
997 * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
998 (threads_listing_context, rmt_thread_action, protocol_feature)
999 (packet_reg, stop_reply, stop_reply_p, enum packet_support)
1000 (packet_result, struct threads_listing_context, remote_state):
1001 Move definitions and declarations higher up.
1002 (remote_target) <~remote_target>: Declare.
1003 (remote_download_command_source, remote_file_put, remote_file_get)
1004 (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
1005 (remote_hostio_pread_vFile, remote_hostio_send_command)
1006 (remote_hostio_set_filesystem, remote_hostio_open)
1007 (remote_hostio_close, remote_hostio_unlink, remote_state)
1008 (get_remote_state, get_remote_packet_size, get_memory_packet_size)
1009 (get_memory_write_packet_size, get_memory_read_packet_size)
1010 (append_pending_thread_resumptions, remote_detach_1)
1011 (append_resumption, remote_resume_with_vcont)
1012 (add_current_inferior_and_thread, wait_ns, wait_as)
1013 (process_stop_reply, remote_notice_new_inferior)
1014 (process_initial_stop_replies, remote_add_thread)
1015 (btrace_sync_conf, remote_btrace_maybe_reopen)
1016 (remove_new_fork_children, kill_new_fork_children)
1017 (discard_pending_stop_replies, stop_reply_queue_length)
1018 (check_pending_events_prevent_wildcard_vcont)
1019 (discard_pending_stop_replies_in_queue, stop_reply)
1020 (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
1021 (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
1022 (remote_interrupt_as, remote_interrupt_ns)
1023 (remote_get_noisy_reply, remote_query_attached)
1024 (remote_add_inferior, remote_current_thread, get_current_thread)
1025 (set_thread, set_general_thread, set_continue_thread)
1026 (set_general_process, write_ptid)
1027 (remote_unpack_thread_info_response, remote_get_threadinfo)
1028 (parse_threadlist_response, remote_get_threadlist)
1029 (remote_threadlist_iterator, remote_get_threads_with_ql)
1030 (remote_get_threads_with_qxfer)
1031 (remote_get_threads_with_qthreadinfo, extended_remote_restart)
1032 (get_offsets, remote_check_symbols, remote_supported_packet)
1033 (remote_query_supported, remote_packet_size)
1034 (remote_serial_quit_handler, remote_detach_pid)
1035 (remote_vcont_probe, remote_resume_with_hc)
1036 (send_interrupt_sequence, interrupt_query)
1037 (remote_notif_get_pending_events, fetch_register_using_p)
1038 (send_g_packet, process_g_packet, fetch_registers_using_g)
1039 (store_register_using_P, store_registers_using_G)
1040 (set_remote_traceframe, check_binary_download)
1041 (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
1042 (remote_xfer_live_readonly_partial, remote_read_bytes)
1043 (remote_send_printf, remote_flash_write, readchar)
1044 (remote_serial_write, putpkt, putpkt_binary, skip_frame)
1045 (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
1046 (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
1047 (extended_remote_disable_randomization, extended_remote_run)
1048 (send_environment_packet, extended_remote_environment_support)
1049 (extended_remote_set_inferior_cwd, remote_write_qxfer)
1050 (remote_read_qxfer, push_stop_reply, vcont_r_supported)
1051 (packet_command): Now methods of ...
1052 (remote_target): ... this class.
1053 (m_remote_state) <remote_target>: New field.
1054 (struct remote_state) <stop_reply_queue,
1055 remote_async_inferior_event_token, wait_forever_enabled_p>: New
1056 fields.
1057 (remote_state::remote_state): Allocate stop_reply_queue.
1058 (remote_state): Delete global.
1059 (get_remote_state_raw): Delete.
1060 (remote_target::get_remote_state): Allocate m_remote_state on
1061 demand.
1062 (get_current_remote_target): New.
1063 (remote_ops, extended_remote_ops): Delete.
1064 (wait_forever_enabled_p, remote_async_inferior_event_token):
1065 Delete, moved to struct remote_state.
1066 (remote_target::close): Delete self. Destruction bits split to
1067 ...
1068 (remote_target::~remote_target): ... this.
1069 (show_memory_packet_size): Adjust to use
1070 get_current_remote_target.
1071 (struct protocol_feature) <func>: Add remote_target parameter.
1072 All callers adjusted.
1073 (curr_quit_handler_target): New.
1074 (remote_serial_quit_handler): Reimplement.
1075 (remote_target::open_1): Adjust to use get_current_remote_target.
1076 Heap-allocate remote_target/extended_remote_target instances.
1077 (vcont_builder::vcont_builder): Add remote_target parameter, and
1078 save it in m_remote. All callers adjusted.
1079 (vcont_builder::m_remote): New field.
1080 (vcont_builder::restart, vcont_builder::flush)
1081 (vcont_builder::push_action): Use it.
1082 (remote_target::commit_resume): Use it.
1083 (struct queue_iter_param) <remote>: New field.
1084 (remote_target::remove_new_fork_children): Fill in 'remote' field.
1085 (check_pending_event_prevents_wildcard_vcont_callback_data): New.
1086 (check_pending_event_prevents_wildcard_vcont_callback)
1087 (remote_target::check_pending_events_prevent_wildcard_vcont)
1088 (remote_target::discard_pending_stop_replies)
1089 (remote_target::discard_pending_stop_replies_in_queue)
1090 (remote_target::remote_notif_remove_queued_reply): Fill in
1091 'remote' field.
1092 (remote_notif_get_pending_events): New.
1093 (remote_target::readchar, remote_target::remote_serial_write):
1094 Save/restore curr_quit_handler_target.
1095 (putpkt): New.
1096 (kill_new_fork_children): Fill in 'remote' field.
1097 (packet_command): Use get_current_remote_target, defer to
1098 remote_target method of same name.
1099 (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
1100 parameter, and save it in m_remote. All callers adjusted.
1101 (scoped_remote_fd::release): Use m_remote.
1102 (scoped_remote_fd::m_remote): New field.
1103 (remote_file_put, remote_file_get, remote_file_delete): Use
1104 get_current_remote_target, defer to remote_target method of same
1105 name.
1106 (remote_btrace_reset): Add remote_state paremeter. Update all
1107 callers.
1108 (remote_async_inferior_event_handler). Pass down 'data'.
1109 (remote_new_objfile): Use get_current_remote_target.
1110 (remote_target::vcont_r_supported): New.
1111 (set_range_stepping): Use get_current_remote_target and
1112 remote_target::vcont_r_supported.
1113 (_initialize_remote): Don't allocate 'remote_state' and
1114 'stop_reply_queue' globals.
1115 * remote.h (struct remote_target): Forward declare.
1116 (getpkt, putpkt, remote_notif_get_pending_events): Add
1117 'remote_target' parameter.
1118
1119 2018-05-22 Pedro Alves <palves@redhat.com>
1120
1121 * remote.c (vcont_builder): Now a class. Make all data members
1122 private.
1123 (vcont_builder) <vcont_builder, restart, flush, push_action>:
1124 Declare methods.
1125 (vcont_builder_restart): Rename to ...
1126 (vcont_builder::restart): ... this.
1127 (vcont_builder_flush): Rename to ...
1128 (vcont_builder::flush): ... this.
1129 (vcont_builder_push_action): Rename to ...
1130 (vcont_builder::push_action): ... this.
1131 (remote_target::commit_resume): Adjust.
1132
1133 2018-05-22 Pedro Alves <palves@redhat.com>
1134
1135 * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
1136 (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
1137 (get_fixed_memory_packet_size): New.
1138 (get_memory_packet_size): Use it.
1139 (set_memory_packet_size): Don't override the config size with
1140 DEFAULT_MAX_MEMORY_PACKET_SIZE.
1141 (show_memory_packet_size): Use get_fixed_memory_packet_size.
1142 Don't refer to get_memory_packet_size if not connected to a remote
1143 target. Show "(default)" if configured size is 0.
1144
1145 2018-05-22 Pedro Alves <palves@redhat.com>
1146
1147 * remote.c (remote_target::mourn_inferior): Move
1148 discard_pending_stop_replies call here from ...
1149 (_initialize_remote): ... here.
1150
1151 2018-05-22 Pedro Alves <palves@redhat.com>
1152
1153 * remote.c (compare_section_command): Remove set_general_process
1154 call.
1155
1156 2018-05-22 Pedro Alves <palves@redhat.com>
1157
1158 * remote.c (struct packet_reg, struct remote_arch_state):
1159 Move higher up in the file.
1160 (remote_state) <m_arch_states>: Store remote_arch_state values
1161 instead of remote_arch_state pointers.
1162 (remote_state::get_remote_arch_state): Adjust.
1163
1164 2018-05-22 Pedro Alves <palves@redhat.com>
1165
1166 * remote.c: Include <unordered_map>.
1167 (remote_state): Now a class.
1168 (remote_state) <get_remote_arch_state>: Declare method.
1169 <get_remote_arch_state>: New field.
1170 (remote_arch_state) <remote_arch_state>: Declare ctor.
1171 <regs>: Now a unique_ptr.
1172 (remote_gdbarch_data_handle): Delete.
1173 (get_remote_arch_state): Delete.
1174 (remote_state::get_remote_arch_state): New.
1175 (get_remote_state): Adjust to call remote_state's
1176 get_remote_arch_state method.
1177 (init_remote_state): Delete, bits factored out to ...
1178 (remote_arch_state::remote_arch_state): ... this new method.
1179 (get_remote_packet_size, get_memory_packet_size)
1180 (process_g_packet, remote_target::fetch_registers)
1181 (remote_target::prepare_to_store, store_registers_using_G)
1182 (remote_target::store_registers, remote_target::get_trace_status):
1183 Adjust to call remote_state's method.
1184 (_initialize_remote): Remove reference to
1185 remote_gdbarch_data_handle.
1186
1187 2018-05-22 Pedro Alves <palves@redhat.com>
1188
1189 * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
1190 pread>: New method declarations.
1191 (remote_target::open_1): Adjust.
1192 (readahead_cache_invalidate): Rename to ...
1193 (readahead_cache::invalidate): ... this, and adjust to be a class
1194 method.
1195 (readahead_cache_invalidate_fd): Rename to ...
1196 (readahead_cache::invalidate_fd): ... this, and adjust to be a
1197 class method.
1198 (remote_hostio_pwrite): Adjust.
1199 (remote_hostio_pread_from_cache): Rename to ...
1200 (readahead_cache::pread): ... this, and adjust to be a class
1201 method.
1202 (remote_hostio_close): Adjust.
1203
1204 2018-05-22 Pedro Alves <palves@redhat.com>
1205
1206 * remote.c (remote_hostio_close_cleanup): Delete.
1207 (class scoped_remote_fd): New.
1208 (remote_file_put, remote_file_get): Use it.
1209
1210 2018-05-22 Pedro Alves <palves@redhat.com>
1211
1212 (struct vCont_action_support): Use bool and initialize all fields.
1213 (struct readahead_cache): Initialize all fields.
1214 (remote_state): Use bool and initialize all fields.
1215 (remote_state::remote_state, remote_state::~remote_state): New.
1216 (new_remote_state): Delete.
1217 (_initialize_remote): Use new to allocate remote_state.
1218
1219 2018-05-22 Pedro Alves <palves@redhat.com>
1220 張俊芝 <zjz@zjz.name>
1221
1222 PR gdb/22973
1223 * c-exp.y: Include "c-support.h".
1224 (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
1225 of tolower. Use c_ident_is_alpha to scan names.
1226 * c-lang.c: Include "c-support.h".
1227 (convert_ucn, convert_octal, convert_hex, convert_escape): Use
1228 ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
1229 * c-support.h: New file, with bits factored out from ...
1230 * cp-name-parser.y: ... this file.
1231 Include "c-support.h".
1232 (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
1233 c-support.h and renamed.
1234 (symbol_end, yylex): Adjust.
1235
1236 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1237
1238 * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
1239 parameter type to CORE_ADDR.
1240 * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
1241 parameter type in declaration to CORE_ADDR.
1242 * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
1243 target_auxv_search to get AT_HWCAP and use the result to get the
1244 target description.
1245 * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
1246 to CORE_ADDR. Remove the cast of the return value to unsigned
1247 long. Fix error predicate of target_auxv_search.
1248 (ppc_linux_nat_target::read_description): Change the type of the
1249 hwcap variable to CORE_ADDR.
1250
1251 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1252
1253 * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
1254 if the size of fpscr is larger than 32 bits.
1255
1256 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1257
1258 * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
1259 (ppc32_linux_vsxregmap): New global.
1260 (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
1261 regcache_supply_regset, and regcache_collect_regset.
1262 * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
1263 * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
1264 (fetch_vsx_register, store_vsx_register): Remove.
1265 (fetch_vsx_registers): Add regno parameter. Get regset using
1266 ppc_linux_vsxregset. Use regset to supply registers.
1267 (store_vsx_registers): Add regno parameter. Get regset using
1268 ppc_linux_vsxregset. Use regset to collect registers.
1269 (fetch_register): Call fetch_vsx_registers instead of
1270 fetch_vsx_register.
1271 (store_register): Call store_vsx_registers instead of
1272 store_vsx_register.
1273 (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
1274 new regno parameter.
1275 (store_ppc_registers): Call store_vsx_registers with -1 for the
1276 new regno parameter.
1277 * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
1278 (ppc_collect_vsxregset): Remove.
1279
1280 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1281
1282 * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
1283 offset fields.
1284 * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
1285 for vector register offset fields.
1286 (ppc64_fbsd_reg_offsets): Likewise.
1287 * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
1288 to vector register offset fields.
1289 * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
1290 to vector register offset fields.
1291 * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
1292 vector register offset fields.
1293 * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
1294 initializers for vector register offset fields.
1295 (rs6000_aix64_reg_offsets): Likewise.
1296 * rs6000-tdep.c (ppc_vrreg_offset): Remove.
1297 (ppc_supply_vrregset): Remove.
1298 (ppc_collect_vrregset): Remove.
1299 * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
1300 (ppc_linux_vrregset) : New function.
1301 (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
1302 (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
1303 (ppc32_linux_vrregset): Remove.
1304 (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
1305 and use result instead of ppc32_linux_vrregset.
1306 (ppc32_linux_reg_offsets): Remove initializers for vector register
1307 offset fields.
1308 (ppc64_linux_reg_offsets): Likewise.
1309 * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
1310 * ppc-linux-nat.c: Include regset.h.
1311 (gdb_vrregset_t): Adjust comment to account for little-endian
1312 mode.
1313 (supply_vrregset, fill_vrregset): Remove.
1314 (fetch_altivec_register, store_altivec_register): Remove.
1315 (fetch_altivec_registers): Add regno parameter. Get regset using
1316 ppc_linux_vrregset. Use regset to supply registers.
1317 (store_altivec_registers): Add regno parameter. Get regset using
1318 ppc_linux_vrregset. Use regset to collect registers.
1319 (fetch_register): Call fetch_altivec_registers instead of
1320 fetch_altivec_register.
1321 (store_register): Call store_altivec_registers instead of
1322 store_altivec_register.
1323 (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
1324 the new regno parameter.
1325 (store_ppc_registers): Call store_altivec_registers with -1 for
1326 the new regno parameter.
1327
1328 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1329
1330 * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
1331 (PPC_LINUX_SIZEOF_VSXREGSET): Define.
1332 * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
1333 (gdb_vrregset_t): Change array type size to
1334 PPC_LINUX_SIZEOF_VRREGSET.
1335 (gdb_vsxregset_t): Change array type size to
1336 PPC_LINUX_SIZEOF_VSXREGSET.
1337 * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
1338 Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
1339 PPC_LINUX_SIZEOF_VSXREGSET.
1340
1341 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1342
1343 * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
1344 * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
1345 nat/ppc-linux.c.
1346 (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
1347 ppc_linux_target_wordsize with tid.
1348 (ppc_linux_nat_target::read_description): Call ppc_linux_target
1349 wordsize with tid.
1350 * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
1351 (ppc64_64bit_inferior_p): Add static and inline specifiers.
1352 (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
1353 tid parameter. Remove static specifier.
1354 * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
1355 (ppc_linux_target_wordsize): New declaration.
1356
1357 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
1358
1359 * arch/ppc-linux-common.c: New file.
1360 * arch/ppc-linux-common.h: New file.
1361 * arch/ppc-linux-tdesc.h: New file.
1362 * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
1363 * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
1364 (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
1365 arch/ppc-linux-tdesc.h.
1366 * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
1367 arch/ppc-linux-tdesc.h.
1368 (ppc_linux_nat_target::read_description): Remove target
1369 description matching code. Fill a ppc_linux_features struct and
1370 call ppc_linux_match_description with it. Move comment about ISA
1371 2.05 to ppc-linux-common.c.
1372 * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
1373 arch/ppc-linux-tdesc.h.
1374 (ppc_linux_core_read_description): Remove target description
1375 matching code. Fill a ppc_linux_features struct and call
1376 ppc_linux_match_description with it.
1377 * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
1378 (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
1379 (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
1380 (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
1381 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
1382 (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
1383 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
1384 (tdesc_powerpc_e500l): Remove.
1385
1386 2018-05-22 Joel Brobecker <brobecker@adacore.com>
1387
1388 * ada-lang.c (catch_assert_command): Pass empty string instead
1389 of NULL for excep_string argument.
1390
1391 2018-05-22 Maciej W. Rozycki <macro@mips.com>
1392
1393 * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
1394 the width of the requested register exceeds the width of the
1395 `ptrace' data type.
1396
1397 2018-05-21 Tom Tromey <tom@tromey.com>
1398
1399 * printcmd.c (output_command): Remove.
1400 (output_command_const): Rename to output_command.
1401 * valprint.h (output_command): Rename from output_command_const.
1402 * tracepoint.c (trace_dump_actions): Call output_command.
1403
1404 2018-05-21 Tom Tromey <tom@tromey.com>
1405
1406 * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
1407 (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
1408 * ada-lang.h (create_ada_exception_catchpoint): Update.
1409 * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
1410 std::string.
1411 (create_excep_cond_exprs, ~ada_catchpoint)
1412 (should_stop_exception, print_one_exception)
1413 (print_mention_exception, print_recreate_exception): Update.
1414 (ada_get_next_arg): Remove.
1415 (catch_ada_exception_command_split): Use std::string. Change type
1416 of "excep_string", "cond_string".
1417 (catch_ada_exception_command): Update.
1418 (create_ada_exception_catchpoint): Change type of excep_string.
1419 (ada_exception_sal): Remove excep_string parameter.
1420 (~ada_catchpoint): Remove.
1421
1422 2018-05-21 Tom Tromey <tom@tromey.com>
1423
1424 * ada-lang.c (ada_collect_symbol_completion_matches): Remove
1425 cleanup.
1426
1427 2018-05-21 Tom Tromey <tom@tromey.com>
1428
1429 * ada-lang.c (ada_exception_message_1, ada_exception_message):
1430 Return unique_xmalloc_ptr.
1431 (print_it_exception): Update.
1432
1433 2018-05-21 Tom Tromey <tom@tromey.com>
1434
1435 * tracepoint.c (trace_dump_actions): Use std::string.
1436
1437 2018-05-21 Tom Tromey <tom@tromey.com>
1438
1439 * symfile.c (reread_symbols): Use std::string for original_name.
1440
1441 2018-05-21 Tom Tromey <tom@tromey.com>
1442
1443 * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
1444 (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN. Default
1445 constructor.
1446
1447 2018-05-20 Simon Marchi <simon.marchi@polymtl.ca>
1448
1449 * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
1450 instance to...
1451 (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
1452 * objfiles.c (get_objfile_bfd_data): Allocate
1453 objfile_per_bfd_storage with obstack_new when allocating on
1454 obstack.
1455
1456 2018-05-20 Simon Marchi <simon.marchi@ericsson.com>
1457
1458 * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
1459 OBSTACK_ZALLOC.
1460 * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
1461 * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
1462 * mdebugread.c (mdebug_build_psymtabs): Likewise.
1463 (add_pending): Likewise.
1464 (parse_symbol): Likewise.
1465 (parse_partial_symbols): Likewise.
1466 (psymtab_to_symtab_1): Likewise.
1467 (new_psymtab): Likewise.
1468 (elfmdebug_build_psymtabs): Likewise.
1469 * minsyms.c (terminate_minimal_symbol_table): Likewise.
1470 * objfiles.c (get_objfile_bfd_data): Likewise.
1471 (objfile_register_static_link): Likewise.
1472 * psymtab.c (allocate_psymtab): Likewise.
1473 * stabsread.c (read_member_functions): Likewise.
1474 * xcoffread.c (xcoff_end_psymtab): Likewise.
1475
1476 2018-05-20 Simon Marchi <simon.marchi@ericsson.com>
1477
1478 * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
1479 compiler supports std::is_trivially_constructible.
1480 * common/poison.h: Include obstack.h.
1481 (IsMallocable): Define to is_trivially_constructible if the
1482 compiler supports it, define to true_type otherwise.
1483 (xobnew): New.
1484 (XOBNEW): Redefine.
1485 (xobnewvec): New.
1486 (XOBNEWVEC): Redefine.
1487 * gdb_obstack.h (obstack_zalloc): New.
1488 (OBSTACK_ZALLOC): Redefine.
1489 (obstack_calloc): New.
1490 (OBSTACK_CALLOC): Redefine.
1491 (obstack_new): New.
1492 * gdbarch.sh: Include gdb_obstack in gdbarch.h.
1493 (gdbarch_obstack): New declaration in gdbarch.h, definition in
1494 gdbarch.c.
1495 (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
1496 obstack_calloc/obstack_zalloc.
1497 (gdbarch_obstack_zalloc): Remove.
1498 * target-descriptions.c (tdesc_data_init): Use obstack_new.
1499
1500 2018-05-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
1501
1502 * stack.c (backtrace_command_1): Remove useless variable int i.
1503
1504 2018-05-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
1505
1506 * stack.c (print_frame_info): Fix comment.
1507
1508 2018-05-18 Tom Tromey <tom@tromey.com>
1509
1510 * dwarf2read.c (struct dwz_file): Add constructor, initializers.
1511 <dwz_bfd>: Now a gdb_bfd_ref_ptr.
1512 (~dwarf2_per_objfile): Update
1513 (dwarf2_get_dwz_file): Use new.
1514 * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
1515 unique_ptr.
1516
1517 2018-05-18 Tom Tromey <tom@tromey.com>
1518
1519 * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
1520 unique_ptr.
1521 * dwarf2read.c (struct dwp_file): Add constructor and
1522 initializers.
1523 (open_and_init_dwp_file): Return a unique_ptr.
1524 (dwarf2_per_objfile, create_dwp_hash_table)
1525 (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
1526 (lookup_dwo_unit_in_dwp): Update.
1527 (open_and_init_dwp_file, get_dwp_file): Update.
1528
1529 2018-05-18 Tom Tromey <tom@tromey.com>
1530
1531 * dwarf2read.c (dwarf2_per_objfile): Update.
1532 (struct mapped_index): Add initializers.
1533 (dwarf2_read_index): Use new.
1534 (dw2_symtab_iter_init): Update.
1535 * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
1536 unique_ptr.
1537
1538 2018-05-18 Simon Marchi <simon.marchi@ericsson.com>
1539
1540 * dwarf2read.c (mapped_index) <total_size>: Remove.
1541
1542 2018-05-18 Simon Marchi <simon.marchi@ericsson.com>
1543
1544 * unittests/format_pieces-selftests.c (test_format_specifier):
1545 Add ARI comments.
1546
1547 2018-05-18 Tom Tromey <tom@tromey.com>
1548
1549 * c-typeprint.c (maybe_print_hole): New function.
1550 (c_print_type_struct_field_offset): Update.
1551 (c_type_print_base_struct_union): Call maybe_print_hole.
1552
1553 2018-05-17 Keith Seitz <keiths@redhat.com>
1554
1555 * breakpoint.c (build_bpstat_chain): New function, moved from
1556 bpstat_stop_status.
1557 (bpstat_stop_status): Add optional parameter, `stop_chain'.
1558 If no stop chain is passed, call build_bpstat_chain to build it.
1559 * breakpoint.h (build_bpstat_chain): Declare.
1560 (bpstat_stop_status): Move documentation here from breakpoint.c.
1561 * infrun.c (handle_signal_stop): Before eliding inlined frames,
1562 build the stop chain and pass it to skip_inline_frames.
1563 Pass this stop chain to bpstat_stop_status.
1564 * inline-frame.c: Include breakpoint.h.
1565 (stopped_by_user_bp_inline_frame): New function.
1566 (skip_inline_frames): Add parameter `stop_chain'.
1567 Move documention to inline-frame.h.
1568 If non-NULL, use stopped_by_user_bp_inline_frame to determine
1569 whether the frame should be elided.
1570 * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
1571 Add moved documentation and update for new parameter.
1572
1573 2018-05-17 Simon Marchi <simon.marchi@ericsson.com>
1574
1575 PR cli/14975
1576 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1577 unittests/format_pieces-selftests.c.
1578 * common/format.h (format_piece) <operator==>: New.
1579 (format_pieces) <operator[]>: Remove.
1580 * common/format.c (format_pieces::format_pieces): Handle \e.
1581 * unittests/format_pieces-selftests.c: New.
1582
1583 2018-05-17 Tom Tromey <tom@tromey.com>
1584
1585 PR symtab/23010:
1586 * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
1587 (dw2_instantiate_symtab): Add skip_partial parameter.
1588 (dw2_find_last_source_symtab, dw2_map_expand_apply)
1589 (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
1590 (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
1591 (dw2_expand_symtabs_matching_one)
1592 (dw2_find_pc_sect_compunit_symtab)
1593 (dw2_debug_names_lookup_symbol)
1594 (dw2_debug_names_expand_symtabs_for_function): Update.
1595 (init_cutu_and_read_dies): Add skip_partial parameter.
1596 (process_psymtab_comp_unit, build_type_psymtabs_1)
1597 (process_skeletonless_type_unit, load_partial_comp_unit)
1598 (psymtab_to_symtab_1): Update.
1599 (load_full_comp_unit): Add skip_partial parameter.
1600 (process_imported_unit_die, dwarf2_read_addr_index)
1601 (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
1602 (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
1603 (read_signatured_type): Update.
1604
1605 2018-05-17 Simon Marchi <simon.marchi@ericsson.com>
1606
1607 * value.c (release_value): Remove unused variable.
1608 (record_latest_value): Likewise.
1609 (access_value_history): Likewise.
1610 (preserve_values): Likewise.
1611
1612 2018-05-17 Tom Tromey <tom@tromey.com>
1613
1614 * extension.h (struct ext_lang_type_printers) <py_type_printers>:
1615 Initialize.
1616
1617 2018-05-16 Maciej W. Rozycki <macro@mips.com>
1618
1619 PR gdb/22286
1620 * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
1621 Also handle registers whose width is not a multiple of
1622 PTRACE_TYPE_RET.
1623 (linux_nat_trad_target::store_register): Likewise.
1624
1625 2018-05-16 Tom Tromey <tom@tromey.com>
1626
1627 * gdbcore.h (core_bfd): Redefine.
1628 * corelow.c (core_target::close): Update.
1629 (core_target_open): Update.
1630 * progspace.h (struct program_space) <cbfd>: Now a
1631 gdb_bfd_ref_ptr.
1632
1633 2018-05-16 Tom Tromey <tom@tromey.com>
1634
1635 PR cli/19551:
1636 * symfile-add-flags.h (enum symfile_add_flags)
1637 <SYMFILE_NOT_FILENAME>: New constant.
1638 * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME. Get
1639 objfile name from BFD.
1640 (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
1641 * minidebug.c (find_separate_debug_file_in_section): Put
1642 ".gnu_debugdata" into BFD's file name.
1643
1644 2018-05-16 Simon Marchi <simon.marchi@ericsson.com>
1645
1646 * regcache.c (regcache_read_ftype, regcache_write_ftype):
1647 Remove.
1648
1649 2018-05-15 Tamar Christina <tamar.christina@arm.com>
1650
1651 PR binutils/21446
1652 * aarch64-tdep.c (aarch64_analyze_prologue,
1653 aarch64_software_single_step, aarch64_displaced_step_copy_insn):
1654 Indicate not interested in errors.
1655
1656 2018-05-15 Maciej W. Rozycki <macro@mips.com>
1657
1658 * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
1659 Supply the MIPS_ZERO_REGNUM register.
1660
1661 2018-05-15 Maciej W. Rozycki <macro@mips.com>
1662
1663 * mips-tdep.c (mask_address_var): Make variable static.
1664
1665 2018-05-14 Tom Tromey <tom@tromey.com>
1666
1667 * dwarf2read.c (rust_union_quirks): Clear rust_unions.
1668
1669 2018-05-11 Andrew Burgess <andrew.burgess@embecosm.com>
1670
1671 * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
1672 FXSAVE_ADDR for the mxcsr register.
1673
1674 2018-05-11 Max Filippov <jcmvbkbc@gmail.com>
1675
1676 * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
1677
1678 2018-05-11 Pedro Alves <palves@redhat.com>
1679
1680 * corelow.c (core_target) <core_target>: No longer inline.
1681 Initialize m_core_gdbarch, m_core_vec and build the section table
1682 here.
1683 <~core_target>: New.
1684 <core_gdbarch, get_core_register_section>: New methods.
1685 <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
1686 factored out from ...
1687 <core_data, core_vec, core_gdbarch>: ... these deleted globals.
1688 (core_ops): Delete.
1689 (sniff_core_bfd): Add gdbarch parameter.
1690 (core_close): Delete, merged into ...
1691 (core_target::close): ... here. Delete self.
1692 (core_close_cleanup): Delete.
1693 (core_target_open): Allocate a core_target on the heap. Use a
1694 unique_ptr instead of a cleanup. Bits moved into the core_target
1695 ctor. Adjust to use core_target methods instead of globals.
1696 (get_core_register_section): Rename to ...
1697 (core_target::get_core_register_section): ... this and adjust.
1698 (struct get_core_registers_cb_data): New.
1699 (get_core_registers_cb): Use it. Use bool.
1700 (core_target::fetch_registers, core_target::files_info)
1701 (core_target::xfer_partial, core_target::read_description)
1702 (core_target::pid_to, core_target::thread_name): Adjust to
1703 reference class fields instead of globals.
1704 * target.h (struct target_ops_deleter, target_ops_up): New.
1705
1706 2018-05-11 Pedro Alves <palves@redhat.com>
1707
1708 * corefile.c (core_file_command): Move to corelow.c.
1709 * corelow.c (the_core_target): Delete.
1710 (core_file_command): Moved from corefile.c. Check exec_bfd
1711 instead of the_core_target. Use target_detach instead of calling
1712 into the_core_target directly.
1713 (maybe_say_no_core_file_now): New.
1714 (core_target::detach): Use it.
1715 (_initialize_corelow): Remove references to the_core_target.
1716 * gdbcore.h (the_core_target): Delete.
1717
1718 2018-05-11 Tom Tromey <tromey@redhat.com>
1719 Pedro Alves <palves@redhat.com>
1720
1721 * corefile.c (core_bfd): Remove.
1722 * gdbcore.h (core_bfd): Now a macro.
1723 * progspace.h (struct program_space) <cbfd>: New field.
1724
1725 2018-05-11 Tom Tromey <tom@tromey.com>
1726
1727 * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
1728 gdb::def_vector.
1729
1730 2018-05-10 Tom Tromey <tom@tromey.com>
1731
1732 * configure: Rebuild.
1733 * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
1734
1735 2018-05-10 Joel Brobecker <brobecker@adacore.com>
1736
1737 PR server/23158:
1738 * regformats/regdat.sh: Adjust script, following the addition
1739 of the new expedite_regs parameter to init_target_desc.
1740
1741 2018-05-10 Omair Javaid <omair.javaid@linaro.org>
1742
1743 PR gdb/23127
1744 * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
1745 set_gdbarch_significant_addr_bit.
1746 * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
1747 set_gdbarch_significant_addr_bit.
1748 * utils.c (address_significant): Update to sign extend addr.
1749
1750 2018-05-09 Max Filippov <jcmvbkbc@gmail.com>
1751
1752 * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
1753 (xtensa_linux_init_abi): Limit tdep->num_regs by
1754 tdep->num_nopriv_regs.
1755 * xtensa-tdep.c (xtensa_derive_tdep): Calculate
1756 tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
1757 not initialized.
1758
1759 2018-05-08 Simon Marchi <simon.marchi@ericsson.com>
1760
1761 * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
1762
1763 2018-05-08 Andrew Burgess <andrew.burgess@embecosm.com>
1764
1765 * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
1766 (I387_MXCSR_INIT_VAL): New constant.
1767 * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
1768 buffer if it was supplied by the inferior.
1769 * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
1770 (i387_xsave_get_clear_bv): New function.
1771 (i387_supply_xsave): Only read x87 control registers from the
1772 xsave buffer if the feature is enabled, and the state will have
1773 been written, otherwise, provide a suitable default.
1774 (i387_collect_xsave): Pre-clear all registers in xsave buffer,
1775 including x87 control registers. Update control registers if they
1776 have changed from the default value, and mark features as enabled
1777 as required.
1778 * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
1779
1780 2018-05-08 Ulrich Weigand <uweigand@de.ibm.com>
1781
1782 * spu-tdep.c (info_spu_event_command): Fix output formatting.
1783
1784 2018-05-07 Tom Tromey <tom@tromey.com>
1785
1786 * configure: Rebuild.
1787 * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
1788
1789 2018-05-07 Tom Tromey <tom@tromey.com>
1790
1791 PR tdep/20362:
1792 * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
1793 bit. Use correct value for VDIV.
1794
1795 2018-05-04 Tom Tromey <tom@tromey.com>
1796
1797 * configure: Rebuild.
1798 * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
1799
1800 2018-05-04 Tom Tromey <tom@tromey.com>
1801
1802 * linux-record.c (record_linux_system_call) <case
1803 RECORD_SYS_RECVFROM>: Add "break".
1804
1805 2018-05-04 Tom Tromey <tom@tromey.com>
1806
1807 * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
1808 Add missing "break".
1809 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
1810 Add missing "break".
1811
1812 2018-05-04 Tom Tromey <tom@tromey.com>
1813
1814 * rs6000-tdep.c (ppc_process_record_op4)
1815 (ppc_process_record_op63): Add fall-through comment.
1816
1817 2018-05-04 Tom Tromey <tom@tromey.com>
1818
1819 * i386-tdep.c (i386_process_record): Add fall-through comment.
1820
1821 2018-05-04 Tom Tromey <tom@tromey.com>
1822
1823 * stabsread.c (define_symbol) <case 'p'>: Add fall-through
1824 comment.
1825
1826 2018-05-04 Tom Tromey <tom@tromey.com>
1827
1828 * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
1829 * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
1830 * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
1831 comment.
1832 * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
1833 comment.
1834 * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
1835 comment.
1836
1837 2018-05-04 Tom Tromey <tom@tromey.com>
1838
1839 * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
1840
1841 2018-05-04 Tom Tromey <tom@tromey.com>
1842
1843 * s390-tdep.c (s390_process_record): Fix fall-through comments.
1844 * xcoffread.c (scan_xcoff_symtab): Move comment later.
1845 * symfile.c (section_is_mapped): Fix fall-through comment.
1846 * stabsread.c (define_symbol, read_member_functions): Fix
1847 fall-through comment.
1848 * s390-linux-tdep.c (s390_process_record): Fix fall-through
1849 comment.
1850 * remote.c (remote_wait_as): Fix fall-through comment.
1851 * p-exp.y (yylex): Fix fall-through comment.
1852 * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
1853 comment.
1854 * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
1855 * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
1856 * jv-exp.y (yylex): Fix fall-through comment.
1857 * go-exp.y (lex_one_token): Fix fall-through comment.
1858 * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
1859 fall-through comment.
1860 * f-exp.y (yylex): Fix fall-through comment.
1861 * dwarf2read.c (process_die): Fix fall-through comments.
1862 * dbxread.c (process_one_symbol): Fix fall-through comment.
1863 * d-exp.y (lex_one_token): Fix fall-through comment.
1864 * cp-name-parser.y (yylex): Fix fall-through comment.
1865 * coffread.c (coff_symtab_read): Fix fall-through comment.
1866 * c-exp.y (lex_one_token): Fix fall-through comment.
1867 * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
1868 comment.
1869 * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
1870 comment.
1871
1872 2018-05-04 Tom Tromey <tom@tromey.com>
1873
1874 PR python/22730:
1875 * NEWS: Mention gdb.execute change.
1876 * gdbcmd.h (execute_control_command): Don't declare.
1877 * python/python.c (execute_gdb_command): Use read_command_lines_1,
1878 execute_control_commands, execute_control_commands_to_string.
1879 * cli/cli-script.h (execute_control_commands)
1880 (execute_control_commands_to_string): Declare.
1881 (execute_control_command): Add from_tty parameter.
1882 * cli/cli-script.c (execute_control_commands)
1883 (execute_control_commands_to_string): New functions.
1884 (execute_user_command): Use execute_control_commands.
1885 (execute_control_command_1): Add "from_tty" parameter. Update.
1886 (execute_control_command): Likewise.
1887
1888 2018-05-04 Tom Tromey <tom@tromey.com>
1889
1890 PR python/22731:
1891 * NEWS: Mention that breakpoint commands are writable.
1892 * python/py-breakpoint.c (bppy_set_commands): New function.
1893 (breakpoint_object_getset) <"commands">: Use it.
1894
1895 2018-05-04 Tom Tromey <tom@tromey.com>
1896
1897 * tracepoint.c (actions_command): Update.
1898 * mi/mi-cmd-break.c (mi_command_line_array)
1899 (mi_command_line_array_cnt, mi_command_line_array_ptr)
1900 (mi_read_next_line): Remove.
1901 (mi_cmd_break_commands): Update.
1902 * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
1903 function_view.
1904 * cli/cli-script.c (get_command_line): Update.
1905 (process_next_line): Use function_view. Constify.
1906 (recurse_read_control_structure, read_command_lines)
1907 (read_command_lines_1): Change argument types to function_view.
1908 (do_define_command, document_command): Update.
1909 * breakpoint.h (check_tracepoint_command): Don't declare.
1910 * breakpoint.c (check_tracepoint_command): Remove.
1911 (commands_command_1, create_tracepoint_from_upload): Update.
1912
1913 2018-05-04 Tom Tromey <tom@tromey.com>
1914
1915 PR gdb/11750:
1916 * cli/cli-script.h (enum command_control_type) <define_control>:
1917 New constant.
1918 * cli/cli-script.c (multi_line_command_p): Handle define_control.
1919 (build_command_line, execute_control_command_1)
1920 (process_next_line): Likewise.
1921 (do_define_command): New function, extracted from define_command.
1922 (define_command): Use it.
1923
1924 2018-05-04 Tom Tromey <tom@tromey.com>
1925
1926 * tracepoint.c (actions_command): Update.
1927 * cli/cli-script.h (read_command_lines): Update.
1928 * cli/cli-script.c (read_command_lines): Constify prompt_arg.
1929 (MAX_TMPBUF): Remove define.
1930 (define_command): Use string_printf.
1931 (document_command): Likewise.
1932 * breakpoint.c (commands_command_1): Update.
1933
1934 2018-05-04 Tom Tromey <tom@tromey.com>
1935
1936 * top.c (execute_command): Update.
1937 * cli/cli-script.h (print_command_lines): Now varargs.
1938 * cli/cli-script.c (print_command_lines): Now varargs.
1939 (execute_control_command_1) <case while_control, case if_control>:
1940 Update.
1941
1942 2018-05-04 Tom Tromey <tom@tromey.com>
1943
1944 * tracepoint.c (all_tracepoint_actions): Rename from
1945 all_tracepoint_actions_and_cleanup. Change return type.
1946 (actions_command, encode_actions_1, encode_actions)
1947 (trace_dump_actions, tdump_command): Update.
1948 * remote.c (remote_download_command_source): Update.
1949 * python/python.c (gdbpy_eval_from_control_command)
1950 (python_command, python_interactive_command): Update.
1951 * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
1952 * guile/guile.c (guile_command)
1953 (gdbscm_eval_from_control_command, guile_command): Update.
1954 * compile/compile.c (compile_code_command)
1955 (compile_print_command, compile_to_object): Update.
1956 * cli/cli-script.h (struct command_lines_deleter): New.
1957 (counted_command_line): New typedef.
1958 (struct command_line): Add constructor, destructor.
1959 <body_list>: Remove.
1960 <body_list_0, body_list_1>: New members.
1961 (command_line_up): Remove typedef.
1962 (read_command_lines, read_command_lines_1, get_command_line):
1963 Update.
1964 (copy_command_lines): Don't declare.
1965 * cli/cli-script.c (build_command_line): Use "new".
1966 (get_command_line): Return counted_command_line.
1967 (print_command_lines, execute_user_command)
1968 (execute_control_command_1, while_command, if_command): Update.
1969 (realloc_body_list): Remove.
1970 (process_next_line, recurse_read_control_structure): Update.
1971 (read_command_lines, read_command_lines_1): Return counted_command_line.
1972 (free_command_lines): Use "delete".
1973 (copy_command_lines): Remove.
1974 (define_command, document_command, show_user_1): Update.
1975 * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
1976 a counted_command_line.
1977 * breakpoint.h (counted_command_line): Remove typedef.
1978 (breakpoint_set_commands): Update.
1979 * breakpoint.c (check_no_tracepoint_commands)
1980 (validate_commands_for_breakpoint): Update.
1981 (breakpoint_set_commands): Change commands to be a
1982 counted_command_line.
1983 (commands_command_1, update_dprintf_command_list)
1984 (create_tracepoint_from_upload): Update.
1985
1986 2018-05-04 Tom Tromey <tom@tromey.com>
1987
1988 * cli/cli-decode.h (cmd_list_element): New constructor.
1989 (~cmd_list_element): New destructor.
1990 (struct cmd_list_element): Add initializers.
1991 * cli/cli-decode.c (do_add_cmd): Use "new".
1992 (delete_cmd): Use "delete".
1993
1994 2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
1995 Pedro Alves <palves@redhat.com>
1996
1997 PR breakpoints/19806 and support for PR external/20207.
1998 * NEWS: Mention Aarch64 watchpoint improvements.
1999 * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
2000 watchpoints and PR external/20207 watchpoints.
2001 * nat/aarch64-linux-hw-point.c
2002 (kernel_supports_any_contiguous_range): New.
2003 (aarch64_watchpoint_offset): New.
2004 (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
2005 (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
2006 (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
2007 (aarch64_align_watchpoint): New parameters aligned_offset_p and
2008 next_addr_orig_p. Support PR external/20207 watchpoints.
2009 (aarch64_downgrade_regs): New.
2010 (aarch64_dr_state_insert_one_point): New parameters offset and
2011 addr_orig.
2012 (aarch64_dr_state_remove_one_point): Likewise.
2013 (aarch64_handle_breakpoint): Update caller.
2014 (aarch64_handle_aligned_watchpoint): Likewise.
2015 (aarch64_handle_unaligned_watchpoint): Support addr_orig and
2016 aligned_offset.
2017 (aarch64_linux_set_debug_regs): Remove const from state. Call
2018 aarch64_downgrade_regs.
2019 (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
2020 * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
2021 (DR_CONTROL_MASK): ... this.
2022 (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
2023 (unsigned int aarch64_watchpoint_offset): New prototype.
2024 (aarch64_linux_set_debug_regs): Remove const from state.
2025 * utils.c (align_up, align_down): Move to ...
2026 * common/common-utils.c (align_up, align_down): ... here.
2027 * utils.h (align_up, align_down): Move to ...
2028 * common/common-utils.h (align_up, align_down): ... here.
2029
2030 2018-05-04 Joel Brobecker <brobecker@adacore.com>
2031
2032 * sparc-tdep.c (sparc_structure_return_p): Re-implement to
2033 match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
2034 (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
2035 Re-implement to match the ABI as summarized in GCC's
2036 gcc/config/sparc/sparc.c. All callers updated.
2037 (sparc32_store_arguments): Remove assertion.
2038
2039 2018-05-04 Tom Tromey <tom@tromey.com>
2040
2041 * printcmd.c: Don't include tui.h.
2042 (decode_format): Use skip_spaces.
2043
2044 2018-05-04 Tom Tromey <tom@tromey.com>
2045
2046 PR gdb/22619:
2047 * printcmd.c (last_count): New global.
2048 (x_command): Use saved count when repeating.
2049
2050 2018-05-04 Tom Tromey <tom@tromey.com>
2051
2052 * nto-procfs.c (do_closedir_cleanup): Remove.
2053 (procfs_pidlist): Use gdb_dir_up.
2054 * procfs.c (do_closedir_cleanup): Remove.
2055 (proc_update_threads): Use gdb_dir_up.
2056 * common/filestuff.h (struct gdb_dir_deleter): New.
2057 (gdb_dir_up): New typedef.
2058
2059 2018-05-04 Tom Tromey <tom@tromey.com>
2060
2061 * ada-lang.c (print_mention_exception): Use std::string.
2062
2063 2018-05-04 Tom Tromey <tom@tromey.com>
2064
2065 * ada-lang.c (create_excep_cond_exprs): Update.
2066 (ada_exception_catchpoint_cond_string): Use std::string.
2067
2068 2018-05-04 Tom Tromey <tom@tromey.com>
2069
2070 * ada-lang.c (xget_renaming_scope): Return std::string.
2071 (old_renaming_is_invisible): Update.
2072
2073 2018-05-04 Tom Tromey <tom@tromey.com>
2074
2075 * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
2076 (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
2077
2078 2018-05-04 Ulrich Weigand <uweigand@de.ibm.com>
2079
2080 * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
2081
2082 2018-05-04 Tom Tromey <tom@tromey.com>
2083
2084 * remote.c (remote_query_supported_append): Change type.
2085 (remote_check_symbols): Update.
2086
2087 2018-05-04 Paul Pluzhnikov <ppluzhnikov@google.com>
2088
2089 PR gdb/11420
2090 * configure.ac: Prepend libpython.
2091 * python/python-config.py: Likewise.
2092 * configure: Regenerate.
2093
2094 2018-05-03 Simon Marchi <simon.marchi@ericsson.com>
2095
2096 * Makefile.in (%.c: %.l): Use -t instead of --stdout.
2097
2098 2018-05-03 Pedro Alves <palves@redhat.com>
2099
2100 * s390-linux-nat.c
2101 (s390_linux_nat_target::have_continuable_watchpoint): Mark with
2102 override. Write 'true' instead of '1'.
2103 (s390_linux_nat_target::watchpoint_addr_within_range): Remove
2104 declaration.
2105
2106 2018-05-02 Pedro Alves <palves@redhat.com>
2107
2108 * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
2109 add_inf_child_target.
2110 * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
2111 add_inf_child_target.
2112 * aix-thread.c (aix_thread_target_info): New.
2113 (aix_thread_target) <shortname, longname, doc>: Delete.
2114 <info>: New.
2115 * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
2116 add_inf_child_target.
2117 * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
2118 add_inf_child_target.
2119 * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
2120 add_inf_child_target.
2121 * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
2122 add_inf_child_target.
2123 * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
2124 add_inf_child_target.
2125 * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
2126 add_inf_child_target.
2127 * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
2128 add_inf_child_target.
2129 * arm-linux-nat.c (_initialize_arm_linux_nat): Use
2130 add_inf_child_target.
2131 * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
2132 add_inf_child_target.
2133 * bfd-target.c (target_bfd_target_info): New.
2134 (target_bfd) <shortname, longname, doc>: Delete.
2135 <info>: New.
2136 * bsd-kvm.c (bsd_kvm_target_info): New.
2137 (bsd_kvm_target) <shortname, longname, doc>: Delete.
2138 <info>: New.
2139 (bsd_kvm_target::open): Rename to ...
2140 (bsd_kvm_target_open): ... this. Adjust.
2141 * bsd-uthread.c (bsd_uthread_target_info): New.
2142 (bsd_uthread_target) <shortname, longname, doc>: Delete.
2143 <info>: New.
2144 * corefile.c (core_file_command): Adjust.
2145 * corelow.c (core_target_info): New.
2146 (core_target) <shortname, longname, doc>: Delete.
2147 <info>: New.
2148 (core_target::open): Rename to ...
2149 (core_target_open): ... this. Adjust.
2150 * ctf.c (ctf_target_info): New.
2151 (ctf_target) <shortname, longname, doc>: Delete.
2152 <info>: New.
2153 (ctf_target::open): Rename to ...
2154 (ctf_target_open): ... this.
2155 (_initialize_ctf): Adjust.
2156 * exec.c (exec_target_info): New.
2157 (exec_target) <shortname, longname, doc>: Delete.
2158 <info>: New.
2159 (exec_target::open): Rename to ...
2160 (exec_target_open): ... this.
2161 * gdbcore.h (core_target_open): Declare.
2162 * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
2163 * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
2164 add_inf_child_target.
2165 * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
2166 add_inf_child_target.
2167 * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
2168 add_inf_child_target.
2169 * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
2170 add_inf_child_target.
2171 * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
2172 add_inf_child_target.
2173 * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
2174 add_inf_child_target.
2175 * i386-linux-nat.c (_initialize_i386_linux_nat): Use
2176 add_inf_child_target.
2177 * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
2178 add_inf_child_target.
2179 * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
2180 add_inf_child_target.
2181 * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
2182 add_inf_child_target.
2183 * inf-child.c (inf_child_target_info): New.
2184 (inf_child_target::info): New.
2185 (inf_child_open_target): Remove 'target' parameter. Use
2186 get_native_target instead.
2187 (inf_child_target::open): Delete.
2188 (add_inf_child_target): New.
2189 * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
2190 Delete.
2191 <info>: New.
2192 (add_inf_child_target): Declare.
2193 (inf_child_open_target): Declare.
2194 * linux-thread-db.c (thread_db_target_info): New.
2195 (thread_db_target) <shortname, longname, doc>: Delete.
2196 <info>: New.
2197 * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
2198 add_inf_child_target.
2199 * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
2200 add_inf_child_target.
2201 * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
2202 add_inf_child_target.
2203 * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
2204 add_inf_child_target.
2205 * make-target-delegates (print_class): Adjust.
2206 * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
2207 add_inf_child_target.
2208 * mips-linux-nat.c (_initialize_mips_linux_nat): Use
2209 add_inf_child_target.
2210 * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
2211 add_inf_child_target.
2212 * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
2213 add_inf_child_target.
2214 * nto-procfs.c (nto_native_target_info): New.
2215 (nto_procfs_target_native) <shortname, longname, doc>:
2216 Delete.
2217 <info>: New.
2218 (nto_procfs_target_info): New.
2219 (nto_procfs_target_procfs) <shortname, longname, doc>:
2220 Delete.
2221 <info>: New.
2222 (init_procfs_targets): Adjust.
2223 * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
2224 add_inf_child_target.
2225 * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
2226 add_inf_child_target.
2227 * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
2228 add_inf_child_target.
2229 * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
2230 add_inf_child_target.
2231 * ravenscar-thread.c (ravenscar_target_info): New.
2232 (ravenscar_thread_target) <shortname, longname, doc>:
2233 Delete.
2234 <info>: New.
2235 * record-btrace.c (record_btrace_target_info):
2236 (record_btrace_target) <shortname, longname, doc>: Delete.
2237 <info>: New.
2238 (record_btrace_target::open): Rename to ...
2239 (record_btrace_target_open): ... this. Adjust.
2240 * record-full.c (record_longname, record_doc): New.
2241 (record_full_base_target) <shortname, longname, doc>: Delete.
2242 <info>: New.
2243 (record_full_target_info): New.
2244 (record_full_target): <shortname>: Delete.
2245 <info>: New.
2246 (record_full_core_open_1, record_full_open_1): Update comments.
2247 (record_full_base_target::open): Rename to ...
2248 (record_full_open): ... this.
2249 (cmd_record_full_restore): Update.
2250 (_initialize_record_full): Update.
2251 * remote-sim.c (remote_sim_target_info): New.
2252 (gdbsim_target) <shortname, longname, doc>: Delete.
2253 <info>: New.
2254 (gdbsim_target::open): Rename to ...
2255 (gdbsim_target_open): ... this.
2256 (_initialize_remote_sim): Adjust.
2257 * remote.c (remote_doc): New.
2258 (remote_target_info): New.
2259 (remote_target) <shortname, longname, doc>: Delete.
2260 <info>: New.
2261 (extended_remote_target_info): New.
2262 (extended_remote_target) <shortname, longname, doc>: Delete.
2263 <info>: New.
2264 (remote_target::open_1): Make static. Adjust.
2265 * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
2266 * s390-linux-nat.c (_initialize_s390_nat): Use
2267 add_inf_child_target.
2268 * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
2269 add_inf_child_target.
2270 * sol-thread.c (thread_db_target_info): New.
2271 (sol_thread_target) <shortname, longname, doc>: Delete.
2272 <info>: New.
2273 * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
2274 add_inf_child_target.
2275 * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
2276 add_inf_child_target.
2277 * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
2278 add_inf_child_target.
2279 * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
2280 add_inf_child_target.
2281 * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
2282 add_inf_child_target.
2283 * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
2284 add_inf_child_target.
2285 * spu-linux-nat.c (_initialize_spu_nat): Use
2286 add_inf_child_target.
2287 * spu-multiarch.c (spu_multiarch_target_info): New.
2288 (spu_multiarch_target) <shortname, longname, doc>: Delete.
2289 <info>: New.
2290 * target-delegates.c: Regenerate.
2291 * target.c: Include <unordered_map>.
2292 (target_ops_p): Delete.
2293 (DEF_VEC_P(target_ops_p)): Delete.
2294 (target_factories): New.
2295 (test_target_info): New.
2296 (test_target_ops::info): New.
2297 (open_target): Adjust to use target_factories.
2298 (add_target_with_completer): Rename to ...
2299 (add_target): ... this. Change prototype. Register target_info
2300 and open callback in target_factories. Register target_info in
2301 command context instead of target_ops.
2302 (add_target): Delete old implementation.
2303 (add_deprecated_target_alias): Change prototype. Adjust.
2304 (the_native_target): New.
2305 (set_native_target, get_native_target): New.
2306 (find_default_run_target): Use the_native_target.
2307 (find_attach_target, find_run_target): Simplify.
2308 (target_ops::open): Delete.
2309 (dummy_target_info): New.
2310 (dummy_target::shortname, dummy_target::longname)
2311 (dummy_target::doc): Delete.
2312 (dummy_target::info): New.
2313 (debug_target::shortname, debug_target::longname)
2314 (debug_target::doc): Delete.
2315 (debug_target::info): New.
2316 * target.h (struct target_info): New.
2317 (target_ops::~target_ops): Add comment.
2318 (target_ops::info): New.
2319 (target_ops::shortname, target_ops::longname, target_ops::doc): No
2320 longer virtual. Implement in terms of target_info.
2321 (set_native_target, get_native_target): Declare.
2322 (target_open_ftype): New.
2323 (add_target, add_target_with_completer)
2324 (add_deprecated_target_alias): Change prototype.
2325 (test_target) <shortname, longname, doc>: Delete.
2326 <info>: New.
2327 * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
2328 add_inf_child_target.
2329 * tracefile-tfile.c (tfile_target_info): New.
2330 (tfile_target) <shortname, longname, doc>: Delete.
2331 <info>: New.
2332 (tfile_target::open): Rename to ...
2333 (tfile_target_open): ... this.
2334 (_initialize_tracefile_tfile): Adjust.
2335 * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
2336 add_inf_child_target.
2337 * windows-nat.c (_initialize_windows_nat): Use
2338 add_inf_child_target.
2339 * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
2340 add_inf_child_target.
2341
2342 2018-05-02 Pedro Alves <palves@redhat.com>
2343
2344 * linux-nat.h (linux_nat_target) <low_new_thread,
2345 low_delete_thread, low_new_fork, low_forget_process,
2346 low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
2347 New virtual methods.
2348 (linux_nat_set_new_thread, linux_nat_set_delete_thread)
2349 (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
2350 (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
2351 (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
2352 (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
2353 Delete.
2354 * linux-fork.c (delete_fork): Adjust to call low method.
2355 * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
2356 (linux_nat_new_fork, linux_nat_forget_process_hook)
2357 (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
2358 (linux_nat_status_is_event):
2359 (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
2360 (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
2361 to call low method.
2362 (sigtrap_is_event): Rename to ...
2363 (linux_nat_target::low_status_is_event): ... this.
2364 (linux_nat_set_status_is_event): Delete.
2365 (save_stop_reason, linux_nat_wait_1)
2366 (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
2367 low methods.
2368 (linux_nat_set_new_thread, linux_nat_set_delete_thread)
2369 (linux_nat_set_new_fork, linux_nat_set_forget_process)
2370 (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
2371 (linux_nat_set_prepare_to_resume): Delete.
2372 * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
2373 low virtual methods.
2374 * amd64-linux-nat.c: Likewise.
2375 * arm-linux-nat.c: Likewise.
2376 * i386-linux-nat.c: Likewise.
2377 * ia64-linux-nat.c: Likewise.
2378 * mips-linux-nat.c: Likewise.
2379 * ppc-linux-nat.c: Likewise.
2380 * s390-linux-nat.c: Likewise.
2381 * sparc64-linux-nat.c: Likewise.
2382 * x86-linux-nat.c: Likewise.
2383 * x86-linux-nat.h: Include "nat/x86-linux.h".
2384 (x86_linux_nat_target) <low_new_fork, low_forget_process,
2385 low_prepare_to_resume, low_new_thread, low_delete_thread>:
2386 Override methods.
2387
2388 2018-05-02 Pedro Alves <palves@redhat.com>
2389
2390 * target.h (target_ops)
2391 <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
2392 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
2393 stopped_by_watchpoint, have_continuable_watchpoint,
2394 stopped_data_address, watchpoint_addr_within_range,
2395 can_accel_watchpoint_condition, can_run, thread_alive,
2396 has_all_memory, has_memory, has_stack, has_registers,
2397 has_execution, can_async_p, is_async_p, supports_non_stop,
2398 always_non_stop_p, can_execute_reverse, supports_multi_process,
2399 supports_enable_disable_tracepoint,
2400 supports_disable_randomization, supports_string_tracing,
2401 supports_evaluation_of_breakpoint_conditions,
2402 can_run_breakpoint_commands, filesystem_is_local,
2403 can_download_tracepoint, get_trace_state_variable_value,
2404 set_trace_notes, get_tib_address, use_agent, can_use_agent,
2405 record_is_replaying, record_will_replay,
2406 augmented_libraries_svr4_read>: Adjust to return bool.
2407 * aarch64-linux-nat.c: All implementations adjusted.
2408 * aix-thread.c: All implementations adjusted.
2409 * arm-linux-nat.c: All implementations adjusted.
2410 * breakpoint.c: All implementations adjusted.
2411 * bsd-kvm.c: All implementations adjusted.
2412 * bsd-uthread.c: All implementations adjusted.
2413 * corelow.c: All implementations adjusted.
2414 * ctf.c: All implementations adjusted.
2415 * darwin-nat.c: All implementations adjusted.
2416 * darwin-nat.h: All implementations adjusted.
2417 * exec.c: All implementations adjusted.
2418 * fbsd-nat.c: All implementations adjusted.
2419 * fbsd-nat.h: All implementations adjusted.
2420 * gnu-nat.c: All implementations adjusted.
2421 * gnu-nat.h: All implementations adjusted.
2422 * go32-nat.c: All implementations adjusted.
2423 * ia64-linux-nat.c: All implementations adjusted.
2424 * inf-child.c: All implementations adjusted.
2425 * inf-child.h: All implementations adjusted.
2426 * inf-ptrace.c: All implementations adjusted.
2427 * inf-ptrace.h: All implementations adjusted.
2428 * linux-nat.c: All implementations adjusted.
2429 * linux-nat.h: All implementations adjusted.
2430 * mips-linux-nat.c: All implementations adjusted.
2431 * nto-procfs.c: All implementations adjusted.
2432 * ppc-linux-nat.c: All implementations adjusted.
2433 * procfs.c: All implementations adjusted.
2434 * ravenscar-thread.c: All implementations adjusted.
2435 * record-btrace.c: All implementations adjusted.
2436 * record-full.c: All implementations adjusted.
2437 * remote-sim.c: All implementations adjusted.
2438 * remote.c: All implementations adjusted.
2439 * s390-linux-nat.c: All implementations adjusted.
2440 * sol-thread.c: All implementations adjusted.
2441 * spu-multiarch.c: All implementations adjusted.
2442 * target-delegates.c: All implementations adjusted.
2443 * target.c: All implementations adjusted.
2444 * target.h: All implementations adjusted.
2445 * tracefile-tfile.c: All implementations adjusted.
2446 * tracefile.c: All implementations adjusted.
2447 * tracefile.h: All implementations adjusted.
2448 * windows-nat.c: All implementations adjusted.
2449 * x86-linux-nat.h: All implementations adjusted.
2450 * x86-nat.h: All implementations adjusted.
2451
2452 2018-05-02 Pedro Alves <palves@redhat.com>
2453
2454 * make-target-delegates (scan_target_h): Don't trim lines here.
2455 Replace sequences of tabs and/or whitespace with a single
2456 whitespace.
2457 (top level, parsing methods): Trim each line before processing it
2458 here.
2459
2460 2018-05-02 Pedro Alves <palves@redhat.com>
2461 John Baldwin <jhb@freebsd.org>
2462
2463 * target.h (enum strata) <debug_stratum>: New.
2464 (struct target_ops) <all delegation methods>: Replace by C++
2465 virtual methods, and drop "to_" prefix. All references updated
2466 throughout.
2467 <to_shortname, to_longname, to_doc, to_data,
2468 to_have_steppable_watchpoint, to_have_continuable_watchpoint,
2469 to_has_thread_control, to_attach_no_wait>: Delete, replaced by
2470 virtual methods. All references updated throughout.
2471 <can_attach, supports_terminal_ours, can_create_inferior,
2472 get_thread_control_capabilities, attach_no_wait>: New
2473 virtual methods.
2474 <insert_breakpoint, remove_breakpoint>: Now
2475 TARGET_DEFAULT_NORETURN methods.
2476 <info_proc>: Now returns bool.
2477 <to_magic>: Delete.
2478 (OPS_MAGIC): Delete.
2479 (current_target): Delete. All references replaced by references
2480 to ...
2481 (target_stack): ... this. New.
2482 (target_shortname, target_longname): Adjust.
2483 (target_can_run): Now a function declaration.
2484 (default_child_has_all_memory, default_child_has_memory)
2485 (default_child_has_stack, default_child_has_registers)
2486 (default_child_has_execution): Remove target_ops parameter.
2487 (complete_target_initialization): Delete.
2488 (memory_breakpoint_target): New template class.
2489 (test_target_ops): Refactor as a C++ class with virtual methods.
2490 * make-target-delegates (NAME_PART): Tighten.
2491 (POINTER_PART, CP_SYMBOL): New.
2492 (SIMPLE_RETURN_PART): Reimplement.
2493 (VEC_RETURN_PART): Expect less.
2494 (RETURN_PART, VIRTUAL_PART): New.
2495 (METHOD): Adjust to C++ virtual methods.
2496 (scan_target_h): Remove reference to C99.
2497 (dname): Output "target_ops::" prefix.
2498 (write_function_header): Adjust to output a C++ class method.
2499 (write_declaration): New.
2500 (write_delegator): Adjust to output a C++ class method.
2501 (tdname): Output "dummy_target::" prefix.
2502 (write_tdefault, write_debugmethod): Adjust to output a C++ class
2503 method.
2504 (tdefault_names, debug_names): Delete.
2505 (return_types, tdefaults, styles, argtypes_array): New.
2506 (top level): All methods are delegators.
2507 (print_class): New.
2508 (top level): Print dummy_target and debug_target classes.
2509 * target-delegates.c: Regenerate.
2510 * target-debug.h (target_debug_print_enum_info_proc_what)
2511 (target_debug_print_thread_control_capabilities)
2512 (target_debug_print_thread_info_p): New.
2513 * target.c (dummy_target): Delete.
2514 (the_dummy_target, the_debug_target): New.
2515 (target_stack): Now extern.
2516 (set_targetdebug): Push/unpush debug target.
2517 (default_child_has_all_memory, default_child_has_memory)
2518 (default_child_has_stack, default_child_has_registers)
2519 (default_child_has_execution): Remove target_ops parameter.
2520 (complete_target_initialization): Delete.
2521 (add_target_with_completer): No longer call
2522 complete_target_initialization.
2523 (target_supports_terminal_ours): Use regular delegation.
2524 (update_current_target): Delete.
2525 (push_target): No longer check magic number. Don't call
2526 update_current_target.
2527 (unpush_target): Don't call update_current_target.
2528 (target_is_pushed): No longer check magic number.
2529 (target_require_runnable): Skip for all stratums over
2530 process_stratum.
2531 (target_ops::info_proc): New.
2532 (target_info_proc): Use find_target_at and
2533 find_default_run_target.
2534 (target_supports_disable_randomization): Use regular delegation.
2535 (target_get_osdata): Use find_target_at.
2536 (target_ops::open, target_ops::close, target_ops::can_attach)
2537 (target_ops::attach, target_ops::can_create_inferior)
2538 (target_ops::create_inferior, target_ops::can_run)
2539 (target_can_run): New.
2540 (default_fileio_target): Use regular delegation.
2541 (target_ops::fileio_open, target_ops::fileio_pwrite)
2542 (target_ops::fileio_pread, target_ops::fileio_fstat)
2543 (target_ops::fileio_close, target_ops::fileio_unlink)
2544 (target_ops::fileio_readlink): New.
2545 (target_fileio_open_1, target_fileio_unlink)
2546 (target_fileio_readlink): Always call the target method. Handle
2547 FILEIO_ENOSYS.
2548 (return_zero, return_zero_has_execution): Delete.
2549 (init_dummy_target): Delete.
2550 (dummy_target::dummy_target, dummy_target::shortname)
2551 (dummy_target::longname, dummy_target::doc)
2552 (debug_target::debug_target, debug_target::shortname)
2553 (debug_target::longname, debug_target::doc): New.
2554 (target_supports_delete_record): Use regular delegation.
2555 (setup_target_debug): Delete.
2556 (maintenance_print_target_stack): Skip debug_stratum.
2557 (initialize_targets): Instantiate the_dummy_target and
2558 the_debug_target.
2559 * auxv.c (target_auxv_parse): Remove 'ops' parameter. Adjust to
2560 use target_stack.
2561 (target_auxv_search, fprint_target_auxv): Adjust.
2562 (info_auxv_command): Adjust to use target_stack.
2563 * auxv.h (target_auxv_parse): Remove 'ops' parameter.
2564 * exceptions.c (print_flush): Handle a NULL target_stack.
2565 * regcache.c (target_ops_no_register): Refactor as class with
2566 virtual methods.
2567
2568 * exec.c (exec_target): New class.
2569 (exec_ops): Now an exec_target.
2570 (exec_open, exec_close_1, exec_get_section_table)
2571 (exec_xfer_partial, exec_files_info, exec_has_memory)
2572 (exec_make_note_section): Refactor as exec_target methods.
2573 (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
2574 Delete.
2575 (exec_target::find_memory_regions): New.
2576 (_initialize_exec): Don't call init_exec_ops.
2577 * gdbcore.h (exec_file_clear): Delete.
2578
2579 * corefile.c (core_target): Delete.
2580 (core_file_command): Adjust.
2581 * corelow.c (core_target): New class.
2582 (the_core_target): New.
2583 (core_close): Remove target_ops parameter.
2584 (core_close_cleanup): Adjust.
2585 (core_target::close): New.
2586 (core_open, core_detach, get_core_registers, core_files_info)
2587 (core_xfer_partial, core_thread_alive, core_read_description)
2588 (core_pid_to_str, core_thread_name, core_has_memory)
2589 (core_has_stack, core_has_registers, core_info_proc): Rework as
2590 core_target methods.
2591 (ignore, core_remove_breakpoint, init_core_ops): Delete.
2592 (_initialize_corelow): Initialize the_core_target.
2593 * gdbcore.h (core_target): Delete.
2594 (the_core_target): New.
2595
2596 * ctf.c: (ctf_target): New class.
2597 (ctf_ops): Now a ctf_target.
2598 (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
2599 (ctf_xfer_partial, ctf_get_trace_state_variable_value)
2600 (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
2601 methods.
2602 (init_ctf_ops): Delete.
2603 (_initialize_ctf): Don't call it.
2604 * tracefile-tfile.c (tfile_target): New class.
2605 (tfile_ops): Now a tfile_target.
2606 (tfile_open, tfile_close, tfile_files_info)
2607 (tfile_get_tracepoint_status, tfile_trace_find)
2608 (tfile_fetch_registers, tfile_xfer_partial)
2609 (tfile_get_trace_state_variable_value, tfile_traceframe_info):
2610 Refactor as tfile_target methods.
2611 (tfile_xfer_partial_features): Remove target_ops parameter.
2612 (init_tfile_ops): Delete.
2613 (_initialize_tracefile_tfile): Don't call it.
2614 * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
2615 (tracefile_has_stack, tracefile_has_registers)
2616 (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
2617 tracefile_target methods.
2618 (init_tracefile_ops): Delete.
2619 (tracefile_target::tracefile_target): New.
2620 * tracefile.h: Include "target.h".
2621 (tracefile_target): New class.
2622 (init_tracefile_ops): Delete.
2623
2624 * spu-multiarch.c (spu_multiarch_target): New class.
2625 (spu_ops): Now a spu_multiarch_target.
2626 (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
2627 (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
2628 (spu_search_memory, spu_mourn_inferior): Refactor as
2629 spu_multiarch_target methods.
2630 (init_spu_ops): Delete.
2631 (_initialize_spu_multiarch): Remove references to init_spu_ops,
2632 complete_target_initialization.
2633
2634 * ravenscar-thread.c (ravenscar_thread_target): New class.
2635 (ravenscar_ops): Now a ravenscar_thread_target.
2636 (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
2637 (ravenscar_thread_alive, ravenscar_pid_to_str)
2638 (ravenscar_fetch_registers, ravenscar_store_registers)
2639 (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
2640 (ravenscar_stopped_by_hw_breakpoint)
2641 (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
2642 (ravenscar_mourn_inferior, ravenscar_core_of_thread)
2643 (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
2644 methods.
2645 (init_ravenscar_thread_ops): Delete.
2646 (_initialize_ravenscar): Remove references to
2647 init_ravenscar_thread_ops and complete_target_initialization.
2648
2649 * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
2650 (bsd_uthread_target): New class.
2651 (bsd_uthread_ops): Now a bsd_uthread_target.
2652 (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
2653 (bsd_uthread_close, bsd_uthread_mourn_inferior)
2654 (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
2655 (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
2656 (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
2657 (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
2658 (bsd_uthread_target): Delete function.
2659 (_initialize_bsd_uthread): Remove reference to
2660 complete_target_initialization.
2661
2662 * bfd-target.c (target_bfd_data): Delete. Fields folded into ...
2663 (target_bfd): ... this new class.
2664 (target_bfd_xfer_partial, target_bfd_get_section_table)
2665 (target_bfd_close): Refactor as target_bfd methods.
2666 (target_bfd::~target_bfd): New.
2667 (target_bfd_reopen): Adjust.
2668 (target_bfd::close): New.
2669
2670 * record-btrace.c (record_btrace_target): New class.
2671 (record_btrace_ops): Now a record_btrace_target.
2672 (record_btrace_open, record_btrace_stop_recording)
2673 (record_btrace_disconnect, record_btrace_close)
2674 (record_btrace_async, record_btrace_info)
2675 (record_btrace_insn_history, record_btrace_insn_history_range)
2676 (record_btrace_insn_history_from, record_btrace_call_history)
2677 (record_btrace_call_history_range)
2678 (record_btrace_call_history_from, record_btrace_record_method)
2679 (record_btrace_is_replaying, record_btrace_will_replay)
2680 (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
2681 (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
2682 (record_btrace_store_registers, record_btrace_prepare_to_store)
2683 (record_btrace_to_get_unwinder)
2684 (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
2685 (record_btrace_commit_resume, record_btrace_wait)
2686 (record_btrace_stop, record_btrace_can_execute_reverse)
2687 (record_btrace_stopped_by_sw_breakpoint)
2688 (record_btrace_supports_stopped_by_sw_breakpoint)
2689 (record_btrace_stopped_by_hw_breakpoint)
2690 (record_btrace_supports_stopped_by_hw_breakpoint)
2691 (record_btrace_update_thread_list, record_btrace_thread_alive)
2692 (record_btrace_goto_begin, record_btrace_goto_end)
2693 (record_btrace_goto, record_btrace_stop_replaying_all)
2694 (record_btrace_execution_direction)
2695 (record_btrace_prepare_to_generate_core)
2696 (record_btrace_done_generating_core): Refactor as
2697 record_btrace_target methods.
2698 (init_record_btrace_ops): Delete.
2699 (_initialize_record_btrace): Remove reference to
2700 init_record_btrace_ops.
2701 * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
2702 the execution_direction global.
2703 (record_full_base_target, record_full_target)
2704 (record_full_core_target): New classes.
2705 (record_full_ops): Now a record_full_target.
2706 (record_full_core_ops): Now a record_full_core_target.
2707 (record_full_target::detach, record_full_target::disconnect)
2708 (record_full_core_target::disconnect)
2709 (record_full_target::mourn_inferior, record_full_target::kill):
2710 New.
2711 (record_full_open, record_full_close, record_full_async): Refactor
2712 as methods of the record_full_base_target class.
2713 (record_full_resume, record_full_commit_resume): Refactor
2714 as methods of the record_full_target class.
2715 (record_full_wait, record_full_stopped_by_watchpoint)
2716 (record_full_stopped_data_address)
2717 (record_full_stopped_by_sw_breakpoint)
2718 (record_full_supports_stopped_by_sw_breakpoint)
2719 (record_full_stopped_by_hw_breakpoint)
2720 (record_full_supports_stopped_by_hw_breakpoint): Refactor as
2721 methods of the record_full_base_target class.
2722 (record_full_store_registers, record_full_xfer_partial)
2723 (record_full_insert_breakpoint, record_full_remove_breakpoint):
2724 Refactor as methods of the record_full_target class.
2725 (record_full_can_execute_reverse, record_full_get_bookmark)
2726 (record_full_goto_bookmark, record_full_execution_direction)
2727 (record_full_record_method, record_full_info, record_full_delete)
2728 (record_full_is_replaying, record_full_will_replay)
2729 (record_full_goto_begin, record_full_goto_end, record_full_goto)
2730 (record_full_stop_replaying): Refactor as methods of the
2731 record_full_base_target class.
2732 (record_full_core_resume, record_full_core_kill)
2733 (record_full_core_fetch_registers)
2734 (record_full_core_prepare_to_store)
2735 (record_full_core_store_registers, record_full_core_xfer_partial)
2736 (record_full_core_insert_breakpoint)
2737 (record_full_core_remove_breakpoint)
2738 (record_full_core_has_execution): Refactor
2739 as methods of the record_full_core_target class.
2740 (record_full_base_target::supports_delete_record): New.
2741 (init_record_full_ops): Delete.
2742 (init_record_full_core_ops): Delete.
2743 (record_full_save): Refactor as method of the
2744 record_full_base_target class.
2745 (_initialize_record_full): Remove references to
2746 init_record_full_ops and init_record_full_core_ops.
2747
2748 * remote.c (remote_target, extended_remote_target): New classes.
2749 (remote_ops): Now a remote_target.
2750 (extended_remote_ops): Now an extended_remote_target.
2751 (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
2752 (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
2753 (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
2754 (remote_pass_signals, remote_set_syscall_catchpoint)
2755 (remote_program_signals, )
2756 (remote_thread_always_alive): Remove target_ops parameter.
2757 (remote_thread_alive, remote_thread_name)
2758 (remote_update_thread_list, remote_threads_extra_info)
2759 (remote_static_tracepoint_marker_at)
2760 (remote_static_tracepoint_markers_by_strid)
2761 (remote_get_ada_task_ptid, remote_close, remote_start_remote)
2762 (remote_open): Refactor as methods of remote_target.
2763 (extended_remote_open, extended_remote_detach)
2764 (extended_remote_attach, extended_remote_post_attach):
2765 (extended_remote_supports_disable_randomization)
2766 (extended_remote_create_inferior): : Refactor as method of
2767 extended_remote_target.
2768 (remote_set_permissions, remote_open_1, remote_detach)
2769 (remote_follow_fork, remote_follow_exec, remote_disconnect)
2770 (remote_resume, remote_commit_resume, remote_stop)
2771 (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
2772 (remote_terminal_ours, remote_wait, remote_fetch_registers)
2773 (remote_prepare_to_store, remote_store_registers)
2774 (remote_flash_erase, remote_flash_done, remote_files_info)
2775 (remote_kill, remote_mourn, remote_insert_breakpoint)
2776 (remote_remove_breakpoint, remote_insert_watchpoint)
2777 (remote_watchpoint_addr_within_range)
2778 (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
2779 (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
2780 (remote_supports_stopped_by_sw_breakpoint)
2781 (remote_stopped_by_hw_breakpoint)
2782 (remote_supports_stopped_by_hw_breakpoint)
2783 (remote_stopped_by_watchpoint, remote_stopped_data_address)
2784 (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
2785 (remote_verify_memory): Refactor as methods of remote_target.
2786 (remote_write_qxfer, remote_read_qxfer): Remove target_ops
2787 parameter.
2788 (remote_xfer_partial, remote_get_memory_xfer_limit)
2789 (remote_search_memory, remote_rcmd, remote_memory_map)
2790 (remote_pid_to_str, remote_get_thread_local_address)
2791 (remote_get_tib_address, remote_read_description): Refactor as
2792 methods of remote_target.
2793 (remote_target::fileio_open, remote_target::fileio_pwrite)
2794 (remote_target::fileio_pread, remote_target::fileio_close): New.
2795 (remote_hostio_readlink, remote_hostio_fstat)
2796 (remote_filesystem_is_local, remote_can_execute_reverse)
2797 (remote_supports_non_stop, remote_supports_disable_randomization)
2798 (remote_supports_multi_process, remote_supports_cond_breakpoints)
2799 (remote_supports_enable_disable_tracepoint)
2800 (remote_supports_string_tracing)
2801 (remote_can_run_breakpoint_commands, remote_trace_init)
2802 (remote_download_tracepoint, remote_can_download_tracepoint)
2803 (remote_download_trace_state_variable, remote_enable_tracepoint)
2804 (remote_disable_tracepoint, remote_trace_set_readonly_regions)
2805 (remote_trace_start, remote_get_trace_status)
2806 (remote_get_tracepoint_status, remote_trace_stop)
2807 (remote_trace_find, remote_get_trace_state_variable_value)
2808 (remote_save_trace_data, remote_get_raw_trace_data)
2809 (remote_set_disconnected_tracing, remote_core_of_thread)
2810 (remote_set_circular_trace_buffer, remote_traceframe_info)
2811 (remote_get_min_fast_tracepoint_insn_len)
2812 (remote_set_trace_buffer_size, remote_set_trace_notes)
2813 (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
2814 (remote_disable_btrace, remote_teardown_btrace)
2815 (remote_read_btrace, remote_btrace_conf)
2816 (remote_augmented_libraries_svr4_read, remote_load)
2817 (remote_pid_to_exec_file, remote_can_do_single_step)
2818 (remote_execution_direction, remote_thread_handle_to_thread_info):
2819 Refactor as methods of remote_target.
2820 (init_remote_ops, init_extended_remote_ops): Delete.
2821 (remote_can_async_p, remote_is_async_p, remote_async)
2822 (remote_thread_events, remote_upload_tracepoints)
2823 (remote_upload_trace_state_variables): Refactor as methods of
2824 remote_target.
2825 (_initialize_remote): Remove references to init_remote_ops and
2826 init_extended_remote_ops.
2827
2828 * remote-sim.c (gdbsim_target): New class.
2829 (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
2830 (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
2831 (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
2832 (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
2833 (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
2834 (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
2835 Refactor as methods of gdbsim_target.
2836 (gdbsim_ops): Now a gdbsim_target.
2837 (init_gdbsim_ops): Delete.
2838 (gdbsim_cntrl_c): Adjust.
2839 (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
2840
2841 * amd64-linux-nat.c (amd64_linux_nat_target): New class.
2842 (the_amd64_linux_nat_target): New.
2843 (amd64_linux_fetch_inferior_registers)
2844 (amd64_linux_store_inferior_registers): Refactor as methods of
2845 amd64_linux_nat_target.
2846 (_initialize_amd64_linux_nat): Adjust. Set linux_target.
2847 * i386-linux-nat.c: Don't include "linux-nat.h".
2848 (i386_linux_nat_target): New class.
2849 (the_i386_linux_nat_target): New.
2850 (i386_linux_fetch_inferior_registers)
2851 (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
2852 as methods of i386_linux_nat_target.
2853 (_initialize_i386_linux_nat): Adjust. Set linux_target.
2854 * inf-child.c (inf_child_ops): Delete.
2855 (inf_child_fetch_inferior_registers)
2856 (inf_child_store_inferior_registers): Delete.
2857 (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
2858 methods of inf_child_target.
2859 (inf_child_target::supports_terminal_ours)
2860 (inf_child_target::terminal_init)
2861 (inf_child_target::terminal_inferior)
2862 (inf_child_target::terminal_ours_for_output)
2863 (inf_child_target::terminal_ours, inf_child_target::interrupt)
2864 (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
2865 New.
2866 (inf_child_open, inf_child_disconnect, inf_child_close)
2867 (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
2868 (inf_child_post_startup_inferior, inf_child_can_run)
2869 (inf_child_pid_to_exec_file): Refactor as methods of
2870 inf_child_target.
2871 (inf_child_follow_fork): Delete.
2872 (inf_child_target::can_create_inferior)
2873 (inf_child_target::can_attach): New.
2874 (inf_child_target::has_all_memory, inf_child_target::has_memory)
2875 (inf_child_target::has_stack, inf_child_target::has_registers)
2876 (inf_child_target::has_execution): New.
2877 (inf_child_fileio_open, inf_child_fileio_pwrite)
2878 (inf_child_fileio_pread, inf_child_fileio_fstat)
2879 (inf_child_fileio_close, inf_child_fileio_unlink)
2880 (inf_child_fileio_readlink, inf_child_use_agent)
2881 (inf_child_can_use_agent): Refactor as methods of
2882 inf_child_target.
2883 (return_zero, inf_child_target): Delete.
2884 (inf_child_target::inf_child_target): New.
2885 * inf-child.h: Include "target.h".
2886 (inf_child_target): Delete function prototype.
2887 (inf_child_target): New class.
2888 (inf_child_open_target, inf_child_mourn_inferior)
2889 (inf_child_maybe_unpush_target): Delete.
2890 * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
2891 (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
2892 (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
2893 (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
2894 (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
2895 (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
2896 (inf_ptrace_wait, inf_ptrace_xfer_partial)
2897 (inf_ptrace_thread_alive, inf_ptrace_files_info)
2898 (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
2899 methods of inf_ptrace_target.
2900 (inf_ptrace_target): Delete function.
2901 * inf-ptrace.h: Include "inf-child.h".
2902 (inf_ptrace_target): Delete function declaration.
2903 (inf_ptrace_target): New class.
2904 (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
2905 * linux-nat.c (linux_target): New.
2906 (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
2907 (linux_nat_target::~linux_nat_target): New.
2908 (linux_child_post_attach, linux_child_post_startup_inferior)
2909 (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
2910 (linux_child_remove_fork_catchpoint)
2911 (linux_child_insert_vfork_catchpoint)
2912 (linux_child_remove_vfork_catchpoint)
2913 (linux_child_insert_exec_catchpoint)
2914 (linux_child_remove_exec_catchpoint)
2915 (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
2916 (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
2917 (linux_nat_resume, linux_nat_stopped_by_watchpoint)
2918 (linux_nat_stopped_data_address)
2919 (linux_nat_stopped_by_sw_breakpoint)
2920 (linux_nat_supports_stopped_by_sw_breakpoint)
2921 (linux_nat_stopped_by_hw_breakpoint)
2922 (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
2923 (linux_nat_kill, linux_nat_mourn_inferior)
2924 (linux_nat_xfer_partial, linux_nat_thread_alive)
2925 (linux_nat_update_thread_list, linux_nat_pid_to_str)
2926 (linux_nat_thread_name, linux_child_pid_to_exec_file)
2927 (linux_child_static_tracepoint_markers_by_strid)
2928 (linux_nat_is_async_p, linux_nat_can_async_p)
2929 (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
2930 (linux_nat_supports_multi_process)
2931 (linux_nat_supports_disable_randomization, linux_nat_async)
2932 (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
2933 (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
2934 (linux_nat_fileio_open, linux_nat_fileio_readlink)
2935 (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
2936 methods of linux_nat_target.
2937 (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
2938 (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
2939 parameter.
2940 (check_stopped_by_watchpoint): Adjust.
2941 (linux_xfer_partial): Delete.
2942 (linux_target_install_ops, linux_target, linux_nat_add_target):
2943 Delete.
2944 (linux_nat_target::linux_nat_target): New.
2945 * linux-nat.h: Include "inf-ptrace.h".
2946 (linux_nat_target): New.
2947 (linux_target, linux_target_install_ops, linux_nat_add_target):
2948 Delete function declarations.
2949 (linux_target): Declare global.
2950 * linux-thread-db.c (thread_db_target): New.
2951 (thread_db_target::thread_db_target): New.
2952 (thread_db_ops): Delete.
2953 (the_thread_db_target): New.
2954 (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
2955 (thread_db_update_thread_list, thread_db_pid_to_str)
2956 (thread_db_extra_thread_info)
2957 (thread_db_thread_handle_to_thread_info)
2958 (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
2959 (thread_db_resume): Refactor as methods of thread_db_target.
2960 (init_thread_db_ops): Delete.
2961 (_initialize_thread_db): Remove reference to init_thread_db_ops.
2962 * x86-linux-nat.c: Don't include "linux-nat.h".
2963 (super_post_startup_inferior): Delete.
2964 (x86_linux_nat_target::~x86_linux_nat_target): New.
2965 (x86_linux_child_post_startup_inferior)
2966 (x86_linux_read_description, x86_linux_enable_btrace)
2967 (x86_linux_disable_btrace, x86_linux_teardown_btrace)
2968 (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
2969 methods of x86_linux_nat_target.
2970 (x86_linux_create_target): Delete. Bits folded ...
2971 (x86_linux_add_target): ... here. Now takes a linux_nat_target
2972 pointer.
2973 * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
2974 (x86_linux_nat_target): New class.
2975 (x86_linux_create_target): Delete.
2976 (x86_linux_add_target): Now takes a linux_nat_target pointer.
2977 * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
2978 (x86_region_ok_for_watchpoint, x86_stopped_data_address)
2979 (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
2980 (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
2981 (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
2982 make extern.
2983 (x86_use_watchpoints): Delete.
2984 * x86-nat.h: Include "breakpoint.h" and "target.h".
2985 (x86_use_watchpoints): Delete.
2986 (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
2987 (x86_stopped_by_watchpoint, x86_stopped_data_address)
2988 (x86_insert_watchpoint, x86_remove_watchpoint)
2989 (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
2990 (x86_stopped_by_hw_breakpoint): New declarations.
2991 (x86_nat_target): New template class.
2992
2993 * ppc-linux-nat.c (ppc_linux_nat_target): New class.
2994 (the_ppc_linux_nat_target): New.
2995 (ppc_linux_fetch_inferior_registers)
2996 (ppc_linux_can_use_hw_breakpoint)
2997 (ppc_linux_region_ok_for_hw_watchpoint)
2998 (ppc_linux_ranged_break_num_registers)
2999 (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
3000 (ppc_linux_insert_mask_watchpoint)
3001 (ppc_linux_remove_mask_watchpoint)
3002 (ppc_linux_can_accel_watchpoint_condition)
3003 (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
3004 (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
3005 (ppc_linux_watchpoint_addr_within_range)
3006 (ppc_linux_masked_watch_num_registers)
3007 (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
3008 (ppc_linux_read_description): Refactor as methods of
3009 ppc_linux_nat_target.
3010 (_initialize_ppc_linux_nat): Adjust. Set linux_target.
3011
3012 * procfs.c (procfs_xfer_partial): Delete forward declaration.
3013 (procfs_target): New class.
3014 (the_procfs_target): New.
3015 (procfs_target): Delete function.
3016 (procfs_auxv_parse, procfs_attach, procfs_detach)
3017 (procfs_fetch_registers, procfs_store_registers, procfs_wait)
3018 (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
3019 (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
3020 (procfs_create_inferior, procfs_update_thread_list)
3021 (procfs_thread_alive, procfs_pid_to_str)
3022 (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
3023 (procfs_stopped_data_address, procfs_insert_watchpoint)
3024 (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
3025 (proc_find_memory_regions, procfs_info_proc)
3026 (procfs_make_note_section): Refactor as methods of procfs_target.
3027 (_initialize_procfs): Adjust.
3028 * sol-thread.c (sol_thread_target): New class.
3029 (sol_thread_ops): Now a sol_thread_target.
3030 (sol_thread_detach, sol_thread_resume, sol_thread_wait)
3031 (sol_thread_fetch_registers, sol_thread_store_registers)
3032 (sol_thread_xfer_partial, sol_thread_mourn_inferior)
3033 (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
3034 (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
3035 (init_sol_thread_ops): Delete.
3036 (_initialize_sol_thread): Adjust. Remove references to
3037 init_sol_thread_ops and complete_target_initialization.
3038
3039 * windows-nat.c (windows_nat_target): New class.
3040 (windows_fetch_inferior_registers)
3041 (windows_store_inferior_registers, windows_resume, windows_wait)
3042 (windows_attach, windows_detach, windows_pid_to_exec_file)
3043 (windows_files_info, windows_create_inferior)
3044 (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
3045 (windows_close, windows_pid_to_str, windows_xfer_partial)
3046 (windows_get_tib_address, windows_get_ada_task_ptid)
3047 (windows_thread_name, windows_thread_alive): Refactor as
3048 windows_nat_target methods.
3049 (do_initial_windows_stuff): Adjust.
3050 (windows_target): Delete function.
3051 (_initialize_windows_nat): Adjust.
3052
3053 * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
3054 (darwin_mourn_inferior, darwin_kill_inferior)
3055 (darwin_create_inferior, darwin_attach, darwin_detach)
3056 (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
3057 (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
3058 (darwin_supports_multi_process): Refactor as darwin_nat_target
3059 methods.
3060 (darwin_resume_to, darwin_files_info): Delete.
3061 (_initialize_darwin_inferior): Rename to ...
3062 (_initialize_darwin_nat): ... this. Adjust to C++ification.
3063 * darwin-nat.h: Include "inf-child.h".
3064 (darwin_nat_target): New class.
3065 (darwin_complete_target): Delete.
3066 * i386-darwin-nat.c (i386_darwin_nat_target): New class.
3067 (darwin_target): New.
3068 (i386_darwin_fetch_inferior_registers)
3069 (i386_darwin_store_inferior_registers): Refactor as methods of
3070 darwin_nat_target.
3071 (darwin_complete_target): Delete, with ...
3072 (_initialize_i386_darwin_nat): ... bits factored out here.
3073
3074 * alpha-linux-nat.c (alpha_linux_nat_target): New class.
3075 (the_alpha_linux_nat_target): New.
3076 (alpha_linux_register_u_offset): Refactor as
3077 alpha_linux_nat_target method.
3078 (_initialize_alpha_linux_nat): Adjust.
3079 * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
3080 (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
3081 (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
3082 methods of linux_nat_trad_target.
3083 (linux_trad_target): Delete.
3084 * linux-nat-trad.h (linux_trad_target): Delete function.
3085 (linux_nat_trad_target): New class.
3086 * mips-linux-nat.c (mips_linux_nat_target): New class.
3087 (super_fetch_registers, super_store_registers, super_close):
3088 Delete.
3089 (the_mips_linux_nat_target): New.
3090 (mips64_linux_regsets_fetch_registers)
3091 (mips64_linux_regsets_store_registers)
3092 (mips64_linux_fetch_registers, mips64_linux_store_registers)
3093 (mips_linux_register_u_offset, mips_linux_read_description)
3094 (mips_linux_can_use_hw_breakpoint)
3095 (mips_linux_stopped_by_watchpoint)
3096 (mips_linux_stopped_data_address)
3097 (mips_linux_region_ok_for_hw_watchpoint)
3098 (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
3099 (mips_linux_close): Refactor as methods of mips_linux_nat.
3100 (_initialize_mips_linux_nat): Adjust to C++ification.
3101
3102 * aix-thread.c (aix_thread_target): New class.
3103 (aix_thread_ops): Now an aix_thread_target.
3104 (aix_thread_detach, aix_thread_resume, aix_thread_wait)
3105 (aix_thread_fetch_registers, aix_thread_store_registers)
3106 (aix_thread_xfer_partial, aix_thread_mourn_inferior)
3107 (aix_thread_thread_alive, aix_thread_pid_to_str)
3108 (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
3109 Refactor as methods of aix_thread_target.
3110 (init_aix_thread_ops): Delete.
3111 (_initialize_aix_thread): Remove references to init_aix_thread_ops
3112 and complete_target_initialization.
3113 * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
3114 (rs6000_nat_target): New class.
3115 (the_rs6000_nat_target): New.
3116 (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
3117 (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
3118 (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
3119 (super_create_inferior): Delete.
3120 (_initialize_rs6000_nat): Adjust to C++ification.
3121
3122 * arm-linux-nat.c (arm_linux_nat_target): New class.
3123 (the_arm_linux_nat_target): New.
3124 (arm_linux_fetch_inferior_registers)
3125 (arm_linux_store_inferior_registers, arm_linux_read_description)
3126 (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
3127 (arm_linux_remove_hw_breakpoint)
3128 (arm_linux_region_ok_for_hw_watchpoint)
3129 (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
3130 (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
3131 (arm_linux_watchpoint_addr_within_range): Refactor as methods of
3132 arm_linux_nat_target.
3133 (_initialize_arm_linux_nat): Adjust to C++ification.
3134
3135 * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
3136 (the_aarch64_linux_nat_target): New.
3137 (aarch64_linux_fetch_inferior_registers)
3138 (aarch64_linux_store_inferior_registers)
3139 (aarch64_linux_child_post_startup_inferior)
3140 (aarch64_linux_read_description)
3141 (aarch64_linux_can_use_hw_breakpoint)
3142 (aarch64_linux_insert_hw_breakpoint)
3143 (aarch64_linux_remove_hw_breakpoint)
3144 (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
3145 (aarch64_linux_region_ok_for_hw_watchpoint)
3146 (aarch64_linux_stopped_data_address)
3147 (aarch64_linux_stopped_by_watchpoint)
3148 (aarch64_linux_watchpoint_addr_within_range)
3149 (aarch64_linux_can_do_single_step): Refactor as methods of
3150 aarch64_linux_nat_target.
3151 (super_post_startup_inferior): Delete.
3152 (_initialize_aarch64_linux_nat): Adjust to C++ification.
3153
3154 * hppa-linux-nat.c (hppa_linux_nat_target): New class.
3155 (the_hppa_linux_nat_target): New.
3156 (hppa_linux_fetch_inferior_registers)
3157 (hppa_linux_store_inferior_registers): Refactor as methods of
3158 hppa_linux_nat_target.
3159 (_initialize_hppa_linux_nat): Adjust to C++ification.
3160
3161 * ia64-linux-nat.c (ia64_linux_nat_target): New class.
3162 (the_ia64_linux_nat_target): New.
3163 (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
3164 (ia64_linux_stopped_data_address)
3165 (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
3166 (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
3167 ia64_linux_nat_target methods.
3168 (super_xfer_partial): Delete.
3169 (_initialize_ia64_linux_nat): Adjust to C++ification.
3170
3171 * m32r-linux-nat.c (m32r_linux_nat_target): New class.
3172 (the_m32r_linux_nat_target): New.
3173 (m32r_linux_fetch_inferior_registers)
3174 (m32r_linux_store_inferior_registers): Refactor as
3175 m32r_linux_nat_target methods.
3176 (_initialize_m32r_linux_nat): Adjust to C++ification.
3177
3178 * m68k-linux-nat.c (m68k_linux_nat_target): New class.
3179 (the_m68k_linux_nat_target): New.
3180 (m68k_linux_fetch_inferior_registers)
3181 (m68k_linux_store_inferior_registers): Refactor as
3182 m68k_linux_nat_target methods.
3183 (_initialize_m68k_linux_nat): Adjust to C++ification.
3184
3185 * s390-linux-nat.c (s390_linux_nat_target): New class.
3186 (the_s390_linux_nat_target): New.
3187 (s390_linux_fetch_inferior_registers)
3188 (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
3189 (s390_insert_watchpoint, s390_remove_watchpoint)
3190 (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
3191 (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
3192 (s390_auxv_parse, s390_read_description): Refactor as methods of
3193 s390_linux_nat_target.
3194 (_initialize_s390_nat): Adjust to C++ification.
3195
3196 * sparc-linux-nat.c (sparc_linux_nat_target): New class.
3197 (the_sparc_linux_nat_target): New.
3198 (_initialize_sparc_linux_nat): Adjust to C++ification.
3199 * sparc-nat.c (sparc_fetch_inferior_registers)
3200 (sparc_store_inferior_registers): Remove target_ops parameter.
3201 * sparc-nat.h (sparc_fetch_inferior_registers)
3202 (sparc_store_inferior_registers): Remove target_ops parameter.
3203 * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
3204 (the_sparc64_linux_nat_target): New.
3205 (_initialize_sparc64_linux_nat): Adjust to C++ification.
3206
3207 * spu-linux-nat.c (spu_linux_nat_target): New class.
3208 (the_spu_linux_nat_target): New.
3209 (spu_child_post_startup_inferior, spu_child_post_attach)
3210 (spu_child_wait, spu_fetch_inferior_registers)
3211 (spu_store_inferior_registers, spu_xfer_partial)
3212 (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
3213 methods.
3214 (_initialize_spu_nat): Adjust to C++ification.
3215
3216 * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
3217 (the_tilegx_linux_nat_target): New.
3218 (fetch_inferior_registers, store_inferior_registers):
3219 Refactor as methods.
3220 (_initialize_tile_linux_nat): Adjust to C++ification.
3221
3222 * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
3223 (the_xtensa_linux_nat_target): New.
3224 (xtensa_linux_fetch_inferior_registers)
3225 (xtensa_linux_store_inferior_registers): Refactor as
3226 xtensa_linux_nat_target methods.
3227 (_initialize_xtensa_linux_nat): Adjust to C++ification.
3228
3229 * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
3230 (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
3231 (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
3232 (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
3233 (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
3234 (fbsd_stopped_by_sw_breakpoint)
3235 (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
3236 (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
3237 (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
3238 (fbsd_post_startup_inferior, fbsd_post_attach)
3239 (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
3240 (fbsd_set_syscall_catchpoint)
3241 (super_xfer_partial, super_resume, super_wait)
3242 (fbsd_supports_stopped_by_hw_breakpoint): Delete.
3243 (fbsd_handle_debug_trap): Remove target_ops parameter.
3244 (fbsd_nat_add_target): Delete.
3245 * fbsd-nat.h: Include "inf-ptrace.h".
3246 (fbsd_nat_add_target): Delete.
3247 (USE_SIGTRAP_SIGINFO): Define.
3248 (fbsd_nat_target): New class.
3249
3250 * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
3251 (amd64bsd_store_inferior_registers): Remove target_ops parameter.
3252 (amd64bsd_target): Delete.
3253 * amd64-bsd-nat.h: New file.
3254 * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
3255 "x86-bsd-nat.h".
3256 (amd64_fbsd_nat_target): New class.
3257 (the_amd64_fbsd_nat_target): New.
3258 (amd64fbsd_read_description): Refactor as method of
3259 amd64_fbsd_nat_target.
3260 (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
3261 (_initialize_amd64fbsd_nat): Adjust to C++ification.
3262 * amd64-nat.h (amd64bsd_target): Delete function declaration.
3263 * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
3264 (i386bsd_store_inferior_registers): Remove target_ops parameter.
3265 (i386bsd_target): Delete.
3266 * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
3267 (i386bsd_fetch_inferior_registers)
3268 (i386bsd_store_inferior_registers): Declare.
3269 (i386_bsd_nat_target): New class.
3270 * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
3271 (the_i386_fbsd_nat_target): New.
3272 (i386fbsd_resume, i386fbsd_read_description): Refactor as
3273 i386_fbsd_nat_target methods.
3274 (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
3275 (_initialize_i386fbsd_nat): Adjust to C++ification.
3276 * x86-bsd-nat.c (super_mourn_inferior): Delete.
3277 (x86bsd_mourn_inferior, x86bsd_target): Delete.
3278 (_initialize_x86_bsd_nat): Adjust to C++ification.
3279 * x86-bsd-nat.h: Include "x86-nat.h".
3280 (x86bsd_target): Delete declaration.
3281 (x86bsd_nat_target): New class.
3282
3283 * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
3284 (the_aarch64_fbsd_nat_target): New.
3285 (aarch64_fbsd_fetch_inferior_registers)
3286 (aarch64_fbsd_store_inferior_registers): Refactor as methods of
3287 aarch64_fbsd_nat_target.
3288 (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
3289 * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
3290 (the_alpha_bsd_nat_target): New.
3291 (alphabsd_fetch_inferior_registers)
3292 (alphabsd_store_inferior_registers): Refactor as
3293 alpha_bsd_nat_target methods.
3294 (_initialize_alphabsd_nat): Refactor as methods of
3295 alpha_bsd_nat_target.
3296 * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
3297 (the_amd64_nbsd_nat_target): New.
3298 (_initialize_amd64nbsd_nat): Adjust to C++ification.
3299 * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
3300 (the_amd64_obsd_nat_target): New.
3301 (_initialize_amd64obsd_nat): Adjust to C++ification.
3302 * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
3303 (the_arm_fbsd_nat_target): New.
3304 (arm_fbsd_fetch_inferior_registers)
3305 (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
3306 (_initialize_arm_fbsd_nat): Refactor as methods of
3307 arm_fbsd_nat_target.
3308 (_initialize_arm_fbsd_nat): Adjust to C++ification.
3309 * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
3310 (the_arm_netbsd_nat_target): New.
3311 (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
3312 arm_netbsd_nat_target.
3313 (_initialize_arm_netbsd_nat): Adjust to C++ification.
3314 * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
3315 (the_hppa_nbsd_nat_target): New.
3316 (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
3317 hppa_nbsd_nat_target methods.
3318 (_initialize_hppanbsd_nat): Adjust to C++ification.
3319 * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
3320 (the_hppa_obsd_nat_target): New.
3321 (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
3322 methods of hppa_obsd_nat_target.
3323 (_initialize_hppaobsd_nat): Adjust to C++ification. Use
3324 add_target.
3325 * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
3326 (_initialize_i386nbsd_nat): Adjust to C++ification. Use
3327 add_target.
3328 * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
3329 (_initialize_i386obsd_nat): Use add_target.
3330 * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
3331 (the_m68k_bsd_nat_target): New.
3332 (m68kbsd_fetch_inferior_registers)
3333 (m68kbsd_store_inferior_registers): Refactor as methods of
3334 m68k_bsd_nat_target.
3335 (_initialize_m68kbsd_nat): Adjust to C++ification.
3336 * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
3337 (the_mips_fbsd_nat_target): New.
3338 (mips_fbsd_fetch_inferior_registers)
3339 (mips_fbsd_store_inferior_registers): Refactor as methods of
3340 mips_fbsd_nat_target.
3341 (_initialize_mips_fbsd_nat): Adjust to C++ification. Use
3342 add_target.
3343 * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
3344 (the_mips_nbsd_nat_target): New.
3345 (mipsnbsd_fetch_inferior_registers)
3346 (mipsnbsd_store_inferior_registers): Refactor as methods of
3347 mips_nbsd_nat_target.
3348 (_initialize_mipsnbsd_nat): Adjust to C++ification.
3349 * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
3350 (the_mips64_obsd_nat_target): New.
3351 (mips64obsd_fetch_inferior_registers)
3352 (mips64obsd_store_inferior_registers): Refactor as methods of
3353 mips64_obsd_nat_target.
3354 (_initialize_mips64obsd_nat): Adjust to C++ification. Use
3355 add_target.
3356 * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
3357 nbsd_nat_target.
3358 * nbsd-nat.h: Include "inf-ptrace.h".
3359 (nbsd_nat_target): New class.
3360 * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
3361 (obsd_wait): Refactor as methods of obsd_nat_target.
3362 (obsd_add_target): Delete.
3363 * obsd-nat.h: Include "inf-ptrace.h".
3364 (obsd_nat_target): New class.
3365 * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
3366 (the_ppc_fbsd_nat_target): New.
3367 (ppcfbsd_fetch_inferior_registers)
3368 (ppcfbsd_store_inferior_registers): Refactor as methods of
3369 ppc_fbsd_nat_target.
3370 (_initialize_ppcfbsd_nat): Adjust to C++ification. Use
3371 add_target.
3372 * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
3373 (the_ppc_nbsd_nat_target): New.
3374 (ppcnbsd_fetch_inferior_registers)
3375 (ppcnbsd_store_inferior_registers): Refactor as methods of
3376 ppc_nbsd_nat_target.
3377 (_initialize_ppcnbsd_nat): Adjust to C++ification.
3378 * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
3379 (the_ppc_obsd_nat_target): New.
3380 (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
3381 methods of ppc_obsd_nat_target.
3382 (_initialize_ppcobsd_nat): Adjust to C++ification. Use
3383 add_target.
3384 * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
3385 (the_sh_nbsd_nat_target): New.
3386 (shnbsd_fetch_inferior_registers)
3387 (shnbsd_store_inferior_registers): Refactor as methods of
3388 sh_nbsd_nat_target.
3389 (_initialize_shnbsd_nat): Adjust to C++ification.
3390 * sparc-nat.c (sparc_xfer_wcookie): Make extern.
3391 (inf_ptrace_xfer_partial): Delete.
3392 (sparc_xfer_partial, sparc_target): Delete.
3393 * sparc-nat.h (sparc_fetch_inferior_registers)
3394 (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
3395 (sparc_target): Delete function declaration.
3396 (sparc_target): New template class.
3397 * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
3398 (_initialize_sparcnbsd_nat): Adjust to C++ification.
3399 * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
3400 (_initialize_sparc64fbsd_nat): Adjust to C++ification. Use
3401 add_target.
3402 * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
3403 (_initialize_sparc64nbsd_nat): Adjust to C++ification.
3404 * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
3405 (_initialize_sparc64obsd_nat): Adjust to C++ification. Use
3406 add_target.
3407 * vax-bsd-nat.c (vax_bsd_nat_target): New class.
3408 (the_vax_bsd_nat_target): New.
3409 (vaxbsd_fetch_inferior_registers)
3410 (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
3411 methods.
3412 (_initialize_vaxbsd_nat): Adjust to C++ification.
3413
3414 * bsd-kvm.c (bsd_kvm_target): New class.
3415 (bsd_kvm_ops): Now a bsd_kvm_target.
3416 (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
3417 (bsd_kvm_files_info, bsd_kvm_fetch_registers)
3418 (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
3419 bsd_kvm_target.
3420 (bsd_kvm_return_one): Delete.
3421 (bsd_kvm_add_target): Adjust to C++ification.
3422
3423 * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
3424 (nto_procfs_target_procfs): New classes.
3425 (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
3426 (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
3427 (procfs_post_attach, procfs_wait, procfs_fetch_registers)
3428 (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
3429 (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
3430 (procfs_remove_hw_breakpoint, procfs_resume)
3431 (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
3432 (procfs_kill_inferior, procfs_store_registers)
3433 (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
3434 as methods of nto_procfs_target.
3435 (nto_procfs_ops): Now an nto_procfs_target_procfs.
3436 (nto_native_ops): Delete.
3437 (procfs_open, procfs_native_open): Delete.
3438 (nto_native_ops): Now an nto_procfs_target_native.
3439 (init_procfs_targets): Adjust to C++ification.
3440 (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
3441 (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
3442 Refactor as methods of nto_procfs_target.
3443
3444 * go32-nat.c (go32_nat_target): New class.
3445 (the_go32_nat_target): New.
3446 (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
3447 (go32_store_registers, go32_xfer_partial, go32_files_info)
3448 (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
3449 (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
3450 (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
3451 (go32_pid_to_str): Refactor as methods of go32_nat_target.
3452 (go32_target): Delete.
3453 (_initialize_go32_nat): Adjust to C++ification.
3454
3455 * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
3456 (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
3457 (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
3458 (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
3459 gnu_nat_target.
3460 (gnu_target): Delete.
3461 * gnu-nat.h (gnu_target): Delete.
3462 (gnu_nat_target): New class.
3463 * i386-gnu-nat.c (gnu_base_target): New.
3464 (i386_gnu_nat_target): New class.
3465 (the_i386_gnu_nat_target): New.
3466 (_initialize_i386gnu_nat): Adjust to C++ification.
3467
3468 2018-05-02 Pedro Alves <palves@redhat.com>
3469
3470 * bfd-target.c (target_bfd_xclose): Rename to ...
3471 (target_bfd_close): ... this.
3472 (target_bfd_reopen): Adjust.
3473 * target.c (target_close): Remove references to to_xclose.
3474 * target.h (target_ops::to_xclose): Delete.
3475 (target_ops::to_close): Update comments.
3476
3477 2018-05-02 Pedro Alves <palves@redhat.com>
3478
3479 * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
3480 "linux-nat.h".
3481 * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
3482 * inf-ptrace.c (inf_ptrace_register_u_offset)
3483 (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
3484 (inf_ptrace_store_register, inf_ptrace_store_registers)
3485 (inf_ptrace_trad_target): Move to ...
3486 * linux-nat-trad.c: ... this new file.
3487 * linux-nat-trad.h: New file.
3488 * linux-nat.c (linux_target_install_ops): Make extern.
3489 (linux_trad_target): Delete.
3490 * linux-nat.h (linux_trad_target): Delete declaration.
3491 (linux_target_install_ops): Declare.
3492 * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
3493 "linux-nat.h".
3494
3495 2018-05-02 Pedro Alves <palves@redhat.com>
3496
3497 * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
3498 procfs_target/add_target here.
3499 * procfs.c (procfs_target): Make static.
3500 (_initialize_procfs): Call add_target here.
3501 * procfs.h (struct target_ops): Remove forward declaration.
3502 (procfs_target): Remove declaration.
3503 * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
3504
3505 2018-05-02 Pedro Alves <palves@redhat.com>
3506
3507 * procfs.c (procfs_stopped_by_watchpoint)
3508 (procfs_insert_watchpoint, procfs_remove_watchpoint)
3509 (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
3510 Forward declare.
3511 (procfs_use_watchpoints): Delete, move contents...
3512 (procfs_target): ... here.
3513 * procfs.h (procfs_use_watchpoints): Delete declaration.
3514 * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
3515 procfs_use_watchpoints.
3516 * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
3517 procfs_use_watchpoints.
3518
3519 2018-05-02 Tom Tromey <tom@tromey.com>
3520
3521 PR python/20084:
3522 * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
3523 and var_zuinteger_unlimited.
3524 * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
3525 and PARAM_ZUINTEGER_UNLIMITED.
3526 (set_parameter_value): Handle var_zuinteger and
3527 var_zuinteger_unlimited.
3528 (add_setshow_generic): Likewise.
3529 (parmpy_init): Likewise.
3530
3531 2018-04-28 Dan Robertson <danlrobertson89@gmail.com>
3532
3533 PR rust/23124
3534 * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
3535 pointer is not null before dereferencing it.
3536
3537 2018-04-30 Tom Tromey <tom@tromey.com>
3538
3539 * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
3540 is_mi_like_p.
3541
3542 2018-04-30 Tom Tromey <tom@tromey.com>
3543
3544 * breakpoint.c (mention): Remove use of is_mi_like_p.
3545 (print_mention_ranged_breakpoint): Likewise.
3546 * break-catch-throw.c (print_it_exception_catchpoint): Remove use
3547 of is_mi_like_p.
3548
3549 2018-04-30 Tom Tromey <tom@tromey.com>
3550
3551 * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
3552
3553 2018-04-30 Tom Tromey <tom@tromey.com>
3554
3555 * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
3556 (info_spu_event_command): Remove some uses of is_mi_like_p.
3557
3558 2018-04-30 Tom Tromey <tom@tromey.com>
3559
3560 * python/py-framefilter.c (py_print_single_arg)
3561 (enumerate_locals, py_print_args, py_print_frame): Remove some
3562 uses of is_mi_like_p.
3563
3564 2018-04-30 Tom Tromey <tom@tromey.com>
3565
3566 * ui-out.c: Update.
3567 * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
3568 * ui-out.h (ui_out::is_mi_like_p): Now const.
3569 (ui_out::do_is_mi_like_p): Now const.
3570 * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
3571
3572 2018-04-30 Tom Tromey <tom@tromey.com>
3573
3574 * varobj.c (varobj_set_visualizer): Use new_reference.
3575 * python/python.c (gdbpy_decode_line): Use new_reference.
3576 * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
3577 new_reference.
3578
3579 2018-04-30 Tom Tromey <tom@tromey.com>
3580
3581 * varobj.c (install_new_value): Use new_reference.
3582 * value.h (value_incref): Return void. Swap intro comment with
3583 value_decref.
3584 * value.c (set_value_parent): Use new_reference.
3585 (value_incref): Return void. Update intro comment.
3586 (release_value): Use new_reference.
3587 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
3588
3589 2018-04-30 Tom Tromey <tom@tromey.com>
3590
3591 * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
3592 * gdb_bfd.h (new_bfd_ref): Remove.
3593 (gdb_bfd_open): Update comment.
3594 * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
3595 (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
3596 (gdb_bfd_fdopenr): Use new_reference.
3597 * exec.c (exec_file_attach): Use new_reference.
3598
3599 2018-04-30 Tom Tromey <tom@tromey.com>
3600
3601 * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
3602 method.
3603
3604 2018-04-30 Tom Tromey <tom@tromey.com>
3605
3606 * jit.c (jit_read_code_entry): Use type_align.
3607 * i386-tdep.c (i386_gdbarch_init): Don't call
3608 set_gdbarch_long_long_align_bit.
3609 * gdbarch.sh: Remove long_long_align_bit.
3610 * gdbarch.c, gdbarch.h: Rebuild.
3611 * arc-tdep.c (arc_type_align): New function.
3612 (arc_gdbarch_init): Use arc_type_align. Don't call
3613 set_gdbarch_long_long_align_bit.
3614
3615 2018-04-30 Tom Tromey <tom@tromey.com>
3616
3617 * rust-lang.c (rust_type_alignment): Remove.
3618 (rust_composite_type): Use type_align.
3619
3620 2018-04-30 Tom Tromey <tom@tromey.com>
3621
3622 * NEWS: Mention Type.align.
3623 * python/py-type.c (typy_get_alignof): New function.
3624 (type_object_getset): Add "alignof".
3625
3626 2018-04-30 Tom Tromey <tom@tromey.com>
3627
3628 PR exp/17095:
3629 * NEWS: Update.
3630 * std-operator.def (UNOP_ALIGNOF): New operator.
3631 * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
3632 New.
3633 * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
3634 * c-lang.c (c_op_print_tab): Add alignof.
3635 * c-exp.y (ALIGNOF): New token.
3636 (exp): Add "ALIGNOF" production.
3637 (ident_tokens): Add _Alignof and alignof.
3638
3639 2018-04-30 Tom Tromey <tom@tromey.com>
3640
3641 * i386-tdep.c (i386_type_align): New function.
3642 (i386_gdbarch_init): Update.
3643 * gdbarch.sh (type_align): New method.
3644 * gdbarch.c, gdbarch.h: Rebuild.
3645 * arch-utils.h (default_type_align): Declare.
3646 * arch-utils.c (default_type_align): New function.
3647 * gdbtypes.h (TYPE_ALIGN_BITS): New define.
3648 (struct type) <align_log2>: New field.
3649 <instance_flags>: Now a bitfield.
3650 (TYPE_RAW_ALIGN): New macro.
3651 (type_align, type_raw_align, set_type_align): Declare.
3652 * gdbtypes.c (type_align, type_raw_align, set_type_align): New
3653 functions.
3654 * dwarf2read.c (quirk_rust_enum): Set type alignment.
3655 (get_alignment, maybe_set_alignment): New functions.
3656 (read_structure_type, read_enumeration_type, read_array_type)
3657 (read_set_type, read_tag_pointer_type, read_tag_reference_type)
3658 (read_subrange_type, read_base_type): Set type alignment.
3659
3660 2018-04-30 Simon Marchi <simon.marchi@ericsson.com>
3661
3662 * dwarf2read.c (read_index_from_section): Use bool.
3663
3664 2018-04-29 Fabian Groffen <grobian@gentoo.org>
3665
3666 PR gdb/22950
3667 * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
3668 with #ifdef.
3669
3670 2018-04-29 John Reiser <jreiser@BitWagon.com>
3671
3672 PR build/22873
3673 * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
3674 last step, and do it atomically.
3675
3676 2018-04-27 Alexandre Oliva <aoliva@redhat.com>
3677
3678 * compile/compile-c-types.c (convert_int, convert_float):
3679 Update for C FE v1.
3680
3681 2018-04-27 Tom Tromey <tom@tromey.com>
3682
3683 PR rust/22545:
3684 * rust-lang.c (rust_inclusive_range_type_p): New function.
3685 (rust_range): Handle inclusive ranges.
3686 (rust_compute_range): Likewise.
3687 * rust-exp.y (struct rust_op) <inclusive>: New field.
3688 (DOTDOTEQ): New constant.
3689 (range_expr): Add "..=" productions.
3690 (operator_tokens): Add "..=" token.
3691 (ast_range): Add "inclusive" parameter.
3692 (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
3693 ranges.
3694 * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
3695 bounds values.
3696 * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
3697 LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
3698 Update comments.
3699 * expprint.c (print_subexp_standard): Handle new bounds values.
3700 (dump_subexp_body_standard): Likewise.
3701
3702 2018-04-27 Tom Tromey <tom@tromey.com>
3703
3704 * configure: Rebuild.
3705 * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
3706 * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
3707 "OVERRIDE".
3708 (class symbol_needs_eval_context): Likewise.
3709 * dwarf2read.c (mock_mapped_index::symbol_name_count)
3710 (mock_mapped_index::symbol_name_at): Use "override". Remove
3711 "virtual".
3712 * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
3713 "override".
3714 (class dwarf_expr_executor): Use "override", not "OVERRIDE".
3715 * aarch64-tdep.c (instruction_reader::read): Use "override".
3716 (instruction_reader_test::read): Likewise.
3717 * arm-tdep.c (instruction_reader::read): Use "override".
3718 (instruction_reader_thumb::read): Likewise.
3719
3720 2018-04-26 Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
3721
3722 PR remote/9665
3723 * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
3724 instead of remote_send.
3725 (remote_send): Remove.
3726
3727 2018-04-26 Pedro Alves <palves@redhat.com>
3728
3729 * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
3730 find_function_start_sal instead of find_pc_line.
3731
3732 2018-04-26 Pedro Alves <palves@redhat.com>
3733
3734 * breakpoint.c (set_breakpoint_location_function): Handle
3735 mst_data_gnu_ifunc.
3736 * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
3737 * elfread.c (elf_symtab_read): Give data symbols with
3738 BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
3739 (elf_rel_plt_read): Update comment.
3740 * linespec.c (convert_linespec_to_sals): Handle
3741 mst_data_gnu_ifunc.
3742 (minsym_found): Handle mst_data_gnu_ifunc.
3743 * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
3744 (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
3745 * parse.c (find_minsym_type_and_address): Handle
3746 mst_data_gnu_ifunc.
3747 * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
3748 * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
3749 * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
3750 comment.
3751 <mst_data_gnu_ifunc>: New enumerator.
3752
3753 2018-04-26 Pedro Alves <palves@redhat.com>
3754
3755 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
3756 (lookup_minimal_symbol_by_pc_section): ... this. Replace
3757 'want_trampoline' parameter by a lookup_msym_prefer parameter.
3758 Handle it.
3759 (lookup_minimal_symbol_by_pc_section): Delete old implementation.
3760 (lookup_minimal_symbol_by_pc): Adjust.
3761 (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
3762 (lookup_solib_trampoline_symbol_by_pc): Adjust.
3763 * minsyms.h (lookup_msym_prefer): New enum.
3764 (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
3765 parameter by a lookup_msym_prefer parameter.
3766
3767 2018-04-26 Pedro Alves <palves@redhat.com>
3768
3769 * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
3770 ends in "@plt" instead of looking at the symbol's section.
3771
3772 2018-04-26 Pedro Alves <palves@redhat.com>
3773
3774 * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete. Remove
3775 all references.
3776 (find_pc_partial_function_gnu_ifunc): Rename to ...
3777 (find_pc_partial_function): ... this, and remove references to
3778 'is_gnu_ifunc_p'.
3779 (find_pc_partial_function): Delete old implementation.
3780 * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
3781
3782 2018-04-26 Pedro Alves <palves@redhat.com>
3783
3784 * linespec.c (struct bound_minimal_symbol_search_key): New.
3785 (convert_linespec_to_sals): Sort minimal symbols earlier. Don't
3786 skip first line if we found a GNU ifunc minimal symbol by name.
3787 (compare_msymbols): Change parameters to work with a destructured
3788 lhs minsym.
3789 (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
3790 functions.
3791
3792 2018-04-26 Pedro Alves <palves@redhat.com>
3793
3794 * breakpoint.c (set_breakpoint_location_function): Don't resolve
3795 ifunc targets here. Instead, if we have an ifunc minsym, use its
3796 address/name.
3797 (add_location_to_breakpoint): Store the minsym and the objfile in
3798 the breakpoint location.
3799 * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
3800 * linespec.c (minsym_found): Resolve GNU ifunc targets here.
3801 Record the minsym in the sal.
3802 * symtab.h (symtab_and_line) <msymbol>: New field.
3803
3804 2018-04-26 Pedro Alves <palves@redhat.com>
3805
3806 * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
3807 unless we actually resolved the ifunc.
3808
3809 2018-04-26 Pedro Alves <palves@redhat.com>
3810
3811 * c-exp.y (variable production): Prefer ifunc minsyms over
3812 regular function symbols.
3813 * symtab.c (find_gnu_ifunc): New function.
3814 * minsyms.h (lookup_msym_prefer): New enum.
3815 (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
3816 parameter by a lookup_msym_prefer parameter.
3817 * symtab.h (find_gnu_ifunc): New declaration.
3818
3819 2018-04-26 Pedro Alves <palves@redhat.com>
3820
3821 * blockframe.c (find_gnu_ifunc_target_type): New function.
3822 (find_function_type): New.
3823 * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
3824 return a value with a memory address.
3825 (eval_call): For calls to GNU ifunc functions, try to find the
3826 type of the target function from the type that the resolver
3827 returns.
3828 * gdbtypes.c (objfile_type): Don't install a return type for ifunc
3829 symbols.
3830 * infcall.c (find_function_return_type): Delete.
3831 (find_function_addr): Add 'function_type' parameter. For calls to
3832 GNU ifunc functions, try to find the type of the target function
3833 from the type that the resolver returns, and return it via
3834 FUNCTION_TYPE.
3835 (call_function_by_hand_dummy): Adjust to use the function type
3836 returned by find_function_addr.
3837 (find_function_addr): Add 'function_type' parameter and move
3838 description here.
3839 * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
3840 declarations.
3841
3842 2018-04-26 Pedro Alves <palves@redhat.com>
3843
3844 * c-exp.y (variable production): Skip finding an alias for ifunc
3845 symbols.
3846
3847 2018-04-26 Pedro Alves <palves@redhat.com>
3848
3849 * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
3850
3851 2018-04-25 Pedro Alves <palves@redhat.com>
3852
3853 * infcmd.c (kill_command): Print the pid as string, not the whole
3854 thread's ptid. Add comment. s/has been killed/killed/ in output
3855 message.
3856 * remote.c (remote_detach_1): Print the pid as string, not the
3857 whole thread's ptid.
3858
3859 2018-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
3860 Sergio Durigan Junior <sergiodj@redhat.com>
3861 Pedro Alves <palves@redhat.com>
3862
3863 * infcmd.c (kill_command): Print message when inferior has
3864 been killed.
3865 * inferior.c (print_inferior_events): Remove 'static'. Set as
3866 '1'.
3867 (add_inferior): Improve message printed when
3868 'print_inferior_events' is on.
3869 (exit_inferior): Remove message printed when
3870 'print_inferior_events' is on.
3871 (detach_inferior): Improve message printed when
3872 'print_inferior_events' is on.
3873 (initialize_inferiors): Use 'add_inferior_silent' to set
3874 'current_inferior_'.
3875 * inferior.h (print_inferior_events): Declare here as
3876 'extern'.
3877 * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
3878 '[Detaching...]' messages when 'print_inferior_events' is on.
3879 Use 'add_thread_silent' instead of 'add_thread'. Add '[' and ']'
3880 as prefix/suffix for messages. Remove periods. Fix erroneous
3881 'Detaching after fork from child...', replace it by '... from
3882 parent...'.
3883 (handle_vfork_child_exec_or_exit): Add '[' and ']' as
3884 prefix/suffix when printing 'Detaching...' messages. Print
3885 them when 'print_inferior_events' is on.
3886 * remote.c (remote_detach_1): Print message when detaching
3887 from inferior and '!is_fork_parent'.
3888
3889 2018-04-24 Tom Tromey <tom@tromey.com>
3890
3891 * cli-out.h: Reindent.
3892
3893 2018-04-24 Tom Tromey <tom@tromey.com>
3894
3895 * cli-out.c (cli_ui_out::out_field_fmt): Remove.
3896 (cli_ui_out::do_field_string): Use fputs_filtered.
3897 * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
3898
3899 2018-04-23 Tom Tromey <tom@tromey.com>
3900
3901 * guile/scm-frame.c (gdbscm_frame_read_var): Use
3902 gdb::unique_xmalloc_ptr.
3903
3904 2018-04-23 Tom Tromey <tom@tromey.com>
3905
3906 * configure: Rebuild.
3907
3908 2018-04-22 Rajendra SY <rajendra.sy@gmail.com>
3909
3910 PR gdb/23095
3911 * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
3912 prepare_for_testing. Set normal_bp to r_debug_state if target
3913 is bsd.
3914
3915 2018-04-21 Pedro Alves <palves@redhat.com>
3916 Rajendra SY <rajendra.sy@gmail.com>
3917
3918 * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
3919 * remote.c (extended_remote_attach): In all-stop mode, mark the
3920 thread as executing.
3921
3922 2018-04-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
3923
3924 * thread.c (thread_apply_all_command): Fix comment.
3925 (thread_command): Fix comment.
3926
3927 2018-04-10 Alan Hayward <alan.hayward@arm.com>
3928
3929 * common/tdesc.h (tdesc_create_feature): Remove xml filename
3930 parameter.
3931 * features/aarch64-core.c (create_feature_aarch64_core):
3932 Regenerate.
3933 * features/aarch64-fpu.c (create_feature_aarch64_fpu):
3934 Likewise.
3935 * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
3936 Likewise.
3937 * features/i386/32bit-avx512.c
3938 (create_feature_i386_32bit_avx512): Likewise.
3939 * features/i386/32bit-core.c (create_feature_i386_32bit_core):
3940 Likewise.
3941 * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
3942 Likewise.
3943 * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
3944 Likewise.
3945 * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
3946 Likewise.
3947 * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
3948 Likewise.
3949 * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
3950 Likewise.
3951 * features/i386/64bit-avx512.c
3952 (create_feature_i386_64bit_avx512): Likewise.
3953 * features/i386/64bit-core.c (create_feature_i386_64bit_core):
3954 Likewise.
3955 * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
3956 Likewise.
3957 * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
3958 Likewise.
3959 * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
3960 Likewise.
3961 * features/i386/64bit-segments.c
3962 (create_feature_i386_64bit_segments): Likewise.
3963 * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
3964 Likewise.
3965 * features/i386/x32-core.c
3966 (create_feature_i386_x32_core): Likewise.
3967 * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
3968 * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
3969 * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
3970 * target-descriptions.c: In generated code, don't pass xml
3971 filename.
3972
3973 2018-04-18 Alan Hayward <alan.hayward@arm.com>
3974
3975 * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
3976 (print_xml_feature::visit_post): Likewise.
3977 (print_xml_feature::visit): Likewise.
3978 * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
3979 (print_xml_feature): Add new class.
3980 * regformats/regdat.sh: Null xmltarget on feature targets.
3981 * target-descriptions.c (struct target_desc): Add xmltarget.
3982 (maintenance_check_tdesc_xml_convert): Add unittest function.
3983 (tdesc_get_features_xml): Add function to get xml.
3984 (maintenance_check_xml_descriptions): Test xml generation.
3985 * xml-tdesc.c (string_read_description_xml): Add function.
3986 * xml-tdesc.h (string_read_description_xml): Add declaration.
3987
3988 2018-04-18 Alan Hayward <alan.hayward@arm.com>
3989
3990 * features/Makefile: Add feature marker to targets with new style
3991 target descriptions.
3992 * regformats/aarch64.dat: Regenerate.
3993 * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
3994 * regformats/i386/amd64-avx-linux.dat: Likewise.
3995 * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
3996 * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
3997 * regformats/i386/amd64-linux.dat: Likewise.
3998 * regformats/i386/amd64-mpx-linux.dat: Likewise.
3999 * regformats/i386/amd64.dat: Likewise.
4000 * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
4001 * regformats/i386/i386-avx-linux.dat: Likewise.
4002 * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
4003 * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
4004 * regformats/i386/i386-linux.dat: Likewise.
4005 * regformats/i386/i386-mmx-linux.dat: Likewise.
4006 * regformats/i386/i386-mpx-linux.dat: Likewise.
4007 * regformats/i386/i386.dat: Likewise.
4008 * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
4009 * regformats/i386/x32-avx-linux.dat: Likewise.
4010 * regformats/i386/x32-linux.dat: Likewise.
4011 * regformats/tic6x-c62x-linux.dat: Likewise.
4012 * regformats/tic6x-c64x-linux.dat: Likewise.
4013 * regformats/tic6x-c64xp-linux.dat: Likewise.
4014 * regformats/regdat.sh: Parse feature marker.
4015
4016 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4017
4018 * common/tdesc.h (tdesc_architecture_name): Add new declaration.
4019 (tdesc_osabi_name): Likewise.
4020 * target-descriptions.c (tdesc_architecture_name): Add new
4021 function.
4022 (tdesc_osabi_name): Likewise.
4023
4024 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4025
4026 * common/tdesc.c (tdesc_predefined_type): Move to here.
4027 (tdesc_named_type): Likewise.
4028 (tdesc_create_vector): Likewise.
4029 (tdesc_create_struct): Likewise.
4030 (tdesc_set_struct_size): Likewise.
4031 (tdesc_create_union): Likewise.
4032 (tdesc_create_flags): Likewise.
4033 (tdesc_create_enum): Likewise.
4034 (tdesc_add_field): Likewise.
4035 (tdesc_add_typed_bitfield): Likewise.
4036 (tdesc_add_bitfield): Likewise.
4037 (tdesc_add_flag): Likewise.
4038 (tdesc_add_enum_value): Likewise.
4039 * common/tdesc.h (struct tdesc_type_builtin): Likewise.
4040 (struct tdesc_type_vector): Likewise.
4041 (struct tdesc_type_field): Likewise.
4042 (struct tdesc_type_with_fields): Likewise.
4043 (tdesc_create_enum): Add declaration.
4044 (tdesc_add_typed_bitfield): Likewise.
4045 (tdesc_add_enum_value): Likewise.
4046 * target-descriptions.c (tdesc_type_field): Move from here.
4047 (tdesc_type_builtin): Likewise.
4048 (tdesc_type_vector): Likewise.
4049 (tdesc_type_with_fields): Likewise.
4050 (tdesc_predefined_types): Likewise.
4051 (tdesc_named_type): Likewise.
4052 (tdesc_create_vector): Likewise.
4053 (tdesc_create_struct): Likewise.
4054 (tdesc_set_struct_size): Likewise.
4055 (tdesc_create_union): Likewise.
4056 (tdesc_create_flags): Likewise.
4057 (tdesc_create_enum): Likewise.
4058 (tdesc_add_field): Likewise.
4059 (tdesc_add_typed_bitfield): Likewise.
4060 (tdesc_add_bitfield): Likewise.
4061 (tdesc_add_flag): Likewise.
4062 (tdesc_add_enum_value): Likewise.
4063 * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
4064 (tdesc_add_typed_bitfield): Likewise.
4065 (tdesc_add_enum_value): Likewise.
4066
4067 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4068
4069 * common/tdesc.c (tdesc_feature::accept): Move to here.
4070 (tdesc_feature::operator==): Likewise.
4071 (tdesc_create_reg): Likewise.
4072 * common/tdesc.h (tdesc_type_kind): Likewise.
4073 (struct tdesc_type): Likewise.
4074 (struct tdesc_feature): Likewise.
4075 * regformats/regdat.sh: Create a feature.
4076 * target-descriptions.c (tdesc_type_kind): Move from here.
4077 (tdesc_type): Likewise.
4078 (tdesc_type_up): Likewise.
4079 (tdesc_feature): Likewise.
4080 (tdesc_create_reg): Likewise.
4081
4082 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4083
4084 * Makefile.in: Add arch/tdesc.c
4085 * common/tdesc.c: New file.
4086 * common/tdesc.h (tdesc_element_visitor): Move to here.
4087 (tdesc_element): Likewise.
4088 (tdesc_reg): Likewise.
4089 (tdesc_reg_up): Likewise.
4090 * regformats/regdef.h (reg): Add offset to constructors.
4091 * target-descriptions.c (tdesc_element_visitor): Move from here.
4092 (tdesc_element): Likewise.
4093 (tdesc_reg): Likewise.
4094 (tdesc_reg_up): Likewise.
4095
4096 2018-04-17 Tom Tromey <tom@tromey.com>
4097
4098 * dwarf2read.c (quirk_rust_enum): Conditionally drop the
4099 discriminant field.
4100
4101 2018-04-17 Tom Tromey <tom@tromey.com>
4102
4103 * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
4104
4105 2018-04-17 Andreas Arnez <arnez@linux.vnet.ibm.com>
4106
4107 * symtab.c (print_symbol_info): Skip printing filename and line
4108 number when `last' is NULL.
4109 (symtab_symbol_info): Use empty string instead of NULL for first
4110 invocation of print_symbol_info.
4111 (rbreak_command): Pass NULL to `last' parameter of
4112 print_symbol_info.
4113
4114 2018-04-16 Simon Marchi <simon.marchi@ericsson.com>
4115
4116 * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
4117 instead of nullptr.
4118
4119 2018-04-16 Pedro Alves <palves@redhat.com>
4120
4121 * MAINTAINERS (sh): Remove.
4122 * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
4123 (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
4124 (ALLDEPFILES): Remove sh64-tdep.c.
4125 * NEWS: Mentions that support for SH-5/SH64 is removed.
4126 * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
4127 (sh*-*-openbsd*): Ditto.
4128 (sh64-*-elf*): Remove.
4129 (sh*): Remove.
4130 * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
4131 * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
4132 * sh-tdep.c: No longer include "sh64-tdep.h".
4133 (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
4134 * sh64-tdep.c, sh64-tdep.h: Remove files.
4135
4136 2018-04-16 Pedro Alves <palves@redhat.com>
4137
4138 * MAINTAINERS: Remove m88k.
4139 * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
4140 (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
4141 (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
4142 * NEWS: Mention that support for m88k was removed.
4143 * configure.host (m88*-*-*): Remove support.
4144 * configure.nat (m88k-*-*): Remove support.
4145 * configure.tgt (m88*-*-openbsd*): Remove.
4146 * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
4147
4148 2018-04-15 Simon Marchi <simon.marchi@polymtl.ca>
4149
4150 * configure.tgt (x86_tobjs): New variable.
4151 (amd64_tobjs, i386_tobjs): Use it.
4152
4153 2018-04-13 Andreas Arnez <arnez@linux.vnet.ibm.com>
4154
4155 * symtab.c (print_symbol_info): Precede the symbol definition by
4156 the line number when available.
4157 * NEWS: Advertise this enhancement.
4158
4159 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
4160
4161 * NEWS (New options): announce set/show record btrace cpu.
4162 * btrace.c: Include record-btrace.h.
4163 (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
4164 the vendor is unknown.
4165 (btrace_compute_ftrace_1): Add cpu parameter. Update callers.
4166 Maybe overwrite the btrace configuration's cpu.
4167 (btrace_compute_ftrace): Add cpu parameter. Update callers.
4168 (btrace_fetch): Add cpu parameter. Update callers.
4169 (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
4170 Maybe overwrite the btrace configuration's cpu. Skip enabling
4171 errata workarounds if the vendor is unknown.
4172 * python/py-record-btrace.c: Include record-btrace.h.
4173 (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
4174 (recpy_bt_function_call_history): Call record_btrace_get_cpu.
4175 * record-btrace.c (record_btrace_cpu_state_kind): New.
4176 (record_btrace_cpu): New.
4177 (set_record_btrace_cpu_cmdlist): New.
4178 (record_btrace_get_cpu): New.
4179 (require_btrace_thread, record_btrace_info)
4180 (record_btrace_resume_thread): Call record_btrace_get_cpu.
4181 (cmd_set_record_btrace_cpu_none): New.
4182 (cmd_set_record_btrace_cpu_auto): New.
4183 (cmd_set_record_btrace_cpu): New.
4184 (cmd_show_record_btrace_cpu): New.
4185 (_initialize_record_btrace): Initialize set/show record btrace cpu
4186 commands.
4187 * record-btrace.h (record_btrace_get_cpu): New.
4188
4189 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
4190
4191 * record.c (set_record_command): Fix typo in message.
4192
4193 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
4194
4195 * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
4196
4197 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
4198
4199 * infrun.c (process_event_stop_test): Call
4200 gdbarch_in_indirect_branch_thunk.
4201 * gdbarch.sh (in_indirect_branch_thunk): New.
4202 * gdbarch.c: Regenerated.
4203 * gdbarch.h: Regenerated.
4204 * x86-tdep.h: New.
4205 * x86-tdep.c: New.
4206 * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
4207 (HFILES_NO_SRCDIR): Add x86-tdep.h.
4208 (ALLDEPFILES): Add x86-tdep.c.
4209 * arch-utils.h (default_in_indirect_branch_thunk): New.
4210 * arch-utils.c (default_in_indirect_branch_thunk): New.
4211 * i386-tdep: Include x86-tdep.h.
4212 (i386_in_indirect_branch_thunk): New.
4213 (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
4214 function.
4215 * amd64-tdep: Include x86-tdep.h.
4216 (amd64_in_indirect_branch_thunk): New.
4217 (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
4218
4219 2018-04-12 Jan Kratochvil <jan.kratochvil@redhat.com>
4220
4221 PR gdb/23053
4222 * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
4223 (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
4224 (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
4225 regression.
4226
4227 2018-04-12 Tom Tromey <tom@tromey.com>
4228
4229 * rust-lang.c (rust_print_struct_def): Remove univariant code.
4230 (rust_evaluate_subexp): Likewise.
4231
4232 2018-04-12 Pedro Alves <palves@redhat.com>
4233
4234 * procfs.c (procfs_detach): Make forward declaration's prototype
4235 match definition's protototype.
4236 (proc_get_LDT_entry): Remove stale do_cleanups call.
4237
4238 2018-04-12 Pedro Alves <palves@redhat.com>
4239
4240 * target.h (target_ops::to_has_exited): Delete.
4241 (target_has_exited): Delete.
4242 * target-delegates.c: Regenerate.
4243
4244 2018-04-11 Pedro Alves <palves@redhat.com>
4245
4246 * target.c (fileio_fh_t::t): Add comment.
4247 (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
4248 (target_fileio_close): Handle a NULL target.
4249 (invalidate_fileio_fh): New.
4250 (target_close): Call it.
4251 * remote.c (remote_hostio_send_command): No longer check whether
4252 remote_desc is open.
4253
4254 2018-04-11 Pedro Alves <palves@redhat.com>
4255
4256 * target.c (fileio_fh_t): Make it a named struct instead of a
4257 typedef.
4258 (fileio_fh_t::is_closed): New method.
4259 (DEF_VEC_O (fileio_fh_t)): Remove.
4260 (fileio_fhandles): Now a std::vector.
4261 (is_closed_fileio_fh): Delete.
4262 (acquire_fileio_fd): Adjust. Rename parameters.
4263 (release_fileio_fd): Adjust.
4264 (fileio_fd_to_fh): Reimplement as a function instead of a macro.
4265 (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
4266 (target_fileio_close): Adjust.
4267
4268 2018-04-10 Simon Marchi <simon.marchi@ericsson.com>
4269
4270 * auto-load.c (auto_load_safe_path_vec_update): Iterate by
4271 index.
4272
4273 2018-04-10 Pedro Alves <palves@redhat.com>
4274
4275 * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
4276 (scoped_finish_thread_state): New class.
4277 * infcmd.c (run_command_1): Use it instead of finish_thread_state
4278 cleanup.
4279 * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
4280 (fetch_inferior_event, normal_stop): Likewise.
4281 * thread.c (finish_thread_state_cleanup): Delete.
4282
4283 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4284 Pedro Alves <palves@redhat.com>
4285
4286 * value.c: Include "selftest.h" and "common/array-view.h".
4287 (struct range) <operator ==>: New.
4288 (test_ranges_contain): New.
4289 (check_ranges_vector): New.
4290 (test_insert_into_bit_range_vector): New.
4291 (_initialize_values): Register selftests.
4292 * common/array-view.h (operator==, operator!=): New.
4293
4294 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4295
4296 * common/gdb_vecs.h (unordered_remove): Add overload that takes
4297 an iterator.
4298 * inline-frame.c: Include <algorithm>.
4299 (struct inline_state): Add constructor.
4300 (inline_state_s): Remove.
4301 (DEF_VEC_O(inline_state_s)): Remove.
4302 (inline_states): Change type to std::vector.
4303 (find_inline_frame_state): Adjust to std::vector.
4304 (allocate_inline_frame_state): Remove.
4305 (clear_inline_frame_state): Adjust to std::vector.
4306 (skip_inline_frames): Adjust to std::vector.
4307
4308 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4309
4310 * tracepoint.h (struct trace_state_variable): Add constructor.
4311 <name>: Change type to std::string.
4312 * tracepoint.c (tsv_s): Remove.
4313 (DEF_VEC_O(tsv_s)): Remove.
4314 (tvariables): Change to std::vector.
4315 (create_trace_state_variable): Adjust to std::vector.
4316 (find_trace_state_variable): Likewise.
4317 (find_trace_state_variable_by_number): Likewise.
4318 (delete_trace_state_variable): Likewise.
4319 (trace_variable_command): Adjust to std::string.
4320 (delete_trace_variable_command): Likewise.
4321 (tvariables_info_1): Adjust to std::vector.
4322 (save_trace_state_variables): Likewise.
4323 (start_tracing): Likewise.
4324 (merge_uploaded_trace_state_variables): Adjust to std::vector
4325 and std::string.
4326 * target.h (struct target_ops)
4327 <to_download_trace_state_variable>: Pass reference to
4328 trace_state_variable.
4329 * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
4330 * target-delegates.c: Re-generate.
4331 * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
4332 (mi_tsv_deleted): Likewise.
4333 * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
4334 * remote.c (remote_download_trace_state_variable): Change
4335 pointer to reference and adjust.
4336 * make-target-delegates (parse_argtypes): Handle references.
4337 (write_function_header): Likewise.
4338 (munge_type): Likewise.
4339
4340 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4341
4342 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4343 string_view-selftests.c.
4344 * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
4345 testsuite.
4346 * unittests/basic_string_view/cons/char/1.cc: Likewise.
4347 * unittests/basic_string_view/cons/char/2.cc: Likewise.
4348 * unittests/basic_string_view/cons/char/3.cc: Likewise.
4349 * unittests/basic_string_view/element_access/char/1.cc:
4350 Likewise.
4351 * unittests/basic_string_view/element_access/char/empty.cc:
4352 Likewise.
4353 * unittests/basic_string_view/element_access/char/front_back.cc:
4354 Likewise.
4355 * unittests/basic_string_view/inserters/char/2.cc: Likewise.
4356 * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
4357 Likewise.
4358 * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
4359 Likewise.
4360 * unittests/basic_string_view/modifiers/swap/char/1.cc:
4361 Likewise.
4362 * unittests/basic_string_view/operations/compare/char/1.cc:
4363 Likewise.
4364 * unittests/basic_string_view/operations/compare/char/13650.cc:
4365 Likewise.
4366 * unittests/basic_string_view/operations/copy/char/1.cc:
4367 Likewise.
4368 * unittests/basic_string_view/operations/data/char/1.cc:
4369 Likewise.
4370 * unittests/basic_string_view/operations/find/char/1.cc:
4371 Likewise.
4372 * unittests/basic_string_view/operations/find/char/2.cc:
4373 Likewise.
4374 * unittests/basic_string_view/operations/find/char/3.cc:
4375 Likewise.
4376 * unittests/basic_string_view/operations/find/char/4.cc:
4377 Likewise.
4378 * unittests/basic_string_view/operations/rfind/char/1.cc:
4379 Likewise.
4380 * unittests/basic_string_view/operations/rfind/char/2.cc:
4381 Likewise.
4382 * unittests/basic_string_view/operations/rfind/char/3.cc:
4383 Likewise.
4384 * unittests/basic_string_view/operations/substr/char/1.cc:
4385 Likewise.
4386 * unittests/basic_string_view/operators/char/2.cc: Likewise.
4387 * unittests/string_view-selftests.c: New file.
4388
4389 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4390
4391 * unittests/basic_string_view/capacity/1.cc: New file.
4392 * unittests/basic_string_view/capacity/empty_neg.cc: New file.
4393 * unittests/basic_string_view/cons/char/1.cc: New file.
4394 * unittests/basic_string_view/cons/char/2.cc: New file.
4395 * unittests/basic_string_view/cons/char/3.cc: New file.
4396 * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
4397 * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
4398 * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
4399 * unittests/basic_string_view/element_access/char/1.cc: New file.
4400 * unittests/basic_string_view/element_access/char/2.cc: New file.
4401 * unittests/basic_string_view/element_access/char/empty.cc: New file.
4402 * unittests/basic_string_view/element_access/char/front_back.cc: New file.
4403 * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
4404 * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
4405 * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
4406 * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
4407 * unittests/basic_string_view/include.cc: New file.
4408 * unittests/basic_string_view/inserters/char/1.cc: New file.
4409 * unittests/basic_string_view/inserters/char/2.cc: New file.
4410 * unittests/basic_string_view/inserters/char/3.cc: New file.
4411 * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
4412 * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
4413 * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
4414 * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
4415 * unittests/basic_string_view/literals/types.cc: New file.
4416 * unittests/basic_string_view/literals/values.cc: New file.
4417 * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
4418 * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
4419 * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
4420 * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
4421 * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
4422 * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
4423 * unittests/basic_string_view/operations/compare/char/1.cc: New file.
4424 * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
4425 * unittests/basic_string_view/operations/compare/char/2.cc: New file.
4426 * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
4427 * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
4428 * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
4429 * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
4430 * unittests/basic_string_view/operations/copy/char/1.cc: New file.
4431 * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
4432 * unittests/basic_string_view/operations/data/char/1.cc: New file.
4433 * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
4434 * unittests/basic_string_view/operations/find/char/1.cc: New file.
4435 * unittests/basic_string_view/operations/find/char/2.cc: New file.
4436 * unittests/basic_string_view/operations/find/char/3.cc: New file.
4437 * unittests/basic_string_view/operations/find/char/4.cc: New file.
4438 * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
4439 * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
4440 * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
4441 * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
4442 * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
4443 * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
4444 * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
4445 * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
4446 * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
4447 * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
4448 * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
4449 * unittests/basic_string_view/operations/substr/char/1.cc: New file.
4450 * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
4451 * unittests/basic_string_view/operators/char/2.cc: New file.
4452 * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
4453 * unittests/basic_string_view/range_access/char/1.cc: New file.
4454 * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
4455 * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
4456 * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
4457 * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
4458 * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
4459 * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
4460 * unittests/basic_string_view/requirements/typedefs.cc: New file.
4461 * unittests/basic_string_view/typedefs.cc: New file.
4462 * unittests/basic_string_view/types/1.cc: New file.
4463
4464 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4465
4466 * common/gdb_string_view.h: Remove libstdc++ implementation
4467 details, adjust to gdb reality.
4468 * common/gdb_string_view.tcc: Likewise.
4469 * cli/cli-script.c (struct string_view): Remove.
4470 (user_args) <m_args>: Change element type to gdb::string_view.
4471 (user_args::insert_args): Adjust.
4472
4473 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4474
4475 * common/gdb_string_view.h: New file.
4476 * common/gdb_string_view.tcc: New file.
4477
4478 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
4479
4480 * ax_cxx_compile_stdcxx.m4: Sync with upstream.
4481 * configure: Re-generate.
4482
4483 2018-04-09 Pedro Alves <palves@redhat.com>
4484
4485 * gdbarch.sh: Include "observable.h" instead of "observer.h".
4486 (set_target_gdbarch): Call
4487 gdb::observers::architecture_changed.notify instead of
4488 observer_notify_architecture_changed.
4489
4490 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4491
4492 * tracepoint.c (struct current_traceframe_cleanup): Remove.
4493 (do_restore_current_traceframe_cleanup): Remove.
4494 (restore_current_traceframe_cleanup_dtor): Remove.
4495 (make_cleanup_restore_current_traceframe): Remove.
4496 (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
4497 New.
4498 * tracepoint.h (struct scoped_restore_current_traceframe): New.
4499 * infrun.c (fetch_inferior_event): Use
4500 scoped_restore_current_traceframe.
4501
4502 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4503
4504 * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
4505 Remove.
4506 <n_allocated_type_units>: Remove.
4507 <all_type_units>: Change to std::vector.
4508 * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
4509 to std::vector change.
4510 (dwarf2_per_objfile::get_cutu): Likewise.
4511 (dwarf2_per_objfile::get_tu): Likewise.
4512 (create_signatured_type_table_from_index): Likewise.
4513 (create_signatured_type_table_from_debug_names): Likewise.
4514 (dw2_symtab_iter_next): Likewise.
4515 (dw2_print_stats): Likewise.
4516 (dw2_expand_all_symtabs): Likewise.
4517 (dw2_expand_marked_cus): Likewise.
4518 (dw2_debug_names_iterator::next): Likewise.
4519 (dwarf2_initialize_objfile): Likewise.
4520 (add_signatured_type_cu_to_table): Likewise.
4521 (create_all_type_units): Likewise.
4522 (add_type_unit): Likewise.
4523 (struct tu_abbrev_offset): Add constructor.
4524 (build_type_psymtabs_1): Adjust to std::vector change.
4525 (print_tu_stats): Likewise.
4526 * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
4527 (write_debug_names): Likewise.
4528
4529 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4530
4531 * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
4532 Make an std::vector.
4533 <n_comp_units>: Remove.
4534 * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
4535 to std::vector change.
4536 (dwarf2_per_objfile::get_cutu): Likewise.
4537 (dwarf2_per_objfile::get_cu): Likewise.
4538 (create_cus_from_index): Likewise.
4539 (create_addrmap_from_index): Likewise.
4540 (create_addrmap_from_aranges): Likewise.
4541 (dwarf2_read_index): Likewise.
4542 (dw2_find_last_source_symtab): Likewise.
4543 (dw2_map_symtabs_matching_filename): Likewise.
4544 (dw2_symtab_iter_next): Likewise.
4545 (dw2_print_stats): Likewise.
4546 (dw2_expand_all_symtabs): Likewise.
4547 (dw2_expand_symtabs_with_fullname): Likewise.
4548 (dw2_expand_marked_cus): Likewise.
4549 (dw2_map_symbol_filenames): Likewise.
4550 (create_cus_from_debug_names): Likewise.
4551 (dwarf2_read_debug_names): Likewise.
4552 (dw2_debug_names_iterator::next): Likewise.
4553 (dwarf2_initialize_objfile): Likewise.
4554 (set_partial_user): Likewise.
4555 (dwarf2_build_psymtabs_hard): Likewise.
4556 (read_comp_units_from_section): Remove arguments, adjust to
4557 std::vector change.
4558 (create_all_comp_units): Adjust to std::vector and
4559 read_comp_units_from_section changes.
4560 (dwarf2_find_containing_comp_unit): Adjust to std::vector
4561 change.
4562 * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
4563 (psyms_seen_size): Likewise.
4564 (write_gdbindex): Likewise.
4565 (write_debug_names): Likewise.
4566
4567 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4568
4569 * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
4570 with dwarf2_per_objfile.
4571 (create_cus_from_index): Likewise.
4572 (create_signatured_type_table_from_index): Likewise.
4573 (dwarf2_read_index): Likewise.
4574 (dwarf2_initialize_objfile): Likewise.
4575 (dwarf2_fetch_die_loc_sect_off): Get dwarf2_per_objfile from
4576 per_cu rather than get_dwarf2_per_objfile.
4577
4578 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4579
4580 * dwarf2read.h (struct signatured_type): Forward declare.
4581 (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
4582 New methods.
4583 * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
4584 (dw2_get_cutu): ...this.
4585 (dwarf2_per_objfile::get_cu): Rename from...
4586 (dw2_get_cu): ...this.
4587 (dwarf2_per_objfile::get_tu): New.
4588 (create_addrmap_from_index): Adjust.
4589 (create_addrmap_from_aranges): Adjust.
4590 (dw2_find_last_source_symtab): Adjust.
4591 (dw2_map_symtabs_matching_filename): Adjust.
4592 (dw2_symtab_iter_next): Adjust.
4593 (dw2_print_stats): Adjust.
4594 (dw2_expand_all_symtabs): Adjust.
4595 (dw2_expand_symtabs_with_fullname): Adjust.
4596 (dw2_expand_marked_cus): Adjust.
4597 (dw_expand_symtabs_matching_file_matcher): Adjust.
4598 (dw2_map_symbol_filenames): Adjust.
4599 (dw2_debug_names_iterator::next): Adjust.
4600 (dwarf2_initialize_objfile): Adjust.
4601 (set_partial_user): Adjust.
4602 (dwarf2_build_psymtabs_hard): Adjust.
4603
4604 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4605
4606 * dwarf2read.c (create_signatured_type_table_from_debug_names):
4607 Remove unused variables.
4608 (dw2_map_symtabs_matching_filename): Likewise.
4609 (dwarf2_record_block_ranges): Likewise.
4610 (dwarf2_read_addr_index): Likewise.
4611 (follow_die_offset): Likewise.
4612
4613 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4614
4615 * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
4616 to symbol_file_add_main.
4617
4618 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4619
4620 PR mi/22299
4621 * mi/mi-console.c (do_fputc_async_safe): New.
4622 (mi_console_file::write_async_safe): New.
4623 (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
4624 * mi/mi-console.h (class mi_console_file) <write_async_safe>:
4625 New.
4626 * ui-file.c (ui_file::putstrn): Adjust call to
4627 fputstrn_unfiltered.
4628 * utils.c (printchar): Replace do_fputs and do_fprintf
4629 parameters by do_fputc.
4630 (fputstr_filtered): Adjust call to printchar.
4631 (fputstr_unfiltered): Likewise.
4632 (fputstrn_filtered): Likewise.
4633 (fputstrn_unfiltered): Add do_fputc parameter, pass to
4634 printchar.
4635 * utils.h (do_fputc_ftype): New typedef.
4636 (fputstrn_unfiltered): Add do_fputc parameter.
4637
4638 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
4639
4640 * regformats/i386/i386-avx.dat: Remove.
4641
4642 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
4643
4644 PR gdb/22979
4645 * amd64-tdep.c (amd64_none_init_abi): New function.
4646 (amd64_x32_none_init_abi): New function.
4647 (_initialize_amd64_tdep): Register handlers for x86-64 and
4648 x64_32 with GDB_OSABI_NONE.
4649 * osabi.c (gdbarch_init_osabi): Allow running handlers for the
4650 GDB_OSABI_NONE osabi.
4651
4652 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
4653
4654 PR gdb/22980
4655 * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
4656 GDB_OSABI_NONE.
4657 * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
4658 * osabi.c (gdb_osabi_names): Add "unknown" entry.
4659
4660 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
4661
4662 * common/byte-vector.h (char_vector): New type.
4663 * target.h (target_read_alloc): Return
4664 gdb::optional<byte_vector>.
4665 (target_read_stralloc): Return gdb::optional<char_vector>.
4666 (target_get_osdata): Return gdb::optional<char_vector>.
4667 * target.c (target_read_alloc_1): Templatize. Replacement
4668 manual memory management with vector.
4669 (target_read_alloc): Change return type, adjust.
4670 (target_read_stralloc): Change return type, adjust.
4671 (target_get_osdata): Change return type, adjust.
4672 * auxv.c (struct auxv_info) <length>: Remove.
4673 <data>: Change type to gdb::optional<byte_vector>.
4674 (auxv_inferior_data_cleanup): Free auxv_info with delete.
4675 (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
4676 (target_auxv_search): Adjust.
4677 (fprint_target_auxv): Adjust.
4678 * avr-tdep.c (avr_io_reg_read_command): Adjust.
4679 * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
4680 (linux_make_corefile_notes): Adjust.
4681 * osdata.c (get_osdata): Adjust.
4682 * remote.c (remote_get_threads_with_qxfer): Adjust.
4683 (remote_memory_map): Adjust.
4684 (remote_traceframe_info): Adjust.
4685 (btrace_read_config): Adjust.
4686 (remote_read_btrace): Adjust.
4687 (remote_pid_to_exec_file): Adjust.
4688 * solib-aix.c (solib_aix_get_library_list): Adjust.
4689 * solib-dsbt.c (decode_loadmap): Don't free buf.
4690 (dsbt_get_initial_loadmaps): Adjust.
4691 * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
4692 * solib-target.c (solib_target_current_sos): Adjust.
4693 * tracepoint.c (sdata_make_value): Adjust.
4694 * xml-support.c (xinclude_start_include): Adjust.
4695 (xml_fetch_content_from_file): Adjust.
4696 * xml-support.h (xml_fetch_another): Change return type.
4697 (xml_fetch_content_from_file): Change return type.
4698 * xml-syscall.c (xml_init_syscalls_info): Adjust.
4699 * xml-tdesc.c (file_read_description_xml): Adjust.
4700 (fetch_available_features_from_target): Change return type.
4701 (target_fetch_description_xml): Adjust.
4702 (target_read_description_xml): Adjust.
4703
4704 2018-04-06 Tom Tromey <tom@tromey.com>
4705
4706 * value.c (~value): Update.
4707 (struct value) <contents>: Now unique_xmalloc_ptr.
4708 (value_contents_bits_eq, allocate_value_contents)
4709 (value_contents_raw, value_contents_all_raw)
4710 (value_contents_for_printing, value_contents_for_printing_const)
4711 (set_value_enclosing_type): Update.
4712
4713 2018-04-06 Tom Tromey <tom@tromey.com>
4714
4715 * value.c (range_s): Remove typedef, VEC.
4716 (struct range): Add operator<.
4717 (range_lessthan): Remove.
4718 (ranges_contain): Change type.
4719 (~value): Update.
4720 (struct value) <unavailable, optimized_out>: Now std::vector.
4721 (value_entirely_available)
4722 (value_entirely_covered_by_range_vector)
4723 (value_entirely_unavailable, value_entirely_optimized_out):
4724 Update.
4725 (insert_into_bit_range_vector): Change argument type.
4726 (find_first_range_overlap): Likewise.
4727 (struct ranges_and_idx, value_contents_bits_eq)
4728 (require_not_optimized_out, require_available): Update.
4729 (ranges_copy_adjusted): Change argument types.
4730 (value_optimized_out, value_copy, value_fetch_lazy): Update.
4731
4732 2018-04-06 Tom Tromey <tom@tromey.com>
4733
4734 * value.c (~value): Update.
4735 (struct value) <parent>: Now a value_ref_ptr.
4736 (value_parent, set_value_parent, value_address, value_copy):
4737 Update.
4738
4739 2018-04-06 Tom Tromey <tom@tromey.com>
4740
4741 * value.c (struct value): Add constructor, destructor, and member
4742 initializers.
4743 (allocate_value_lazy, value_decref): Update.
4744
4745 2018-04-06 Tom Tromey <tom@tromey.com>
4746
4747 * value.c (struct value) <released, next>: Remove.
4748 (all_values): Now a std::vector.
4749 (allocate_value_lazy): Update.
4750 (value_next): Remove.
4751 (value_mark, value_free_to_mark, release_value)
4752 (value_release_to_mark): Update.
4753
4754 2018-04-06 Tom Tromey <tom@tromey.com>
4755
4756 * value.h (fetch_subexp_value, value_release_to_mark): Update.
4757 (free_value_chain): Remove.
4758 * value.c (free_value_chain): Remove.
4759 (value_release_to_mark): Return a std::vector.
4760 * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
4761 std::vector.
4762 (check_condition): Update.
4763 * eval.c (fetch_subexp_value): Change "val_chain" to a
4764 std::vector.
4765 * breakpoint.c (update_watchpoint): Update.
4766 (can_use_hardware_watchpoint): Change "vals" to a std::vector.
4767
4768 2018-04-06 Tom Tromey <tom@tromey.com>
4769
4770 * value.h (free_all_values): Remove.
4771 * value.c (free_all_values): Remove.
4772
4773 2018-04-06 Tom Tromey <tom@tromey.com>
4774
4775 * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
4776 (value_history_chain, value_history_count): Remove.
4777 (value_history): New global.
4778 (record_latest_value, access_value_history, show_values)
4779 (preserve_values): Update.
4780
4781 2018-04-06 Tom Tromey <tom@tromey.com>
4782
4783 * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
4784 * varobj.c (varobj_set_display_format, varobj_set_value)
4785 (install_default_visualizer, construct_visualizer)
4786 (install_new_value, ~varobj, varobj_get_value_type)
4787 (my_value_of_variable, varobj_editable_p): Update.
4788 * c-varobj.c (c_describe_child, c_value_of_variable)
4789 (cplus_number_of_children, cplus_describe_child): Update.
4790 * ada-varobj.c (ada_number_of_children, ada_name_of_child)
4791 (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
4792 (ada_value_of_variable, ada_value_is_changeable_p): Update.
4793
4794 2018-04-06 Tom Tromey <tom@tromey.com>
4795
4796 * printcmd.c (last_examine_address): Change type to
4797 value_ref_ptr.
4798 (do_examine, x_command): Update.
4799
4800 2018-04-06 Tom Tromey <tom@tromey.com>
4801
4802 * value.c (release_value): Update.
4803 * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
4804 (struct bpstats) <val>: Now a value_ref_ptr.
4805 * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
4806 (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
4807 (~watchpoint, print_it_watchpoint, watch_command_1)
4808 (invalidate_bp_value_on_memory_change): Update.
4809
4810 2018-04-06 Tom Tromey <tom@tromey.com>
4811
4812 * varobj.c (varobj_clear_saved_item)
4813 (update_dynamic_varobj_children, install_new_value, ~varobj):
4814 Update.
4815 * value.h (value_incref): Move declaration earlier.
4816 (value_decref): Rename from value_free.
4817 (struct value_ref_policy): New.
4818 (value_ref_ptr): New typedef.
4819 (struct value_deleter): Remove.
4820 (gdb_value_up): Remove typedef.
4821 (release_value): Change return type.
4822 (release_value_or_incref): Remove.
4823 * value.c (set_value_parent): Update.
4824 (value_incref): Change return type.
4825 (value_decref): Rename from value_free.
4826 (value_free_to_mark, free_all_values, free_value_chain): Update.
4827 (release_value): Return value_ref_ptr.
4828 (release_value_or_incref): Remove.
4829 (record_latest_value, set_internalvar, clear_internalvar):
4830 Update.
4831 * stack.c (info_frame_command): Don't call value_free.
4832 * python/py-value.c (valpy_dealloc, valpy_new)
4833 (value_to_value_object): Update.
4834 * printcmd.c (do_examine): Update.
4835 * opencl-lang.c (lval_func_free_closure): Update.
4836 * mi/mi-main.c (register_changed_p): Don't call value_free.
4837 * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
4838 * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
4839 * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
4840 value_free.
4841 * guile/scm-value.c (vlscm_free_value_smob)
4842 (vlscm_scm_from_value): Update.
4843 * frame.c (frame_register_unwind, frame_unwind_register_signed)
4844 (frame_unwind_register_unsigned, get_frame_register_bytes)
4845 (put_frame_register_bytes): Don't call value_free.
4846 * findvar.c (address_from_register): Don't call value_free.
4847 * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
4848 * dwarf2loc.c (entry_data_value_free_closure)
4849 (value_of_dwarf_reg_entry, free_pieced_value_closure)
4850 (dwarf2_evaluate_loc_desc_full): Update.
4851 * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
4852 (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
4853 (~watchpoint, watch_command_1)
4854 (invalidate_bp_value_on_memory_change): Update.
4855 * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
4856
4857 2018-04-06 Simon Marchi <simon.marchi@polymtl.ca>
4858
4859 PR gdb/23022
4860 * warning.m4: Add -Wno-error=deprecated-register.
4861 * configure: Re-generate.
4862
4863 2018-04-05 Tom Tromey <tom@tromey.com>
4864
4865 * linespec.h: Remove include of "vec.h".
4866
4867 2018-04-05 Tom Tromey <tom@tromey.com>
4868
4869 * linespec.c (typep): Remove typedef.
4870 (find_methods, find_superclass_methods): Take a std::vector.
4871 (find_method): Use std::vector.
4872
4873 2018-04-05 Tom Tromey <tom@tromey.com>
4874
4875 * utils.c (compare_strings): Remove.
4876 * utils.h (compare_strings): Remove.
4877 * objc-lang.h (find_imps): Update.
4878 * objc-lang.c (find_methods): Take a std::vector.
4879 (uniquify_strings, find_imps): Likewise.
4880 * linespec.c (find_methods): Take a std::vector.
4881 (decode_objc): Use std::vector.
4882 (add_all_symbol_names_from_pspace, find_superclass_methods): Take
4883 a std::vector.
4884 (find_method, find_function_symbols): Use std::vector.
4885
4886 2018-04-05 Tom Tromey <tom@tromey.com>
4887
4888 * completer.c (completion_tracker::completion_tracker): Remove
4889 cast.
4890 (completion_tracker::discard_completions): Likewise.
4891 * breakpoint.c (ambiguous_names_p): Remove cast.
4892 * ada-lang.c (_initialize_ada_language): Remove cast.
4893 * utils.h (streq): Update.
4894 (streq_hash): Add new declaration.
4895 * utils.c (streq): Return bool.
4896 (streq_hash): New function.
4897
4898 2018-04-05 Tom Tromey <tom@tromey.com>
4899
4900 * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
4901 Remove a string copy.
4902
4903 2018-04-05 Tom Tromey <tom@tromey.com>
4904
4905 * linespec.c (filter_results): Use std::vector.
4906 (decode_line_2, decode_line_full): Update.
4907
4908 2018-04-05 Tom Tromey <tom@tromey.com>
4909
4910 * linespec.c (canonical_to_fullform): Return std::string.
4911 (filter_results): Update.
4912 (struct decode_line_2_item): Add constructor.
4913 <fullform, displayform>: Now std::string.
4914 (decode_line_2_compare_items): Now a std::sort comparator.
4915 (decode_line_2): Update.
4916
4917 2018-04-05 Tom Tromey <tom@tromey.com>
4918
4919 * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
4920 (unexpected_linespec_error): Update.
4921 (linespec_parse_basic, parse_linespec): Update.
4922
4923 2018-04-05 Tom Tromey <tom@tromey.com>
4924
4925 * linespec.c (linespec_parse_basic): Reindent.
4926
4927 2018-04-05 Tom Tromey <tom@tromey.com>
4928
4929 * minsyms.h (iterate_over_minimal_symbols): Update.
4930 * minsyms.c (iterate_over_minimal_symbols): Take a
4931 gdb::function_view.
4932 * linespec.c (struct collect_minsyms): Remove.
4933 (compare_msyms): Now a std::sort comparator.
4934 (add_minsym): Add parameters.
4935 (search_minsyms_for_name): Update. Use std::vector.
4936
4937 2018-04-03 Tom Tromey <tom@tromey.com>
4938
4939 * mipsread.c (read_alphacoff_dynamic_symtab): Use
4940 gdb::byte_vector.
4941
4942 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
4943
4944 * MAINTAINERS (Write After Approval): Add Weimin Pan.
4945
4946 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
4947
4948 PR gdb/16959
4949 * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when
4950 printing static type.
4951
4952 2018-04-01 Tom Tromey <tom@tromey.com>
4953
4954 * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
4955 (rs6000_xfer_shared_libraries): Update.
4956
4957 2018-04-01 Simon Marchi <simon.marchi@polymtl.ca>
4958
4959 * common/gdb_vecs.h (char_ptr): Remove.
4960 * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
4961
4962 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
4963
4964 * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
4965 with std::vector.
4966 * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
4967
4968 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
4969
4970 * tracepoint.h (struct uploaded_tp): Initialize fields.
4971 <actions, step_actions, cmd_strings>: Change type to
4972 std::vector<char *>.
4973 * tracepoint.c (get_uploaded_tp): Allocate with new.
4974 (free_uploaded_tps): Free with delete.
4975 (parse_tracepoint_definition): Adjust to std::vector change.
4976 * breakpoint.c (read_uploaded_action): Likewise.
4977 (create_tracepoint_from_upload): Likewise.
4978 * ctf.c (ctf_write_uploaded_tp): Likewise.
4979 (SET_ARRAY_FIELD): Likewise.
4980 * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
4981
4982 2018-03-30 Tom Tromey <tom@tromey.com>
4983
4984 * solib-svr4.c (lm_info_read): Use gdb::byte_vector. Return
4985 std::unique_ptr.
4986 (svr4_keep_data_in_core): Update.
4987 (svr4_read_so_list): Update.
4988
4989 2018-03-30 Tom Tromey <tom@tromey.com>
4990
4991 * windows-nat.c (handle_output_debug_string, handle_exception):
4992 Update.
4993 * target.h (target_read_string): Update.
4994 * target.c (target_read_string): Change "string" to
4995 unique_xmalloc_ptr.
4996 * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
4997 Update.
4998 * solib-frv.c (frv_current_sos): Update.
4999 * solib-dsbt.c (dsbt_current_sos): Update.
5000 * solib-darwin.c (darwin_current_sos): Update.
5001 * linux-thread-db.c (inferior_has_bug): Update.
5002 * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
5003 Update. Remove alloca.
5004 * ada-lang.c (ada_main_name): Update.
5005
5006 2018-03-30 Tom Tromey <tom@tromey.com>
5007
5008 * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
5009 (struct dwo_file_deleter): New.
5010 (dwo_file_up): New typedef.
5011 (open_and_init_dwo_file): Use dwo_file_up.
5012 (free_dwo_file_cleanup): Remove.
5013
5014 2018-03-30 Tom Tromey <tom@tromey.com>
5015
5016 * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
5017 (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
5018
5019 2018-03-30 Tom Tromey <tom@tromey.com>
5020
5021 * dwarf2read.c (class free_cached_comp_units): New class.
5022 (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
5023 (free_cached_comp_units): Remove function.
5024
5025 2018-03-30 Tom Tromey <tom@tromey.com>
5026
5027 * utils.h (make_cleanup_unpush_target): Remove.
5028 * inf-ptrace.c (struct target_unpusher): New.
5029 (target_unpush_up) New typedef.
5030 (inf_ptrace_create_inferior, inf_ptrace_attach): Use
5031 target_unpush_up.
5032 * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
5033
5034 2018-03-27 Tom Tromey <tom@tromey.com>
5035
5036 * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
5037
5038 2018-03-27 Pedro Alves <palves@redhat.com>
5039 Tom Tromey <tom@tromey.com>
5040
5041 * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
5042 destructor. Now a class.
5043 (gdb_readline_wrapper_cleanup): Remove function.
5044 (gdb_readline_wrapper): Remove cleanups.
5045
5046 2018-03-27 Tom Tromey <tom@tromey.com>
5047
5048 * typeprint.h (struct type_print_options) <local_typedefs,
5049 global_typedefs>: Remove "struct" keyword.
5050 (class typedef_hash_table): New class.
5051 (recursively_update_typedef_hash, add_template_parameters)
5052 (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
5053 (find_typedef_in_hash): Don't declare.
5054 * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
5055 (typedef_hash_table::recursively_update): Rename from
5056 recursively_update_typedef_hash. Now a member.
5057 (typedef_hash_table::add_template_parameters): Rename from
5058 add_template_parameters. Now a member.
5059 (typedef_hash_table::typedef_hash_table): Now a constructor;
5060 rename from create_typedef_hash.
5061 (typedef_hash_table::~typedef_hash_table): Now a destructor;
5062 rename from free_typedef_hash.
5063 (do_free_typedef_hash, make_cleanup_free_typedef_hash)
5064 (do_free_global_table): Remove.
5065 (typedef_hash_table::typedef_hash_table): New constructor; renamed
5066 from copy_type_recursive.
5067 (create_global_typedef_table): Remove.
5068 (typedef_hash_table::find_global_typedef): Now a member of
5069 typedef_hash_table.
5070 (typedef_hash_table::find_typedef): Rename from
5071 find_typedef_in_hash; now a member.
5072 (whatis_exp): Update.
5073 * extension.h (struct ext_lang_type_printers): Add constructor and
5074 destructor.
5075 (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
5076 declare.
5077 * extension.c (ext_lang_type_printers::ext_lang_type_printers):
5078 Now a constructor; rename from start_ext_lang_type_printers.
5079 (ext_lang_type_printers): Now a destructor; rename from
5080 free_ext_lang_type_printers.
5081 * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
5082 Update.
5083 (c_type_print_base_struct_union): Update. Remove cleanups.
5084
5085 2018-03-27 Tom Tromey <tom@tromey.com>
5086
5087 * dwarf-index-write.c: Include <cmath>.
5088
5089 2018-03-27 Joel Brobecker <brobecker@adacore.com>
5090
5091 * NEWS: Add entry describing new "set|show varsize-limit" command.
5092 * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
5093 command.
5094 * printcmd.c (_initialize_printcmd): Add "set var" alias of
5095 "set variable".
5096
5097 2018-03-27 Simon Marchi <simon.marchi@ericsson.com>
5098
5099 * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
5100 dwarf-index-write.c
5101 (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
5102 * dwarf-index-common.c: New file.
5103 * dwarf-index-common.h: New file.
5104 * dwarf-index-write.c: New file.
5105 * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
5106 (struct dwarf2_section_info): Move from here.
5107 (dwarf2_section_info_def): Likewise.
5108 (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
5109 (offset_type): Likewise.
5110 (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
5111 (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
5112 (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
5113 (byte_swap): Likewise.
5114 (MAYBE_SWAP): Likewise.
5115 (dwarf2_per_cu_ptr): Likewise.
5116 (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
5117 (struct tu_stats): Likewise.
5118 (struct dwarf2_per_objfile): Likewise.
5119 (struct dwarf2_per_cu_data): Likewise.
5120 (struct signatured_type): Likewise.
5121 (sig_type_ptr): Likewise.
5122 (DEF_VEC_P (sig_type_ptr)): Likewise.
5123 (INDEX4_SUFFIX): Likewise.
5124 (INDEX5_SUFFIX): Likewise.
5125 (DEBUG_STR_SUFFIX): Likewise.
5126 (dwarf2_read_section): Make non-static.
5127 (mapped_index_string_hash): Move from here.
5128 (dwarf5_djb_hash): Likewise.
5129 (file_write): Likewise.
5130 (class data_buf): Likewise.
5131 (struct symtab_index_entry): Likewise.
5132 (struct mapped_symtab): Likewise.
5133 (find_slot): Likewise.
5134 (hash_expand): Likewise.
5135 (add_index_entry): Likewise.
5136 (uniquify_cu_indices): Likewise.
5137 (class c_str_view): Likewise.
5138 (class c_str_view_hasher): Likewise.
5139 (class vector_hasher): Likewise.
5140 (write_hash_table): Likewise.
5141 (psym_index_map): Likewise.
5142 (struct addrmap_index_data): Likewise.
5143 (add_address_entry): Likewise.
5144 (add_address_entry_worker): Likewise.
5145 (write_address_map): Likewise.
5146 (symbol_kind): Likewise.
5147 (write_psymbols): Likewise.
5148 (struct signatured_type_index_data): Likewise.
5149 (write_one_signatured_type): Likewise.
5150 (recursively_count_psymbols): Likewise.
5151 (recursively_write_psymbols): Likewise.
5152 (class debug_names): Likewise.
5153 (check_dwarf64_offsets): Likewise.
5154 (psyms_seen_size): Likewise.
5155 (write_gdbindex): Likewise.
5156 (write_debug_names): Likewise.
5157 (assert_file_size): Likewise.
5158 (write_psymtabs_to_index): Likewise.
5159 (save_gdb_index_command): Likewise.
5160 (_initialize_dwarf2_read): Don't register the "save gdb-index"
5161 command.
5162 * dwarf2read.h: New file.
5163
5164 2018-03-27 Joel Brobecker <brobecker@adacore.com>
5165
5166 PR gdb/22670
5167 * dwarf2read.c (dwarf2_physname): Do not return the demangled
5168 symbol name if the CU's language stores symbol names in linkage
5169 format.
5170 * language.h (struct language_defn)
5171 <la_store_sym_names_in_linkage_form_p>: New field. Adjust
5172 all instances of this struct.
5173
5174 2018-03-26 Tom Tromey <tom@tromey.com>
5175
5176 * stack.c (backtrace_command_1): Remove verbose code.
5177
5178 2018-03-26 Tom Tromey <tom@tromey.com>
5179
5180 * python/py-framefilter.c (py_print_type): Don't catch
5181 exceptions. Return void.
5182 (py_print_value): Likewise.
5183 (py_print_single_arg): Likewise.
5184 (enumerate_args): Don't catch exceptions.
5185 (py_print_args): Likewise.
5186 (py_print_frame): Likewise.
5187 (gdbpy_apply_frame_filter): Catch exceptions here.
5188
5189 2018-03-26 Tom Tromey <tom@tromey.com>
5190
5191 * stack.c (_initialize_stack): Remove trailing newlines from help
5192 text. Add "Usage" line to "backtrace" help.
5193
5194 2018-03-26 Tom Tromey <tom@tromey.com>
5195
5196 PR python/16486:
5197 * python/py-framefilter.c (py_print_args): Call wrap_hint.
5198
5199 2018-03-26 Tom Tromey <tom@tromey.com>
5200
5201 * python/py-framefilter.c (py_print_single_arg): Return
5202 EXT_LANG_BT_ERROR from catch.
5203
5204 2018-03-26 Tom Tromey <tom@tromey.com>
5205
5206 PR backtrace/15584:
5207 * stack.c (backtrace_command_1): Move some code into no-filters
5208 "if".
5209
5210 2018-03-26 Tom Tromey <tom@tromey.com>
5211
5212 * python/py-framefilter.c (throw_quit_or_print_exception): New
5213 function.
5214 (gdbpy_apply_frame_filter): Use it.
5215
5216 2018-03-26 Tom Tromey <tom@tromey.com>
5217
5218 PR cli/17716:
5219 * python/py-framefilter.c (py_print_type, py_print_value)
5220 (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
5221 RETURN_MASK_ERROR.
5222
5223 2018-03-26 Tom Tromey <tom@tromey.com>
5224
5225 * python/py-framefilter.c (enumerate_args): Use
5226 gdb::unique_xmalloc_ptr.
5227
5228 2018-03-26 Tom Tromey <tom@tromey.com>
5229
5230 * python/py-framefilter.c (py_print_frame): Return
5231 EXT_LANG_BT_OK.
5232 (gdbpy_apply_frame_filter): Update comment.
5233 * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
5234 Remove.
5235 <EXT_LANG_BT_NO_FILTERS>: Change value.
5236
5237 2018-03-26 Tom Tromey <tom@tromey.com>
5238
5239 PR backtrace/15582:
5240 * stack.c (backtrace_command): Parse "hide" argument.
5241 * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
5242 * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
5243 constant.
5244
5245 2018-03-26 Tom Tromey <tom@tromey.com>
5246
5247 * stack.c (backtrace_command_1): Remove "show_locals" parameter,
5248 add "flags".
5249 (backtrace_command): Remove "fulltrace", add "flags".
5250
5251 2018-03-26 Tom Tromey <tom@tromey.com>
5252
5253 * stack.c (backtrace_command): Rewrite command line parsing.
5254
5255 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
5256
5257 * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
5258
5259 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
5260
5261 * filename-seen-cache.h: Add include guard.
5262
5263 2018-03-26 Keith Seitz <keiths@redhat.com>
5264
5265 * symfile.c (place_section): Remove "struct" from section_addr_info
5266 in comment.
5267 * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
5268 "struct" keyword from section_addr_info.
5269
5270 2018-03-26 Alan Hayward <alan.hayward@arm.com>
5271
5272 * regformats/regdef.h (reg): Add constructors.
5273
5274 2018-03-25 Pedro Alves <palves@redhat.com>
5275
5276 * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
5277 if then/else bodies in var_func_name extraction.
5278
5279 2018-03-23 Weimin Pan <weimin.pan@oracle.com>
5280
5281 * minsyms.c (lookup_minimal_symbol_and_objfile): Use
5282 lookup_minimal_symbol() to find symbol entry.
5283 * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
5284
5285 2018-03-23 Keith Seitz <keiths@redhat.com>
5286
5287 PR c++/22968
5288 * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
5289 nested type definitions for C++, too.
5290
5291 2018-03-23 Tom Tromey <tom@tromey.com>
5292
5293 * machoread.c (struct oso_el): Add a constructor. Don't define as
5294 a typedef.
5295 (macho_register_oso): Remove.
5296 (macho_symtab_read): Take a std::vector.
5297 (oso_el_compare_name): Now a std::sort comparator.
5298 (macho_symfile_read_all_oso): Take a std::vector.
5299 (macho_symfile_read): Use std::vector. Remove cleanups.
5300
5301 2018-03-22 Tom Tromey <tom@tromey.com>
5302
5303 * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
5304 (record_full_goto_bookmark): Use std::string.
5305
5306 2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
5307
5308 PR tdep/18295
5309 * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
5310 a single mask.
5311
5312 2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
5313
5314 * rs6000-tdep.c (store_insn_p): New function.
5315 (skip_prologue): New variable alloca_reg_offset. Set lr_reg
5316 and cr_reg to their unshifted values. Use store_insn_p to
5317 match LR saves using either R1 or fdata->alloca_reg. Use
5318 store_insn_p to match CR saves. Set alloca_reg_offset
5319 when alloca_reg and framep are set. Remove lr_reg shift
5320 when assigning to fdata->lr_register.
5321
5322 2018-03-22 Andreas Arnez <arnez@linux.vnet.ibm.com>
5323
5324 * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
5325 command line args instead of emitting a warning.
5326
5327 2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
5328
5329 * tracepoint.h (struct static_tracepoint_marker): Initialize
5330 fields, define default constructor, move constructor and move
5331 assignment, disable the rest.
5332 <str_id, extra>: Make std::string.
5333 (release_static_tracepoint_marker): Remove.
5334 (free_current_marker): Remove.
5335 * tracepoint.c (free_current_marker): Remove.
5336 (parse_static_tracepoint_marker_definition): Adjust to
5337 std::string, use new hex2str overload.
5338 (release_static_tracepoint_marker): Remove.
5339 (print_one_static_tracepoint_marker): Get marker by reference
5340 and adjust to std::string.
5341 (info_static_tracepoint_markers_command): Adjust to std::vector
5342 changes
5343 * target.h (static_tracepoint_marker_p): Remove typedef.
5344 (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
5345 (struct target_ops) <to_static_tracepoint_marker_at>: Return
5346 bool.
5347 <to_static_tracepoint_markers_by_strid>: Return std::vector.
5348 * target-debug.h
5349 (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
5350 (target_debug_print_std_vector_static_tracepoint_marker): New.
5351 (target_debug_print_struct_static_tracepoint_marker_p): Rename
5352 to...
5353 (target_debug_print_static_tracepoint_marker_p): ... this.
5354 * target-delegates.c: Re-generate.
5355 * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
5356 Make std::string.
5357 * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
5358 (decode_static_tracepoint_spec): Adjust to std::vector.
5359 (tracepoint_print_one_detail): Adjust to std::string.
5360 (strace_marker_decode_location): Adjust to std::string.
5361 (update_static_tracepoint): Adjust to std::string, remove call
5362 to release_static_tracepoint_marker.
5363 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
5364 Adjust to std::vector.
5365 * remote.c (remote_static_tracepoint_marker_at): Return bool.
5366 (remote_static_tracepoint_markers_by_strid): Adjust to
5367 std::vector.
5368 * common/rsp-low.h (hex2str): New overload with explicit count
5369 of bytes.
5370 * common/rsp-low.c (hex2str): New overload with explicit count
5371 of bytes.
5372 * unittests/rsp-low-selftests.c (test_hex2str): New function.
5373 (_initialize_rsp_low_selftests): Add test_hex2str test.
5374 * unittests/tracepoint-selftests.c
5375 (test_parse_static_tracepoint_marker_definition): Adjust to
5376 std::string.
5377
5378 2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
5379
5380 * tracepoint.c (parse_static_tracepoint_marker_definition):
5381 Consider case where the definition is followed by more
5382 definitions.
5383 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5384 tracepoint-selftests.c.
5385 * unittests/tracepoint-selftests.c: New.
5386
5387 2018-03-21 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
5388
5389 * MAINTAINERS (Write After Approval): Add Pedro Franco de
5390 Carvalho.
5391
5392 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
5393
5394 * symtab.c (find_pc_sect_line): fixed indentation.
5395
5396 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
5397
5398 * symtab.c (find_pc_sect_line): now uses binary search.
5399
5400 2018-03-19 Tom Tromey <tom@tromey.com>
5401
5402 * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
5403 "IDENT" production.
5404
5405 2018-03-19 Pedro Alves <palves@redhat.com>
5406 Tom Tromey <tom@tromey.com>
5407
5408 * unittests/observable-selftests.c: New file.
5409 * common/observable.h: New file.
5410 * observable.h: New file.
5411 * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
5412 arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
5413 breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
5414 corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
5415 extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
5416 infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
5417 linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
5418 mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
5419 ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
5420 python/py-breakpoint.c, python/py-finishbreakpoint.c,
5421 python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
5422 record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
5423 riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
5424 spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
5425 symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
5426 tui/tui-interp.c, valops.c: Update all users.
5427 * tui/tui-hooks.c (tui_bp_created_observer)
5428 (tui_bp_deleted_observer, tui_bp_modified_observer)
5429 (tui_inferior_exit_observer, tui_before_prompt_observer)
5430 (tui_normal_stop_observer, tui_register_changed_observer):
5431 Remove.
5432 (tui_observers_token): New global.
5433 (attach_or_detach, tui_attach_detach_observers): New functions.
5434 (tui_install_hooks, tui_remove_hooks): Use
5435 tui_attach_detach_observers.
5436 * record-btrace.c (record_btrace_thread_observer): Remove.
5437 (record_btrace_thread_observer_token): New global.
5438 * observer.sh: Remove.
5439 * observer.c: Rename to observable.c.
5440 * observable.c (namespace gdb_observers): Define new objects.
5441 (observer_debug): Move into gdb_observers namespace.
5442 (struct observer, struct observer_list, xalloc_observer_list_node)
5443 (xfree_observer_list_node, generic_observer_attach)
5444 (generic_observer_detach, generic_observer_notify): Remove.
5445 (_initialize_observer): Update.
5446 Don't include observer.inc.
5447 * Makefile.in (generated_files): Remove observer.h, observer.inc.
5448 (clean mostlyclean): Likewise.
5449 (observer.h, observer.inc): Remove targets.
5450 (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
5451 (COMMON_SFILES): Use observable.c, not observer.c.
5452 * .gitignore: Remove observer.h.
5453
5454 2018-03-18 Tom Tromey <tom@tromey.com>
5455
5456 * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
5457 gdb::def_vector.
5458 (bfd_lookup_symbol_from_dyn_symtab): Likewise.
5459
5460 2018-03-17 Tom Tromey <tom@tromey.com>
5461
5462 * auto-load.c (auto_load_objfile_script_1): Use std::string.
5463
5464 2018-03-17 Tom Tromey <tom@tromey.com>
5465
5466 * target.c (class scoped_target_fd): New.
5467 (target_fileio_close_cleanup): Remove.
5468 (target_fileio_read_alloc_1): Use scoped_target_fd.
5469
5470 2018-03-16 Simon Marchi <simon.marchi@polymtl.ca>
5471
5472 * silent-rules.mk: New.
5473 * Makefile.in: Include silent-rules.mk
5474 (srcdir, VPATH, top_srcdir): Move up.
5475 (COMPILE): Add ECHO_CXX.
5476 (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
5477 (init.c): Add ECHO_INIT_C.
5478 (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
5479 (version.c): Add ECHO_GEN.
5480 (printcmd.o): Add ECHO_CXX.
5481 (target-float.o): Add ECHO_CXX.
5482 (ada-exp.o): Add ECHO_CXX.
5483 (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
5484 (insight$(EXEEXT)): Add ECHO_CXXLD.
5485 * gnulib/configure.ac: Add AM_SILENT_RULES.
5486 * gnulib/aclocal.m4: Re-generate.
5487 * gnulib/configure: Re-generate.
5488 * gnulib/import/Makefile.in: Re-generate.
5489
5490 2018-03-16 Tom Tromey <tom@tromey.com>
5491
5492 * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
5493 * utils.h (make_cleanup_free_section_addr_info): Don't declare.
5494 * utils.c (do_free_section_addr_info)
5495 (make_cleanup_free_section_addr_info): Remove.
5496 * symfile.h (struct other_sections): Add constructor.
5497 (struct section_addr_info): Remove.
5498 (section_addr_info): New typedef.
5499 (struct sym_fns) <sym_offsets>: Change type of parameter.
5500 (build_section_addr_info_from_objfile)
5501 (relative_addr_info_to_section_offsets, addr_info_make_relative)
5502 (default_symfile_offsets, symbol_file_add)
5503 (symbol_file_add_from_bfd)
5504 (build_section_addr_info_from_section_table): Update.
5505 (alloc_section_addr_info, free_section_addr_info): Don't declare.
5506 * symfile.c (alloc_section_addr_info): Remove.
5507 (build_section_addr_info_from_section_table): Change return type.
5508 Update.
5509 (build_section_addr_info_from_bfd)
5510 (build_section_addr_info_from_objfile): Likewise.
5511 (free_section_addr_info): Remove.
5512 (relative_addr_info_to_section_offsets): Change type of "addrs".
5513 (addrs_section_compar): Now a std::sort comparator.
5514 (addrs_section_sort): Change return type.
5515 (addr_info_make_relative): Change type of "addrs". Update.
5516 (default_symfile_offsets, syms_from_objfile_1)
5517 (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
5518 (symbol_file_add_separate): Update.
5519 (symbol_file_add): Change type of "addrs". Update.
5520 (add_symbol_file_command): Update. Remove cleanups.
5521 * symfile-mem.c (symbol_file_add_from_memory): Update. Remove
5522 cleanups.
5523 * symfile-debug.c (debug_sym_offsets): Change type of "info".
5524 * solib.c (solib_read_symbols): Update.
5525 * objfiles.c (objfile_relocate): Update. Remove cleanups.
5526 * machoread.c (macho_symfile_offsets): Update.
5527 * jit.c (jit_bfd_try_read_symtab): Update.
5528
5529 2018-03-15 Simon Marchi <simon.marchi@polymtl.ca>
5530
5531 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5532 unittests/utils-selftests.c.
5533 * unittests/utils-selftests.c: New file.
5534
5535 2018-03-14 Tom Tromey <tom@tromey.com>
5536
5537 PR cli/14977:
5538 * printcmd.c (printf_c_string, printf_wide_c_string): Special case
5539 for NULL.
5540
5541 2018-03-14 Tom Tromey <tom@tromey.com>
5542
5543 PR cli/19918:
5544 * printcmd.c (printf_pointer): Allow "-" in format.
5545
5546 2018-03-14 Tom Tromey <tom@tromey.com>
5547
5548 * printcmd.c (_initialize_printcmd): Add usage to printf.
5549
5550 2018-03-14 Yao Qi <qiyao@sourceware.org>
5551
5552 * MAINTAINERS: Update my email address.
5553
5554 2018-03-13 Tom Tromey <tom@tromey.com>
5555
5556 * machoread.c (macho_check_dsym): Change filenamep to a
5557 std::string*.
5558 (macho_symfile_read): Update.
5559 * symfile.c (load_command): Use std::string.
5560
5561 2018-03-12 Andrew Burgess <andrew.burgess@embecosm.com>
5562
5563 * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
5564 to error message string.
5565 (riscv_register_name): Use xsnprintf instead of sprintf.
5566 (riscv_insn::fetch_instruction): Use gdb_assert instead of
5567 internal_error.
5568 (riscv_print_arg_location): Use gdb_assert_not_reached instead of
5569 error.
5570 (riscv_push_dummy_call): Likewise.
5571
5572 2018-03-12 Tom Tromey <tom@tromey.com>
5573
5574 * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
5575 Use gdb::byte_vector.
5576 * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
5577
5578 2018-03-12 Yao Qi <yao.qi@linaro.org>
5579
5580 * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
5581 parameter type to readable_regcache.
5582 * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
5583 the declaration.
5584
5585 2018-03-11 Tom Tromey <tom@tromey.com>
5586
5587 * dwarf2read.c (struct nextfield): Add initializers.
5588 (struct nextfnfield): Remove.
5589 (struct fnfieldlist): Add initializers. Remove "length" and
5590 "head", use std::vector.
5591 (struct decl_field_list): Remove.
5592 (struct field_info): Add initializers.
5593 <fields, baseclasses>: Now std::vector.
5594 <nbaseclasses, nfnfields, typedef_field_list_count,
5595 nested_types_list_count>: Remove.
5596 (dwarf2_add_field, dwarf2_add_type_defn)
5597 (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
5598 (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
5599 (process_structure_scope): Update.
5600
5601 2018-03-11 Tom Tromey <tom@tromey.com>
5602
5603 * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
5604 for use by std::sort.
5605 (build_type_psymtabs_1): Use std::vector.
5606
5607 2018-03-09 Eli Zaretskii <eliz@gnu.org>
5608
5609 * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
5610 and LIBMPFR in the printed configuration.
5611
5612 2018-03-08 Tom Tromey <tom@tromey.com>
5613
5614 * source.c (get_filename_and_charpos): Use scoped_fd.
5615 * nto-procfs.c (procfs_open_1): Use scoped_fd.
5616 (procfs_pidlist): Likewise.
5617 * procfs.c (proc_get_LDT_entry): Use scoped_fd.
5618 (iterate_over_mappings): Likewise.
5619
5620 2018-03-08 Tom Tromey <tom@tromey.com>
5621
5622 * infcall.c (struct call_return_meta_info)
5623 <stack_temporaries_enabled>: Remove.
5624 (get_call_return_value, call_function_by_hand_dummy): Update.
5625 * thread.c (disable_thread_stack_temporaries): Remove.
5626 (enable_thread_stack_temporaries): Remove.
5627 (thread_stack_temporaries_enabled_p): Return bool.
5628 (push_thread_stack_temporary, value_in_thread_stack_temporaries)
5629 (get_last_thread_stack_temporary): Update.
5630 * eval.c (evaluate_subexp): Update.
5631 * gdbthread.h (class enable_thread_stack_temporaries): Now a
5632 class, not a function.
5633 (value_ptr, value_vec): Remove typedefs.
5634 (class thread_info) <stack_temporaries_enabled>: Now bool.
5635 <stack_temporaries>: Now a std::vector.
5636 (thread_stack_temporaries_enabled_p)
5637 (value_in_thread_stack_temporaries): Return bool.
5638
5639 2018-03-08 Simon Marchi <simon.marchi@ericsson.com>
5640
5641 * remote.c (putpkt_binary): Fix omitted bytes reporting.
5642 (getpkt_or_notif_sane_1): Likewise.
5643
5644 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
5645
5646 * build-id.c (build_id_to_debug_bfd): Use std::string.
5647
5648 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
5649
5650 * build-id.c (find_separate_debug_file_by_buildid): Return
5651 std::string.
5652 * build-id.h (find_separate_debug_file_by_buildid): Return
5653 std::string.
5654 * coffread.c (coff_symfile_read): Adjust to std::string.
5655 * elfread.c (elf_symfile_read): Adjust to std::string.
5656 * symfile.c (separate_debug_file_exists): Change parameter to
5657 std::string.
5658 (find_separate_debug_file): Return std::string.
5659 (find_separate_debug_file_by_debuglink): Return std::string.
5660 * symfile.h (find_separate_debug_file_by_debuglink): Return
5661 std::string.
5662
5663 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
5664
5665 * common/xml-utils.c (xml_escape_text): Move code to...
5666 (xml_escape_text_append): ... this new function.
5667 * common/xml-utils.h (xml_escape_text_append): New declaration.
5668 * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
5669 New function.
5670 (_initialize_xml_utils): register test_xml_escape_text_append as
5671 a selftest.
5672
5673 2018-03-07 Alan Hayward <alan.hayward@arm.com>
5674
5675 * defs.h: Remove MAX_REGISTER_SIZE.
5676 * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
5677 asserts.
5678 * python/py-unwind.c (pyuw_sniffer): Likewise.
5679
5680 2018-03-07 Tom Tromey <tom@tromey.com>
5681
5682 * linux-tdep.c (linux_info_proc): Update.
5683 * target.h (struct target_ops) <to_fileio_readlink>: Return
5684 optional<string>.
5685 (target_fileio_readlink): Return optional<string>.
5686 * remote.c (remote_hostio_readlink): Return optional<string>.
5687 * inf-child.c (inf_child_fileio_readlink): Return
5688 optional<string>.
5689 * target.c (target_fileio_readlink): Return optional<string>.
5690
5691 2018-03-07 Andrew Burgess <andrew.burgess@embecosm.com>
5692
5693 * regcache.c (cooked_read_test): Add riscv to the list of
5694 architectures that have a save_reggroup.
5695
5696 2018-03-07 Andreas Arnez <arnez@linux.vnet.ibm.com>
5697
5698 * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
5699 value is not a dynamic class object.
5700
5701 2018-03-06 Tom Tromey <tom@tromey.com>
5702
5703 * rust-exp.y: Formatting fixes.
5704
5705 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5706
5707 * riscv-tdep.c (riscv_register_name): Remove target description
5708 support.
5709 (riscv_gdbarch_init): Remove target description check.
5710
5711 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5712
5713 * riscv-tdep.c: Remove 'Contributed by ...' lines from header
5714 comment.
5715 * riscv-tdep.h: Likewise.
5716
5717 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5718
5719 * riscv-tdep.c (riscv_pseudo_register_read): Delete.
5720 (riscv_pseudo_register_write): Delete.
5721 (riscv_gdbarch_init): Remove all use of pseudo registers.
5722
5723 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
5724
5725 * record-btrace.c (btrace_print_lines): Replace cleanup
5726 parameter with RAII equivalents.
5727 (btrace_insn_history): Replace cleanup with RAII equivalents.
5728 * ui-out.h (make_cleanup_ui_out_list_begin_end,
5729 make_cleanup_ui_out_tuple_begin_end): Remove.
5730 * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
5731 make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
5732 make_cleanup_ui_out_list_begin_end): Remove.
5733
5734 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
5735
5736 * record-btrace.c (record_btrace_maybe_mark_async_event): Change
5737 parameter types to std::vector. Use bool.
5738 (record_btrace_wait): Replace VEC(tp_t) with
5739 std::vector<thread_info *>.
5740 * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
5741
5742 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
5743
5744 * record-btrace.c (record_btrace_disable_callback): Remove.
5745 (struct scoped_btrace_disable): New.
5746 (record_btrace_open): Use scoped_btrace_disable.
5747
5748 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5749
5750 * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
5751 reading values from registers.
5752
5753 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5754
5755 * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
5756 where appropriate.
5757
5758 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5759
5760 * riscv-tdep.c (riscv_print_arg_location): Add header comment,
5761 change parameter type. Use GDB's print functions, and use
5762 core_addr_to_string where appropriate.
5763 (riscv_push_dummy_call): Use core_addr_to_string where
5764 appropriate, update call to riscv_print_arg_location, and reindent
5765 a few lines.
5766 (riscv_return_value): Update call to riscv_print_arg_location.
5767
5768 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5769 Tim Newsome <tim@sifive.com>
5770 Albert Ou <a0u@eecs.berkeley.edu>
5771 Darius Rad <darius@bluespec.com>
5772
5773 * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
5774 (HFILES_NO_SRCDIR): Add riscv-tdep.h.
5775 (ALLDEPFILES): Add riscv-tdep.c
5776 * configure.tgt: Add riscv support.
5777 * riscv-tdep.c: New file.
5778 * riscv-tdep.h: New file.
5779 * NEWS: Mention new target.
5780 * MAINTAINERS: Add entry for riscv.
5781
5782 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
5783
5784 * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
5785 fields within aggregates.
5786
5787 2018-03-04 Simon Marchi <simon.marchi@polymtl.ca>
5788
5789 * record-btrace.c (btrace_print_lines): Change type of flags to
5790 gdb_disassembly_flags.
5791
5792 2018-03-04 John Baldwin <jhb@FreeBSD.org>
5793
5794 * fbsd-nat.c: Include "inf-ptrace.h".
5795 (USE_SIGTRAP_SIGINFO): Conditionally define.
5796 [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
5797 (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
5798 [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
5799 function.
5800 [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
5801 Likewise.
5802 [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
5803 Likewise.
5804 (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
5805 "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
5806 "supports_stopped_by_hw_breakpoint" target methods.
5807
5808 2018-03-04 John Baldwin <jhb@FreeBSD.org>
5809
5810 * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
5811 * fbsd-nat.c (debug_fbsd_nat): New variable.
5812 (show_fbsd_nat_debug): New function.
5813 (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
5814 (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
5815
5816 2018-03-04 John Baldwin <jhb@FreeBSD.org>
5817
5818 * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
5819 * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
5820 prototype.
5821 * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
5822 (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
5823 method.
5824
5825 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
5826
5827 * common/gdb_vecs.c (free_char_ptr_vec): Remove.
5828 * common/gdb_vecs.h (free_char_ptr_vec): Remove.
5829
5830 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
5831
5832 * charset.c (struct charset_vector): New.
5833 (charsets): Change type to charset_vector.
5834 (find_charset_names): Adjust.
5835 (add_one): Adjust.
5836 (_initialize_charset): Adjust.
5837
5838 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
5839
5840 * progspace.h (struct program_space) <deleted_solibs>: Change
5841 type to std::vector<std::string>.
5842 * progspace.c (clear_program_space_solib_cache): Adjust.
5843 * breakpoint.c (print_solib_event): Adjust.
5844 (check_status_catch_solib): Adjust.
5845 * solib.c (update_solib_list): Adjust.
5846 * ui-out.h (class ui_out) <field_string>: New overload.
5847 * ui-out.c (ui_out::field_string): New overload.
5848
5849 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
5850
5851 * progspace.h (struct program_space): Add constructor and
5852 destructor, initialize fields.
5853 (add_program_space): Remove.
5854 * progspace.c (add_program_space): Rename to...
5855 (program_space::program_space): ... this.
5856 (release_program_space): Rename to...
5857 (program_space::~program_space): ... this.
5858 (delete_program_space): Use delete to delete program_space.
5859 (initialize_progspace): Use new to allocate program_space.
5860 * inferior.c (add_inferior_with_spaces): Likewise.
5861 (clone_inferior_command): Likewise.
5862 * infrun.c (follow_fork_inferior): Likewise.
5863 (handle_vfork_child_exec_or_exit): Likewise.
5864
5865 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
5866
5867 * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
5868 (delim_string_to_char_ptr_vec): Return std::vector of
5869 gdb::unique_xmalloc_ptr.
5870 (dirnames_to_char_ptr_vec_append): Take std::vector of
5871 gdb::unique_xmalloc_ptr.
5872 (dirnames_to_char_ptr_vec): Return std::vector of
5873 gdb::unique_xmalloc_ptr.
5874 * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
5875 Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
5876 (delim_string_to_char_ptr_vec): Return an std::vector of
5877 gdb::unique_xmalloc_ptr, adjust the code.
5878 (dirnames_to_char_ptr_vec_append): Take an std::vector of
5879 gdb::unique_xmalloc_ptr, adjust the code.
5880 (dirnames_to_char_ptr_vec): Return an std::vector of
5881 gdb::unique_xmalloc_ptr, adjust the code.
5882 * auto-load.c (auto_load_safe_path_vec): Change type to
5883 std::vector of gdb::unique_xmalloc_ptr.
5884 (auto_load_expand_dir_vars): Return an std::vector of
5885 gdb::unique_xmalloc_ptr, adjust the code.
5886 (auto_load_safe_path_vec_update): Adjust.
5887 (filename_is_in_auto_load_safe_path_vec): Adjust.
5888 (auto_load_objfile_script_1): Adjust.
5889 * build-id.c (build_id_to_debug_bfd): Adjust.
5890 * linux-thread-db.c (thread_db_load_search): Adjust.
5891 * source.c (add_path): Adjust.
5892 (openp): Adjust.
5893 * symfile.c (find_separate_debug_file): Adjust.
5894 * utils.c (do_free_char_ptr_vec): Remove.
5895 (make_cleanup_free_char_ptr_vec): Remove.
5896
5897 2018-03-01 Sergio Durigan Junior <sergiodj@redhat.com>
5898
5899 PR gdb/22907
5900 * common/pathstuff.c: Conditionally include "<windows.h>".
5901
5902 2018-03-01 Georg Sauthoff <mail@georg.so>
5903
5904 PR gdb/22888
5905 * gcore.in: Quote variables and switch interpreter to bash.
5906
5907 2018-03-01 Tom Tromey <tom@tromey.com>
5908
5909 * dwarf2read.c (alloc_discriminant_info): Fix default_index
5910 assertion. Add assertion for discriminant_index.
5911 (quirk_rust_enum): Use correct base type name in univariant case.
5912
5913 2018-03-01 Simon Marchi <simon.marchi@ericsson.com>
5914
5915 * record.c (get_call_history_modifiers): Return a
5916 record_print_flags.
5917 (cmd_record_call_history): Adjust.
5918 * record-btrace.c (record_btrace_call_history): Adjust.
5919 (record_btrace_call_history_range): Adjust.
5920 (record_btrace_call_history_from): Adjust.
5921 * target-debug.h (target_debug_print_record_print_flags): New.
5922 * target-delegates.c: Re-generate.
5923 * target.c (target_call_history): Change flags type.
5924 (target_call_history_from): Likewise.
5925 (target_call_history_range): Likewise.
5926 * target.h (struct target_ops) <target_call_history>: Likewise.
5927 (target_call_history_from): Likewise.
5928 (target_call_history_range): Likewise.
5929
5930 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
5931 Simon Marchi <simon.marchi@polymtl.ca>
5932
5933 * common/common-utils.c: Include "sys/stat.h".
5934 (is_regular_file): Move here from "source.c"; change return
5935 type to "bool".
5936 * common/common-utils.h (is_regular_file): New prototype.
5937 * common/pathstuff.c (contains_dir_separator): New function.
5938 * common/pathstuff.h (contains_dir_separator): New prototype.
5939 * source.c: Don't include "sys/stat.h".
5940 (is_regular_file): Move to "common/common-utils.c".
5941
5942 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
5943
5944 * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
5945 (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
5946 * auto-load.c: Include "common/pathstuff.h".
5947 * common/common-def.h (current_directory): Move here.
5948 * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
5949 function.
5950 * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
5951 prototype.
5952 * common/pathstuff.c: New file.
5953 * common/pathstuff.h: New file.
5954 * compile/compile.c: Include "common/pathstuff.h".
5955 * defs.h (current_directory): Move to "common/common-defs.h".
5956 * dwarf2read.c: Include "common/pathstuff.h".
5957 * exec.c: Likewise.
5958 * guile/scm-safe-call.c: Likewise.
5959 * linux-thread-db.c: Likewise.
5960 * main.c: Likewise.
5961 * nto-tdep.c: Likewise.
5962 * objfiles.c: Likewise.
5963 * source.c: Likewise.
5964 * symtab.c: Likewise.
5965 * utils.c: Include "common/pathstuff.h".
5966 (gdb_realpath): Move to "common/pathstuff.c".
5967 (gdb_realpath_keepfile): Likewise.
5968 (gdb_abspath): Likewise.
5969 * utils.h (gdb_realpath): Move to "common/pathstuff.h".
5970 (gdb_realpath_keepfile): Likewise.
5971 (gdb_abspath): Likewise.
5972
5973 2018-02-28 John Baldwin <jhb@FreeBSD.org>
5974
5975 * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
5976 wildcard process pid for super_resume for kernels with a
5977 specific bug.
5978
5979 2018-02-27 Phil Muldoon <pmuldoon@redhat.com>
5980
5981 * compile/compile.c (get_args): Add additional comments
5982 explaining function.
5983
5984 2018-02-27 Simon Marchi <simon.marchi@polymtl.ca>
5985 Tom Tromey <tom@tromey.com>
5986
5987 * target.h (memory_write_request_s): Remove typedef. Don't define
5988 VEC.
5989 (target_write_memory_blocks): Change argument to std::vector.
5990 (struct memory_write_request): Add constructor.
5991 * target-memory.c (compare_block_starting_address): Return bool.
5992 Change argument types.
5993 (claim_memory): Change arguments to use std::vector.
5994 (split_regular_and_flash_blocks, blocks_to_erase)
5995 (compute_garbled_blocks): Likewise.
5996 (cleanup_request_data, cleanup_write_requests_vector): Remove.
5997 (target_write_memory_blocks): Change argument to std::vector.
5998 * symfile.c (struct load_section_data): Add constructor and
5999 destructor. Use std::vector for "requests".
6000 (struct load_progress_data): Add initializers.
6001 (load_section_callback): Update. Use "new".
6002 (clear_memory_write_data): Remove.
6003 (generic_load): Update.
6004
6005 2018-02-27 Alan Hayward <alan.hayward@arm.com>
6006
6007 * arch/aarch64.h: Use common/tdesc.h.
6008
6009 2018-02-26 Maciej W. Rozycki <macro@mips.com>
6010
6011 * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
6012 architecture with a 64-bit ABI.
6013
6014 2018-02-26 Maciej W. Rozycki <macro@mips.com>
6015
6016 * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
6017 ahead of target description loading.
6018
6019 2018-02-26 Tom Tromey <tom@tromey.com>
6020
6021 * stack.c (backtrace_command_1): Update.
6022 * python/python-internal.h (gdbpy_apply_frame_filter): Change type
6023 of "flags".
6024 * python/py-framefilter.c (py_print_frame)
6025 (gdbpy_apply_frame_filter): Change type of "flags".
6026 * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
6027 of "flags".
6028 (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
6029 (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
6030 * extension.h (enum frame_filter_flag): Rename from
6031 frame_filter_flags.
6032 (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
6033 (apply_ext_lang_frame_filter): Change type of "flags".
6034 * extension.c (apply_ext_lang_frame_filter): Change type of
6035 "flags".
6036 * extension-priv.h (struct extension_language_ops)
6037 <apply_frame_filter>: Change type of "flags".
6038
6039 2018-02-26 Tom Tromey <tom@tromey.com>
6040
6041 PR python/16497:
6042 * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag. Fix
6043 off-by-one in py_end computation.
6044 * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
6045 PRINT_MORE_FRAMES.
6046 * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
6047 constant.
6048
6049 2018-02-26 Tom Tromey <tom@tromey.com>
6050
6051 * dwarf2read.c (struct variant_field): New.
6052 (struct nextfield) <variant>: New field.
6053 (dwarf2_add_field): Handle DW_TAG_variant_part.
6054 (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
6055 discriminated union.
6056 (read_structure_type): Handle DW_TAG_variant_part.
6057 (handle_struct_member_die): New function, extracted from
6058 process_structure_scope. Handle DW_TAG_variant.
6059 (process_structure_scope): Handle discriminated unions. Call
6060 handle_struct_member_die.
6061
6062 2018-02-26 Tom Tromey <tom@tromey.com>
6063
6064 * rust-lang.h (rust_last_path_segment): Declare.
6065 * rust-lang.c (rust_last_path_segment): Now public. Change
6066 contract.
6067 (struct disr_info): Remove.
6068 (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
6069 (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
6070 (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
6071 (rust_enum_p, rust_enum_variant): New function.
6072 (rust_underscore_fields): Remove "offset" parameter.
6073 (rust_print_enum): New function.
6074 (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
6075 <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
6076 (rust_print_struct_def): Add "for_rust_enum" parameter. Handle
6077 enums.
6078 (rust_internal_print_type): New function, from rust_print_type.
6079 Remove enum code.
6080 (rust_print_type): Call rust_internal_print_type.
6081 (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
6082 Update enum handling.
6083 * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
6084 (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
6085 (rust_union_quirks): New functions.
6086 (process_full_comp_unit, process_full_type_unit): Call
6087 rust_union_quirks.
6088 (process_structure_scope): Update rust_unions if necessary.
6089
6090 2018-02-26 Tom Tromey <tom@tromey.com>
6091
6092 * value.h (value_union_variant): Declare.
6093 * valops.c (value_union_variant): New function.
6094 * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
6095 (struct discriminant_info): New.
6096 (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
6097 enumerator.
6098 (struct main_type) <flag_discriminated_union>: New field.
6099
6100 2018-02-26 Tom Tromey <tom@tromey.com>
6101
6102 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6103 unittests/unpack-selftests.c.
6104 * unittests/unpack-selftests.c: New file.
6105 * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
6106
6107 2018-02-26 Yao Qi <yao.qi@linaro.org>
6108
6109 * dwarf2read.c (struct partial_die_info) <read>: New method.
6110 (read_partial_die): Remove the declaration.
6111 (load_partial_dies): Update.
6112 (partial_die_info::partial_die_info):
6113 (read_partial_die): Change it to partial_die_info::read.
6114
6115 2018-02-26 Yao Qi <yao.qi@linaro.org>
6116
6117 * dwarf2read.c (struct partial_die_info) <fixup>: New method.
6118 (fixup_partial_die): Remove declaration.
6119 (scan_partial_symbols): Update.
6120 (partial_die_parent_scope): Likewise.
6121 (partial_die_full_name): Likewise.
6122 (fixup_partial_die): Change it to partial_die_info::fixup.
6123
6124 2018-02-26 Yao Qi <yao.qi@linaro.org>
6125
6126 * dwarf2read.c (read_partial_die): Update the declaration.
6127 (load_partial_dies): Caller update.
6128 (read_partial_die): Remove one argument abbrev_len.
6129
6130 2018-02-26 Yao Qi <yao.qi@linaro.org>
6131
6132 * dwarf2read.c (struct partial_die_info): Add ctor, delete
6133 assignment operator.
6134 (load_partial_dies): Use ctor and copy ctor.
6135 (read_partial_die): Update.
6136 (dwarf2_cu::find_partial_die): Use ctor.
6137
6138 2018-02-26 Yao Qi <yao.qi@linaro.org>
6139
6140 * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
6141 (find_partial_die_in_comp_unit): Change it to
6142 dwarf2_cu::find_partial_die.
6143 (find_partial_die): Update.
6144
6145 2018-02-26 Yao Qi <yao.qi@linaro.org>
6146
6147 * dwarf2read.c (read_partial_die): Remove the code checking abbrev
6148 is NULL.
6149
6150 2018-02-26 Yao Qi <yao.qi@linaro.org>
6151
6152 * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
6153
6154 2018-02-26 Alan Hayward <alan.hayward@arm.com>
6155
6156 * arch/amd64.h: Use common/tdesc.h.
6157 * arch/i386.c: Likewise.
6158 * arch/i386.h: Likewise.
6159 * arch/tic6x.c: Likewise.
6160 * arch/tdesc.h: Move file from here...
6161 * common/tdesc.h: ...to here.
6162 * features/aarch64-core.c: Regenerate.
6163 * features/aarch64-fpu.c: Regenerate.
6164 * features/i386/32bit-avx.c: Regenerate.
6165 * features/i386/32bit-avx512.c: Regenerate.
6166 * features/i386/32bit-core.c: Regenerate.
6167 * features/i386/32bit-linux.c: Regenerate.
6168 * features/i386/32bit-mpx.c: Regenerate.
6169 * features/i386/32bit-pkeys.c: Regenerate.
6170 * features/i386/32bit-sse.c: Regenerate.
6171 * features/i386/64bit-avx.c: Regenerate.
6172 * features/i386/64bit-avx512.c: Regenerate.
6173 * features/i386/64bit-core.c: Regenerate.
6174 * features/i386/64bit-linux.c: Regenerate.
6175 * features/i386/64bit-mpx.c: Regenerate.
6176 * features/i386/64bit-pkeys.c: Regenerate.
6177 * features/i386/64bit-segments.c: Regenerate.
6178 * features/i386/64bit-sse.c: Regenerate.
6179 * features/i386/x32-core.c: Regenerate.
6180 * features/tic6x-c6xp.c: Regenerate.
6181 * features/tic6x-core.c: Regenerate.
6182 * features/tic6x-gp.c: Regenerate.
6183 * target-descriptions.c: Use common/tdesc.h.
6184 * target-descriptions.h: Likewise.
6185
6186 2018-02-24 Tom Tromey <tom@tromey.com>
6187
6188 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
6189 (try_thread_db_load_from_dir, thread_db_load_search): Use
6190 std::string.
6191 (info_auto_load_libthread_db_compare): Return bool. Change
6192 argument types.
6193 (info_auto_load_libthread_db): Use std::vector, std::string.
6194 Remove cleanups.
6195
6196 2018-02-24 Tom Tromey <tom@tromey.com>
6197
6198 * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
6199 std::string.
6200 * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
6201 std::string*.
6202 * gdbarch.c: Rebuild.
6203 * gdbarch.h: Rebuild.
6204 * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
6205 * arch-utils.h (default_fast_tracepoint_valid_at): Update.
6206 * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
6207 std::string*.
6208
6209 2018-02-23 Simon Marchi <simon.marchi@polymtl.ca>
6210
6211 * gdbtypes.h (sect_offset): Change type to uint64_t.
6212 (sect_offset_str): New function.
6213 * dwarf2read.c (create_addrmap_from_aranges): Use
6214 sect_offset_str.
6215 (error_check_comp_unit_head): Likewise.
6216 (create_debug_type_hash_table): Likewise.
6217 (read_cutu_die_from_dwo): Likewise.
6218 (init_cutu_and_read_dies): Likewise.
6219 (init_cutu_and_read_dies_no_follow): Likewise.
6220 (process_psymtab_comp_unit_reader): Likewise.
6221 (partial_die_parent_scope): Likewise.
6222 (peek_die_abbrev): Likewise.
6223 (process_queue): Likewise.
6224 (dwarf2_physname): Likewise.
6225 (read_namespace_alias): Likewise.
6226 (read_import_statement): Likewise.
6227 (create_dwo_cu_reader): Likewise.
6228 (create_cus_hash_table): Likewise.
6229 (lookup_dwo_cutu): Likewise.
6230 (inherit_abstract_dies): Likewise.
6231 (read_func_scope): Likewise.
6232 (read_call_site_scope): Likewise.
6233 (dwarf2_add_member_fn): Likewise.
6234 (read_common_block): Likewise.
6235 (read_module_type): Likewise.
6236 (read_typedef): Likewise.
6237 (read_subrange_type): Likewise.
6238 (load_partial_dies): Likewise.
6239 (read_partial_die): Likewise.
6240 (find_partial_die): Likewise.
6241 (read_str_index): Likewise.
6242 (dwarf2_string_attr): Likewise.
6243 (build_error_marker_type): Likewise.
6244 (lookup_die_type): Likewise.
6245 (dump_die_shallow): Likewise.
6246 (follow_die_ref): Likewise.
6247 (dwarf2_fetch_die_loc_sect_off): Likewise.
6248 (dwarf2_fetch_constant_bytes): Likewise.
6249 (follow_die_sig): Likewise.
6250 (get_signatured_type): Likewise.
6251 (get_DW_AT_signature_type): Likewise.
6252 (dwarf2_find_containing_comp_unit): Likewise.
6253 (set_die_type): Likewise.
6254
6255 2018-02-21 John Baldwin <jhb@FreeBSD.org>
6256
6257 * arch/aarch64.c: Include "common-defs.h".
6258 * arch/amd64.c: Likewise.
6259 * arch/i386.c: Likewise.
6260
6261 2018-02-21 Tom Tromey <tom@tromey.com>
6262
6263 * value.h: (extract_field_op): Update.
6264 * eval.c (extract_field_op): Return a const char *.
6265 * expression.h (parse_expression_for_completion): Update.
6266 * completer.c (complete_expression): Update.
6267 (add_struct_fields): Make fieldname const.
6268 * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
6269 (mark_completion_tag, parse_exp_in_context_1): Update.
6270 (parse_expression_for_completion): Change "name" to
6271 unique_xmalloc_ptr*.
6272
6273 2018-02-21 Tom Tromey <tom@tromey.com>
6274
6275 * infcall.c (call_function_by_hand_dummy): Use std::vector.
6276
6277 2018-02-21 Yao Qi <yao.qi@linaro.org>
6278
6279 * avr-tdep.c (avr_read_pc): Change parameter type to
6280 readable_regcache.
6281 * gdbarch.sh (read_pc): Likewise.
6282 * gdbarch.c: Re-generated.
6283 * gdbarch.h: Re-generated.
6284 * hppa-tdep.c (hppa_read_pc): Change parameter type to
6285 readable_regcache.
6286 * ia64-tdep.c (ia64_read_pc): Likewise.
6287 * mips-tdep.c (mips_read_pc): Likewise.
6288 * spu-tdep.c (spu_read_pc): Likewise.
6289
6290 2018-02-21 Yao Qi <yao.qi@linaro.org>
6291
6292 * Makefile.in (COMMON_SFILES): Add regcache-dump.c
6293 * regcache-dump.c: New file.
6294 * regcache.c: Move register_dump to regcache-dump.c.
6295 (maintenance_print_registers): Likewise.
6296 (maintenance_print_raw_registers): Likewise.
6297 (maintenance_print_cooked_registers): Likewise.
6298 (maintenance_print_register_groups): Likewise.
6299 (maintenance_print_remote_registers): Likewise.
6300 (_initialize_regcache): Likewise.
6301 * regcache.h (register_dump): Moved from regcache.c.
6302
6303 2018-02-21 Yao Qi <yao.qi@linaro.org>
6304
6305 * regcache.c (regcache::regcache): Update.
6306 (regcache::invalidate): Move it to detached_regcache::invalidate.
6307 (get_thread_arch_aspace_regcache): Update.
6308 (regcache::raw_update): Update.
6309 (regcache::cooked_read): Remove some code.
6310 (regcache::cooked_read_value): Likewise.
6311 (regcache::raw_write): Remove assert on m_readonly_p.
6312 (regcache::raw_supply_integer): Move it to
6313 detached_regcache::raw_supply_integer.
6314 (regcache::raw_supply_zeroed): Likewise.
6315 * regcache.h (detached_regcache) <raw_supply_integer>: New
6316 declaration.
6317 <raw_supply_zeroed, invalidate>: Likewise.
6318 (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
6319 <invalidate>: Likewise.
6320 <m_readonly_p>: Removed.
6321
6322 2018-02-21 Yao Qi <yao.qi@linaro.org>
6323
6324 * infcmd.c (get_return_value): Let stop_regs point to
6325 get_current_regcache.
6326 * regcache.c (regcache::regcache): Remove.
6327 (register_dump_reg_buffer): New class.
6328 (regcache_print): Adjust.
6329 * regcache.h (regcache): Remove constructors.
6330
6331 2018-02-21 Yao Qi <yao.qi@linaro.org>
6332
6333 * regcache.c (class register_dump): New class.
6334 (register_dump_regcache, register_dump_none): New class.
6335 (register_dump_remote, register_dump_groups): New class.
6336 (regcache_print): Update.
6337 * regcache.h (regcache_dump_what): Move it to regcache.c.
6338 (regcache) <dump>: Remove.
6339
6340 2018-02-21 Yao Qi <yao.qi@linaro.org>
6341
6342 * jit.c (struct jit_unwind_private) <regcache>: Change its type to
6343 reg_buffer_rw *.
6344 (jit_unwind_reg_set_impl): Call raw_supply.
6345 (jit_frame_sniffer): Use reg_buffer_rw.
6346 * record-full.c (record_full_core_regbuf): Change its type.
6347 (record_full_core_open_1): Use reg_buffer_rw.
6348 (record_full_close): Likewise.
6349 (record_full_core_fetch_registers): Use regcache->raw_supply.
6350 (record_full_core_store_registers): Likewise.
6351 * regcache.c (regcache::get_register_status): Move it to
6352 reg_buffer.
6353 (regcache_raw_set_cached_value): Remove.
6354 (regcache::raw_set_cached_value): Remove.
6355 (regcache::raw_write): Call raw_supply.
6356 (regcache::raw_supply): Move it to reg_buffer_rw.
6357 * regcache.h (regcache_raw_set_cached_value): Remove.
6358 (reg_buffer_rw): New class.
6359
6360 2018-02-21 Yao Qi <yao.qi@linaro.org>
6361
6362 * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
6363 readonly_detached_regcache.
6364 (dummy_frame_prev_register): Use regcache->cooked_read.
6365 * frame.c (frame_save_as_regcache): Change return type.
6366 (frame_pop): Update.
6367 * frame.h (frame_save_as_regcache): Update declaration.
6368 * inferior.h (get_infcall_suspend_state_regcache): Update
6369 declaration.
6370 * infrun.c (infcall_suspend_state) <registers>: use
6371 readonly_detached_regcache.
6372 (save_infcall_suspend_state): Don't use regcache_dup.
6373 (get_infcall_suspend_state_regcache): Change return type.
6374 * linux-fork.c (struct fork_info) <savedregs>: Change to
6375 readonly_detached_regcache.
6376 <pc>: New field.
6377 (fork_save_infrun_state): Don't use regcache_dup.
6378 (info_checkpoints_command): Adjust.
6379 * mi/mi-main.c (register_changed_p): Update declaration.
6380 (mi_cmd_data_list_changed_registers): Use
6381 readonly_detached_regcache.
6382 (register_changed_p): Change parameter type to
6383 readonly_detached_regcache.
6384 * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
6385 readonly_detached_regcache.
6386 (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
6387 * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
6388 New.
6389 (regcache::save): Move it to reg_buffer.
6390 (regcache::restore): Change parameter type.
6391 (regcache_dup): Remove.
6392 * regcache.h (reg_buffer) <save>: New method.
6393 (readonly_detached_regcache): New class.
6394 * spu-tdep.c (spu2ppu_cache) <regcache>: Use
6395 readonly_detached_regcache.
6396 (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
6397
6398 2018-02-21 Yao Qi <yao.qi@linaro.org>
6399
6400 * frame.c (frame_save_as_regcache): Use regcache method save.
6401 (frame_pop): Use regcache method restore.
6402 * infrun.c (restore_infcall_suspend_state): Likewise.
6403 * linux-fork.c (fork_load_infrun_state): Likewise.
6404 * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
6405 save.
6406 * regcache.c (regcache_save): Remove.
6407 (regcache::restore): More asserts.
6408 (regcache_cpy): Remove.
6409 * regcache.h (regcache_save): Remove the declaration.
6410 (regcache::restore): Move from private to public.
6411 Remove the friend declaration of regcache_cpy.
6412 (regcache_cpy): Remove declaration.
6413
6414 2018-02-21 Yao Qi <yao.qi@linaro.org>
6415
6416 * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
6417 parameter type to 'readable_regcache *'.
6418 * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
6419 * arm-tdep.c (arm_neon_quad_read): Likewise.
6420 (arm_pseudo_read): Likewise.
6421 * avr-tdep.c (avr_pseudo_register_read): Likewise.
6422 * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
6423 * frv-tdep.c (frv_pseudo_register_read): Likewise.
6424 * gdbarch.c: Re-generated.
6425 * gdbarch.h: Re-generated.
6426 * gdbarch.sh (pseudo_register_read): Change parameter type to
6427 'readable_regcache *'.
6428 (pseudo_register_read_value): Likewise.
6429 * h8300-tdep.c (pseudo_from_raw_register): Likewise.
6430 (h8300_pseudo_register_read): Likewise.
6431 * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
6432 * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
6433 (i386_pseudo_register_read_into_value): Likewise.
6434 (i386_pseudo_register_read_value): Likewise.
6435 * i386-tdep.h (i386_pseudo_register_read_into_value): Update
6436 declaration.
6437 * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
6438 * m32c-tdep.c (m32c_raw_read): Likewise.
6439 (m32c_read_flg): Likewise.
6440 (m32c_banked_register): Likewise.
6441 (m32c_banked_read): Likewise.
6442 (m32c_sb_read): Likewise.
6443 (m32c_part_read): Likewise.
6444 (m32c_cat_read): Likewise.
6445 (m32c_r3r2r1r0_read): Likewise.
6446 (m32c_pseudo_register_read): Likewise.
6447 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
6448 * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
6449 (mep_pseudo_cr64_read): Likewise.
6450 (mep_pseudo_register_read): Likewise.
6451 * mips-tdep.c (mips_pseudo_register_read): Likewise.
6452 * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
6453 * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
6454 * regcache.c (regcache::raw_read): Move it to readable_regcache.
6455 (regcache::cooked_read): Likewise.
6456 (regcache::cooked_read_value): Likewise.
6457 (regcache_cooked_read_signed):
6458 (regcache::cooked_read): Likewise.
6459 * regcache.h (readable_regcache): New class.
6460 (regcache): Inherit readable_regcache. Move some methods to
6461 readable_regcache.
6462 * rl78-tdep.c (rl78_pseudo_register_read): Change
6463 parameter type to 'readable_regcache *'.
6464 * rs6000-tdep.c (do_regcache_raw_read): Remove.
6465 (e500_pseudo_register_read): Change parameter type to
6466 'readable_regcache *'.
6467 (dfp_pseudo_register_read): Likewise.
6468 (vsx_pseudo_register_read): Likewise.
6469 (efpr_pseudo_register_read): Likewise.
6470 * s390-tdep.c (s390_pseudo_register_read): Likewise.
6471 * sh-tdep.c (sh_pseudo_register_read): Likewise.
6472 * sh64-tdep.c (pseudo_register_read_portions): Likewise.
6473 (sh64_pseudo_register_read): Likewise.
6474 * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
6475 * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
6476 * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
6477 (spu_pseudo_register_read): Likewise.
6478 * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
6479 (xtensa_pseudo_register_read): Likewise.
6480
6481 2018-02-21 Yao Qi <yao.qi@linaro.org>
6482
6483 * regcache.c (regcache::regcache): Call reg_buffer ctor.
6484 (regcache::arch): Move it to reg_buffer::arch.
6485 (regcache::register_buffer): Likewise.
6486 (regcache::assert_regnum): Likewise.
6487 (regcache::num_raw_registers): Likewise.
6488 * regcache.h (reg_buffer): New class.
6489 (regcache): Inherit reg_buffer.
6490
6491 2018-02-20 Simon Marchi <simon.marchi@ericsson.com>
6492
6493 * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
6494 gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
6495
6496 2018-02-20 Markus Metzger <markus.t.metzger@intel.com>
6497
6498 * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
6499
6500 2018-02-19 Alan Hayward <alan.hayward@arm.com>
6501
6502 * Makefile.in: (COMMON_SFILES): Add common/*.c files.
6503 (SFILES): Remove common/*.c files.
6504 (COMMON_OBS): Remove some *.o files built from common/*.c files.
6505 * common/common.host: Add common reference.
6506 * configure.ac: Likewise.
6507 * configure: Regenerate.
6508
6509 2018-02-16 Yao Qi <yao.qi@linaro.org>
6510
6511 * block.c (block_namespace_info): Inherit allocate_on_obstack.
6512 (block_initialize_namespace): Use new.
6513 * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
6514 (dwarf2_free_objfile): Use delete.
6515 * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
6516 (copy_type_recursive): Use new.
6517 * gdb_obstack.h (allocate_on_obstack): New.
6518
6519 2018-02-15 Yao Qi <yao.qi@linaro.org>
6520
6521 PR gdb/22849
6522 * inferior.c (exit_inferior_1): Reset inf->control.
6523
6524 2018-02-15 Joel Brobecker <brobecker@adacore.com>
6525
6526 * ada-lang.c (ada_to_fixed_value_create): Delete advance
6527 declaration.
6528
6529 2018-02-14 Pedro Alves <palves@redhat.com>
6530
6531 * frame-unwind.c (frame_unwind_try_unwinder): Always call
6532 frame_cleanup_after_sniffer on exception.
6533
6534 2018-02-14 Tom Tromey <tom@tromey.com>
6535
6536 * solist.h (struct target_so_ops) <bfd_open>: Make pathname
6537 const.
6538 (solib_bfd_open): Make pathname const.
6539 * solib.c (solib_bfd_open): Make pathname const.
6540 * solib-spu.c (spu_bfd_fopen): Make name const.
6541 (spu_bfd_open): Make pathname const.
6542 * solib-darwin.c (darwin_bfd_open): Make pathname const.
6543 * solib-aix.c (solib_aix_bfd_open): Make pathname const.
6544
6545 2018-02-14 Tom Tromey <tom@tromey.com>
6546
6547 * symfile.c (symfile_bfd_open): Update.
6548 * source.h (openp, source_full_path_of, find_and_open_source):
6549 Change argument type to unique_xmalloc_ptr.
6550 * source.c (openp): Take a unique_xmalloc_ptr.
6551 (source_full_path_of, find_and_open_source): Likewise.
6552 (open_source_file, symtab_to_fullname): Update.
6553 * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
6554 unique_xmalloc_ptr.
6555 * solib.c (solib_find_1): Use unique_xmalloc_ptr.
6556 (exec_file_find): Update.
6557 * psymtab.c (psymtab_to_fullname): Update.
6558 * nto-tdep.h (nto_find_and_open_solib): Update.
6559 * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
6560 unique_xmalloc_ptr.
6561 * exec.c (exec_file_attach): Update.
6562 * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
6563 * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
6564
6565 2018-02-14 Tom Tromey <tom@tromey.com>
6566
6567 * solib.c: Include source.h.
6568 * nto-tdep.c: Include source.h.
6569 * mi/mi-cmd-env.c: Include source.h.
6570 * infcmd.c: Include source.h.
6571 * exec.c: Include source.h.
6572 * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
6573 (add_path, directory_switch, source_path, init_source_path): Move
6574 declarations...
6575 * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
6576 (add_path, directory_switch, source_path, init_source_path):
6577 ...here.
6578
6579 2018-02-14 Tom Tromey <tom@tromey.com>
6580
6581 * solist.h (exec_file_find, solib_find): Return
6582 unique_xmalloc_ptr.
6583 (solib_bfd_fopen): Take a const char *.
6584 * solib.c (solib_find_1): Return unique_xmalloc_ptr.
6585 (exec_file_find, solib_find): Likewise.
6586 (solib_bfd_fopen): Do not take ownership of "pathname".
6587 (solib_bfd_open): Use unique_xmalloc_ptr.
6588 * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
6589 * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
6590 * infrun.c (follow_exec): Use unique_xmalloc_ptr.
6591 * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
6592
6593 2018-02-14 Joel Brobecker <brobecker@adacore.com>
6594
6595 * ada-lang.c (name_match_type_from_name): Remove reference to
6596 ada_name_for_lookup in function's documentation.
6597 * ada-lang.h (ada_name_for_lookup): Delete declaration.
6598
6599 2018-02-13 Simon Marchi <simon.marchi@polymtl.ca>
6600
6601 * defs.h (enum openp_flags): New enum.
6602 (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
6603 Move to enum openp_flags.
6604 (openp_flags): New enum flags.
6605 (openp): Change parameter type to openp_flags.
6606 * source.c (openp): Change parameter type to openp_flags.
6607 * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
6608 * dwarf2read.c (try_open_dwop_file): Use openp_flags.
6609
6610 2018-02-13 Simon Marchi <simon.marchi@polymtl.ca>
6611
6612 * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
6613 per-command.
6614
6615 2018-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
6616
6617 * dwarf2read.c (dwarf2_release_queue): Delete function, move body
6618 into...
6619 (class dwarf2_queue_guard): ...the destructor of this new class.
6620 (dw2_do_instantiate_symtab): Create instance of the new class
6621 dwarf2_queue_guard, remove cleanup.
6622
6623 2018-02-09 Tom Tromey <tom@tromey.com>
6624
6625 * source.c (find_source_lines): Don't reference past the end of
6626 the vector.
6627
6628 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6629
6630 * remote.c (remote_btrace_maybe_reopen): Change error message.
6631 * btrace.c (btrace_enable): Likewise.
6632 (parse_xml_btrace): Likewise.
6633 (parse_xml_btrace_conf): Likewise.
6634
6635 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6636
6637 * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
6638 (linux_enable_pt, linux_enable_bts): Call
6639 diagnose_perf_event_open_fail.
6640
6641 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6642
6643 * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
6644 Remove parameter and change return type. Update callers. Move it.
6645 (linux_enable_bts, linux_enable_pt): Improve error message.
6646 (linux_enable_pt): Remove zero buffer size check.
6647 (linux_enable_btrace): Improve error messages. Remove NULL return
6648 check.
6649
6650 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6651
6652 * btrace.c (btrace_enable): Remove target_supports_btrace call.
6653 * nat/linux-btrace.c (perf_event_pt_event_type): Move.
6654 (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
6655 (linux_supports_pt, linux_supports_btrace): Remove.
6656 (linux_enable_bts): Call cpu_supports_bts.
6657 * nat/linux-btrace.h (linux_supports_btrace): Remove.
6658 * remote.c (remote_supports_btrace): Remove.
6659 (init_remote_ops): Remove remote_supports_btrace.
6660 * target-delegates.c: Regenerated.
6661 * target.c (target_supports_btrace): Remove.
6662 * target.h (target_ops) <to_supports_btrace>: Remove
6663 (target_supports_btrace): Remove.
6664 * x86-linux-nat.c (x86_linux_create_target): Remove
6665 linux_supports_btrace.
6666
6667 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6668
6669 * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
6670 btrace failed.
6671 * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
6672 exception and use message in own exception.
6673
6674 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6675
6676 * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
6677 (perf_event_pt_event_type): Use gdb_file_up.
6678 (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
6679 scoped_fd, and scoped_mmap.
6680
6681 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6682
6683 * common/scoped_mmap.h: New.
6684 * unittests/scoped_mmap-selftest.c: New.
6685 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6686 unittests/scoped_mmap-selftest.c.
6687
6688 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
6689
6690 * common/scoped_fd.h: New.
6691 * unittests/scoped_fd-selftest.c: New.
6692 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6693 unittests/scoped_fd-selftest.c.
6694
6695 2018-02-09 Tom Tromey <tom@tromey.com>
6696
6697 * auto-load.c (auto_load_section_scripts): Use
6698 gdb::unique_xmalloc_ptr.
6699
6700 2018-02-09 Tom Tromey <tom@tromey.com>
6701
6702 * auto-load.c (execute_script_contents): Use std::string.
6703
6704 2018-02-09 Joel Brobecker <brobecker@adacore.com>
6705
6706 * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
6707 Python function, rather than a new command.
6708
6709 2018-02-08 Tom Tromey <tom@tromey.com>
6710
6711 * solib.c (solib_find_1): Use std::string.
6712 (solib_bfd_fopen): Use unique_xmalloc_ptr.
6713
6714 2018-02-08 Tom Tromey <tom@tromey.com>
6715
6716 * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
6717
6718 2018-02-08 Tom Tromey <tom@tromey.com>
6719
6720 * source.c (find_source_lines): Use gdb::def_vector.
6721
6722 2018-02-08 Tom Tromey <tom@tromey.com>
6723
6724 * macrocmd.c (struct temporary_macro_definition): New.
6725 (macro_define_command): Use temporary_macro_definition. Remove
6726 cleanups.
6727 (free_macro_definition_ptr): Remove.
6728
6729 2018-02-08 Tom Tromey <tom@tromey.com>
6730
6731 * macroexp.c (maybe_expand): Use std::string.
6732
6733 2018-02-08 Tom Tromey <tom@tromey.com>
6734
6735 * macroexp.c (struct macro_buffer): Add initializers for some
6736 members.
6737 (init_buffer, init_shared_buffer, free_buffer)
6738 (free_buffer_return_text): Remove.
6739 (macro_buffer): New constructors.
6740 (~macro_buffer): New destructor.
6741 (macro_buffer::set_shared): New method.
6742 (macro_buffer::resize_buffer, macro_buffer::appendc)
6743 (macro_buffer::appendmem): Now methods, not free functions.
6744 (set_token, append_tokens_without_splicing, stringify)
6745 (macro_stringify): Update.
6746 (gather_arguments): Change return type. Remove argc_p argument,
6747 add args_ptr argument. Use std::vector.
6748 (substitute_args): Remove argc argument. Accept std::vector.
6749 (expand): Update. Use std::vector.
6750 (scan, macro_expand, macro_expand_next): Update.
6751
6752 2018-02-08 Tom Tromey <tom@tromey.com>
6753
6754 * symtab.c (default_collect_symbol_completion_matches_break_on):
6755 Use unique_xmalloc_ptr.
6756 * macroscope.h: (sal_macro_scope, user_macro_scope)
6757 (default_macro_scope): Return unique_xmalloc_ptr.
6758 * macroscope.c (sal_macro_scope, user_macro_scope)
6759 (default_macro_scope): Return unique_xmalloc_ptr.
6760 * macroexp.h (macro_expand, macro_expand_once): Return
6761 unique_xmalloc_ptr.
6762 * macroexp.c (macro_expand, macro_expand_once): Return
6763 unique_xmalloc_ptr.
6764 * macrocmd.c (macro_expand_command, macro_expand_once_command)
6765 (info_macro_command, info_macros_command): Use
6766 unique_xmalloc_ptr.
6767 * compile/compile-c-support.c (write_macro_definitions): Use
6768 unique_xmalloc_ptr.
6769 * c-exp.y (c_parse): Use unique_xmalloc_ptr.
6770
6771 2018-02-07 Simon Marchi <simon.marchi@ericsson.com>
6772
6773 * value.c (value_static_field): Assign field type instead of
6774 containing type when returning an optimized out value.
6775
6776 2018-02-06 Yao Qi <yao.qi@linaro.org>
6777
6778 * ft32-tdep.c (ft32_read_pc): Remove.
6779 (ft32_write_pc): Remove.
6780 (ft32_gdbarch_init): Update.
6781 * m32r-tdep.c (m32r_read_pc): Remove.
6782 (m32r_gdbarch_init): Update.
6783 * mep-tdep.c (mep_read_pc): Remove.
6784 (mep_gdbarch_init): Update.
6785 * microblaze-tdep.c (microblaze_write_pc): Remove.
6786 (microblaze_gdbarch_init): Update.
6787 * mn10300-tdep.c (mn10300_read_pc): Remove.
6788 (mn10300_write_pc): Remove.
6789 (mn10300_gdbarch_init): Update.
6790 * moxie-tdep.c (moxie_read_pc): Remove.
6791 (moxie_write_pc): Remove.
6792 (moxie_gdbarch_init): Update.
6793
6794 2018-02-06 Yao Qi <yao.qi@linaro.org>
6795
6796 * expprint.c (print_subexp_standard): Handle
6797 OP_F77_UNDETERMINED_ARGLIST.
6798 (dump_subexp_body_standard): Likewise.
6799
6800 2018-02-05 Alan Hayward <alan.hayward@arm.com>
6801
6802 * target-descriptions.c (tdesc_element_visitor) Add empty
6803 implementations.
6804 (tdesc_type): Move make_gdb_type from here.
6805 (tdesc_type_builtin): Likewise.
6806 (tdesc_type_vector): Likewise.
6807 (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
6808 (make_gdb_type_struct): Move from tdesc_type_with_fields.
6809 (make_gdb_type_union): Likewise.
6810 (make_gdb_type_flags): Likewise.
6811 (make_gdb_type_enum): Likewise.
6812 (make_gdb_type): New function.
6813 (tdesc_register_type): Use static make_gdb_type.
6814
6815 2018-02-05 Ruslan Kabatsayev <b7.10110111@gmail.com>
6816
6817 * infcmd.c (default_print_one_register_info): Align natural-format
6818 column values consistently one under another.
6819 (pad_to_column): New function.
6820
6821 2018-02-05 Joel Brobecker <brobecker@adacore.com>
6822
6823 * dwarf2read.c (dwarf2_physname): Move commment.
6824
6825 2018-02-01 Leszek Swirski <leszeks@google.com>
6826
6827 * varobj.c (varobj_formatted_print_options): Allow recursive
6828 pretty printing if pretty printing is enabled.
6829
6830 2018-02-01 Leszek Swirski <leszeks@google.com>
6831
6832 * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
6833 names after a structop as a filename.
6834
6835 2018-02-01 Yao Qi <yao.qi@linaro.org>
6836
6837 * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
6838 (arm_record_coproc_data_proc): Likewise.
6839
6840 2018-02-01 Yao Qi <yao.qi@linaro.org>
6841
6842 * arm-tdep.c (arm_record_extension_space): Change ret to signed.
6843
6844 2018-01-31 Nikola Prica <nikola.prica@rt-rk.com>
6845
6846 * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
6847 assign shifted lr_reg to fdata->lr_register when lr_reg is set.
6848
6849 2018-01-31 Pedro Alves <palves@redhat.com>
6850
6851 * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
6852 * inflow.c (child_terminal_save_inferior): Wrap reference to
6853 tcgetpgrp in HAVE_TERMIOS_H.
6854 (child_interrupt, child_pass_ctrlc): Wrap references to signal in
6855 _WIN32.
6856 * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
6857 always iterate over all inferiors.
6858 (gdbsim_cntrl_c): Adjust.
6859 * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
6860
6861 2018-01-31 Joel Brobecker <brobecker@adacore.com>
6862
6863 * gdbtypes.c (lookup_array_range_type): Make sure the array's
6864 index type is objfile-owned if the element type is as well.
6865
6866 2018-01-31 Joel Brobecker <brobecker@adacore.com>
6867
6868 GDB 8.1 released.
6869
6870 2018-01-30 Philipp Rudo <prudo@linux.vnet.ibm.com>
6871
6872 * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
6873 "features/s390x-linux64.c".
6874 (_initialize_s390_linux_tdep): Remove initialization of tdescs
6875 s390_linux32 and s390x_linux64.
6876 (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
6877 default tdesc.
6878 * s390-tdep.c: Include "features/s390-linux32.c" and
6879 "features/s390x-linux64.c".
6880 (s390_tdesc_valid): Add check for tdesc_has_registers.
6881 (s390_gdbarch_init): Make sure there is always a valid tdesc.
6882 (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
6883 tdesc_s390x_linux64.
6884 * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
6885 tdesc_s390x_linux64 to...
6886 * s390-tdep.h: ...here.
6887
6888 2018-01-30 Pedro Alves <palves@redhat.com>
6889
6890 PR gdb/13211
6891 * config.in, configure: Regenerate.
6892 * configure.ac: Check for getpgid.
6893 * go32-nat.c (go32_pass_ctrlc): New.
6894 (go32_target): Install it.
6895 * inf-child.c (inf_child_target): Install
6896 child_terminal_save_inferior, child_pass_ctrlc and
6897 child_interrupt.
6898 * inf-ptrace.c (inf_ptrace_interrupt): Delete.
6899 (inf_ptrace_target): No longer install it.
6900 * infcmd.c (interrupt_target_1): Adjust.
6901 * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
6902 (child_interrupt): Declare.
6903 (inferior::terminal_state): New.
6904 * inflow.c (struct terminal_info): Update comments.
6905 (inferior_process_group): Delete.
6906 (terminal_is_ours): Delete.
6907 (gdb_tty_state): New.
6908 (child_terminal_init): Adjust.
6909 (is_gdb_terminal, sharing_input_terminal_1)
6910 (sharing_input_terminal): New functions.
6911 (child_terminal_inferior): Adjust. Use sharing_input_terminal.
6912 Set the process's actual process group in the foreground if
6913 possible. Handle is_ours_for_output/is_ours distinction. Don't
6914 mark terminal as the inferior's if not sharing GDB's terminal.
6915 Don't check attach_flag.
6916 (child_terminal_ours_for_output, child_terminal_ours): Adjust to
6917 pass down a target_terminal_state.
6918 (child_terminal_save_inferior): New, factored out from ...
6919 (child_terminal_ours_1): ... this. Handle
6920 target_terminal_state::is_ours_for_output.
6921 (child_interrupt, child_pass_ctrlc): New.
6922 (inflow_inferior_exit): Clear the inferior's terminal_state.
6923 (copy_terminal_info): Copy the inferior's terminal state.
6924 (_initialize_inflow): Remove reference to terminal_is_ours.
6925 * inflow.h (inferior_process_group): Delete.
6926 * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
6927 * procfs.c (procfs_target): Don't install procfs_interrupt.
6928 (procfs_interrupt): Delete.
6929 * remote.c (remote_serial_quit_handler): Adjust.
6930 (remote_interrupt): Remove ptid parameter. Adjust.
6931 * target-delegates.c: Regenerate.
6932 * target.c: Include "terminal.h".
6933 (target_terminal::terminal_state): Rename to ...
6934 (target_terminal::m_terminal_state): ... this.
6935 (target_terminal::init): Adjust.
6936 (target_terminal::inferior): Adjust to per-inferior
6937 terminal_state.
6938 (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
6939 (target_terminal::ours, target_terminal::ours_for_output): Use
6940 target_terminal_is_ours_kind.
6941 (target_interrupt): Remove ptid parameter. Adjust.
6942 (default_target_pass_ctrlc): Adjust.
6943 * target.h (target_ops::to_terminal_save_inferior): New field.
6944 (target_ops::to_interrupt): Remove ptid_t parameter.
6945 (target_interrupt): Remove ptid_t parameter. Update comment.
6946 (target_pass_ctrlc): Update comment.
6947 * target/target.h (target_terminal_state): New scoped enum,
6948 factored out of ...
6949 (target_terminal::terminal_state): ... here.
6950 (target_terminal::inferior): Update comments.
6951 (target_terminal::restore_inferior): New.
6952 (target_terminal::is_inferior, target_terminal::is_ours)
6953 (target_terminal::is_ours_for_output): Adjust.
6954 (target_terminal::scoped_restore_terminal_state): Adjust to
6955 rename, and call restore_inferior() instead of inferior().
6956 (target_terminal::scoped_restore_terminal_state::m_state): Change
6957 type.
6958 (target_terminal::terminal_state): Rename to ...
6959 (target_terminal::m_terminal_state): ... this and change type.
6960
6961 2018-01-30 Pedro Alves <palves@redhat.com>
6962
6963 * linux-nat.c (wait_for_signal): New function.
6964 (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
6965 directly.
6966 (async_terminal_is_ours)
6967 (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
6968 (linux_nat_add_target): Don't override
6969 to_terminal_inferior/to_terminal_ours.
6970
6971 2018-01-29 Sergio Durigan Junior <sergiodj@redhat.com>
6972
6973 * remote.c (remote_follow_fork): Don't call "detach_inferior".
6974
6975 2018-01-28 Simon Marchi <simon.marchi@ericsson.com>
6976
6977 * dwarf2read.c (free_dwo_files): Add forward-declaration.
6978 (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
6979 dwarf2_per_objfile_free here.
6980 (dwarf2_per_objfile_free): Remove.
6981 (_initialize_dwarf2_read): Don't register
6982 dwarf2_per_objfile_free as a registry cleanup.
6983
6984 2018-01-27 Eli Zaretskii <eliz@gnu.org>
6985
6986 Avoid compilation errors in MinGW native builds
6987
6988 The error is triggered by including python-internal.h, and the
6989 error message is:
6990
6991 In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
6992 from build-gnulib/import/math.h:27,
6993 from d:/usr/Python26/include/pyport.h:235,
6994 from d:/usr/Python26/include/Python.h:58,
6995 from python/python-internal.h:94,
6996 from python/py-arch.c:24:
6997 d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
6998 using ::hypot;
6999 ^~~~~
7000
7001 This happens because Python headers define 'hypot' to expand t
7002 '_hypot' in the Windows builds.
7003 * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
7004 'hypoth'. This avoids a compilation error.
7005
7006 2018-01-26 Alan Hayward <alan.hayward@arm.com>
7007
7008 * MAINTAINERS (Write After Approval): Fix ordering.
7009
7010 2018-01-26 Alan Hayward <alan.hayward@arm.com>
7011
7012 * MAINTAINERS (Write After Approval): Add Alan Hayward.
7013
7014 2018-01-26 Alan Modra <amodra@gmail.com>
7015
7016 * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
7017 (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
7018 Remove nop. Make const. Comment.
7019 (powerpc32_plt_stub_so_2): New.
7020 (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
7021 Correct count. Update uses.
7022 (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
7023 Move common code reading PLT entry word. Correct
7024 powerpc32_plt_stub PLT address calculation.
7025 * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
7026 (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
7027 (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
7028 (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
7029 (ppc64_standard_linkage8): Likewise.
7030 * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
7031 Correct insns description.
7032 * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
7033
7034 2018-01-24 Pedro Alves <palves@redhat.com>
7035
7036 GCC PR libstdc++/83906
7037 * gdbtypes.c (operator==(const dynamic_prop &,
7038 const dynamic_prop &)): New.
7039 (operator==(const range_bounds &, const range_bounds &)): New.
7040 (check_types_equal): Use them instead of memcmp.
7041 * gdbtypes.h (operator==(const dynamic_prop &,
7042 const dynamic_prop &)): Declare.
7043 (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
7044 (operator==(const range_bounds &, const range_bounds &)): Declare.
7045 (operator!=(const range_bounds &, const range_bounds &)): Declare.
7046
7047 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7048
7049 * s390-linux-tdep.c (s390_record_address_mask)
7050 (s390_record_calc_disp_common, s390_record_calc_disp)
7051 (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
7052 (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
7053 (s390_process_record): Move to s390-tdep.c.
7054 (s390_linux_init_abi_any): Adjust.
7055 * s390-tdep.c (s390_record_address_mask)
7056 (s390_record_calc_disp_common, s390_record_calc_disp)
7057 (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
7058 (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
7059 (s390_process_record): Moved from s390-linux-tdep.c
7060 (s390_gdbarch_init): Adjust.
7061
7062 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7063
7064 * s390-linux-nat.c (s390-tdep.h): New include.
7065 * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
7066 (HFILES_NO_SRCDIR): Add s390-tdep.h.
7067 (ALLDEPFILES): Add s390-tdep.c.
7068 * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
7069 * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
7070 * s390-tdep.h: ...this. New file.
7071 * s390-linux-tdep.c (s390-tdep.h): New include.
7072 (_initialize_s390_tdep): Rename to...
7073 (_initialize_s390_linux_tdep): ...this and adjust.
7074 (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
7075 (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
7076 s390-tdep.h.
7077 (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
7078 (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
7079 (s390_is_partial_instruction, s390_software_single_step)
7080 (is_non_branch_ril, s390_displaced_step_copy_insn)
7081 (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
7082 (s390_prologue_data, s390_addr, s390_store, s390_load)
7083 (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
7084 (s390_register_call_saved, s390_guess_tracepoint_registers)
7085 (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
7086 (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
7087 (s390_pseudo_register_name, s390_pseudo_register_type)
7088 (s390_pseudo_register_read, s390_pseudo_register_write)
7089 (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
7090 (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
7091 (s390_addr_bits_remove, s390_address_class_type_flags)
7092 (s390_address_class_type_flags_to_name)
7093 (s390_address_class_name_to_type_flags, s390_effective_inner_type)
7094 (s390_function_arg_float, s390_function_arg_vector)
7095 (is_power_of_two, s390_function_arg_integer, s390_arg_state)
7096 (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
7097 (s390_frame_align, s390_register_return_value, s390_return_value)
7098 (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
7099 (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
7100 (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
7101 (s390_trad_frame_prev_register, s390_unwind_cache)
7102 (s390_prologue_frame_unwind_cache)
7103 (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
7104 (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
7105 (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
7106 (s390_stub_frame_this_id, s390_stub_frame_prev_register)
7107 (s390_stub_frame_sniffer, s390_stub_frame_unwind)
7108 (s390_frame_base_address, s390_local_base_address)
7109 (s390_frame_base, s390_gcc_target_options)
7110 (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
7111 (s390_validate_reg_range, s390_tdesc_valid)
7112 (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
7113 * s390-tdep.c: ...this. New file.
7114
7115 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7116
7117 * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
7118 (s390_process_record, s390_gdbarch_tdep_alloc)
7119 (s390_linux_init_abi_any): Use/set new hook.
7120
7121 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7122
7123 * s390-linux-tdep.c (osabi.h): New include.
7124 (s390_linux_init_abi_31, s390_linux_init_abi_64)
7125 (s390_linux_init_abi_any): New functions.
7126 (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
7127
7128 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7129
7130 * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
7131 tdesc_has_registers check
7132
7133 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7134
7135 * s390-linux-tdep.c (s390_tdesc_valid): New function.
7136 (s390_validate_reg_range): New macro.
7137 (s390_gdbarch_init): Adjust.
7138
7139 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7140
7141 * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
7142 (s390_gdbarch_tdep_alloc): Adjust.
7143 (s390_gdbarch_init): Adjust.
7144
7145 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7146
7147 * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
7148 <have_tdb>: Change type to bool.
7149 (s390_gdbarch_tdep_alloc): Adjust.
7150 (s390_gdbarch_init): Adjust.
7151
7152 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7153
7154 * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
7155 (gdbarch_tdep) <have_upper, have_vx>: New fields.
7156 (s390_gdbarch_tdep_alloc): New function.
7157 (s390_gdbarch_init): Allocate tdep at start and use its fields
7158 instead of separate variables.
7159
7160 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7161
7162 * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
7163 when looking for cached gdbarch and add comment for remaining.
7164
7165 2018-01-22 Pedro Alves <palves@redhat.com>
7166 Sergio Durigan Junior <sergiodj@redhat.com>
7167
7168 * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
7169 case.
7170
7171 2018-01-22 Maciej W. Rozycki <macro@mips.com>
7172
7173 * MAINTAINERS: Update my company e-mail address.
7174
7175 2018-01-22 Yao Qi <yao.qi@linaro.org>
7176
7177 * regcache.c (cooked_write_test): New function.
7178 (_initialize_regcache): Register the test.
7179
7180 2018-01-22 Yao Qi <yao.qi@linaro.org>
7181
7182 * ia64-tdep.c (ia64_pseudo_register_read): Call
7183 regcache->cooked_read instead of regcache_cooked_read_unsigned.
7184 * m32c-tdep.c (m32c_cat_read): Likewise.
7185 (m32c_r3r2r1r0_read): Likewise.
7186 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
7187 * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
7188
7189 2018-01-22 Yao Qi <yao.qi@linaro.org>
7190
7191 * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
7192 method raw_read instead of regcache_raw_read.
7193 * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
7194 * arm-tdep.c (arm_neon_quad_read): Likewise.
7195 * avr-tdep.c (avr_pseudo_register_read): Likewise.
7196 * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
7197 * frv-tdep.c (frv_pseudo_register_read): Likewise.
7198 * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
7199 * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
7200 (i386_pseudo_register_read_into_value): Likewise.
7201 * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
7202 * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
7203 * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
7204 * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
7205 * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
7206 * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
7207 * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
7208 * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
7209 * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
7210
7211 2018-01-22 Yao Qi <yao.qi@linaro.org>
7212
7213 * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
7214 * configure.tgt: Remove target mt.
7215 * mt-tdep.c: Remove.
7216 * regcache.c (cooked_read_test): Remove the check for mt.
7217
7218 2018-01-22 Yao Qi <yao.qi@linaro.org>
7219
7220 * jit.c (jit_frame_prev_register): Call regcache::cooked_read
7221 instead of gdbarch_pseudo_register_read_value.
7222
7223 2018-01-22 Joel Brobecker <brobecker@adacore.com>
7224
7225 * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
7226 language is Ada.
7227
7228 2018-01-22 Joel Brobecker <brobecker@adacore.com>
7229
7230 * linespec.c (create_sals_line_offset): Remove code that preserved
7231 the symtab_and_line's line number.
7232
7233 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
7234
7235 * varobj.c (varobj_create): Don't set valid_block when creating a
7236 floating varobj.
7237
7238 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
7239
7240 * varobj.c (varobj_create): Remove out of date comment.
7241
7242 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
7243
7244 PR mi/20395
7245 * ada-exp.y (write_var_from_sym): Pass extra parameter when
7246 updating innermost block.
7247 * parse.c (innermost_block_tracker::update): Take extra type
7248 parameter, and check types match before updating innermost block.
7249 (write_dollar_variable): Update innermost block for registers.
7250 * parser-defs.h (enum innermost_block_tracker_type): New enum.
7251 (innermost_block_tracker::innermost_block_tracker): Initialise
7252 m_types member.
7253 (innermost_block_tracker::reset): Take type parameter.
7254 (innermost_block_tracker::update): Take type parameter, and pass
7255 type through as needed.
7256 (innermost_block_tracker::m_types): New member.
7257 * varobj.c (varobj_create): Pass type when reseting innermost
7258 block.
7259
7260 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
7261
7262 * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
7263 * ada-lang.c (resolve_subexp): Likewise.
7264 * breakpoint.c (set_breakpoint_condition) Likewise.
7265 (watch_command_1) Likewise.
7266 * c-exp.y (variable): Likewise.
7267 * d-exp.y (PrimaryExpression): Likewise.
7268 * f-exp.y (variable): Likewise.
7269 * go-exp.y (variable): Likewise.
7270 * m2-exp.y (variable): Likewise.
7271 * objfiles.c (objfile::~objfile): Likewise.
7272 * p-exp.y (variable): Likewise.
7273 * parse.c (innermost_block): Change type.
7274 * parser-defs.h (class innermost_block_tracker): New.
7275 (innermost_block): Change to innermost_block_tracker.
7276 * printcmd.c (display_command): Switch to innermost_block API.
7277 (do_one_display): Likewise.
7278 * rust-exp.y (do_one_display): Likewise.
7279 * symfile.c (clear_symtab_users): Likewise.
7280 * varobj.c (varobj_create): Switch to innermost_block API, replace
7281 use of innermost_block with block stored on varobj object.
7282
7283 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
7284
7285 * expression.h (innermost_block): Remove declaration.
7286 * varobj.c: Add 'parser-defs.h' include.
7287
7288 2018-01-19 Tom Tromey <tom@tromey.com>
7289
7290 * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
7291 symbols in the static and global blocks.
7292
7293 2018-01-19 James Clarke <jrtc27@jrtc27.com>
7294
7295 * nat/linux-ptrace.c: Remove unnecessary reinclusion of
7296 gdb_ptrace.h, and move including gdb_wait.h ...
7297 * nat/linux-ptrace.h: ... to here.
7298
7299 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
7300
7301 * inf-ptrace.c (inf_ptrace_detach): Adjust call to
7302 inf_ptrace_detach_success.
7303 (inf_ptrace_detach_success): Add inferior parameter, use it
7304 instead of inferior_ptid, pass it to detach_inferior.
7305 * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
7306 parameter.
7307 * inferior.c (detach_inferior): Add overload that takes an
7308 inferior object.
7309 * inferior.h (detach_inferior): Likewise.
7310 * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
7311 use inferior_ptid, adjust call to inf_ptrace_detach_success.
7312 * linux-thread-db.c (thread_db_detach): Use inf parameter.
7313
7314 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
7315
7316 * target.h (struct target_ops) <to_detach>: Add inferior
7317 parameter.
7318 (target_detach): Likewise.
7319 * target.c (dispose_inferior): Pass inferior down.
7320 (target_detach): Pass inferior down. Assert that it is equal to
7321 the current inferior.
7322 * aix-thread.c (aix_thread_detach): Pass inferior down.
7323 * corefile.c (core_file_command): Pass current_inferior() down.
7324 * corelow.c (core_detach): Add inferior parameter.
7325 * darwin-nat.c (darwin_detach): Likewise.
7326 * gnu-nat.c (gnu_detach): Likewise.
7327 * inf-ptrace.c (inf_ptrace_detach): Likewise.
7328 * infcmd.c (detach_command): Pass current_inferior() down to
7329 target_detach.
7330 * infrun.c (follow_fork_inferior): Pass parent_inf to
7331 target_detach.
7332 (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
7333 target_detach.
7334 * linux-nat.c (linux_nat_detach): Add inferior parameter.
7335 * linux-thread-db.c (thread_db_detach): Likewise.
7336 * nto-procfs.c (procfs_detach): Likewise.
7337 * procfs.c (procfs_detach): Likewise.
7338 * record.c (record_detach): Likewise.
7339 * record.h (struct inferior): Forward-declare.
7340 (record_detach): Add inferior parameter.
7341 * remote-sim.c (gdbsim_detach): Likewise.
7342 * remote.c (remote_detach_1): Likewise.
7343 (remote_detach): Likewise.
7344 (extended_remote_detach): Likewise.
7345 * sol-thread.c (sol_thread_detach): Likewise.
7346 * target-debug.h (target_debug_print_inferior_p): New macro.
7347 * target-delegates.c: Re-generate.
7348 * top.c (kill_or_detach): Pass inferior down to target_detach.
7349 * windows-nat.c (windows_detach): Add inferior parameter.
7350
7351 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
7352
7353 * target.h (struct target_ops) <to_detach>: Remove args
7354 parameter.
7355 (target_detach): Likewise.
7356 * target.c (dispose_inferior): Adjust.
7357 (target_detach): Remove args parameter, adjust.
7358 * aix-thread.c (aix_thread_detach): Adjust.
7359 * corefile.c (core_file_command): Adjust.
7360 * corelow.c (core_detach): Adjust.
7361 * darwin-nat.c (darwin_detach): Adjust.
7362 * gnu-nat.c (gnu_detach): Adjust.
7363 * inf-ptrace.c (inf_ptrace_detach): Adjust.
7364 * infcmd.c (detach_command): Adjust
7365 * infrun.c (follow_fork_inferior): Adjust.
7366 (handle_vfork_child_exec_or_exit): Adjust.
7367 * linux-fork.c (linux_fork_detach): Remove args parameter.
7368 * linux-fork.h (linux_fork_detach): Likewise.
7369 * linux-nat.c (linux_nat_detach): Likewise, and adjust.
7370 * linux-thread-db.c (thread_db_detach): Likewise.
7371 * nto-procfs.c (procfs_detach): Likewise.
7372 * procfs.c (procfs_detach): Likewise.
7373 (do_detach): Remove signo parameter.
7374 * record.c (record_detach): Remove args parameter.
7375 * record.h (record_detach): Likewise.
7376 * remote-sim.c (gdbsim_detach): Likewise.
7377 * remote.c (remote_detach_1): Likewise.
7378 (remote_detach): Likewise.
7379 (extended_remote_detach): Likewise.
7380 * sol-thread.c (sol_thread_detach): Likewise.
7381 * target-delegates.c: Re-generate.
7382 * top.c (struct qt_args) <args>: Remove field.
7383 (kill_or_detach): Don't pass args.
7384 (quit_force): Don't set args.
7385 * windows-nat.c (windows_detach): Remove args parameter.
7386
7387 2018-01-19 Yao Qi <yao.qi@linaro.org>
7388
7389 * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
7390 (arm_linux_init_abi): Install it.
7391
7392 2018-01-19 Yao Qi <yao.qi@linaro.org>
7393
7394 * osabi.c (gdb_osabi_names): Extend the regexp for
7395 arm-linux-gnueabihf.
7396
7397 2018-01-18 Yao Qi <yao.qi@linaro.org>
7398
7399 * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
7400 m_abbrevs.
7401 (abbrev_table::add_abbrev): Update.
7402 (abbrev_table::lookup_abbrev): Update.
7403
7404 2018-01-18 Yao Qi <yao.qi@linaro.org>
7405
7406 * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
7407
7408 2018-01-17 Sergio Durigan Junior <sergiodj@redhat.com>
7409
7410 * compile/compile.c (compile_to_object): Convert "triplet_rx"
7411 to "std::string".
7412
7413 2018-01-17 Tom Tromey <tom@tromey.com>
7414
7415 * dwarf2read.c (symbolp): Remove typedef. Don't instantiate VEC.
7416
7417 2018-01-17 Tom Tromey <tom@tromey.com>
7418
7419 * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
7420 * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
7421 (create_array_type_with_stride): Update.
7422 * dwarf2read.c (set_die_type): Update.
7423
7424 2018-01-17 Tom Tromey <tom@tromey.com>
7425
7426 * dwarf2read.c (delayed_method_info): Remove typedef.
7427 (dwarf2_cu::method_info): Now a std::vector.
7428 (add_to_method_list): Update.
7429 (free_delayed_list): Remove.
7430 (compute_delayed_physnames): Update.
7431 (process_full_comp_unit, process_full_type_unit): Clear the method
7432 list. Remove cleanups.
7433 (psymtab_include_file_name): Add name_holder parameter. Use
7434 unique_xmalloc_ptr.
7435 (dwarf_decode_lines): Update.
7436
7437 2018-01-17 Tom Tromey <tom@tromey.com>
7438 Simon Marchi <simon.marchi@ericsson.com>
7439
7440 * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
7441 (dwarf2_per_objfile::free_cached_comp_units)
7442 (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
7443 (init_cutu_and_read_dies_no_follow): Update.
7444 (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
7445 (dwarf2_cu::~dwarf2_cu): New.
7446 (free_heap_comp_unit, free_stack_comp_unit): Remove.
7447 (age_cached_comp_units, free_one_cached_comp_unit): Update.
7448
7449 2018-01-17 Tom Tromey <tom@tromey.com>
7450 Simon Marchi <simon.marchi@ericsson.com>
7451
7452 * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
7453 (struct die_reader_specs) <abbrev_table>: New member.
7454 (struct abbrev_table): Add constructor.
7455 <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
7456 <abbrev_obstack>: Now an auto_obstack.
7457 (abbrev_table_up): New typedef.
7458 (init_cu_die_reader): Add abbrev_table parameter.
7459 (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
7460 Add result_dwo_abbrev_table.
7461 (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
7462 (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
7463 Update.
7464 (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
7465 parameter.
7466 (skip_children): Update.
7467 (abbrev_table::alloc_abbrev): Rename from
7468 abbrev_table_alloc_abbrev.
7469 (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
7470 (abbrev_table::lookup_abbrev): Rename from
7471 abbrev_table_lookup_abbrev.
7472 (abbrev_table_read_table): Return abbrev_table_up.
7473 (abbrev_table_free, abbrev_table_free_cleanup)
7474 (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
7475 (load_partial_dies): Update.
7476
7477 2018-01-17 Tom Tromey <tom@tromey.com>
7478
7479 * dwarf2read.c (dwarf2_compute_name): Update comment.
7480 (read_func_scope, read_variable): Update.
7481 (new_symbol): Remove.
7482 (new_symbol_full): Rename to new_symbol.
7483
7484 2018-01-17 Mike Gulick <mgulick@mathworks.com>
7485
7486 PR gdb/16577
7487 * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
7488 a warning instead of throwing an error, set section size to 0 and return
7489 NULL.
7490 * gdb_bfd.h (gdb_bfd_map_section): Update description.
7491
7492 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
7493
7494 * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
7495 std::string.
7496 (linux_ptrace_attach_fail_reason_string): Likewise.
7497 * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
7498 Likewise.
7499 (linux_ptrace_attach_fail_reason_string): Likewise.
7500 * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
7501
7502 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
7503
7504 * linux-nat.c (linux_nat_attach): Remove xstrdup.
7505
7506 2018-01-17 Eldar Abusalimov <eldar.abusalimov@jetbrains.com>
7507
7508 PR gdb/21559
7509 * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
7510 checking for fs_base/gs_base fields in struct user_regs_struct.
7511 * configure: Regenerate.
7512
7513 2018-01-17 Yao Qi <yao.qi@linaro.org>
7514
7515 * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
7516 function.
7517 (aarch64_linux_init_abi): Install it to gdbarch hook
7518 gcc_target_options.
7519
7520 2018-01-15 Pedro Alves <palves@redhat.com>
7521
7522 * common/signals-state-save-restore.c
7523 (save_original_signals_state): Fix typos.
7524
7525 2017-01-12 Tom Tromey <tom@tromey.com>
7526 Sergio Durigan Junior <sergiodj@redhat.com>
7527
7528 * Makefile.in (install-only): Install gdb-add-index.
7529
7530 2018-01-12 John Baldwin <jhb@FreeBSD.org>
7531
7532 * fbsd-tdep.c (KVE_PROTECTION): Correct value.
7533
7534 2018-01-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
7535
7536 * infrun.c (keep_going_pass_signal): Clear step-over info when
7537 insert_breakpoints fails.
7538
7539 2018-01-11 Pedro Alves <palves@redhat.com>
7540
7541 PR gdb/22583
7542 * infrun.c (resume): Rename to ...
7543 (resume_1): ... this.
7544 (resume): Reimplement as wrapper around resume_1.
7545
7546 2018-01-11 Pedro Alves <palves@redhat.com>
7547
7548 PR remote/22597
7549 * remote.c (remote_parse_stop_reply): Default to the last-set
7550 general thread instead of to 'magic_null_ptid'.
7551
7552 2018-01-10 Pedro Alves <palves@redhat.com>
7553
7554 * language.h (language_get_symbol_name_matcher): Rename ...
7555 (get_symbol_name_matcher): ... this.
7556 * language.c (language_get_symbol_name_matcher): Ditto.
7557 * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
7558 callers adjusted.
7559
7560 2018-01-10 Pedro Alves <palves@redhat.com>
7561
7562 PR gdb/22670
7563 * dwarf2read.c
7564 (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
7565 Adjust to use language_get_symbol_name_matcher instead of
7566 language_defn::la_get_symbol_name_matcher.
7567 * language.c (language_get_symbol_name_matcher): If in Ada mode
7568 and the lookup name is a verbatim match, return Ada's matcher.
7569 * language.h (language_get_symbol_name_matcher): Adjust comment.
7570 (ada_lookup_name_info::verbatim_p):: New method.
7571
7572 2018-01-10 Pedro Alves <palves@redhat.com>
7573
7574 PR gdb/22670
7575 * ada-lang.c (ada_collect_symbol_completion_matches): If the
7576 minsym's language is language_auto or language_cplus, pass down
7577 language_ada instead.
7578 * symtab.c (compare_symbol_name): Don't frob symbol language here.
7579
7580 2018-01-10 Pedro Alves <palves@redhat.com>
7581
7582 PR gdb/22670
7583 * minsyms.c (linkage_name_str): New function.
7584 (iterate_over_minimal_symbols): Use it.
7585
7586 2018-01-09 John Baldwin <jhb@FreeBSD.org>
7587
7588 * NEWS: Document that 'info proc' now works on FreeBSD.
7589
7590 2018-01-09 John Baldwin <jhb@FreeBSD.org>
7591
7592 * configure.ac: Check for kinfo_getfile in libutil.
7593 * configure: Regenerate.
7594 * config.in: Regenerate.
7595 * fbsd-nat.c: Include "fbsd-tdep.h".
7596 (fbsd_fetch_cmdline): New.
7597 (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
7598 rather than calling error.
7599 (fbsd_info_proc): New.
7600 (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
7601 (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
7602 (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
7603
7604 2018-01-09 John Baldwin <jhb@FreeBSD.org>
7605
7606 * fbsd-nat.c (struct free_deleter): Remove.
7607 (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
7608
7609 2018-01-09 John Baldwin <jhb@FreeBSD.org>
7610
7611 * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
7612 NULL for an empty pathname.
7613
7614 2018-01-09 John Baldwin <jhb@FreeBSD.org>
7615
7616 * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
7617 (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
7618 (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
7619 (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
7620 (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
7621 (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
7622 (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
7623 (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
7624 (kinfo_proc_layout_32, kinfo_proc_layout_i386)
7625 (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
7626 (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
7627 (fbsd_core_fetch_timeval, fbsd_print_sigset)
7628 (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
7629 (fbsd_init_abi): Install gdbarch "core_info_proc" method.
7630 * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
7631
7632 2018-01-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
7633
7634 * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
7635 (gnu_xfer_auxv): New function.
7636 (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
7637 TARGET_OBJECT_AUXV.
7638
7639 2018-01-08 Yao Qi <yao.qi@linaro.org>
7640 Simon Marchi <simon.marchi@ericsson.com>
7641
7642 * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
7643 common/selftest.c.
7644 (COMMON_OBS): Remove selftest.o.
7645 * configure.ac: Append selftest-arch.c and common/selftest.c to
7646 CONFIG_SRCS. Append selftest-arch.o and selftest.o to COMMON_OBS.
7647 * configure: Re-generated.
7648 * maint.c (maintenance_selftest): Wrap selftests::run_tests with
7649 GDB_SELF_TEST.
7650 (maintenance_info_selftests): Likewise.
7651
7652 2018-01-08 Xavier Roirand <roirand@adacore.com>
7653
7654 * ada-valprint.c (val_print_packed_array_elements): Use
7655 proper number of elements when printing an array indexed
7656 by an enumeration type.
7657
7658 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
7659
7660 * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
7661 (dw2_get_file_names_reader): Adjust.
7662 (lookup_dwo_signatured_type): Adjust.
7663 (lookup_dwp_signatured_type): Adjust.
7664 (lookup_signatured_type): Adjust.
7665 (create_type_unit_group): Adjust.
7666 (get_type_unit_group): Adjust.
7667 (process_psymtab_comp_unit_reader): Adjust.
7668 (build_type_psymtabs_reader): Adjust.
7669 (scan_partial_symbols): Adjust.
7670 (add_partial_symbol): Adjust.
7671 (add_partial_subprogram): Adjust.
7672 (peek_die_abbrev): Adjust.
7673 (fixup_go_packaging): Adjust.
7674 (process_imported_unit_die): Adjust.
7675 (dwarf2_compute_name): Adjust.
7676 (dwarf2_physname): Adjust.
7677 (read_import_statement): Adjust.
7678 (handle_DW_AT_stmt_list): Adjust.
7679 (read_file_scope): Adjust.
7680 (read_func_scope): Adjust.
7681 (read_lexical_block_scope): Adjust.
7682 (read_call_site_scope): Adjust.
7683 (read_variable): Adjust.
7684 (dwarf2_rnglists_process): Adjust.
7685 (dwarf2_ranges_process): Adjust.
7686 (dwarf2_ranges_read): Adjust.
7687 (dwarf2_get_pc_bounds): Adjust.
7688 (dwarf2_record_block_ranges): Adjust.
7689 (dwarf2_add_field): Adjust.
7690 (dwarf2_add_member_fn): Adjust.
7691 (read_structure_type): Adjust.
7692 (process_structure_scope): Adjust.
7693 (read_enumeration_type): Adjust.
7694 (read_array_type): Adjust.
7695 (mark_common_block_symbol_computed): Adjust.
7696 (read_common_block): Adjust.
7697 (read_namespace_type): Adjust.
7698 (read_namespace): Adjust.
7699 (read_module_type): Adjust.
7700 (read_tag_pointer_type): Adjust.
7701 (read_tag_ptr_to_member_type): Adjust.
7702 (read_tag_string_type): Adjust.
7703 (read_subroutine_type): Adjust.
7704 (read_typedef): Adjust.
7705 (read_base_type): Adjust.
7706 (attr_to_dynamic_prop): Adjust.
7707 (read_subrange_type): Adjust.
7708 (read_unspecified_type): Adjust.
7709 (dwarf2_read_abbrevs): Adjust.
7710 (load_partial_dies): Adjust.
7711 (read_partial_die): Adjust.
7712 (find_partial_die): Adjust.
7713 (guess_partial_die_structure_name): Adjust.
7714 (fixup_partial_die): Adjust.
7715 (read_attribute_value): Adjust.
7716 (read_addr_index): Adjust.
7717 (read_addr_index_from_leb128): Adjust.
7718 (read_str_index): Adjust.
7719 (dwarf2_string_attr): Adjust.
7720 (get_debug_line_section): Adjust.
7721 (dwarf_decode_line_header): Adjust.
7722 (lnp_state_machine::check_line_address): Adjust.
7723 (dwarf_decode_lines_1): Adjust.
7724 (dwarf_decode_lines): Adjust.
7725 (dwarf2_start_symtab): Adjust.
7726 (var_decode_location): Adjust.
7727 (new_symbol_full): Adjust.
7728 (dwarf2_const_value_data): Adjust.
7729 (dwarf2_const_value_attr): Adjust.
7730 (dwarf2_const_value): Adjust.
7731 (die_type): Adjust.
7732 (die_containing_type): Adjust.
7733 (build_error_marker_type): Adjust.
7734 (lookup_die_type): Adjust.
7735 (guess_full_die_structure_name): Adjust.
7736 (anonymous_struct_prefix): Adjust.
7737 (determine_prefix): Adjust.
7738 (dwarf2_name): Adjust.
7739 (follow_die_ref_or_sig): Adjust.
7740 (follow_die_offset): Adjust.
7741 (follow_die_ref): Adjust.
7742 (follow_die_sig_1): Adjust.
7743 (follow_die_sig): Adjust.
7744 (get_signatured_type): Adjust.
7745 (get_DW_AT_signature_type): Adjust.
7746 (decode_locdesc): Adjust.
7747 (dwarf_decode_macros): Adjust.
7748 (cu_debug_loc_section): Adjust.
7749 (fill_in_loclist_baton): Adjust.
7750 (dwarf2_symbol_mark_computed): Adjust.
7751 (init_one_comp_unit): Don't assign
7752 dwarf2_cu::dwarf2_per_objfile.
7753 (set_die_type): Adjust.
7754
7755 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
7756
7757 * dwarf2read.c (struct mapped_debug_names): Add constructor.
7758 <dwarf2_per_objfile>: New field.
7759 (dwarf2_per_objfile): Remove global.
7760 (get_dwarf2_per_objfile): New function.
7761 (set_dwarf2_per_objfile): New function.
7762 (dwarf2_build_psymtabs_hard): Change objfile parameter to
7763 dwarf2_per_objfile.
7764 (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
7765 (read_abbrev_offset): Likewise.
7766 (read_indirect_string): Likewise.
7767 (read_indirect_line_string): Likewise.
7768 (read_indirect_string_at_offset): Likewise.
7769 (read_indirect_string_from_dwz): Likewise.
7770 (dwarf2_find_containing_comp_unit): Change objfile parameter to
7771 dwarf2_per_objfile.
7772 (age_cached_comp_units): Add dwarf2_per_objfile parameter.
7773 (create_all_comp_units): Change objfile parameter to
7774 dwarf2_per_objfile.
7775 (create_all_type_units): Likewise.
7776 (process_queue): Add dwarf2_per_objfile parameter.
7777 (read_and_check_comp_unit_head): Likewise.
7778 (lookup_dwo_unit_in_dwp): Likewise.
7779 (get_dwp_file): Likewise.
7780 (process_cu_includes): Likewise.
7781 (struct free_dwo_file_cleanup_data): New struct.
7782 (dwarf2_has_info): Use get_dwarf2_per_objfile and
7783 set_dwarf2_per_objfile.
7784 (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
7785 (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
7786 context, adjust calls.
7787 (dw2_instantiate_symtab): Likewise.
7788 (dw2_get_cutu): Add dwarf2_per_objfile parameter.
7789 (dw2_get_cu): Likewise.
7790 (create_cu_from_index_list): Change objfile parameter to
7791 dwarf2_per_objfile.
7792 (create_cus_from_index_list): Get dwarf2_per_objfile from
7793 context, adjust calls.
7794 (create_cus_from_index): Likewise.
7795 (create_signatured_type_table_from_index): Change objfile
7796 parameter to dwarf2_per_objfile.
7797 (create_signatured_type_table_from_debug_names): Change objfile
7798 parameter to dwarf2_per_objfile.
7799 (create_addrmap_from_index): Likewise.
7800 (create_addrmap_from_aranges): Likewise.
7801 (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
7802 (dw2_setup): Remove.
7803 (dw2_get_file_names_reader): Get dwarf2_per_objfile from
7804 context.
7805 (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
7806 get_dwarf2_per_objfile.
7807 (dw2_forget_cached_source_info): Likewise.
7808 (dw2_map_symtabs_matching_filename): Likewise.
7809 (struct dw2_symtab_iterator) <index>: Remove.
7810 <dwarf2_per_objfile>: New field.
7811 (dw2_symtab_iter_init): Replace index parameter with
7812 dwarf2_per_objfile.
7813 (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
7814 (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
7815 (dw2_print_stats): Likewise.
7816 (dw2_dump): Likewise.
7817 (dw2_expand_symtabs_for_function): Likewise.
7818 (dw2_expand_all_symtabs): Likewise.
7819 (dw2_expand_symtabs_with_fullname): Likewise.
7820 (dw2_expand_marked_cus): Replace index and objfile parameters
7821 with dwarf2_per_objfile.
7822 (dw_expand_symtabs_matching_file_matcher): Add
7823 dwarf2_per_objfile parameter and adjust calls.
7824 (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
7825 adjust calls.
7826 (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
7827 (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
7828 adjust calls.
7829 (create_cus_from_debug_names_list): Replace objfile parameter
7830 with dwarf2_per_objfile and adjust calls.
7831 (create_cus_from_debug_names): Likewise.
7832 (dwarf2_read_debug_names): Likewise.
7833 (mapped_debug_names::namei_to_name): Adjust call.
7834 (dw2_debug_names_iterator::next): Likewise.
7835 (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
7836 (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
7837 (dw2_debug_names_dump): Likewise.
7838 (dw2_debug_names_expand_symtabs_for_function): Likewise.
7839 (dw2_debug_names_expand_symtabs_matching): Likewise.
7840 (dwarf2_initialize_objfile): Likewise.
7841 (dwarf2_build_psymtabs): Likewise.
7842 (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
7843 this_cu.
7844 (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
7845 (read_and_check_comp_unit_head): Likewise.
7846 (read_abbrev_offset): Likewise.
7847 (create_debug_type_hash_table): Likewise.
7848 (create_debug_types_hash_table): Likewise.
7849 (create_all_type_units): Replace objfile parameter with
7850 dwarf2_per_objfile.
7851 (add_type_unit): Add dwarf2_per_objfile parameter.
7852 (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
7853 with dwarf2_per_objfile.
7854 (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
7855 (lookup_dwp_signatured_type): Likewise.
7856 (lookup_signatured_type): Likewise.
7857 (read_cutu_die_from_dwo): Likewise.
7858 (init_tu_and_read_dwo_dies): Likewise.
7859 (init_cutu_and_read_dies): Likewise.
7860 (init_cutu_and_read_dies_no_follow): Likewise.
7861 (allocate_type_unit_groups_table): Add objfile parameter.
7862 (create_type_unit_group): Use dwarf2_per_objfile from cu.
7863 (get_type_unit_group): Likewise.
7864 (process_psymtab_comp_unit): Update call.
7865 (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
7866 (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
7867 (print_tu_stats): Likewise.
7868 (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
7869 in void* parameter.
7870 (build_type_psymtabs): Change objfile parameter to
7871 dwarf2_per_objfile.
7872 (process_skeletonless_type_unit): Use dwarf2_per_objfile
7873 passed in void* parameter.
7874 (process_skeletonless_type_units): Change objfile parameter to
7875 dwarf2_per_objfile.
7876 (set_partial_user): Likewise.
7877 (dwarf2_build_psymtabs_hard): Likewise.
7878 (read_comp_units_from_section): Likewise.
7879 (create_all_comp_units): Likewise.
7880 (scan_partial_symbols): Update calls.
7881 (add_partial_symbol): Likewise.
7882 (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
7883 (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
7884 (process_queue): Add dwarf2_per_objfile parameter.
7885 (get_compunit_symtab): Use dwarf2_per_objfile from cu.
7886 (compute_compunit_symtab_includes): Likewise.
7887 (process_cu_includes): Add dwarf2_per_objfile parameter.
7888 (process_full_comp_unit): Use dwarf2_per_objfile from cu.
7889 (process_full_type_unit): Likewise.
7890 (process_imported_unit_die): Update call.
7891 (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
7892 (read_file_scope): Likewise.
7893 (allocate_dwo_file_hash_table): Add objfile parameter.
7894 (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
7895 (create_cus_hash_table): Likewise.
7896 (create_dwp_hash_table): Likewise.
7897 (create_dwo_unit_in_dwp_v1): Likewise.
7898 (create_dwp_v2_section): Likewise.
7899 (create_dwo_unit_in_dwp_v2): Likewise.
7900 (lookup_dwo_unit_in_dwp): Likewise.
7901 (try_open_dwop_file): Likewise.
7902 (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
7903 (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
7904 cleanup to include a reference to dwarf2_per_objfile.
7905 (open_dwp_file): Add dwarf2_per_objfile parameter.
7906 (open_and_init_dwp_file): Likewise.
7907 (get_dwp_file): Likewise.
7908 (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
7909 (queue_and_load_all_dwo_tus): Update call.
7910 (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
7911 data.
7912 (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
7913 (dwarf2_ranges_process): Likewise.
7914 (dwarf2_get_pc_bounds): Likewise.
7915 (mark_common_block_symbol_computed): Likewise.
7916 (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
7917 (dwarf2_read_abbrevs): Update call.
7918 (read_partial_die): Use dwarf2_per_objfile from cu.
7919 (find_partial_die): Likewise.
7920 (fixup_partial_die): Likewise.
7921 (read_attribute_value): Likewise.
7922 (read_indirect_string_at_offset_from): Add objfile parameter.
7923 (read_indirect_string_at_offset): Add dwarf2_per_objfile
7924 parameter.
7925 (read_indirect_string_from_dwz): Add objfile parameter.
7926 (read_indirect_string): Add objfile parameter.
7927 (read_addr_index_1): Add dwarf2_per_objfile parameter.
7928 (read_addr_index): Use dwarf2_per_objfile from cu.
7929 (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
7930 call dw2_setup.
7931 (read_str_index): Use dwarf2_per_objfile from cu.
7932 (get_debug_line_section): Likewise.
7933 (read_formatted_entries): Add dwarf2_per_objfile parameter.
7934 (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
7935 (new_symbol_full): Use dwarf2_per_objfile from cu.
7936 (build_error_marker_type): Likewise.
7937 (lookup_die_type): Likewise.
7938 (determine_prefix): Likewise.
7939 (follow_die_offset): Likewise.
7940 (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
7941 (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
7942 (dwarf2_fetch_die_type_sect_off): Likewise.
7943 (dwarf2_get_die_type): Likewise.
7944 (follow_die_sig_1): Use dwarf2_per_objfile from cu.
7945 (get_signatured_type): Likewise.
7946 (get_DW_AT_signature_type): Likewise.
7947 (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
7948 (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
7949 (cu_debug_loc_section): Likewise.
7950 (fill_in_loclist_baton): Likewise.
7951 (dwarf2_symbol_mark_computed): Likewise.
7952 (dwarf2_find_containing_comp_unit): Change objfile parameter to
7953 dwarf2_per_objfile.
7954 (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
7955 parameter.
7956 (age_cached_comp_units): Add dwarf2_per_objfile parameter.
7957 (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
7958 (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
7959 (set_die_type): Use dwarf2_free_objfile from cu.
7960 (get_die_type_at_offset): Likewise.
7961 (dwarf2_per_objfile_free): Don't assign global variable.
7962 (debug_names) <constructor>: Add dwarf2_per_objfile
7963 parameter, update m_debugstrlookup construction.
7964 (debug_names::debug_str_lookup): Add dwarf2_per_objfile
7965 parameter.
7966 <m_dwarf2_per_objfile>: New field.
7967 <lookup>: Use m_dwarf2_per_objfile.
7968 (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
7969 (psyms_seen_size): Likewise.
7970 (write_gdbindex): Replace objfile parameter with
7971 dwarf2_per_objfile.
7972 (write_debug_names): Likewise.
7973 (write_psymtabs_to_index): Likewise.
7974 (save_gdb_index_command): Use get_dwarf2_per_objfile, update
7975 calls.
7976
7977 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
7978
7979 * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
7980 <dwarf2_per_objfile>: New field.
7981 (struct dwarf2_per_cu_data) <objfile>: Remove.
7982 <dwarf2_per_objfile>: New field.
7983 (create_cu_from_index_list): Assign dwarf2_per_objfile instead
7984 of objfile.
7985 (create_signatured_type_table_from_index): Likewise.
7986 (create_debug_type_hash_table): Likewise.
7987 (fill_in_sig_entry_from_dwo_entry): Likewise.
7988 (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
7989 (create_type_unit_group): Assign dwarf2_per_objfile instead of
7990 objfile.
7991 (create_partial_symtab): Access objfile through
7992 dwarf2_per_objfile.
7993 (process_psymtab_comp_unit_reader): Likewise.
7994 (read_comp_units_from_section): Likewise.
7995 (scan_partial_symbols): Likewise.
7996 (add_partial_symbol): Likewise.
7997 (add_partial_subprogram): Likewise.
7998 (peek_die_abbrev): Likewise.
7999 (fixup_go_packaging): Likewise.
8000 (process_full_comp_unit): Likewise.
8001 (process_full_type_unit): Likewise.
8002 (process_imported_unit_die): Likewise.
8003 (dwarf2_compute_name): Likewise.
8004 (dwarf2_physname): Likewise.
8005 (read_import_statement): Likewise.
8006 (create_cus_hash_table): Assign dwarf2_physname instead of
8007 objfile.
8008 (read_func_scope): Access objfile through dwarf2_per_objfile.
8009 (read_lexical_block_scope): Likewise.
8010 (read_call_site_scope): Likewise.
8011 (read_variable): Likewise.
8012 (dwarf2_rnglists_process): Likewise.
8013 (dwarf2_ranges_process): Likewise.
8014 (dwarf2_ranges_read): Likewise.
8015 (dwarf2_record_block_ranges): Likewise.
8016 (dwarf2_add_field): Likewise.
8017 (dwarf2_add_member_fn): Likewise.
8018 (read_structure_type): Likewise.
8019 (process_structure_scope): Likewise.
8020 (read_enumeration_type): Likewise.
8021 (read_array_type): Likewise.
8022 (read_common_block): Likewise.
8023 (read_namespace_type): Likewise.
8024 (read_namespace): Likewise.
8025 (read_module_type): Likewise.
8026 (read_tag_pointer_type): Likewise.
8027 (read_tag_ptr_to_member_type): Likewise.
8028 (read_tag_string_type): Likewise.
8029 (read_subroutine_type): Likewise.
8030 (read_typedef): Likewise.
8031 (read_base_type): Likewise.
8032 (attr_to_dynamic_prop): Likewise.
8033 (read_subrange_type): Likewise.
8034 (read_unspecified_type): Likewise.
8035 (load_partial_dies): Likewise.
8036 (read_partial_die): Likewise.
8037 (find_partial_die): Likewise.
8038 (guess_partial_die_structure_name): Likewise.
8039 (fixup_partial_die): Likewise.
8040 (read_attribute_value): Likewise.
8041 (read_addr_index_from_leb128): Likewise.
8042 (dwarf2_read_addr_index): Likewise.
8043 (dwarf2_string_attr): Likewise.
8044 (lnp_state_machine::check_line_address): Likewise.
8045 (dwarf_decode_lines_1): Likewise.
8046 (dwarf_decode_lines): Likewise.
8047 (dwarf2_start_symtab): Likewise.
8048 (var_decode_location): Likewise.
8049 (new_symbol_full): Likewise.
8050 (dwarf2_const_value_data): Likewise.
8051 (dwarf2_const_value_attr): Likewise.
8052 (dwarf2_const_value): Likewise.
8053 (die_type): Likewise.
8054 (die_containing_type): Likewise.
8055 (lookup_die_type): Likewise.
8056 (guess_full_die_structure_name): Likewise.
8057 (anonymous_struct_prefix): Likewise.
8058 (dwarf2_name): Likewise.
8059 (follow_die_ref_or_sig): Likewise.
8060 (follow_die_offset): Likewise.
8061 (follow_die_ref): Likewise.
8062 (dwarf2_fetch_die_loc_sect_off): Likewise.
8063 (dwarf2_fetch_constant_bytes): Likewise.
8064 (dwarf2_fetch_die_type_sect_off): Likewise.
8065 (dwarf2_get_die_type): Likewise.
8066 (follow_die_sig): Likewise.
8067 (decode_locdesc): Likewise.
8068 (dwarf2_per_cu_objfile): Likewise.
8069 (dwarf2_per_cu_text_offset): Likewise.
8070 (init_one_comp_unit): Assign dwarf2_per_objfile instead of
8071 objfile.
8072 (set_die_type): Access objfile through
8073 dwarf2_per_objfile.
8074
8075 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
8076
8077 * valprint.c (converted_character_d): Remove typedef.
8078 (DEF_VEC_O (converted_character_d)): Remove.
8079 (count_next_character): Use std::vector.
8080 (print_converted_chars_to_obstack): Likewise.
8081 (generic_printstr): Likewise.
8082
8083 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
8084
8085 * xml-support.h (struct gdb_xml_value): Add constructor.
8086 <value>: Change type to unique_xmalloc_ptr.
8087 (gdb_xml_value_s): Remove typedef.
8088 (DEF_VEC_O (gdb_xml_value_s)): Remove.
8089 (gdb_xml_element_start_handler): Change parameter type to
8090 std::vector.
8091 (xml_find_attribute): Likewise.
8092 * xml-support.c (xml_find_attribute): Change parameter type to
8093 std::vector and adjust.
8094 (gdb_xml_values_cleanup): Remove.
8095 (gdb_xml_parser::start_element): Adjust to std::vector.
8096 (xinclude_start_include): Change paraeter type to std::vector
8097 and adjust.
8098 * btrace.c (check_xml_btrace_version): Likewise.
8099 (parse_xml_btrace_block): Likewise.
8100 (parse_xml_btrace_pt_config_cpu): Likewise.
8101 (parse_xml_btrace_pt): Likewise.
8102 (parse_xml_btrace_conf_bts): Likewise.
8103 (parse_xml_btrace_conf_pt): Likewise.
8104 * memory-map.c (memory_map_start_memory): Likewise.
8105 (memory_map_start_property): Likewise.
8106 * osdata.c (osdata_start_osdata): Likewise.
8107 (osdata_start_item): Likewise.
8108 (osdata_start_column): Likewise.
8109 * remote.c (start_thread): Likewise.
8110 * solib-aix.c (library_list_start_library): Likewise.
8111 (library_list_start_list): Likewise.
8112 * solib-svr4.c (library_list_start_library): Likewise.
8113 (svr4_library_list_start_list): Likewise.
8114 * solib-target.c (library_list_start_segment): Likewise.
8115 (library_list_start_section): Likewise.
8116 (library_list_start_library): Likewise.
8117 (library_list_start_list): Likewise.
8118 * tracepoint.c (traceframe_info_start_memory): Likewise.
8119 (traceframe_info_start_tvar): Likewise.
8120 * xml-syscall.c (syscall_start_syscall): Likewise.
8121 * xml-tdesc.c (tdesc_start_target): Likewise.
8122 (tdesc_start_feature): Likewise.
8123 (tdesc_start_reg): Likewise.
8124 (tdesc_start_union): Likewise.
8125 (tdesc_start_struct): Likewise.
8126 (tdesc_start_flags): Likewise.
8127 (tdesc_start_enum): Likewise.
8128 (tdesc_start_field): Likewise.
8129 (tdesc_start_enum_value): Likewise.
8130 (tdesc_start_vector): Likewise.
8131
8132 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
8133
8134 * extension.h (struct xmethod_worker) <clone>: Remove.
8135 * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
8136 Remove.
8137 (python_xmethod_worker::clone): Remove.
8138 * valops.c (find_overload_match): Use std::move instead of
8139 clone.
8140
8141 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
8142
8143 * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
8144 (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
8145 <free_xmethod_worker_data>: Remove.
8146 <get_matching_xmethod_workers>: Chance VEC to std::vector.
8147 <get_xmethod_arg_types>: Remove.
8148 <get_xmethod_result_type>: Remove.
8149 <invoke_xmethod>: Remove.
8150 * extension.c (new_xmethod_worker): Remove.
8151 (clone_xmethod_worker): Remove.
8152 (get_matching_xmethod_workers): Return void, pass std::vector by
8153 pointer.
8154 (get_xmethod_arg_types): Rename to...
8155 (xmethod_worker::get_arg_types): ... this, and adjust.
8156 (get_xmethod_result_type): Rename to...
8157 (xmethod_worker::get_result_type): ... this, and adjust.
8158 (invoke_xmethod): Remove.
8159 (free_xmethod_worker): Remove.
8160 (free_xmethod_worker_vec): Remove.
8161 * extension.h (enum ext_lang_rc): Move here from
8162 extension-priv.h.
8163 (struct xmethod_worker): Add constructor and destructor.
8164 <data>: Remove.
8165 <value>: Remove.
8166 <invoke, clone, do_get_result_type, do_get_arg_types>: New
8167 virtual pure methods.
8168 <get_arg_types, get_result_type>: New methods.
8169 (xmethod_worker_ptr): Remove typedef.
8170 (DEF_VEC_P (xmethod_worker_ptr)): Remove.
8171 (xmethod_worker_vec): Remove typedef.
8172 (xmethod_worker_up): New typedef.
8173 (invoke_xmethod): Remove.
8174 (clone_xmethod_worker): Remove.
8175 (free_xmethod_worker): Remove.
8176 (free_xmethod_worker_vec): Remove.
8177 (get_xmethod_arg_types): Remove.
8178 (get_xmethod_result_type): Remove.
8179 * valops.c (find_method_list): Use std::vector, don't use
8180 intermediate vector.
8181 (value_find_oload_method_list): Use std::vector.
8182 (find_overload_match): Use std::vector.
8183 (find_oload_champ): Use std::vector.
8184 * value.c (value_free): Use operator delete.
8185 (value_of_xmethod): Rename to...
8186 (value_from_xmethod): ... this. Don't assign
8187 xmethod_worker::value, take rvalue-reference.
8188 (result_type_of_xmethod): Adjust.
8189 (call_xmethod): Adjust.
8190 * value.h: Include extension.h.
8191 (struct xmethod_worker): Don't forward-declare.
8192 (value_of_xmethod): Rename to...
8193 (value_from_xmethod): ... this, take rvalue-reference.
8194 * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
8195 (struct python_xmethod_worker): ... this, add constructor and
8196 destructor.
8197 <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
8198 (gdbpy_free_xmethod_worker_data): Rename to...
8199 (python_xmethod_worker::~python_xmethod_worker): ... this and
8200 adjust.
8201 (gdbpy_clone_xmethod_worker_data): Rename to...
8202 (python_xmethod_worker::clone): ... this and adjust.
8203 (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
8204 temporary vector.
8205 (gdbpy_get_xmethod_arg_types): Rename to...
8206 (python_xmethod_worker::do_get_arg_types): ... this and adjust.
8207 (gdbpy_get_xmethod_result_type): Rename to...
8208 (python_xmethod_worker::do_get_result_type): ... this and
8209 adjust.
8210 (gdbpy_invoke_xmethod): Rename to...
8211 (python_xmethod_worker::invoke): ... this and adjust.
8212 (new_python_xmethod_worker): Rename to...
8213 (python_xmethod_worker::python_xmethod_worker): ... this and
8214 adjust.
8215 * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
8216 Remove.
8217 (gdbpy_free_xmethod_worker_data): Remove.
8218 (gdbpy_get_matching_xmethod_workers): Use std::vector.
8219 (gdbpy_get_xmethod_arg_types): Remove.
8220 (gdbpy_get_xmethod_result_type): Remove.
8221 (gdbpy_invoke_xmethod): Remove.
8222 * python/python.c (python_extension_ops): Remove obsolete
8223 callbacks.
8224
8225 2018-01-05 Pedro Alves <palves@redhat.com>
8226
8227 PR gdb/18653
8228 * common/signals-state-save-restore.c
8229 (save_original_signals_state): New parameter 'quiet'. Warn if we
8230 find a custom handler preinstalled, instead of internal erroring.
8231 But only warn if !quiet.
8232 * common/signals-state-save-restore.h
8233 (save_original_signals_state): New parameter 'quiet'.
8234 * main.c (captured_main_1): Move save_original_signals_state call
8235 after option handling, and pass QUIET.
8236
8237 2018-01-05 Pedro Alves <palves@redhat.com>
8238
8239 * spu-tdep.c (spu_catch_start): Pass
8240 symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
8241
8242 2018-01-05 Pedro Alves <palves@redhat.com>
8243
8244 PR gdb/22670
8245 * ada-lang.c (literal_symbol_name_matcher): New function.
8246 (ada_get_symbol_name_matcher): Use it for
8247 symbol_name_match_type::SEARCH_NAME.
8248 * block.c (block_lookup_symbol): New parameter 'match_type'. Pass
8249 it down instead of assuming symbol_name_match_type::FULL.
8250 * block.h (block_lookup_symbol): New parameter 'match_type'.
8251 * c-valprint.c (print_unpacked_pointer): Use
8252 lookup_symbol_search_name instead of lookup_symbol.
8253 * compile/compile-object-load.c (get_out_value_type): Pass down
8254 symbol_name_match_type::SEARCH_NAME.
8255 * cp-namespace.c (cp_basic_lookup_symbol): Pass down
8256 symbol_name_match_type::FULL.
8257 * cp-support.c (cp_get_symbol_name_matcher): Handle
8258 symbol_name_match_type::SEARCH_NAME.
8259 * infrun.c (insert_exception_resume_breakpoint): Use
8260 lookup_symbol_search_name.
8261 * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
8262 * psymtab.c (maintenance_check_psymtabs): Use
8263 symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
8264 * stack.c (print_frame_args): Use lookup_symbol_search_name and
8265 SYMBOL_SEARCH_NAME.
8266 * symtab.c (lookup_local_symbol): Don't demangle the lookup name
8267 if symbol_name_match_type::SEARCH_NAME.
8268 (lookup_symbol_in_language): Pass down
8269 symbol_name_match_type::FULL.
8270 (lookup_symbol_search_name): New.
8271 (lookup_language_this): Pass down
8272 symbol_name_match_type::SEARCH_NAME.
8273 (lookup_symbol_aux, lookup_local_symbol): New parameter
8274 'match_type'. Pass it down.
8275 * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
8276 (lookup_symbol_search_name): New declaration.
8277 (lookup_symbol_in_block): New 'match_type' parameter.
8278
8279 2018-01-05 Pedro Alves <palves@redhat.com>
8280
8281 PR gdb/22670
8282 * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
8283 ada_lookup_symbol.
8284 (ada_lookup_symbol): Reimplement in terms of
8285 ada_lookup_symbol_list, bits factored out from
8286 ada_lookup_encoded_symbol.
8287
8288 2018-01-05 Joel Brobecker <brobecker@adacore.com>
8289
8290 * ada-exp.y (write_object_renaming): When subscripting an array
8291 using a symbol as the index, pass the block in call to
8292 ada_lookup_encoded_symbol when looking that symbol up.
8293
8294 2018-01-05 Jerome Guitton <guitton@adacore.com>
8295
8296 * ada-lang.c (ada_array_length): Use ada_index_type instead of
8297 TYPE_INDEX_TYPE.
8298
8299 2018-01-05 Joel Brobecker <brobecker@adacore.com>
8300
8301 * ada-lang.c (ada_to_fixed_value_create): Add handling of
8302 the case where VALUE_LVAL (val0) is not lval_memory.
8303
8304 2018-01-05 Xavier Roirand <roirand@adacore.com>
8305
8306 * ada-valprint.c (print_optional_low_bound): Handle
8307 character-indexed array printing like boolean-indexed array
8308 printing.
8309
8310 2018-01-05 Joel Brobecker <brobecker@adacore.com>
8311
8312 * NEWS: Create a new section for the next release branch.
8313 Rename the section of the current branch, now that it has
8314 been cut.
8315
8316 2018-01-05 Joel Brobecker <brobecker@adacore.com>
8317
8318 GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
8319 * version.in: Bump version to 8.1.50.DATE-git.
8320
8321 2018-01-03 Xavier Roirand <roirand@adacore.com>
8322
8323 * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
8324 Add field.
8325 * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
8326 Add field.
8327 (default_exception_support_info) <catch_handlers_sym>: Add field.
8328 (exception_support_info_fallback) <catch_handlers_sym>: Add field.
8329 (ada_exception_name_addr_1): Add "catch handlers" handling.
8330 (ada_exception_catchpoint_cond_string) <ex>: New parameter.
8331 Update all callers.
8332 (create_excep_cond_exprs) <ex>: Add parameter.
8333 (re_set_exception): Update create_excep_cond_exprs call.
8334 (print_it_exception, print_one_exception, print_mention_exception)
8335 (print_recreate_exception): Add "catch handler" handling.
8336 (allocate_location_catch_handlers, re_set_catch_handlers)
8337 (check_status_catch_handlers, print_it_catch_handlers)
8338 (print_one_catch_handlers, print_mention_catch_handlers)
8339 (print_recreate_catch_handlers): New function.
8340 (catch_handlers_breakpoint_ops): New variable.
8341 (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
8342 Add parameter. Add "catch handler" handling.
8343 (ada_exception_sym_name, ada_exception_breakpoint_ops):
8344 Add "catch handler" handling.
8345 (ada_exception_catchpoint_cond_string): Add "catch handler"
8346 handling.
8347 (create_ada_exception_catchpoint): Update create_excep_cond_exprs
8348 call.
8349 (catch_ada_handlers_command): New function.
8350 (initialize_ada_catchpoint_ops): Initialize "catch handlers"
8351 operations structure.
8352 (_initialize_ada_language): Add "catch handlers" command entry.
8353 * NEWS: Document "catch handlers" feature.
8354
8355 2018-01-02 Joel Brobecker <brobecker@adacore.com>
8356
8357 * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
8358 account when creating the array type of the slice.
8359 (ada_value_slice): Likewise.
8360
8361 2018-01-02 Joel Brobecker <brobecker@adacore.com>
8362
8363 * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
8364 New enum value.
8365 (create_array_type_with_stride): Add byte_stride_prop parameter.
8366 * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
8367 New parameter. Update all callers in this file.
8368 (array_type_has_dynamic_stride): New function.
8369 (is_dynamic_type_internal, resolve_dynamic_array): Add handling
8370 of arrays with dynamic byte strides.
8371 * dwarf2read.c (read_array_type): Add support for dynamic
8372 DW_AT_byte_stride attributes.
8373
8374 2018-01-02 Joel Brobecker <brobecker@adacore.com>
8375
8376 * dwarf2read.c (read_unspecified_type): Treat
8377 DW_TAG_enumeration_type DIEs from Ada units as stubs.
8378
8379 2018-01-01 Joel Brobecker <brobecker@adacore.com>
8380
8381 Update copyright year range in all GDB files.
8382
8383 2018-01-01 Joel Brobecker <brobecker@adacore.com>
8384
8385 * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
8386 and gdb/testsuite/gdb.base/step-line.c.
8387
8388 2018-01-01 Joel Brobecker <brobecker@adacore.com>
8389
8390 * copyright.py (main): Dump the contents of
8391 MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
8392 even if BY_HAND is empty.
8393
8394 2018-01-01 Joel Brobecker <brobecker@adacore.com>
8395
8396 * top.c (print_gdb_version): Update Copyright year in version
8397 message.
8398
8399 2018-01-01 Joel Brobecker <brobecker@adacore.com>
8400
8401 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
8402
8403 For older changes see ChangeLog-2017.
8404 \f
8405 Local Variables:
8406 mode: change-log
8407 left-margin: 8
8408 fill-column: 74
8409 version-control: never
8410 coding: utf-8
8411 End:
This page took 0.193532 seconds and 5 git commands to generate.