f5ae5250c689f3c5d6d2cc7b52934218c72e5d3c
[deliverable/binutils-gdb.git] / gdb / ChangeLog
1 2018-05-10 Tom Tromey <tom@tromey.com>
2
3 * configure: Rebuild.
4 * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
5
6 2018-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
12 2018-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
21 2018-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
30 2018-05-08 Simon Marchi <simon.marchi@ericsson.com>
31
32 * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
33
34 2018-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
51 2018-05-08 Ulrich Weigand <uweigand@de.ibm.com>
52
53 * spu-tdep.c (info_spu_event_command): Fix output formatting.
54
55 2018-05-07 Tom Tromey <tom@tromey.com>
56
57 * configure: Rebuild.
58 * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
59
60 2018-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
66 2018-05-04 Tom Tromey <tom@tromey.com>
67
68 * configure: Rebuild.
69 * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
70
71 2018-05-04 Tom Tromey <tom@tromey.com>
72
73 * linux-record.c (record_linux_system_call) <case
74 RECORD_SYS_RECVFROM>: Add "break".
75
76 2018-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
83 2018-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
88 2018-05-04 Tom Tromey <tom@tromey.com>
89
90 * i386-tdep.c (i386_process_record): Add fall-through comment.
91
92 2018-05-04 Tom Tromey <tom@tromey.com>
93
94 * stabsread.c (define_symbol) <case 'p'>: Add fall-through
95 comment.
96
97 2018-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
108 2018-05-04 Tom Tromey <tom@tromey.com>
109
110 * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
111
112 2018-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
143 2018-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
159 2018-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
166 2018-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
184 2018-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
195 2018-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
205 2018-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
213 2018-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
257 2018-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
265 2018-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
301 2018-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
310 2018-05-04 Tom Tromey <tom@tromey.com>
311
312 * printcmd.c: Don't include tui.h.
313 (decode_format): Use skip_spaces.
314
315 2018-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
321 2018-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
330 2018-05-04 Tom Tromey <tom@tromey.com>
331
332 * ada-lang.c (print_mention_exception): Use std::string.
333
334 2018-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
339 2018-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
344 2018-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
349 2018-05-04 Ulrich Weigand <uweigand@de.ibm.com>
350
351 * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
352
353 2018-05-04 Tom Tromey <tom@tromey.com>
354
355 * remote.c (remote_query_supported_append): Change type.
356 (remote_check_symbols): Update.
357
358 2018-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
365 2018-05-03 Simon Marchi <simon.marchi@ericsson.com>
366
367 * Makefile.in (%.c: %.l): Use -t instead of --stdout.
368
369 2018-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
377 2018-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
613 2018-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
659 2018-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
723 2018-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
731 2018-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
1739 2018-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
1748 2018-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
1766 2018-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
1776 2018-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
1790 2018-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
1802 2018-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
1808 2018-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
1813 2018-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
1820 2018-04-30 Tom Tromey <tom@tromey.com>
1821
1822 * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
1823
1824 2018-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
1829 2018-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
1835 2018-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
1843 2018-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
1850 2018-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
1860 2018-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
1870 2018-04-30 Tom Tromey <tom@tromey.com>
1871
1872 * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
1873 method.
1874
1875 2018-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
1886 2018-04-30 Tom Tromey <tom@tromey.com>
1887
1888 * rust-lang.c (rust_type_alignment): Remove.
1889 (rust_composite_type): Use type_align.
1890
1891 2018-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
1897 2018-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
1910 2018-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
1931 2018-04-30 Simon Marchi <simon.marchi@ericsson.com>
1932
1933 * dwarf2read.c (read_index_from_section): Use bool.
1934
1935 2018-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
1941 2018-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
1947 2018-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
1952 2018-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
1973 2018-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
1991 2018-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
1998 2018-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
2003 2018-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
2024 2018-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
2038 2018-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
2043 2018-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
2053 2018-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
2063 2018-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
2075 2018-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
2080 2018-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
2090 2018-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
2113 2018-04-26 Pedro Alves <palves@redhat.com>
2114
2115 * c-exp.y (variable production): Skip finding an alias for ifunc
2116 symbols.
2117
2118 2018-04-26 Pedro Alves <palves@redhat.com>
2119
2120 * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
2121
2122 2018-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
2130 2018-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
2160 2018-04-24 Tom Tromey <tom@tromey.com>
2161
2162 * cli-out.h: Reindent.
2163
2164 2018-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
2170 2018-04-23 Tom Tromey <tom@tromey.com>
2171
2172 * guile/scm-frame.c (gdbscm_frame_read_var): Use
2173 gdb::unique_xmalloc_ptr.
2174
2175 2018-04-23 Tom Tromey <tom@tromey.com>
2176
2177 * configure: Rebuild.
2178
2179 2018-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
2186 2018-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
2193 2018-04-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
2194
2195 * thread.c (thread_apply_all_command): Fix comment.
2196 (thread_command): Fix comment.
2197
2198 2018-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
2244 2018-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
2259 2018-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
2287 2018-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
2295 2018-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
2338 2018-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
2353 2018-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
2367 2018-04-17 Tom Tromey <tom@tromey.com>
2368
2369 * dwarf2read.c (quirk_rust_enum): Conditionally drop the
2370 discriminant field.
2371
2372 2018-04-17 Tom Tromey <tom@tromey.com>
2373
2374 * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
2375
2376 2018-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
2385 2018-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
2390 2018-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
2407 2018-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
2419 2018-04-15 Simon Marchi <simon.marchi@polymtl.ca>
2420
2421 * configure.tgt (x86_tobjs): New variable.
2422 (amd64_tobjs, i386_tobjs): Use it.
2423
2424 2018-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
2430 2018-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
2460 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
2461
2462 * record.c (set_record_command): Fix typo in message.
2463
2464 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
2465
2466 * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
2467
2468 2018-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
2490 2018-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
2498 2018-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
2503 2018-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
2509 2018-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
2515 2018-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
2525 2018-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
2539 2018-04-10 Simon Marchi <simon.marchi@ericsson.com>
2540
2541 * auto-load.c (auto_load_safe_path_vec_update): Iterate by
2542 index.
2543
2544 2018-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
2554 2018-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
2565 2018-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
2579 2018-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
2611 2018-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
2660 2018-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
2735 2018-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
2744 2018-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
2749 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2750
2751 * ax_cxx_compile_stdcxx.m4: Sync with upstream.
2752 * configure: Re-generate.
2753
2754 2018-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
2761 2018-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
2773 2018-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
2800 2018-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
2838 2018-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
2849 2018-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
2875 2018-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
2884 2018-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
2889 2018-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
2909 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
2910
2911 * regformats/i386/i386-avx.dat: Remove.
2912
2913 2018-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
2923 2018-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
2931 2018-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
2975 2018-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
2984 2018-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
3003 2018-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
3010 2018-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
3016 2018-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
3025 2018-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
3039 2018-04-06 Tom Tromey <tom@tromey.com>
3040
3041 * value.h (free_all_values): Remove.
3042 * value.c (free_all_values): Remove.
3043
3044 2018-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
3052 2018-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
3065 2018-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
3071 2018-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
3081 2018-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
3128 2018-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
3134 2018-04-05 Tom Tromey <tom@tromey.com>
3135
3136 * linespec.h: Remove include of "vec.h".
3137
3138 2018-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
3144 2018-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
3157 2018-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
3169 2018-04-05 Tom Tromey <tom@tromey.com>
3170
3171 * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
3172 Remove a string copy.
3173
3174 2018-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
3179 2018-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
3188 2018-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
3194 2018-04-05 Tom Tromey <tom@tromey.com>
3195
3196 * linespec.c (linespec_parse_basic): Reindent.
3197
3198 2018-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
3208 2018-04-03 Tom Tromey <tom@tromey.com>
3209
3210 * mipsread.c (read_alphacoff_dynamic_symtab): Use
3211 gdb::byte_vector.
3212
3213 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
3214
3215 * MAINTAINERS (Write After Approval): Add Weimin Pan.
3216
3217 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
3218
3219 PR gdb/16959
3220 * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when
3221 printing static type.
3222
3223 2018-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
3228 2018-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
3233 2018-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
3239 2018-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
3253 2018-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
3260 2018-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
3277 2018-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
3285 2018-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
3290 2018-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
3296 2018-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
3305 2018-03-27 Tom Tromey <tom@tromey.com>
3306
3307 * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
3308
3309 2018-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
3317 2018-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
3356 2018-03-27 Tom Tromey <tom@tromey.com>
3357
3358 * dwarf-index-write.c: Include <cmath>.
3359
3360 2018-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
3368 2018-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
3435 2018-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
3445 2018-03-26 Tom Tromey <tom@tromey.com>
3446
3447 * stack.c (backtrace_command_1): Remove verbose code.
3448
3449 2018-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
3460 2018-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
3465 2018-03-26 Tom Tromey <tom@tromey.com>
3466
3467 PR python/16486:
3468 * python/py-framefilter.c (py_print_args): Call wrap_hint.
3469
3470 2018-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
3475 2018-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
3481 2018-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
3487 2018-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
3494 2018-03-26 Tom Tromey <tom@tromey.com>
3495
3496 * python/py-framefilter.c (enumerate_args): Use
3497 gdb::unique_xmalloc_ptr.
3498
3499 2018-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
3508 2018-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
3516 2018-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
3522 2018-03-26 Tom Tromey <tom@tromey.com>
3523
3524 * stack.c (backtrace_command): Rewrite command line parsing.
3525
3526 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
3527
3528 * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
3529
3530 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
3531
3532 * filename-seen-cache.h: Add include guard.
3533
3534 2018-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
3541 2018-03-26 Alan Hayward <alan.hayward@arm.com>
3542
3543 * regformats/regdef.h (reg): Add constructors.
3544
3545 2018-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
3550 2018-03-23 Weimin Pan <weimin.pan@oracle.com>
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
3556 2018-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
3562 2018-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
3572 2018-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
3577 2018-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
3583 2018-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
3593 2018-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
3598 2018-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
3649 2018-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
3658 2018-03-21 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
3659
3660 * MAINTAINERS (Write After Approval): Add Pedro Franco de
3661 Carvalho.
3662
3663 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
3664
3665 * symtab.c (find_pc_sect_line): fixed indentation.
3666
3667 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
3668
3669 * symtab.c (find_pc_sect_line): now uses binary search.
3670
3671 2018-03-19 Tom Tromey <tom@tromey.com>
3672
3673 * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
3674 "IDENT" production.
3675
3676 2018-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
3725 2018-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
3731 2018-03-17 Tom Tromey <tom@tromey.com>
3732
3733 * auto-load.c (auto_load_objfile_script_1): Use std::string.
3734
3735 2018-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
3741 2018-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
3761 2018-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
3800 2018-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
3806 2018-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
3812 2018-03-14 Tom Tromey <tom@tromey.com>
3813
3814 PR cli/19918:
3815 * printcmd.c (printf_pointer): Allow "-" in format.
3816
3817 2018-03-14 Tom Tromey <tom@tromey.com>
3818
3819 * printcmd.c (_initialize_printcmd): Add usage to printf.
3820
3821 2018-03-14 Yao Qi <qiyao@sourceware.org>
3822
3823 * MAINTAINERS: Update my email address.
3824
3825 2018-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
3832 2018-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
3843 2018-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
3849 2018-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
3856 2018-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
3872 2018-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
3878 2018-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
3883 2018-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
3891 2018-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
3910 2018-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
3915 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
3916
3917 * build-id.c (build_id_to_debug_bfd): Use std::string.
3918
3919 2018-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
3934 2018-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
3944 2018-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
3951 2018-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
3962 2018-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
3967 2018-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
3972 2018-03-06 Tom Tromey <tom@tromey.com>
3973
3974 * rust-exp.y: Formatting fixes.
3975
3976 2018-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
3982 2018-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
3988 2018-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
3994 2018-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
4005 2018-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
4013 2018-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
4019 2018-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
4024 2018-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
4029 2018-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
4039 2018-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
4053 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4054
4055 * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
4056 fields within aggregates.
4057
4058 2018-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
4063 2018-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
4079 2018-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
4087 2018-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
4096 2018-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
4101 2018-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
4109 2018-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
4120 2018-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
4136 2018-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
4168 2018-03-01 Sergio Durigan Junior <sergiodj@redhat.com>
4169
4170 PR gdb/22907
4171 * common/pathstuff.c: Conditionally include "<windows.h>".
4172
4173 2018-03-01 Georg Sauthoff <mail@georg.so>
4174
4175 PR gdb/22888
4176 * gcore.in: Quote variables and switch interpreter to bash.
4177
4178 2018-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
4184 2018-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
4201 2018-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
4213 2018-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
4244 2018-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
4250 2018-02-27 Phil Muldoon <pmuldoon@redhat.com>
4251
4252 * compile/compile.c (get_args): Add additional comments
4253 explaining function.
4254
4255 2018-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
4276 2018-02-27 Alan Hayward <alan.hayward@arm.com>
4277
4278 * arch/aarch64.h: Use common/tdesc.h.
4279
4280 2018-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
4285 2018-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
4290 2018-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
4310 2018-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
4320 2018-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
4333 2018-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
4361 2018-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
4371 2018-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
4378 2018-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
4386 2018-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
4395 2018-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
4401 2018-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
4409 2018-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
4416 2018-02-26 Yao Qi <yao.qi@linaro.org>
4417
4418 * dwarf2read.c (read_partial_die): Remove the code checking abbrev
4419 is NULL.
4420
4421 2018-02-26 Yao Qi <yao.qi@linaro.org>
4422
4423 * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
4424
4425 2018-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
4457 2018-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
4467 2018-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
4480 2018-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
4526 2018-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
4532 2018-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
4544 2018-02-21 Tom Tromey <tom@tromey.com>
4545
4546 * infcall.c (call_function_by_hand_dummy): Use std::vector.
4547
4548 2018-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
4561 2018-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
4574 2018-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
4593 2018-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
4602 2018-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
4611 2018-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
4631 2018-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
4669 2018-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
4685 2018-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
4752 2018-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
4762 2018-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
4767 2018-02-20 Markus Metzger <markus.t.metzger@intel.com>
4768
4769 * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
4770
4771 2018-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
4780 2018-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
4790 2018-02-15 Yao Qi <yao.qi@linaro.org>
4791
4792 PR gdb/22849
4793 * inferior.c (exit_inferior_1): Reset inf->control.
4794
4795 2018-02-15 Joel Brobecker <brobecker@adacore.com>
4796
4797 * ada-lang.c (ada_to_fixed_value_create): Delete advance
4798 declaration.
4799
4800 2018-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
4805 2018-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
4816 2018-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
4836 2018-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
4850 2018-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
4864 2018-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
4870 2018-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
4881 2018-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
4886 2018-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
4894 2018-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
4899 2018-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
4906 2018-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
4912 2018-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
4921 2018-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
4938 2018-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
4945 2018-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
4952 2018-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
4959 2018-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
4966 2018-02-09 Tom Tromey <tom@tromey.com>
4967
4968 * auto-load.c (auto_load_section_scripts): Use
4969 gdb::unique_xmalloc_ptr.
4970
4971 2018-02-09 Tom Tromey <tom@tromey.com>
4972
4973 * auto-load.c (execute_script_contents): Use std::string.
4974
4975 2018-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
4980 2018-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
4985 2018-02-08 Tom Tromey <tom@tromey.com>
4986
4987 * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
4988
4989 2018-02-08 Tom Tromey <tom@tromey.com>
4990
4991 * source.c (find_source_lines): Use gdb::def_vector.
4992
4993 2018-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
5000 2018-02-08 Tom Tromey <tom@tromey.com>
5001
5002 * macroexp.c (maybe_expand): Use std::string.
5003
5004 2018-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
5023 2018-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
5042 2018-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
5047 2018-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
5065 2018-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
5071 2018-02-05 Alan Hayward <alan.hayward@arm.com>
5072
5073 * target-descriptions.c (tdesc_element_visitor) Add empty
5074 implementations.
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
5086 2018-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
5092 2018-02-05 Joel Brobecker <brobecker@adacore.com>
5093
5094 * dwarf2read.c (dwarf2_physname): Move commment.
5095
5096 2018-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
5101 2018-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
5106 2018-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
5111 2018-02-01 Yao Qi <yao.qi@linaro.org>
5112
5113 * arm-tdep.c (arm_record_extension_space): Change ret to signed.
5114
5115 2018-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
5120 2018-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
5132 2018-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
5137 2018-01-31 Joel Brobecker <brobecker@adacore.com>
5138
5139 GDB 8.1 released.
5140
5141 2018-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
5159 2018-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
5232 2018-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
5242 2018-01-29 Sergio Durigan Junior <sergiodj@redhat.com>
5243
5244 * remote.c (remote_follow_fork): Don't call "detach_inferior".
5245
5246 2018-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
5255 2018-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
5277 2018-01-26 Alan Hayward <alan.hayward@arm.com>
5278
5279 * MAINTAINERS (Write After Approval): Fix ordering.
5280
5281 2018-01-26 Alan Hayward <alan.hayward@arm.com>
5282
5283 * MAINTAINERS (Write After Approval): Add Alan Hayward.
5284
5285 2018-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
5305 2018-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
5318 2018-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
5333 2018-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
5386 2018-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
5392 2018-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
5399 2018-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
5404 2018-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
5410 2018-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
5416 2018-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
5423 2018-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
5431 2018-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
5436 2018-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
5442 2018-01-22 Maciej W. Rozycki <macro@mips.com>
5443
5444 * MAINTAINERS: Update my company e-mail address.
5445
5446 2018-01-22 Yao Qi <yao.qi@linaro.org>
5447
5448 * regcache.c (cooked_write_test): New function.
5449 (_initialize_regcache): Register the test.
5450
5451 2018-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
5460 2018-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
5482 2018-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
5489 2018-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
5494 2018-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
5499 2018-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
5504 2018-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
5509 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
5510
5511 * varobj.c (varobj_create): Remove out of date comment.
5512
5513 2018-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
5531 2018-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
5554 2018-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
5559 2018-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
5564 2018-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
5570 2018-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
5585 2018-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
5622 2018-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
5658 2018-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
5663 2018-01-19 Yao Qi <yao.qi@linaro.org>
5664
5665 * osabi.c (gdb_osabi_names): Extend the regexp for
5666 arm-linux-gnueabihf.
5667
5668 2018-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
5675 2018-01-18 Yao Qi <yao.qi@linaro.org>
5676
5677 * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
5678
5679 2018-01-17 Sergio Durigan Junior <sergiodj@redhat.com>
5680
5681 * compile/compile.c (compile_to_object): Convert "triplet_rx"
5682 to "std::string".
5683
5684 2018-01-17 Tom Tromey <tom@tromey.com>
5685
5686 * dwarf2read.c (symbolp): Remove typedef. Don't instantiate VEC.
5687
5688 2018-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
5695 2018-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
5708 2018-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
5720 2018-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
5748 2018-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
5755 2018-01-17 Mike Gulick <mgulick@mathworks.com>
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
5763 2018-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
5773 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
5774
5775 * linux-nat.c (linux_nat_attach): Remove xstrdup.
5776
5777 2018-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
5784 2018-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
5791 2018-01-15 Pedro Alves <palves@redhat.com>
5792
5793 * common/signals-state-save-restore.c
5794 (save_original_signals_state): Fix typos.
5795
5796 2017-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
5801 2018-01-12 John Baldwin <jhb@FreeBSD.org>
5802
5803 * fbsd-tdep.c (KVE_PROTECTION): Correct value.
5804
5805 2018-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
5810 2018-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
5817 2018-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
5823 2018-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
5831 2018-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
5843 2018-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
5851 2018-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
5857 2018-01-09 John Baldwin <jhb@FreeBSD.org>
5858
5859 * NEWS: Document that 'info proc' now works on FreeBSD.
5860
5861 2018-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
5875 2018-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
5880 2018-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
5885 2018-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
5903 2018-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
5910 2018-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
5923 2018-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
5929 2018-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
6026 2018-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
6248 2018-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
6346 2018-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
6354 2018-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
6403 2018-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
6412 2018-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
6496 2018-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
6508 2018-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
6513 2018-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
6550 2018-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
6559 2018-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
6565 2018-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
6570 2018-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
6575 2018-01-05 Xavier Roirand <roirand@adacore.com>
6576
6577 * ada-valprint.c (print_optional_low_bound): Handle
6578 character-indexed array printing like boolean-indexed array
6579 printing.
6580
6581 2018-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
6587 2018-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
6592 2018-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
6626 2018-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
6632 2018-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
6645 2018-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
6650 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6651
6652 Update copyright year range in all GDB files.
6653
6654 2018-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
6659 2018-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
6665 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6666
6667 * top.c (print_gdb_version): Update Copyright year in version
6668 message.
6669
6670 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6671
6672 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
6673
6674 For older changes see ChangeLog-2017.
6675 \f
6676 Local Variables:
6677 mode: change-log
6678 left-margin: 8
6679 fill-column: 74
6680 version-control: never
6681 coding: utf-8
6682 End:
This page took 0.180547 seconds and 3 git commands to generate.