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