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