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