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