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