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