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