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