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