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