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