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