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