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