AArch64: Use HWCAP to detect pauth feature
[external/binutils.git] / gdb / ChangeLog-2018
1 2018-12-31  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * top.c (command_line_input): Use unique_xmalloc_ptr to
4         manage memory allocated by readline.
5
6 2018-12-30  Tom Tromey  <tom@tromey.com>
7
8         * event-top.h (command_line_handler): Update.
9         * top.c (class gdb_readline_wrapper_cleanup) <m_handler_orig>:
10         Update.
11         (gdb_readline_wrapper_line): Update.
12         * top.h (struct ui) <input_handler>: Take a unique_xmalloc_ptr.
13         (handle_line_of_input): Update.
14         * event-top.c: Update.
15         (gdb_readline_no_editing_callback): Update.
16         (command_line_handler): Take a unique_xmalloc_ptr.
17         (handle_line_of_input): Take a const char *.
18         (command_line_append_input_line): Take a const char *.
19
20 2018-12-28  Tom Tromey  <tom@tromey.com>
21
22         * source-cache.c (get_language_name): Conditionally compile.
23
24 2018-12-28  Tom Tromey  <tom@tromey.com>
25
26         * jit.c (free_objfile_data): Only delete breakpoint if non-null.
27
28 2018-12-28  Tom Tromey  <tom@tromey.com>
29
30         * NEWS: Mention terminal styling.
31
32 2018-12-28  Tom Tromey  <tom@tromey.com>
33
34         * utils.h (can_emit_style_escape): Declare.
35         * utils.c (can_emit_style_escape): No longer static.
36         * cli/cli-style.c (set_style_enabled): New function.
37         (_initialize_cli_style): Use it.
38         * tui/tui-winsource.c (tui_show_source_line): Use tui_puts.
39         (tui_alloc_source_buffer): Change how source lines are allocated.
40         * tui/tui-source.c (copy_source_line): New function.
41         (tui_set_source_content): Use source cache.
42         * tui/tui-io.h (tui_puts): Update.
43         * tui/tui-io.c (tui_puts_internal): Add window parameter.
44         (tui_puts): Likewise.
45         (tui_redisplay_readline): Update.
46         * tui/tui-data.c (free_content_elements): Change how source window
47         contents are freed.
48         * source.c (forget_cached_source_info): Clear the source cache.
49         (print_source_lines_base): Use the source cache.
50         * source-cache.h: New file.
51         * source-cache.c: New file.
52         * configure.ac: Check for GNU Source Highlight library.
53         * configure: Update.
54         * config.in: Update.
55         * Makefile.in (SRCHIGH_LIBS, SRCHIGH_CFLAGS): New variables.
56         (INTERNAL_CFLAGS_BASE): Add SRCHIGH_CFLAGS.
57         (CLIBS): Add SRCHIGH_LIBS.
58         (COMMON_SFILES): Add source-cache.c.
59         (HFILES_NO_SRCDIR): Add source-cache.h.
60
61 2018-12-28  Tom Tromey  <tom@tromey.com>
62
63         * tui/tui-winsource.c (tui_show_source_line): Use wclrtoeol.
64
65 2018-12-28  Tom Tromey  <tom@tromey.com>
66
67         PR tui/14126:
68         * tui/tui.c (tui_enable): Call start_color and
69         use_default_colors.
70         * tui/tui-io.c (struct color_pair): New.
71         (color_pair_map, last_color_pair, last_style): New globals.
72         (tui_setup_io): Clean up color map when shutting down.
73         (curses_colors): New constant.
74         (get_color_pair, apply_ansi_escape): New functions.
75         (tui_write): Rewrite.
76         (tui_puts_internal): New function, from tui_puts.  Add "height"
77         parameter.
78         (tui_puts): Use tui_puts_internal.
79         (tui_redisplay_readline): Use tui_puts_internal.
80         (_initialize_tui_io): New function.
81         (color_map): New globals.
82         (get_color): New function.
83         * configure.ac: Check for use_default_colors.
84         * config.in, configure: Rebuild.
85
86 2018-12-28  Tom Tromey  <tom@tromey.com>
87
88         * ui-out.h (enum class ui_out_style_kind) <ADDRESS>: New
89         constant.
90         * ui-out.c (ui_out::field_core_addr): Add styling.
91         * stack.c (print_frame): Add styling.
92         * printcmd.c (print_address): Add styling.
93         (print_address_demangle, info_address_command): Likewise.
94         * cli/cli-style.h (address_style): Declare.
95         * cli/cli-style.c (address_style): New global.
96         (_initialize_cli_style): Register new commands.
97         * cli-out.c (cli_ui_out::do_field_string): Update.
98
99 2018-12-28  Tom Tromey  <tom@tromey.com>
100
101         * symfile.c (symbol_file_add_with_addrs): Style file name.
102
103 2018-12-28  Tom Tromey  <tom@tromey.com>
104
105         * top.c (print_gdb_version): Style gdb version number.
106
107 2018-12-28  Tom Tromey  <tom@tromey.com>
108
109         * printcmd.c (print_address_symbolic): Style function name.
110
111 2018-12-28  Tom Tromey  <tom@tromey.com>
112
113         * breakpoint.c (say_where): Style file name.
114
115 2018-12-28  Tom Tromey  <tom@tromey.com>
116
117         * ui-out.h (enum class ui_out_style_kind) <VARIABLE>: New global.
118         * stack.c (print_frame_arg): Style name.
119         * printcmd.c (print_variable_and_value): Style variable name.
120         * cli/cli-style.h (variable_name_style): Declare.
121         * cli/cli-style.c (variable_name_style): New global.
122         (_initialize_cli_style): Update.
123         * cli-out.c (cli_ui_out::do_field_string): Update.
124
125 2018-12-28  Tom Tromey  <tom@tromey.com>
126
127         * utils.h (reset_terminal_style): Declare.
128         * utils.c (can_emit_style_escape): New function.
129         (set_output_style): Use it.
130         (reset_terminal_style): New function.
131         * printcmd.c (printf_command): Call reset_terminal_style.
132         * cli/cli-cmds.c (echo_command): Call reset_terminal_style.
133
134 2018-12-28  Tom Tromey  <tom@tromey.com>
135
136         * utils.h (set_output_style, fprintf_styled)
137         (fputs_styled): Declare.
138         * utils.c (applied_style, desired_style): New globals.
139         (emit_style_escape, set_output_style): New function.
140         (prompt_for_continue): Emit style escapes.
141         (fputs_maybe_filtered): Likewise.
142         (fputs_styled, fprintf_styled): New functions.
143         * ui-out.h (enum class ui_out_style_kind): New.
144         (class ui_out) <field_string, field_stream, do_field_string>: Add
145         style parameter.
146         * ui-out.c (ui_out::field_stream, ui_out::field_string): Add style
147         parameter.
148         * tui/tui-out.h (class tui_ui_out) <do_field_string>: Add style
149         parameter.
150         * tui/tui-out.c (tui_ui_out::do_field_string): Add style
151         parameter.
152         (tui_ui_out::do_field_string): Update.
153         * tracepoint.c (print_one_static_tracepoint_marker): Style
154         output.
155         * stack.c (print_frame_info, print_frame): Style output.
156         * source.c (print_source_lines_base): Style output.
157         * skip.c (info_skip_command): Style output.
158         * record-btrace.c (btrace_call_history_src_line): Style output.
159         (btrace_call_history): Likewise.
160         * python/py-framefilter.c (py_print_frame): Style output.
161         * mi/mi-out.h (class mi_ui_out) <do_field_string>: Add style
162         parameter.
163         * mi/mi-out.c (mi_ui_out::do_table_header)
164         (mi_ui_out::do_field_int): Update.
165         (mi_ui_out::do_field_string): Update.
166         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
167         Style output.
168         * cli/cli-style.h: New file.
169         * cli/cli-style.c: New file.
170         * cli-out.h (class cli_ui_out) <do_field_string>: Add style
171         parameter.
172         * cli-out.c (cli_ui_out::do_table_header)
173         (cli_ui_out::do_field_int, cli_ui_out::do_field_skip): Update.
174         (cli_ui_out::do_field_string): Add style parameter.  Style the
175         output.
176         * breakpoint.c (print_breakpoint_location): Style output.
177         (update_static_tracepoint): Likewise.
178         * Makefile.in (SUBDIR_CLI_SRCS): Add cli-style.c.
179         (HFILES_NO_SRCDIR): Add cli-style.h.
180
181 2018-12-28  Tom Tromey  <tom@tromey.com>
182
183         * unittests/style-selftests.c: New file.
184         * ui-style.c: New file.
185         * ui-style.h: New file.
186         * ui-file.h: Include ui-style.h.
187         * Makefile.in (COMMON_SFILES): Add ui-style.c.
188         (HFILES_NO_SRCDIR): Add ui-style.h.
189         (SUBDIR_UNITTESTS_SRCS): Add style-selftests.c.
190
191 2018-12-28  Tom Tromey  <tom@tromey.com>
192
193         * command.h (add_setshow_enum_cmd): Add "context" argument.
194         * cli/cli-decode.c (add_setshow_enum_cmd): Add "context"
195         argument.  Call set_cmd_context.
196
197 2018-12-28  Tom Tromey  <tom@tromey.com>
198
199         * utils.c (filter_initialized): New global.
200         (wrap_buffer): Now a std::string.
201         (wrap_pointer): Remove.
202         (flush_wrap_buffer): New function.
203         (filtered_printing_initialized, set_width, wrap_here)
204         (fputs_maybe_filtered): Update.
205
206 2018-12-28  Eli Zaretskii  <eliz@gnu.org>
207
208         * coffread.c (coff_symtab_read): Don't record in minsyms symbols
209         that are unresolved.  This avoids triggering an internal error
210         when stepping outside of 'main' in MinGW programs.
211
212 2018-12-27  Tom Tromey  <tom@tromey.com>
213
214         * python/py-utils.c (gdbpy_handle_exception): Translate
215         PyExc_KeyboardInterrupt to quit.
216
217 2018-12-27  Tom Tromey  <tom@tromey.com>
218
219         * python/python-internal.h (gdbpy_print_stack_or_quit): Declare.
220         * python/py-unwind.c (pyuw_sniffer): Use
221         gdbpy_print_stack_or_quit.
222         * python/py-framefilter.c (throw_quit_or_print_exception):
223         Remove.
224         (gdbpy_apply_frame_filter): Use gdbpy_print_stack_or_quit.
225         * python/python.c (gdbpy_print_stack_or_quit): New function.
226
227 2018-12-27  Tom Tromey  <tom@tromey.com>
228
229         * python/py-value.c (convert_value_from_python): Use
230         gdbpy_convert_exception.
231         * python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
232         * python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
233         * python/py-breakpoint.c (bppy_init): Use
234         gdbpy_convert_exception.
235
236 2018-12-27  Tom Tromey  <tom@tromey.com>
237
238         * configure.nat (NATDEPFILES): Use nat/ prefix.
239         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
240         (%.o: ${srcdir}/nat/%.c): Remove rule.
241         (INIT_FILES): Do not filter out NATDEPFILES.
242
243 2018-12-27  Tom Tromey  <tom@tromey.com>
244
245         * Makefile.in (INIT_FILES): Redefine.
246         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
247         set LANG or LC_ALL.
248
249 2018-12-27  Tom Tromey  <tom@tromey.com>
250
251         * Makefile.in (stamp-init): Remove gdbtypes special case.
252
253 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
254
255         * config/i386/nm-fbsd.h: Remove file.
256         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
257         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
258
259 2018-12-27  Tom Tromey  <tom@tromey.com>
260
261         * minsyms.h (class minimal_symbol_reader): Use
262         DISABLE_COPY_AND_ASSIGN.
263
264 2018-12-27  Tom Tromey  <tom@tromey.com>
265
266         * python/python.c (python_interactive_command): Use std::string.
267         (gdbpy_parameter): Likewise.
268         * python/py-utils.c (unicode_to_encoded_string): Update comment.
269         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
270         * python/py-record-btrace.c (recpy_bt_insn_data): Use
271         byte_vector.
272         * python/py-objfile.c (objfpy_get_build_id): Use
273         unique_xmalloc_ptr.
274         * python/py-inferior.c (infpy_read_memory): Use
275         unique_xmalloc_ptr.
276         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
277
278 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
279
280         * target.c (target_terminal::restore_inferior): Remove struct keyword.
281
282 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
283
284         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
285         * symfile.c (separate_debug_file_exists): Likewise.
286
287 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
288
289         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
290         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
291         names.
292         (typename_stoken): New function.
293
294 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
295
296         * c-exp.y (field_name): New %token, and new rule.
297         (exp): Replace uses of 'name' with 'field_name' where appropriate.
298
299 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
300
301         PR gdb/13368
302         * c-exp.y (typebase): Extend the comment.
303         (ident_tokens): Likewise.
304
305 2018-12-18  Tom Tromey  <tom@tromey.com>
306
307         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
308         address of sect_off.
309
310 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
311
312         GDB 8.2.1 released.
313
314 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
315
316         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
317         assigning locations.
318         (riscv_return_value): Take more care not to read/write outside of
319         argument buffer.  Cast return value between the declared type and
320         the abi type.
321
322 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
323
324         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
325         fflags, and frm registers.
326
327 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
328
329         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
330         (riscv_gdbarch_init): Register new function with gdbarch.
331         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
332
333 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
334
335         * minsyms.c (mst_str): New.
336         (minimal_symbol_reader::record_full): Add debug output.
337
338 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
339
340         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
341         equal PL_FLAG_SI.
342         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
343
344 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
345
346         PR gdb/23974
347         * target.c (target_read_stralloc): Check for empty vector.
348
349 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
350
351         * top.c (print_gdb_configuration): Print "--without-python"
352         if GDB was configured without Python.
353
354 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
355
356         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
357         a signed offset as a string.
358
359 2018-12-21  Dave Murphy  <davem@devkitpro.org>
360
361         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
362         initialise.
363         * probe.c (any_static_probe_ops): Ditto.
364         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
365         * stap-probe.c (stap_static_probe_ops): Ditto.
366         * tui/tui-hooks.c (tui_observers_token): Ditto.
367         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
368
369 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
370
371         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
372         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
373         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
374         (default_unwind_sp): Define new function.
375         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
376         (default_unwind_sp): Declare new function.
377         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
378         available.
379         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
380         * gdb/gdbarch.c: Regenerate.
381         * gdb/gdbarch.h: Regenerate.
382         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
383         unwind_sp.  Add additional header files to be included in
384         generated file.
385
386 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
387
388         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
389         sp clobbers.
390
391 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
392
393         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
394         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
395         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
396         'processing_has_namespace_info' from unsigned int to bool.  Update
397         comments.
398         (producer_is_icc_lt_14): Update return type.
399         (producer_is_gcc_lt_4_3): Likewise.
400         (producer_is_gxx_lt_4_6): Likewise.
401         (process_die): Write true instead of 1 into predicate fields.
402         (dwarf2_start_symtab): Likewise.
403         (var_decode_location): Likewise.
404         (dwarf2_mark_helper): Likewise.
405         (dwarf2_mark): Likewise.
406         (dwarf2_clear_marks): Write false instead of 0 into predicate
407         field.
408         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
409         0.
410
411 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
412
413         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
414         asm/sigcontext.h.
415
416 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
417
418         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
419         warning trailing new line.
420
421 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
422
423         * nat/linux-ptrace.c (kill_child): New function.
424         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
425         Add a call to kill_child in case of early return after fork.
426         (linux_check_ptrace_features): Use kill_child instead of local code.
427         (linux_test_for_tracefork): Likewise.
428
429 2018-12-14  Tom Tromey  <tom@tromey.com>
430
431         * Makefile.in: Remove "alloca" comment.
432         (INFOFILES): Remove.
433         (local-maintainer-clean): Don't use INFOFILES.
434
435 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
436
437         * syscalls/update-freebsd.sh: New file.
438         * syscalls/freebsd.xml: Regenerate.
439
440 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
441
442         * NEWS: Add entry documenting system call aliases.
443         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
444         to get_syscalls_by_name.
445         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
446         * gdbarch.h: Regenerate.
447         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
448         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
449         from get_syscall_by_name.  Now accepts a pointer to a vector of
450         integers and returns a bool.
451         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
452         (syscall_create_syscall_desc): Add alias parameter and pass it to
453         syscall_desc constructor.
454         (syscall_start_syscall): Handle alias attribute.
455         (syscall_attr): Add alias attribute.
456         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
457         Now accepts a pointer to a vector of integers and returns a
458         bool.  Add syscalls whose alias or name matches the requested
459         name.
460         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
461         accepts a pointer to a vector of integers and returns a bool.
462         * xml-syscall.h (get_syscalls_by_name): Likewise.
463
464 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
465
466         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
467         to get_syscalls_by_group.
468         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
469         false.
470         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
471         numbers to an existing vector of integers and return a bool.
472         (get_syscalls_by_group): Accept pointer to vector of integers
473         and change return type to bool.
474         * xml-syscall.h (get_syscalls_by_group): Likewise.
475
476 2018-12-13  Jim Wilson  <jimw@sifive.com>
477
478         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
479         comment for SD field, and correct xlen calculation.  For MISA, add
480         comment for MXL field, add call to register_size, and correct base
481         calculation.
482
483 2018-12-13  Stafford Horne  <shorne@gmail.com>
484
485         * NEWS(New targets): Add or1k*-*-linux*.
486
487 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
488
489         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
490         declare on one line to fix ARI warning.
491
492 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
493
494         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
495         (infcall_suspend_state::registers): New.
496         (infcall_suspend_state::restore): New.
497         (infcall_suspend_state::thread_suspend): Rename to...
498         (infcall_suspend_state::m_thread_suspend): ...this.
499         (infcall_suspend_state::registers): Rename to...
500         (infcall_suspend_state::m_registers): ...this.
501         (infcall_suspend_state::siginfo_gdbarch): Rename to...
502         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
503         (infcall_suspend_state::siginfo_data): Rename to...
504         (infcall_suspend_state::m_siginfo_data): ...this.
505         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
506         constructor.
507         (restore_infcall_suspend_state): Rewrite to use
508         infcall_suspend_state::restore method.
509         (get_infcall_suspend_state_regcache): Use
510         infcall_suspend_state::registers method.
511
512 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
513
514         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
515         arguments are passed in integer registers.
516         (riscv_call_arg_complex_float): Likewise.
517
518 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
519
520         * nat/linux-osdata.c (common_getter): New function.
521         (struct osdata_type): Change getter to take_snapshot.
522         Add LONGEST len_avail and struct buffer buffer.
523         Change all elements in the initializer.
524         Add an element for the list of types.
525         (linux_xfer_osdata_info_os_types): New function.
526         (linux_common_xfer_osdata): Use common_getter for the list of types.
527         Replace getter call by common_getter.
528         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
529         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
530         (linux_xfer_osdata_fds): Likewise.
531         (linux_xfer_osdata_modules): Likewise.
532         (linux_xfer_osdata_msg): Likewise.
533         (linux_xfer_osdata_processes): Likewise.
534         (linux_xfer_osdata_processgroups): Likewise.
535         (linux_xfer_osdata_sem): Likewise.
536         (linux_xfer_osdata_shm): Likewise.
537         (linux_xfer_osdata_isockets): Likewise.
538         (linux_xfer_osdata_threads): Likewise.
539
540 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
541
542         * nat/linux-osdata.c: Removed various trailing spaces.
543
544 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
545
546         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
547         leading whitespace before #include line.
548
549 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
550             Дилян Палаузов  <dilyan.palauzov@aegee.org>
551
552         PR gdb/23950
553         * configure.ac: Search for tgetent in libtinfow.
554         * configure: Re-generate.
555
556 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
557
558         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
559         (thread_db_err_str): Forward declare.
560         (delete_thread_db_info): Call td_ta_delete_p if available.
561         (try_thread_db_load_1): Acquire td_ta_delete address.
562         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
563
564 2018-12-08  Pedro Alves  <palves@redhat.com>
565
566         * source.c (forward_search_command): Rename to ...
567         (search_command_helper): ... this.  Add 'forward' parameter.
568         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
569         buffer.  Handle backward searches too.
570         (forward_search_command, reverse_search_command): Reimplement by
571         calling search_command_helper.
572
573 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
574
575         * .dir-locals.el: Copy most of the settings from c-mode over to
576         c++-mode.
577
578 2018-12-08  Stafford Horne  <shorne@gmail.com>
579
580         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
581         * configure.tgt: Add or1k*-*-linux*.
582         * or1k-linux-tdep.c: New file.
583         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
584
585 2018-12-07  Pedro Alves  <palves@redhat.com>
586
587         * dwarf2read.c (get_gdb_index_contents_from_section): Use
588         gdb::make_array_view.
589
590 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
591
592         * language.c (_initialize_language): Fix leak by assigning
593         a static string to language.  Same for range and case_sensitive,
594         even if no leak is detected for these variables.
595
596 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
597
598         * configure: Re-generate.
599         * configure.ac: Use separate sed expressions to escape variables
600         in auto-load directories.
601
602 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
603
604         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
605         (riscv_find_default_target_description): Use new function to
606         extract feature from gdbarch_info.
607         (riscv_gdbarch_init): Add error checks for xlen and flen between
608         target description and bfd headers.  Be smarter about when we
609         think the hardware floating point abi should be used.
610
611 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
612
613         * nat/aarch64-linux-hw-point.c
614         (aarch64_linux_any_set_debug_regs_state): New function.
615         * nat/aarch64-linux-hw-point.h
616         (aarch64_linux_any_set_debug_regs_state): New declaration.
617         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
618         BPs or WPs are set.
619
620 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
621
622         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
623         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
624
625 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
626             Simon Marchi  <simon.marchi@ericsson.com>
627
628         * linespec.c (symtab_vector_up): Remove.
629         (symtabs_from_filename): Change return type to std::vector.
630         (collect_symtabs_from_filename): Likewise.
631         (create_sals_line_offset): Assign return value of
632         collect_symtabs_from_filename to *ls->file_symtabs.
633         (convert_explicit_location_to_linespec): Remove call to release.
634         (parse_linespec): Likewise.
635         (symtab_collector) <symtab_collector>: Remove initialization of
636         m_symtabs.
637         <release_symtabs>: Change return type to std::vector<symtab *>.
638         <operator ()>: Adjust.
639
640 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
641
642         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
643         defined.
644         (union sigval32, struct siginfo32, fbsd_siginfo_size)
645         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
646         of KERN_PROC_AUXV and PT_LWPINFO.
647         (fbsd_nat_target::xfer_partial): Define method unconditionally.
648         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
649         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
650         Make TARGET_OBJECT_FREEBSD_VMMAP and
651         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
652         and KERN_PROC_PS_STRINGS.
653         * fbsd-nat.h: Include <sys/proc.h>.
654         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
655
656 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
657
658         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
659         header files.
660         (riscv_linux_nat_target::read_description): New method.
661
662 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
663
664         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
665         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
666         (riscv_tdesc_cache): New global.
667         (riscv_create_target_description): Look in the cache before
668         creating a new target description.
669
670 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
671
672         * arch/riscv.h (riscv_gdb_features::operator==): New.
673         (riscv_gdb_features::operator!=): New.
674         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
675         operator.
676
677 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
678
679         * arch/riscv.h (riscv_create_target_description): Make return type
680         const.
681         * arch/riscv.c (riscv_create_target_description): Likewise.
682         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
683
684 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
685             Keith Seitz  <keiths@redhat.com>
686             Tom Tromey  <tom@tromey.com>
687             Sergio Durigan Junior  <sergiodj@redhat.com>
688
689         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
690         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
691         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
692         inside the CU.
693
694 2018-11-30  Pedro Alves  <palves@redhat.com>
695
696         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
697         <stratum>: New override.
698         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
699         <stratum>: New override.
700         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
701         <stratum>: New override.
702         * exec.c (exec_target) <exec_target>: Delete.
703         <stratum>: New override.
704         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
705         stratum method instead of the to_stratum field.
706         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
707         <stratum>: New override.
708         (thread_db_target::thread_db_target): Delete.
709         * make-target-delegates (print_class): Don't print a ctor
710         declaration.  Print a stratum method override declaration.
711         * process-stratum-target.h (process_stratum_target)
712         <process_stratum_target>: Delete.
713         <stratum>: New override.
714         * ravenscar-thread.c (ravenscar_thread_target)
715         <ravenscar_thread_target>: Delete.
716         <stratum>: New override.
717         * record-btrace.c (record_btrace_target)
718         <record_btrace_target>: Delete.
719         <stratum>: New override.
720         * record-full.c (record_full_base_target)
721         <record_full_base_target>: Delete.
722         <stratum>: New override.
723         * record.c (record_disconnect, record_detach)
724         (record_mourn_inferior, record_kill): Adjust to use the stratum
725         method instead of the to_stratum field.
726         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
727         * sol-thread.c (sol_thread_target)
728         <sol_thread_target>: Delete.
729         <stratum>: New override.
730         * spu-multiarch.c (spu_multiarch_target)
731         <spu_multiarch_target>: Delete.
732         <stratum>: New override.
733         * target-delegates.c: Regenerate.
734         * target.c (target_stack::push, target_stack::unpush)
735         (pop_all_targets_above, pop_all_targets_at_and_above)
736         (info_target_command, target_require_runnable)
737         (target_stack::find_beneath): Adjust to use the stratum method
738         instead of the to_stratum field.
739         (dummy_target::dummy_target): Delete.
740         (dummy_target::stratum): New.
741         (debug_target::debug_target): Delete.
742         (debug_target::stratum): New.
743         (maintenance_print_target_stack): Adjust to use the stratum method
744         instead of the to_stratum field.
745         * target.h (struct target_ops) <stratum>: New method.
746         <to_stratum>: Delete.
747         <is_pushed>: Adjust to use the stratum method
748         instead of the to_stratum field.
749
750 2018-11-30  Pedro Alves  <palves@redhat.com>
751
752         * corelow.c (core_target) <has_all_memory, has_execution>: New
753         overrides.
754         * inf-child.c (inf_child_target::has_all_memory)
755         (inf_child_target::has_memory, inf_child_target::has_stack)
756         (inf_child_target::has_registers)
757         (inf_child_target::has_execution): Delete.
758         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
759         has_stack, has_registers, has_execution>: Delete.
760         * process-stratum-target.c
761         (process_stratum_target::has_all_memory)
762         (process_stratum_target::has_memory)
763         (process_stratum_target::has_stack)
764         (process_stratum_target::has_registers)
765         (process_stratum_target::has_execution): New.
766         * process-stratum-target.h (process_stratum_target)
767         <has_all_memory, has_memory, has_stack, has_registers,
768         has_execution>: New method overrides.
769         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
770         has_memory, has_stack, has_registers, has_execution>: Delete.
771         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
772         has_execution>: Delete.
773         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
774         has_registers, has_execution>: Delete.
775         * target.c (default_child_has_all_memory)
776         (default_child_has_memory, default_child_has_stack)
777         (default_child_has_registers, default_child_has_execution):
778         Delete.
779         * target.h (default_child_has_all_memory)
780         (default_child_has_memory, default_child_has_stack)
781         (default_child_has_registers, default_child_has_execution):
782         Delete.
783         * tracefile.h (tracefile_target) <has_execution>: New override.
784
785 2018-11-30  Pedro Alves  <palves@redhat.com>
786
787         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
788         * bsd-kvm.c: Include "process-stratum-target.h".
789         (bsd_kvm_target): Now inherits from process_stratum_target.
790         (bsd_kvm_target::bsd_kvm_target): Default it.
791         * corelow.c: Include "process-stratum-target.h".
792         (core_target): Now inherits from process_stratum_target.
793         (core_target::core_target): Don't set to_stratum here.
794         * inf-child.c (inf_child_target::inf_child_target): Delete.
795         * inf-child.h: Include "process-stratum-target.h".
796         (inf_child_target): Inherit from process_stratum_target.
797         (inf_child_target) <inf_child_target>: Default it.
798         <can_async_p, supports_non_stop, supports_disable_randomization>:
799         Delete overrides.
800         * process-stratum-target.c: New file.
801         * process-stratum-target.h: New file.
802         * remote-sim.c: Include "process-stratum-target.h".
803         (gdbsim_target): Inherit from process_stratum_target.
804         <gdbsim_target>: Default it.
805         * remote.c: Include "process-stratum-target.h".
806         (remote_target): Inherit from process_stratum_target.
807         <remote_target>: Default it.
808         * target.c (default_thread_address_space)
809         (default_thread_architecture): Delete.
810         * target.h (target_ops) <thread_architecture>: Now returns NULL by
811         default.
812         <thread_address_space>: Ditto.
813         * test-target.h: Include "process-stratum-target.h" instead of
814         "target.h".
815         (test_target_ops): Inherit from process_stratum_target.
816         <test_target_ops>: Default it.
817         * tracefile.c (tracefile_target::tracefile_target): Delete.
818         * tracefile.h: Include "process-stratum-target.h".
819         (tracefile_target): Inherit from process_stratum_target.
820         <tracefile_target>: Default it.
821         * target-delegates.c: Regenerate.
822
823 2018-11-30  Pedro Alves  <palves@redhat.com>
824
825         * Makefile.in (COMMON_SFILES): Add test-target.c.
826         * gdbarch-selftests.c: Include "test-target.h".
827         * regcache.c: Include "test-target.h".
828         * target.c (test_target_info, test_target_ops::info): Move to ...
829         * test-target.c: ... this new file.
830         * target.h (test_target_ops): Move to ...
831         * test-target.h: ... this new file.
832
833 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
834
835         * source.c (forward_search_command): Fix leak by using
836         xrealloc even for the first allocation in the loop, as buf
837         is static.
838
839 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
840
841         PR gdb/23093
842         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
843         (fbsd_gdb_signal_to_target): New.
844         (fbsd_init_abi): Install gdbarch "signal_from_target" and
845         "signal_to_target" methods.
846
847 2018-11-29  Tom Tromey  <tom@tromey.com>
848
849         * valarith.c (value_x_unop): Don't set argvec[3].
850
851 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
852
853         PR gdb/23917
854         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
855         semicolon.
856
857 2018-11-26  Pedro Alves  <palves@redhat.com>
858
859         * procfs.c (procfs_notice_thread): Replace uses of
860         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
861         * sol-thread.c (sol_thread_target::wait)
862         (sol_update_thread_list_callback): Likewise.
863
864 2018-11-25  Tom Tromey  <tom@tromey.com>
865
866         * ui-out.c (ui_out::field_fmt): Remove comment.
867         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
868         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
869
870 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
871
872         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
873         leak in open_source_file' has been partially undone by '2179fbc36d23
874         Return scoped_fd from open_source_file'. Re-add the transfer of
875         current s->fullname to the unique_xmalloc_ptr fullname given
876         to find_and_open_source.
877
878 2018-11-23  Pedro Alves  <palves@redhat.com>
879
880         * gdbthread.h (enum thread_state): Move comments here.
881         (is_running, is_stopped, is_exited): Remove declarations.
882
883 2018-11-22  Pedro Alves  <palves@redhat.com>
884
885         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
886         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
887         ALL_NON_EXITED_THREADS with all_non_exited_threads.
888         (print_one_breakpoint_location): Replace ALL_INFERIORS with
889         all_inferiors.
890         * bsd-kvm.c: Include inferior.h.
891         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
892         with all_non_exited_threads.
893         * common/filtered-iterator.h: New.
894         * common/safe-iterator.h: New.
895         * corelow.c (core_target_open): Don't call init_thread_list here.
896         * darwin-nat.c (thread_info_from_private_thread_info): Replace
897         ALL_THREADS with all_threads.
898         * fbsd-nat.c (fbsd_nat_target::resume): Replace
899         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
900         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
901         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
902         * fork-child.c (postfork_hook): Don't call init_thread_list here.
903         * gdbarch-selftests.c (register_to_value_test): Adjust.
904         * gdbthread.h: Don't include "inferior.h" here.
905         (struct inferior): Forward declare.
906         (enum step_over_calls_kind): Moved here from inferior.h.
907         (thread_info::deletable): Definition moved to thread.c.
908         (find_thread_ptid (inferior *, ptid_t)): Declare.
909         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
910         Include "thread-iter.h".
911         (all_threads, all_non_exited_threads, all_threads_safe): New.
912         (any_thread_p): Declare.
913         (thread_list): Delete.
914         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
915         all_non_exited_threads.
916         (proceed_after_attach_callback): Delete.
917         (proceed_after_attach): Take an inferior pointer instead of an
918         integer PID.  Adjust to use range-for.
919         (attach_post_wait): Pass down inferior pointer instead of pid.
920         Use range-for instead of ALL_NON_EXITED_THREADS.
921         (detach_command): Remove init_thread_list call.
922         * inferior-iter.h: New.
923         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
924         (delete_thread_of_inferior): Delete.
925         (delete_inferior, exit_inferior_1): Use range-for with
926         inf->threads_safe() instead of iterate_over_threads.
927         (inferior_appeared): Call init_thread_list here.
928         (discard_all_inferiors): Use all_non_exited_inferiors.
929         (find_inferior_id, find_inferior_pid): Use all_inferiors.
930         (iterate_over_inferiors): Use all_inferiors_safe.
931         (have_inferiors, number_of_live_inferiors): Use
932         all_non_exited_inferiors.
933         (number_of_inferiors): Use all_inferiors and std::distance.
934         (print_inferior): Use all_inferiors.
935         * inferior.h: Include gdbthread.h.
936         (enum step_over_calls_kind): Moved to gdbthread.h.
937         (struct inferior) <thread_list>: New field.
938         <threads, non_exited_threads, threads_safe>: New methods.
939         (ALL_INFERIORS): Delete.
940         Include "inferior-iter.h".
941         (ALL_NON_EXITED_INFERIORS): Delete.
942         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
943         functions.
944         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
945         ALL_NON_EXITED_THREADS with all_non_exited_threads.
946         * infrun.c (follow_exec): Use all_threads_safe.
947         (clear_proceed_status, proceed): Use all_non_exited_threads.
948         (init_wait_for_inferior): Don't clear inline frame state here.
949         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
950         all_threads instead of ALL_NON_EXITED_THREADS.
951         (random_pending_event_thread): Use all_non_exited_threads instead
952         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
953         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
954         instead of ALL_NON_EXITED_THREADS.
955         (handle_no_resumed): Use all_non_exited_threads instead of
956         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
957         ALL_INFERIORS.
958         (restart_threads, switch_back_to_stepped_thread): Use
959         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
960         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
961         all_inferiors.
962         (kill_unfollowed_fork_children): Use inf->non_exited_threads
963         instead of ALL_NON_EXITED_THREADS.
964         * linux-tdep.c (linux_make_corefile_notes): Use
965         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
966         * linux-thread-db.c (thread_db_target::update_thread_list):
967         Replace ALL_INFERIORS with all_inferiors.
968         (thread_db_target::thread_handle_to_thread_info): Use
969         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
970         * mi/mi-interp.c (multiple_inferiors_p): New.
971         (mi_on_resume_1): Simplify using all_non_exited_threads and
972         multiple_inferiors_p.
973         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
974         instead of ALL_NON_EXITED_THREADS.
975         * nto-procfs.c (nto_procfs_target::open): Don't call
976         init_thread_list here.
977         * record-btrace.c (record_btrace_target_open)
978         (record_btrace_target::stop_recording)
979         (record_btrace_target::close)
980         (record_btrace_target::record_is_replaying)
981         (record_btrace_target::resume, record_btrace_target::wait)
982         (record_btrace_target::record_stop_replaying): Use
983         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
984         * record-full.c (record_full_wait_1): Use all_non_exited_threads
985         instead of ALL_NON_EXITED_THREADS.
986         * regcache.c (cooked_read_test): Remove reference to global
987         thread_list.
988         * remote-sim.c (gdbsim_target::create_inferior): Don't call
989         init_thread_list here.
990         * remote.c (remote_target::update_thread_list): Use
991         all_threads_safe instead of ALL_NON_EXITED_THREADS.
992         (remote_target::process_initial_stop_replies): Replace
993         ALL_INFERIORS with all_non_exited_inferiors and use
994         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
995         (remote_target::open_1): Don't call init_thread_list here.
996         (remote_target::append_pending_thread_resumptions)
997         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
998         instead of ALL_NON_EXITED_THREADS.
999         (remote_target::commit_resume)
1000         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
1001         with all_non_exited_inferiors and use all_non_exited_threads
1002         instead of ALL_NON_EXITED_THREADS.
1003         (remote_target::kill_new_fork_children): Use
1004         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
1005         init_thread_list and init_wait_for_inferior calls.
1006         (remote_target::remote_btrace_maybe_reopen)
1007         (remote_target::thread_handle_to_thread_info): Use
1008         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
1009         * target.c (target_terminal::restore_inferior)
1010         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
1011         all_non_exited_inferiors.
1012         * thread-iter.c: New file.
1013         * thread-iter.h: New file.
1014         * thread.c: Include "inline-frame.h".
1015         (thread_list): Delete.
1016         (clear_thread_inferior_resources): Call clear_inline_frame_state.
1017         (init_thread_list): Use all_threads_safe instead of
1018         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
1019         (new_thread): Adjust to per-inferior thread lists.
1020         (add_thread_silent): Pass inferior to find_thread_ptid.
1021         (thread_info::deletable): New, moved from the header.
1022         (delete_thread_1): Adjust to per-inferior thread lists.
1023         (find_thread_global_id): Use inf->threads().
1024         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
1025         find_thread_ptid.
1026         (find_thread_ptid(inferior*, ptid_t)): New overload.
1027         (iterate_over_threads): Use all_threads_safe.
1028         (any_thread_p): New.
1029         (thread_count): Use all_threads and std::distance.
1030         (live_threads_count): Use all_non_exited_threads and
1031         std::distance.
1032         (valid_global_thread_id): Use all_threads.
1033         (in_thread_list): Use find_thread_ptid.
1034         (first_thread_of_inferior): Adjust to per-inferior thread lists.
1035         (any_thread_of_inferior, any_live_thread_of_inferior): Use
1036         inf->non_exited_threads().
1037         (prune_threads, delete_exited_threads): Use all_threads_safe.
1038         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
1039         (set_resumed, set_running): Use all_non_exited_threads.
1040         (is_thread_state, is_stopped, is_exited, is_running)
1041         (is_executing): Delete.
1042         (set_executing, set_stop_requested, finish_thread_state): Use
1043         all_non_exited_threads.
1044         (print_thread_info_1): Use all_inferiors and all_threads.
1045         (thread_apply_all_command): Use all_non_exited_threads.
1046         (thread_find_command): Use all_threads.
1047         (update_threads_executing): Use all_non_exited_threads.
1048         * tid-parse.c (parse_thread_id): Use inf->threads.
1049         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
1050
1051 2018-11-22  Pedro Alves  <palves@redhat.com>
1052
1053         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
1054         switch to it before calling into try_open_exec_file.
1055
1056 2018-11-22  Pedro Alves  <palves@redhat.com>
1057
1058         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
1059         inferior_thread instead of find_thread_ptid, and only when
1060         inferior_ptid is not null_ptid.
1061         * inferior.c (add_inferior): Don't include target_pid_to_str
1062         output when the inferior is not started.
1063         * python/py-inferior.c (python_on_normal_stop): Don't use
1064         find_thread_ptid.
1065         (tui_on_user_selected_context_changed): Use inferior_thread
1066         instead of find_thread_ptid, and only when inferior_ptid is not
1067         null_ptid.
1068
1069 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
1070
1071         PR python/23714
1072         * gdb/python/python.c (execute_gdb_command): Call
1073         prevent_dont_repeat earlier to avoid affecting dont_repeat.
1074
1075 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
1076
1077         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
1078         (HFILES_NO_SRCDIR): Add arch/riscv.h.
1079         * arch/riscv.c: New file.
1080         * arch/riscv.h: New file.
1081         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
1082         this list, and add arch/riscv.o.
1083         * features/Makefile: Add riscv features.
1084         * features/riscv/32bit-cpu.c: New file.
1085         * features/riscv/32bit-cpu.xml: New file.
1086         * features/riscv/32bit-csr.c: New file.
1087         * features/riscv/32bit-csr.xml: New file.
1088         * features/riscv/32bit-fpu.c: New file.
1089         * features/riscv/32bit-fpu.xml: New file.
1090         * features/riscv/64bit-cpu.c: New file.
1091         * features/riscv/64bit-cpu.xml: New file.
1092         * features/riscv/64bit-csr.c: New file.
1093         * features/riscv/64bit-csr.xml: New file.
1094         * features/riscv/64bit-fpu.c: New file.
1095         * features/riscv/64bit-fpu.xml: New file.
1096         * features/riscv/rebuild-csr-xml.sh: New file.
1097         * riscv-tdep.c: Add 'arch/riscv.h' include.
1098         (riscv_gdb_reg_names): Delete.
1099         (csr_reggroup): New global.
1100         (struct riscv_register_alias): Delete.
1101         (struct riscv_register_feature): New structure.
1102         (riscv_register_aliases): Delete.
1103         (riscv_xreg_feature): New global.
1104         (riscv_freg_feature): New global.
1105         (riscv_virtual_feature): New global.
1106         (riscv_csr_feature): New global.
1107         (riscv_create_csr_aliases): New function.
1108         (riscv_read_misa_reg): Delete.
1109         (riscv_has_feature): Delete.
1110         (riscv_isa_xlen): Simplify, just return cached xlen.
1111         (riscv_isa_flen): Simplify, just return cached flen.
1112         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
1113         (riscv_register_name): Update to make use of tdesc_register_name.
1114         Look up xreg and freg names in the new globals riscv_xreg_feature
1115         and riscv_freg_feature.  Don't supply csr aliases here.
1116         (riscv_fpreg_q_type): Delete.
1117         (riscv_register_type): Use tdesc_register_type in almost all
1118         cases, override the returned type in a few specific cases only.
1119         (riscv_print_one_register_info): Handle errors reading registers.
1120         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
1121         registers that are otherwise unknown to GDB.  Also check the
1122         csr_reggroup.
1123         (riscv_print_registers_info): Remove assert about upper register
1124         number, and use gdbarch_register_reggroup_p instead of
1125         short-cutting.
1126         (riscv_find_default_target_description): New function.
1127         (riscv_check_tdesc_feature): New function.
1128         (riscv_add_reggroups): New function.
1129         (riscv_setup_register_aliases): New function.
1130         (riscv_init_reggroups): New function.
1131         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
1132         setup register groups.  Register new riscv debug variable.
1133         * riscv-tdep.h: Add 'arch/riscv.h' include.
1134         (struct gdbarch_tdep): Remove abi union, and add
1135         riscv_gdbarch_features field.  Remove cached quad floating point
1136         type, and provide initialisation for double type field.
1137         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
1138         the list of targets using the feature based target descriptions.
1139         * NEWS: Mention target description support.
1140
1141 2018-11-21  Pedro Alves  <palves@redhat.com>
1142
1143         * valops.c (find_method_list, value_find_oload_method_list)
1144         (find_overload_match, find_oload_champ): Rename parameters and
1145         locals.
1146
1147 2018-11-21  Pedro Alves  <palves@redhat.com>
1148
1149         * valops.c (find_method_list): Replace pointer and length
1150         parameters with an gdb::array_view.  Adjust.
1151         (value_find_oload_method_list): Likewise.
1152         (find_overload_match): Use gdb::array_view for methods list.
1153         Adjust to find_oload_champ interface change.
1154         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
1155         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
1156
1157 2018-11-21  Pedro Alves  <palves@redhat.com>
1158
1159         * gdbtypes.c (compare_badness): Change type of parameters to const
1160         reference.  Adjust to badness_vector being a std::vector now.
1161         (rank_function): Adjust to badness_vector being a std::vector now.
1162         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
1163         (LENGTH_MATCH): Delete.
1164         (compare_badness): Change type of parameters to const reference.
1165         (rank_function): Return a badness_vector by value now.
1166         (find_overload_match): Adjust to badness_vector being a
1167         std::vector now.  Remove cleanups.
1168         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
1169         badness_vector pointer.
1170         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
1171         a badness_vector pointer.  Adjust to badness_vector being a
1172         std::vector now.  Remove cleanups.
1173         (find_oload_champ): 'oload_champ_bv' parameter now
1174         a badness_vector pointer.  Adjust to badness_vector being a
1175         std::vector now.  Remove cleanups.
1176
1177 2018-11-21  Pedro Alves  <palves@redhat.com>
1178
1179         * cp-support.c (sym_return_val_size, sym_return_val_index)
1180         (sym_return_val): Delete.
1181         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
1182         add to the vector.
1183         (make_symbol_overload_list): Adjust to return a std::vector
1184         instead of maintaining a global open coded vector.
1185         (make_symbol_overload_list_block): Add std::vector parameter.
1186         (make_symbol_overload_list_block): Rename to ...
1187         (add_symbol_overload_list_block): ... this and add std::vector
1188         parameter.
1189         (make_symbol_overload_list_namespace): Rename to ...
1190         (add_symbol_overload_list_namespace): ... this and add std::vector
1191         parameter.
1192         (make_symbol_overload_list_adl_namespace): Rename to ...
1193         (add_symbol_overload_list_adl_namespace): ... this and add
1194         std::vector parameter.
1195         (make_symbol_overload_list_adl): Delete.
1196         (add_symbol_overload_list_adl): New.
1197         (make_symbol_overload_list_using): Rename to ...
1198         (add_symbol_overload_list_using): ... this and add std::vector
1199         parameter.
1200         (make_symbol_overload_list_qualified): Rename to ...
1201         (add_symbol_overload_list_qualified): ... this and add std::vector
1202         parameter.
1203         * cp-support.h: Include "common/array-view.h" and <vector>.
1204         (make_symbol_overload_list): Change return type to std::vector.
1205         (make_symbol_overload_list_adl): Delete declaration.
1206         (add_symbol_overload_list_adl): New declaration.
1207         * valops.c (find_overload_match): Local 'oload_syms' now a
1208         std::vector.
1209         (find_oload_champ_namespace): 'oload_syms' parameter now a
1210         std::vector pointer.
1211         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
1212         std::vector pointer.  Adjust to new make_symbol_overload_list
1213         interface.
1214
1215 2018-11-21  Pedro Alves  <palves@redhat.com>
1216
1217         * common/array-view.h (array_view::splice(size_type, size_t)): New.
1218         (array_view::splice(size_type)): New.
1219         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
1220         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
1221         std::vector.
1222         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1223         * extension.h: Include "common/array-view.h".
1224         (xmethod_worker::invoke): Adjust to use gdb::array_view.
1225         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
1226         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1227         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
1228         (xmethod_worker::do_get_result_type): Adjust to use
1229         gdb::array_view.
1230         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
1231         * gdbtypes.h: Include "common/array-view.h".
1232         (rank_function): Adjust to use gdb::array_view.
1233         * python/py-xmethods.c (python_xmethod_worker::invoke)
1234         (python_xmethod_worker::do_get_arg_types)
1235         (python_xmethod_worker::do_get_result_type)
1236         (python_xmethod_worker::invoke): Adjust to new interfaces.
1237         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1238         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1239         * valops.c (find_overload_match, find_oload_champ_namespace)
1240         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1241         gdb:array_view and the new xmethod_worker interfaces.
1242         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1243         gdb::array_view.
1244         * value.h (find_overload_match, result_type_of_xmethod)
1245         (call_xmethod): Adjust to use gdb::array_view.
1246         * unittests/array-view-selftests.c: Add slicing tests.
1247
1248 2018-11-21  Pedro Alves  <palves@redhat.com>
1249
1250         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1251         * common/array-view.h (make_array_view): New.
1252         * compile/compile-object-run.c (compile_object_run): Adjust to
1253         pass an array_view.
1254         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1255         * eval.c (eval_call): Adjust to pass an array_view.
1256         (evaluate_subexp_standard): Adjust to pass an array_view.
1257         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1258         * guile/scm-value.c (gdbscm_value_call): Likewise.
1259         * infcall.c (push_dummy_code): Replace pointer + size parameters
1260         with an array_view parameter.
1261         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1262         adjust.
1263         * infcall.h: Include "common/array-view.h".
1264         (call_function_by_hand, call_function_by_hand_dummy): Replace
1265         pointer + size parameters with an array_view parameter.
1266         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1267         * linux-tdep.c (linux_infcall_mmap): Likewise.
1268         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1269         (value_nsstring, print_object_command): Likewise.
1270         * python/py-value.c (valpy_call): Likewise.
1271         * rust-lang.c (rust_evaluate_funcall): Likewise.
1272         * spu-tdep.c (flush_ea_cache): Likewise.
1273         * valarith.c (value_x_binop, value_x_unop): Likewise.
1274         * valops.c (value_allocate_space_in_inferior): Likewise.
1275         * unittests/array-view-selftests.c (run_tests): Add
1276         gdb::make_array_view test.
1277
1278 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1279
1280         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1281         than a fixed size buffer.
1282
1283 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1284
1285         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1286         and remove insertion of extra spaces in GDB's output.
1287         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1288         Layout field into a temporary buffer, and then output it as a
1289         string field.
1290
1291 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1292
1293         * NEWS: Document the language choice done by
1294         'info [types|functions|variables]|rbreak'.
1295
1296 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1297
1298         * symtab.c (treg_matches_sym_type_name): Use
1299         scoped_switch_to_sym_language_if_auto instead of local logic.
1300         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1301         to switch to SYM language when language mode is auto.
1302
1303 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1304
1305         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1306
1307 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1308
1309         * symtab.c (search_symbols): Properly check absence of type regexp
1310         before entering the loop scanning the minimal symbols.
1311
1312 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1313
1314         * s12z-tdep.c (s12z_extract_return_value): New function.
1315         (inv_reg_perm) New array.
1316         (s12z_return_value): Populate readbuf if non-null.
1317
1318 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1319
1320         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1321         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1322         to MinGW fixed by Gnulib.
1323         (O_NOINHERIT): Define if not defined.
1324
1325 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1326
1327         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1328
1329 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1330
1331         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1332
1333 2018-11-19  Tom Tromey  <tom@tromey.com>
1334
1335         * source.c (get_filename_and_charpos): Return void.
1336
1337 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1338
1339         * skip.c (_initialize_step_skip): Fix "info skip" help.
1340
1341 2018-11-16  Tom Tromey  <tom@tromey.com>
1342
1343         PR rust/23625:
1344         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1345
1346 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1347
1348         * infrun.c (displaced_step_inferior_states): Change type to
1349         std::forward_list.
1350         (get_displaced_stepping_state): Adjust.
1351         (displaced_step_in_progress_any_inferior): Adjust.
1352         (add_displaced_stepping_state): Adjust.
1353         (remove_displaced_stepping_state): Adjust.
1354
1355 2018-11-18  Tom Tromey  <tom@tromey.com>
1356
1357         PR build/23814:
1358         * target-delegates.c: Rebuild.
1359         * ia64-linux-nat.c (class ia64_linux_nat_target)
1360         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1361         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1362         "self" argument.
1363         (ia64_linux_nat_target::low_new_thread): Rename.
1364         (class ia64_linux_nat_target) <read_description>: Don't declare.
1365         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1366         bool.
1367
1368 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1369
1370         PR gdb/22736:
1371         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1372         lang_struct_return code.
1373
1374 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1375
1376         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1377         return_method.
1378         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1379         * amd64-tdep.c (amd64_push_arguments): Likewise.
1380         (amd64_push_dummy_call): Likewise.
1381         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1382         * arc-tdep.c (arc_push_dummy_call): Likewise.
1383         * arm-tdep.c (arm_push_dummy_call): Likewise.
1384         * avr-tdep.c (avr_push_dummy_call): Likewise.
1385         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1386         * cris-tdep.c (cris_push_dummy_call): Likewise.
1387         * csky-tdep.c (csky_push_dummy_call): Likewise.
1388         * frv-tdep.c (frv_push_dummy_call): Likewise.
1389         * gdbarch.c: Regenerate.
1390         * gdbarch.h: Regenerate.
1391         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1392         return_method.
1393         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1394         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1395         (hppa64_push_dummy_call): Likewise.
1396         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1397         * i386-tdep.c (i386_push_dummy_call): Likewise.
1398         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1399         * infcall.c (call_function_by_hand_dummy): Likewise.
1400         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1401         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1402         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1403         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1404         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1405         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1406         * mep-tdep.c (mep_push_dummy_call): Likewise.
1407         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1408         (mips_n32n64_push_dummy_call): Likewise.
1409         (mips_o32_push_dummy_call): Likewise.
1410         (mips_o64_push_dummy_call): Likewise.
1411         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1412         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1413         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1414         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1415         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1416         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1417         (ppc64_sysv_abi_push_dummy_call): Likewise.
1418         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1419         (ppc64_sysv_abi_push_dummy_call): Likewise.
1420         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1421         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1422         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1423         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1424         * rx-tdep.c (rx_push_dummy_call): Likewise.
1425         * s390-tdep.c (s390_push_dummy_call): Likewise.
1426         * score-tdep.c (score_push_dummy_call): Likewise.
1427         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1428         (sh_push_dummy_call_nofpu): Likewise.
1429         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1430         (sparc32_push_dummy_call): Likewise.
1431         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1432         (sparc64_push_dummy_call): Likewise.
1433         * spu-tdep.c (spu_push_dummy_call): Likewise.
1434         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1435         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1436         * v850-tdep.c (v850_push_dummy_call): Likewise.
1437         * vax-tdep.c (vax_push_dummy_call): Likewise.
1438         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1439         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1440
1441 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1442
1443         * gdbarch.sh (enum function_call_return_method): Add enum.
1444         * gdbarch.h: Regenerate.
1445         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1446
1447 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1448
1449         * unittests/copy_bitwise-selftests.c: New file.
1450         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1451         (selftests::copy_bitwise_tests): Delete, moving this code to
1452         unittests/copy_bitwise-selftests.c instead.
1453         (_initialize_utils): Do not register copy_bitwise tests.
1454         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1455         unittests/copy_bitwise-selftests.c.
1456
1457 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1458
1459         * ada-lang.c (move_bits): Delete. Update all callers to use
1460         copy_bitwise instead.
1461         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1462         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1463         Move from here to utils.c.
1464         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1465         selftests.
1466         * utils.h (copy_bitwise): Add declaration.
1467         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1468         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1469         Moved here from dwarf2loc.c.
1470         (_initialize_utils): Register copy_bitwise selftests.
1471
1472 2018-11-14  Jim Wilson  <jimw@sifive.com>
1473
1474         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1475         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1476         then increment next_regnum if odd.
1477         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1478         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1479         function type.  Pass new arg to riscv_arg_location based on function
1480         type.
1481         (riscv_return_value): Pass new arg to riscv_arg_location.
1482
1483         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1484         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1485         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1486
1487         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1488         setting len.  New local align, set to max of arg align and xlen,
1489         and pass to first riscv_assign_stack_location call.
1490
1491 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1492
1493         * skip.c (complete_skip_number): New function.
1494         (_initialize_step_skip): Add completers to some skip commands.
1495
1496 2018-11-09  Tom Tromey  <tom@tromey.com>
1497
1498         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1499         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1500         <guesses>: Now a std::vector.
1501         (remote_g_packet_data_init, register_remote_g_packet_guess):
1502         Update.
1503         (remote_read_description_p): Update.  Return bool.
1504         (remote_target::read_description): Update.
1505         (struct remote_g_packet_guess): Add constructor.
1506
1507 2018-11-09  Tom Tromey  <tom@tromey.com>
1508
1509         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1510         move assignment operator.
1511         * psymtab.c (psymtab_to_fullname): Update.
1512         * source.h (open_source_file): Return scoped_fd.
1513         (find_and_open_source): Likewise.
1514         * source.c (open_source_file): Return scoped_fd.
1515         (get_filename_and_charpos): Update.
1516         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1517         (forward_search_command): Likewise.
1518         (reverse_search_command): Likewise.
1519         (find_and_open_source): Return scoped_fd.
1520         * tui/tui-source.c (tui_set_source_content): Update.  Use
1521         gdb_file_up.
1522
1523 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1524
1525         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1526         overflow.
1527
1528 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1529
1530         * configure: Regenerate.
1531
1532 2018-11-09  Tom de Vries  <tdevries@suse.de>
1533
1534         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1535         unconditionally, to set the language of the symbol.  Manage freeing
1536         returned pointer using gdb::unique_xmalloc_ptr.
1537
1538 2018-11-08  Tom Tromey  <tom@tromey.com>
1539
1540         * record.c (require_record_target): Upper-case "<TAB>".
1541
1542 2018-11-08  Tom Tromey  <tom@tromey.com>
1543
1544         * python/lib/gdb/command/pretty_printers.py
1545         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1546
1547 2018-11-08  Tom Tromey  <tom@tromey.com>
1548
1549         PR gdb/23555:
1550         PR gdb/23838:
1551         * target.h (target_supports_terminal_ours): Return bool.
1552         * target.c (target_supports_terminal_ours): Handle case where
1553         current_top_target returns nullptr.  Return bool.
1554
1555 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1556
1557         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1558         return the correct count for potential HFAs.
1559
1560 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1561
1562         * i387-tdep.c (i387_supply_xsave): Split handling of
1563         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1564         (i387_collect_xsave): Likewise.
1565
1566 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1567
1568         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1569         (riscv_frame_this_id): Catch errors thrown while building the
1570         frame cache, leave the frame id as the default, which is the outer
1571         frame id.
1572
1573 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1574
1575         * ada-lang.c (read_atcb): Only set task_info->called_task if
1576         task_info->state == Entry_Caller_Sleep.
1577         (print_ada_task_info): Do not check task_info->state before
1578         checking task_info->called_task.
1579         (info_task): Likewise.
1580
1581 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1582
1583         * ada-tasks.c (read_atcb): Clear task_info before computing
1584         the value of each of its fields.
1585
1586 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1587
1588         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1589         NULL before dereferencing it.
1590
1591 2018-11-06  Tom de Vries  <tdevries@suse.de>
1592
1593         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1594         program headers.
1595
1596 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1597
1598         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1599         so that it applies to uclinux as well.
1600
1601 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1602
1603         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1604         when on AAPCS.
1605
1606 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1607
1608         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1609         RISCV_CSR_SSTATUS_REGNUM.
1610
1611 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1612
1613         * source.c (open_source_file): Fix leak by transferring the
1614         current s->fullname to the unique_xmalloc_ptr fullname given
1615         to find_and_open_source.
1616
1617 2018-11-04  Tom Tromey  <tom@tromey.com>
1618
1619         * varobj.c (install_default_visualizer): Update.
1620         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1621         Return gdbpy_ref.
1622         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1623         (find_pretty_printer_from_progspace)
1624         (find_pretty_printer_from_gdb, find_pretty_printer)
1625         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1626         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1627         Update.
1628
1629 2018-11-04  Tom Tromey  <tom@tromey.com>
1630
1631         * python/python.c (gdbpy_parameter_value): Update.
1632         * python/python-internal.h (python_string_to_unicode)
1633         (python_string_to_target_python_string)
1634         (host_string_to_python_string): Return gdbpy_ref.
1635         * python/py-utils.c (python_string_to_unicode)
1636         (unicode_to_encoded_python_string)
1637         (unicode_to_target_python_string)
1638         (python_string_to_target_string)
1639         (python_string_to_target_python_string): Return gdbpy_ref.
1640         (python_string_to_host_string): Update.
1641         (host_string_to_python_string): Return gdbpy_ref.
1642         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1643         (stpy_fullname): Update.
1644         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1645         Update.
1646         * python/py-prettyprint.c (print_string_repr): Update.
1647         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1648         (objfpy_get_build_id): Update.
1649         * python/py-breakpoint.c (bppy_get_location)
1650         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1651         Update.
1652
1653 2018-11-04  Tom Tromey  <tom@tromey.com>
1654
1655         * python/python-internal.h (gdb_py_object_from_longest)
1656         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1657         * python/py-value.c (valpy_int): Update.
1658         * python/py-utils.c (gdb_py_object_from_longest): Return
1659         gdbpy_ref.
1660         (gdb_py_object_from_ulongest): Likewise.
1661         * python/py-type.c (typy_get_alignof): Update.
1662         * python/py-linetable.c (ltpy_get_all_source_lines)
1663         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1664         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1665
1666 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1667
1668         * ada-lang.c (_initialize_ada_language): Fix typo.
1669
1670 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1671
1672         * language.c (type): Remove.
1673         (_initialize_language): Remove assignment to type.
1674
1675 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1676
1677         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1678         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1679         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1680         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1681         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1682         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1683         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1684         and aarch64-ravenscar-thread.o.
1685         * NEWS: Add entry documenting Ravenscar tasking support
1686         on AArch64 ELF.
1687
1688 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1689
1690         * symtab.c (info_functions_command): Initialize quiet flag.
1691         * stack.c (info_args_command): Likewise.
1692
1693 2018-11-01  Jim Wilson  <jimw@sifive.com>
1694
1695         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1696         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1697         debugging messages.
1698
1699 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1700
1701         * ada-lang.c (ada_watch_location_expression): New function.
1702         (ada_language_defn): Set la_watch_location_expression to
1703         ada_watch_location_expression.
1704
1705 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1706
1707         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1708
1709 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1710
1711         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1712         shifting.
1713
1714 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1715             Joel Brobecker  <brobecker@adacore.com>
1716
1717         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1718         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1719         * arm-pikeos-tdep.c: New file.
1720         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1721         embedded system.
1722         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1723
1724 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1725
1726         * common/pathstuff.c (get_standard_temp_dir): New.
1727         * common/pathstuff.h (get_standard_temp_dir): New.
1728         * config.in: Re-generate.
1729         * configure: Re-generate.
1730         * configure.ac: Don't check for mkdtemp.
1731         * gnulib/aclocal-m4-deps.mk: Re-generate.
1732         * gnulib/aclocal.m4: Re-generate.
1733         * gnulib/config.in: Re-generate.
1734         * gnulib/configure: Re-generate.
1735         * gnulib/import/Makefile.am: Re-generate.
1736         * gnulib/import/Makefile.in: Re-generate.
1737         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1738         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1739         * gnulib/import/m4/mkdtemp.m4: New file.
1740         * gnulib/import/mkdtemp.c: New file.
1741         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1742         Add mkdtemp module.
1743         * unittests/mkdir-recursive-selftests.c (test): Use
1744         get_standard_temp_dir.
1745         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1746         ifdef.
1747         * compile/compile.c (get_compile_file_tempdir): Likewise.
1748
1749 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1750
1751         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1752         (SIG_FRAME_LR_OFFSET64): New define.
1753         (SIG_FRAME_FP_OFFSET64): New define.
1754         (aix_sighandle_frame_cache): New Function.
1755         (aix_sighandle_frame_this_id): New Function.
1756         (aix_sighandle_frame_prev_register): New Function.
1757         (aix_sighandle_frame_sniffer): New Function.
1758         (aix_sighandle_frame_unwind): New global variable.
1759         (rs6000_aix_init_osabi): Install new frame unwinder.
1760
1761 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1762
1763         PR gdb/23835
1764         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1765         already defined.
1766
1767 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1768
1769         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1770
1771 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1772
1773         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1774         (producer_is_icc): New function.
1775         (check_producer): Set producer_is_icc field on dwarf2_cu.
1776         (dwarf2_init_integer_type): New function.
1777         (read_base_type): Call dwarf2_init_integer_type instead of
1778         init_integer_type in all cases.
1779         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1780         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1781         LEN is greater than 0.
1782
1783 2018-10-30  Tom Tromey  <tom@tromey.com>
1784
1785         * main.c (captured_main_1): Check return value of bfd_init.
1786
1787 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1788
1789         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1790         Adjust comments.
1791
1792 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1793
1794         * procfs.c: Include common/pathstuff.h.
1795
1796 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1797
1798         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1799         Add missing braces.  No functional change.
1800
1801 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1802
1803         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1804         to report a bad option and fix indentation.
1805         * demangle.c (demangle_command): Use report_unrecognized_option_error
1806         to report a bad option and correctly report the bad option.
1807
1808 2018-10-27  Tom Tromey  <tom@tromey.com>
1809
1810         PR cli/23364:
1811         * darwin-nat.c (copied_shell): New global.
1812         (may_have_sip): Rename from should_disable_startup_with_shell.
1813         (copy_shell_to_cache, maybe_cache_shell): New functions.
1814         (darwin_nat_target::create_inferior): Update.  Use
1815         copied_shell.
1816
1817 2018-10-27  Tom Tromey  <tom@tromey.com>
1818
1819         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1820         (run_tests): Call test_to_file.
1821         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1822         temporary files.
1823         * common/scoped_fd.h (scoped_fd::to_file): New method.
1824
1825 2018-10-27  Tom Tromey  <tom@tromey.com>
1826
1827         * unittests/scoped_mmap-selftests.c (test_normal): Use
1828         gdb_mkostemp_cloexec.
1829         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1830         Use gdb_mkostemp_cloexec.
1831         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1832         gnulib/config.in, gnulib/configure,
1833         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1834         gnulib/import/m4/gnulib-cache.m4,
1835         gnulib/import/m4/gnulib-comp.m4: Update.
1836         * gnulib/import/m4/mkostemp.m4: New file.
1837         * gnulib/import/m4/mkstemp.m4: Remove.
1838         * gnulib/import/mkostemp.c: New file.
1839         * gnulib/import/mkstemp.m4: Remove.
1840         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1841         mkstemp, add mkostemp.  Apply new patch.
1842         * gnulib/import/stdlib.in.h: Apply patch.
1843         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1844         New file.
1845         * dwarf-index-write.c (write_psymtabs_to_index): Use
1846         gdb_mkostemp_cloexec.
1847         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1848
1849 2018-10-27  Tom Tromey  <tom@tromey.com>
1850
1851         * unittests/mkdir-recursive-selftests.c: New file.
1852         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1853         unittests/mkdir-recursive-selftests.c.
1854         * dwarf-index-cache.c (mkdir_recursive): Move to
1855         common/filestuff.c.
1856         (index_cache::store): Check return value of mkdir_recursive.
1857         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1858         (_initialize_index_cache): Don't register test.
1859         * common/filestuff.h (mkdir_recursive): Declare.
1860         * common/filestuff.c (mkdir_recursive): Move from
1861         dwarf-index-cache.c.  Return bool.
1862
1863 2018-10-27  Tom Tromey  <tom@tromey.com>
1864
1865         * dwarf-index-write.c (write_psymtabs_to_index): Move
1866         make_temp_filename to common/pathstuff.c.
1867         * common/pathstuff.h (make_temp_filename): Declare.
1868         * common/pathstuff.c (make_temp_filename): New function, moved
1869         from dwarf-index-write.c.
1870
1871 2018-10-27  Tom Tromey  <tom@tromey.com>
1872
1873         * procfs.c (procfs_target::create_inferior): Use get_shell.
1874         * cli/cli-cmds.c (shell_escape): Use get_shell.
1875         * windows-nat.c (windows_nat_target::create_inferior): Use
1876         get_shell.
1877         * common/pathstuff.c (get_shell): New function.
1878         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1879         (fork_inferior): Use get_shell.
1880         * common/pathstuff.h (get_shell): Declare.
1881
1882 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1883
1884         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1885
1886 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1887
1888         * stack.c (print_variable_and_value_data): Add preg and treg.
1889         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1890         and update callers.
1891         (print_frame_arg_vars): Likewise.
1892         (prepare_reg): New function.
1893         (info_locals_command): Extract info print args and use them.
1894         (info_args_command): Likewise.
1895         (_initialize_stack): Modify on-line help.
1896         * symtab.c (treg_matches_sym_type_name): New function.
1897         (search_symbols): New arg t_regexp.
1898         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1899         (info_variables_command): Extract info print args and use them.
1900         (info_functions_command): Likewise.
1901         (info_types_command): Update call to symtab_symbol_info.
1902         (_initialize_symtab): Modify on-line help.
1903         * symtab.h (treg_matches_sym_type_name): New function.
1904         (search_symbols): New t_regexp arg.
1905
1906 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1907
1908         * cli-utils.c (extract_arg_maybe_quoted): New function.
1909         (extract_info_print_args): New function.
1910         (info_print_args_help): New function.
1911         (report_unrecognized_option_error): New function.
1912         * cli-utils.h (extract_arg_maybe_quoted): New function.
1913         (extract_info_print_args): New function.
1914         (info_print_args_help): New function.
1915         (report_unrecognized_option_error): New function.
1916
1917 2018-10-26  Tom Tromey  <tom@tromey.com>
1918
1919         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1920         (compute_compunit_symtab_includes): Update.
1921         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1922         (compunit_symtab_ptr): Likewise.
1923
1924 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1925
1926         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1927         default_print_auxv_entry for specific tag values.
1928
1929 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1930
1931         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1932
1933 2018-10-26  Jim Wilson  <jimw@sifive.com>
1934
1935         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1936         (riscv_linux_sigframe_init): Declare.
1937         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1938         (riscv_linux_sigframe): New.
1939         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1940         (riscv_linux_sigframe_init): Define.
1941         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1942
1943         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1944         (riscv_isa_flen): Likewise.  Drop static.
1945         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1946         (riscv_isa_flen): Likewise.  Declare.
1947
1948 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1949             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1950
1951         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1952         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1953         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1954         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1955         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1956         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1957         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1958         Define.
1959         (struct ppc_linux_features) <htm>: New field.
1960         (ppc_linux_no_features): Add initializer for htm field.
1961         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1962         new tdescs.
1963         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1964         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1965         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1966         Define if not already defined.
1967         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1968         and rs6000/powerpc-isa207-htm-vsx64l.
1969         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1970         rs6000/powerpc-isa207-htm-vsx64l.xml.
1971         * features/rs6000/power-htm-spr.xml: New file.
1972         * features/rs6000/power-htm-core.xml: New file.
1973         * features/rs6000/power64-htm-core.xml: New file.
1974         * features/rs6000/power-htm-fpu.xml: New file.
1975         * features/rs6000/power-htm-altivec.xml: New file.
1976         * features/rs6000/power-htm-vsx.xml: New file.
1977         * features/rs6000/power-htm-ppr.xml: New file.
1978         * features/rs6000/power-htm-dscr.xml: New file.
1979         * features/rs6000/power-htm-tar.xml: New file.
1980         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1981         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1982         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1983         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1984         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1985         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1986         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1987         fetch_regset with HTM regsets.
1988         (store_register, store_ppc_registers): Call store_regset with HTM
1989         regsets.
1990         (ppc_linux_nat_target::read_description): Set htm field in the
1991         features struct if needed.
1992         * ppc-linux-tdep.c: Include
1993         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1994         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1995         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1996         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1997         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1998         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1999         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
2000         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
2001         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
2002         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
2003         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
2004         (ppc32_linux_ctarregset): New globals.
2005         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
2006         (ppc_linux_collect_core_cpgrregset): New function.
2007         (ppc_linux_iterate_over_regset_sections): Call back with the htm
2008         regsets.
2009         (ppc_linux_core_read_description): Check if the tm spr section is
2010         present and set htm in the features struct.
2011         (_initialize_ppc_linux_tdep): Call
2012         initialize_tdesc_powerpc_isa207_htm_vsx32l and
2013         initialize_tdesc_powerpc_isa207_htm_vsx64l.
2014         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
2015         Declare.
2016         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
2017         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
2018         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
2019         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
2020         New fields.
2021         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
2022         Likewise.
2023         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
2024         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
2025         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
2026         New enum fields.
2027         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
2028         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
2029         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
2030         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
2031         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
2032         <PPC_CTAR_REGNUM>: Likewise.
2033         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
2034         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
2035         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
2036         (IS_CEFP_PSEUDOREG): Define.
2037         (rs6000_register_name): Hide the upper halves of checkpointed VSX
2038         registers.  Return names for the checkpointed DFP, VSX, and EFP
2039         pseudo registers.
2040         (rs6000_pseudo_register_type): Remove initial assert and raise an
2041         internal error in the else clause instead.  Return types for the
2042         checkpointed DFP, VSX, and EFP pseudo registers.
2043         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
2044         checkpointed DFP pseudo registers.
2045         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
2046         checkpointed VSX pseudo registers.
2047         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
2048         from efpr_pseudo_register_read and
2049         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
2050         registers.
2051         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
2052         Handle checkpointed DFP, VSX, and EFP registers.
2053         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
2054         (efp_ax_pseudo_register_collect): New functions.
2055         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
2056         register logic to new functions.  Handle checkpointed DFP, VSX,
2057         and EFP pseudo registers.
2058         (rs6000_gdbarch_init): Look for and validate the htm features.
2059         Include checkpointed DFP, VSX and EFP pseudo-registers.
2060         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
2061         HTM registers.
2062
2063 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2064
2065         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
2066         without altivec or fpu.
2067
2068 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2069             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2070
2071         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
2072         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
2073         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
2074         Define if not already defined.
2075         * features/rs6000/power-ebb.xml: New file.
2076         * features/rs6000/power-linux-pmu.xml: New file.
2077         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
2078         features.
2079         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
2080         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
2081         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
2082         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
2083         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
2084         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
2085         fetch_regset with ebb and pmu regsets.
2086         (store_register, store_ppc_registers): Call store_regset with ebb
2087         and pmu regsets.
2088         (ppc_linux_nat_target::read_description): Set isa207 field in the
2089         features struct if ebb and pmu are avaiable.
2090         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
2091         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
2092         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
2093         and pmu regsets.
2094         (ppc_linux_core_read_description): Check if the pmu section is
2095         present and set isa207 in the features struct.
2096         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
2097         (ppc32_linux_pmuregset): Declare.
2098         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
2099         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
2100         <ppc_sier_regnum>: New field.
2101         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
2102         New enum values.
2103         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
2104         values.
2105         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
2106         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
2107         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
2108         ebb and pmu features.
2109
2110 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2111             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2112
2113         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
2114         (tdesc_powerpc_isa207_vsx64l): Declare.
2115         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
2116         (struct ppc_linux_features) <isa207>: New field.
2117         (ppc_linux_no_features): Add initializer for isa207 field.
2118         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
2119         new tdescs.
2120         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
2121         (NT_PPC_TAR): Define if not already defined.
2122         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
2123         rs6000/powerpc-isa207-vsx64l.
2124         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
2125         rs6000/powerpc-isa207-vsx64l.xml.
2126         * features/rs6000/power-tar.xml: New file.
2127         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
2128         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
2129         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
2130         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
2131         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
2132         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
2133         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
2134         fetch_regset with the TAR regset.
2135         (store_register, store_ppc_registers): Call store_regset with the
2136         TAR regset.
2137         (ppc_linux_nat_target::read_description): Set isa207 field in the
2138         features struct if needed.
2139         * ppc-linux-tdep.c: Include
2140         features/rs6000/powerpc-isa207-vsx32l.c and
2141         features/rs6000/powerpc-isa207-vsx64l.c.
2142         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
2143         (ppc_linux_iterate_over_regset_sections): Call back with the tar
2144         regset.
2145         (ppc_linux_core_read_description): Check if the tar section is
2146         present and set isa207 in the features struct.
2147         (_initialize_ppc_linux_tdep): Call
2148         initialize_tdesc_powerpc_isa207_vsx32l and
2149         initialize_tdesc_powerpc_isa207_vsx64l.
2150         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
2151         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
2152         (enum) <PPC_TAR_REGNUM>: New enum value.
2153         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
2154         feature.
2155         (ppc_process_record_op31): Record changes to TAR.
2156
2157 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2158             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2159
2160         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
2161         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
2162         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
2163         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
2164         (struct ppc_linux_features) <ppr_dscr>: New field.
2165         (ppc_linux_no_features): Add initializer for ppr_dscr field.
2166         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
2167         new tdescs.
2168         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
2169         Define if not already defined.
2170         * features/Makefile (WHICH): Add
2171         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
2172         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
2173         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
2174         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
2175         * features/rs6000/power-dscr.xml: New file.
2176         * features/rs6000/power-ppr.xml: New file.
2177         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
2178         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
2179         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
2180         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
2181         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
2182         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
2183         * ppc-linux-nat.c: Include <sys/uio.h>.
2184         (fetch_regset, store_regset, check_regset): New functions.
2185         (fetch_register, fetch_ppc_registers): Call fetch_regset with
2186         DSCR and PPR regsets.
2187         (store_register, store_ppc_registers): Call store_regset with
2188         DSCR and PPR regsets.
2189         (ppc_linux_get_hwcap2): New function.
2190         (ppc_linux_nat_target::read_description): Call
2191         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
2192         features struct if needed.
2193         * ppc-linux-tdep.c: Include
2194         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
2195         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
2196         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
2197         (ppc32_linux_dscrregset): New globals.
2198         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
2199         and dscr regsets.
2200         (ppc_linux_core_read_description): Check if the ppr and dscr
2201         sections are present and set ppr_dscr in the features struct.
2202         (_initialize_ppc_linux_tdep): Call
2203         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
2204         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
2205         * ppc-linux-tdep.h (ppc32_linux_pprregset)
2206         (ppc32_linux_dscrregset): Declare.
2207         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
2208         <ppc_dscr_regnum>: New field.
2209         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
2210         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
2211         and dscr features.
2212         (ppc_process_record_op31): Record changes to PPR and DSCR.
2213
2214 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2215
2216         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
2217         second initializer line for the have_* variables.  Initialize
2218         have_fpu to 0 instead of 1.
2219
2220 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2221
2222         * arch/ppc-linux-common.c (ppc_linux_match_description):
2223         Parenthesize tdesc assignements and indent them properly.
2224
2225 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2226
2227         * ppc-linux-nat.c (fetch_register): Change if statement to else
2228         if.
2229         (store_register): Likewise.
2230
2231 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2232
2233         * rs6000-tdep.c: Remove reggroups.h include.
2234         (rs6000_pseudo_register_reggroup_p): Remove.
2235         (rs6000_gdbarch_init): Remove call to
2236         set_tdesc_pseudo_register_reggroup_p.
2237
2238 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2239
2240         * reggroups.c (default_register_reggroup_p): Return true for
2241         decfloat registers and float_reggroup.
2242
2243 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2244
2245         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2246         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2247         ppc_linux_collect_vrregset by regcache_collect_regset.
2248
2249 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2250
2251         * linux-tdep.c (linux_collect_regset_section_cb): Use
2252         std::vector<gdb_byte> instead of char * and malloc for buf.
2253         Remove xfree.
2254
2255 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2256
2257         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2258         symtab_start instead of always using language_unknown.
2259
2260 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2261
2262         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2263         READ_P parameter, catch and ignore register access errors from
2264         either the old or new MISA location.
2265         (riscv_has_feature): Update call to riscv_read_misa_reg.
2266
2267 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2268
2269         * python/py-function.c (convert_values_to_python): Return
2270         gdbpy_ref<>.  Add header comment.
2271         (fnpy_call): Adjust.
2272
2273 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2274
2275         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2276         (cmdpy_completer_handle_brkchars): Adjust.
2277         (cmdpy_completer): Adjust.
2278
2279 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2280
2281         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2282         Pass correct regnum to raw_supply_zeroed.
2283
2284 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2285
2286         * regcache.c (cooked_read_test): Add CSKY to the list of
2287         architectures with a save_reggroup
2288
2289 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2290
2291         PR gdb/23368
2292         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2293         transfer terminal state from old new new inferior.
2294         * terminal.h (swap_terminal_info): New function.
2295         * inflow.c (swap_terminal_info): New function.
2296
2297 2018-10-23  Tom Tromey  <tom@tromey.com>
2298
2299         * record-btrace.c (get_thread_current_frame_id): Rename from
2300         get_thread_current_frame.  Return a frame_id.
2301         (record_btrace_start_replaying): Update.
2302
2303 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2304
2305         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2306         for CSRs.
2307
2308 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2309
2310         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2311         have_nonsteppable_watchpoint attribute to 1.
2312
2313 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2314
2315         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2316         register names.
2317         (struct register_alias): Rename to...
2318         (struct riscv_register_alias): ...this, and update comment.
2319         (riscv_register_aliases): Update type, and alias names.  Remove
2320         CSR names from this list.
2321         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2322         register names.  Add an extra assertion.
2323         (riscv_is_regnum_a_named_csr): New function.
2324         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2325
2326 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2327
2328         * configure.tgt: Add configuration for s12z.
2329         * s12z-tdep.c:  New file.
2330         * NEWS: Mention new target.
2331
2332 2018-10-22  Jim Wilson  <jimw@sifive.com>
2333
2334         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2335         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2336
2337         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2338         (riscv_register_type): Use them.
2339         (riscv_print_one_register_info): Handle union of floats same as float.
2340         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2341         riscv_fpreg_q_type fields.
2342
2343 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2344
2345         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2346         * gdbarch.h: Re-generate.
2347         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2348         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2349         * eval.c (evaluate_subexp_standard): Likewise.
2350         * findvar.c (value_of_register): Likewise.
2351         (value_of_register_lazy): Likewise.
2352         (address_from_register): Likewise.
2353         * frame.c (get_frame_register_bytes): Likewise.
2354         * gdbarch-selftests.c (register_to_value_test): Likewise.
2355         * h8300-tdep.c (h8300_register_type): Likewise.
2356         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2357         (i386_svr4_reg_to_regnum): Likewise.
2358         * infcmd.c (default_print_registers_info): Likewise.
2359         (registers_info): Likewise.
2360         (print_vector_info): Likewise.
2361         (default_print_float_info): Likewise.
2362         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2363         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2364         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2365         (mi_cmd_data_list_changed_registers): Likewise.
2366         (mi_cmd_data_list_register_values): Likewise.
2367         (mi_cmd_data_write_register_values): Likewise.
2368         (mi_cmd_trace_frame_collected): Likewise.
2369         * mips-tdep.c (print_gp_register_row): Likewise.
2370         (mips_print_registers_info): Likewise.
2371         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2372         * regcache.c (init_regcache_descr): Likewise.
2373         (register_size): Likewise.
2374         (register_dump::dump): Likewise.
2375         (cooked_read_test): Likewise.
2376         (cooked_write_test): Likewise.
2377         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2378         (rs6000_gdbarch_init): Likewise.
2379         * stabsread.c (stab_reg_to_regnum): Likewise.
2380         * stack.c (info_frame_command): Likewise.
2381         * target-descriptions.c (tdesc_register_name): Likewise.
2382         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2383         * tui/tui-regs.c (tui_show_register_group): Likewise.
2384         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2385         (user_reg_map_regnum_to_name): Likewise.
2386         (value_of_user_reg): Likewise.
2387         (maintenance_print_user_registers): Likewise.
2388         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2389         (xtensa_register_name): Likewise.
2390         (xtensa_register_type): Likewise.
2391         (xtensa_reg_to_regnum): Likewise.
2392         (xtensa_pseudo_register_read): Likewise.
2393         (xtensa_pseudo_register_write): Likewise.
2394
2395 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2396
2397         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2398         correctly-sized buffer with raw_read.
2399         (amd64_pseudo_register_write): Use correctly-sized buffer for
2400         raw_read/raw_write.
2401
2402 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2403
2404         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2405         in add_prefix_cmd of set print type.
2406
2407 2018-10-19  Tom Tromey  <tom@tromey.com>
2408
2409         PR tui/18388:
2410         * NEWS: Mention tabset deprecation.
2411         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2412         (update_tab_width): New function.
2413         (tui_set_tab_width, tui_show_tab_width): New functions.
2414         (tui_set_tab_width_command): Use update_tab_width.
2415         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2416         Add new "set tui tab-width" command.
2417         * tui/tui-source.c (tui_set_source_content): Update.
2418         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2419         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2420         Don't declare.
2421         (tui_tab_width): Declare.
2422         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2423         (tui_set_default_tab_len): Remove.
2424
2425 2018-10-19  Tom Tromey  <tom@tromey.com>
2426
2427         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2428         (key_is_backspace, tui_getc): Don't declare.
2429         * tui/tui-io.c (key_is_start_sequence): Now static.
2430         (key_is_end_sequence, key_is_backspace): Remove.
2431         (tui_getc): Now static.
2432
2433 2018-10-19  Tom Tromey  <tom@tromey.com>
2434
2435         * symfile.c (reread_symbols): Clear "static_links".
2436
2437 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2438
2439         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2440         define.
2441         (aarch64_linux_sigframe_init): Extra boundary checks.
2442
2443 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2444
2445         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2446         the possibly non-existent tdesc type 'vec128', but the type of raw
2447         register v16 instead.
2448
2449 2018-10-19  Gary Benson <gbenson@redhat.com>
2450
2451         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2452
2453 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2454
2455         PR cli/23785
2456         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2457         NULL.
2458
2459 2018-10-17  Paul Koning  <paul_koning@dell.com>
2460
2461         * charset.c (convert_between_encodings): Fix unsigned overflow.
2462
2463 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2464
2465         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2466         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2467         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2468         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2469         New functions.
2470         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2471         and fbsd_info_proc_mappings_header.
2472         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2473         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2474         New.
2475
2476 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2477
2478         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2479         Solaris Maintainer.
2480
2481 2018-10-15  Tom Tromey  <tom@tromey.com>
2482
2483         * tui/tui.c (strcat_to_buf): Remove casts.
2484         * tui/tui-winsource.c (tui_show_source_line)
2485         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2486         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2487         * tui/tui-windata.c (tui_first_data_item_displayed)
2488         (tui_delete_data_content_windows, tui_erase_data_content)
2489         (tui_display_all_data, tui_display_data_from)
2490         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2491         * tui/tui-win.c (tui_set_win_height)
2492         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2493         casts.
2494         * tui/tui-win.c (tui_resize_all): Remove casts.
2495         (tui_scroll_backward_command, tui_set_focus)
2496         (tui_set_tab_width_command): Likewise.
2497         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2498         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2499         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2500         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2501         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2502         Remove casts.
2503
2504 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2505
2506         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2507         AArch64/ARM maintainer.
2508
2509 2018-10-11  Gary Benson <gbenson@redhat.com>
2510
2511         * interps.h (interp::m_name): Make private and mutable.
2512         * interps.c (interp::~interp): Free m_name.
2513
2514 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2515             Simon Marchi <simark@simark.ca>
2516
2517         * README (`configure' options): Add documentation for new
2518         "--enable-unit-tests" option.
2519         * acinclude.m4: Include "selftest.m4".
2520         * configure: Regenerate.
2521         * configure.ac: Use "GDB_AC_SELFTEST".
2522         * maint.c (maintenance_selftest): Update message informing
2523         that selftests have been disabled.
2524         (maintenance_info_selftests): Likewise.
2525         * selftest.m4: New file.
2526
2527 2018-10-10  Gary Benson <gbenson@redhat.com>
2528
2529         * remote.c (remote_target::remote_send_printf): Add
2530         missing va_end found by Coverity.
2531
2532 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2533
2534         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2535
2536 2018-10-09  Tom Tromey  <tom@tromey.com>
2537
2538         * configure: Rebuild.
2539         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2540         * NEWS: Update --enable-ubsan documentation.
2541
2542 2018-10-09  Gary Benson <gbenson@redhat.com>
2543
2544         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2545         found by Coverity.
2546
2547 2018-10-08  Tom Tromey  <tom@tromey.com>
2548
2549         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2550         variable.
2551         (riscv_fbsd_init_abi): Likewise.
2552
2553 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2554         * valops.c (value_struct_elt_for_reference): Rename local variable
2555         to work around the shadowing a previous local warning.
2556
2557 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2558
2559         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2560         * NEWS: Mention new FreeBSD/riscv native configuration.
2561         * configure.host: Add riscv*-*-freebsd*.
2562         * configure.nat: Likewise.
2563         * riscv-fbsd-nat.c: New file.
2564
2565 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2566
2567         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2568         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2569         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2570         * NEWS: Mention new FreeBSD/riscv target.
2571         * configure.tgt: Add riscv*-*-freebsd*.
2572         * riscv-fbsd-tdep.c: New file.
2573         * riscv-fbsd-tdep.h: New file.
2574
2575 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2576
2577         * regcache.h (struct regcache_map_entry): Note that this type can
2578         be used with traditional frame caches.
2579         * trad-frame.c (trad_frame_set_reg_regmap): New.
2580         * trad-frame.h (trad_frame_set_reg_regmap): New.
2581
2582 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2583
2584         PR c++/16841
2585         * valops.c (get_virtual_base_offset): New function.
2586         (value_struct_elt_for_reference): Use it to get virtual base offset
2587         and add it in calculating class member address.
2588
2589 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2590
2591         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2592         (check_producer): Check if the producer is codewarrior.
2593         (producer_is_codewarrior): New function.
2594         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2595         produced by codewarrior.
2596         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2597
2598 2018-10-06  Tom Tromey  <tom@tromey.com>
2599
2600         PR python/19399:
2601         * python/py-inferior.c: Add "architecture" entry.
2602         (infpy_architecture): New function.
2603
2604 2018-10-06  Tom Tromey  <tom@tromey.com>
2605
2606         PR python/21765:
2607         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2608         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2609         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2610         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2611
2612 2018-10-06  Tom Tromey  <tom@tromey.com>
2613
2614         PR build/17077:
2615         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2616         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2617         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2618         #include.
2619
2620 2018-10-06  Tom Tromey  <tom@tromey.com>
2621
2622         * python/py-breakpoint.c (bppy_get_location): Handle a
2623         bp_breakpoint without a location.
2624
2625 2018-10-06  Tom Tromey  <tom@tromey.com>
2626
2627         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2628         (_RegEx): Reformat help text.
2629         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2630         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2631         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2632         text.
2633         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2634         (EnableXMethod, DisableXMethod): Remove help indentation.
2635         Capitalize meta-syntactic variables.
2636         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2637         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2638         Capitalize meta-syntactic variables.
2639         * python/lib/gdb/command/explore.py (ExploreCommand)
2640         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2641         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2642         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2643         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2644         Remove help indentation.
2645         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2646         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2647         (DisableFrameFilter, SetFrameFilterPriority)
2648         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2649
2650 2018-10-06  Tom Tromey  <tom@tromey.com>
2651
2652         PR tui/28819:
2653         * tui/tui-io.c (gdb_wgetch): New function.
2654         (tui_mld_getc, tui_getc): Use it.
2655
2656 2018-10-05  Tom Tromey  <tom@tromey.com>
2657
2658         * sol-thread.c (sol_thread_target::wait): Rename inner
2659         "save_ptid".
2660
2661 2018-10-04  Tom Tromey  <tom@tromey.com>
2662
2663         * configure: Rebuild.
2664         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2665
2666 2018-10-04  Tom Tromey  <tom@tromey.com>
2667
2668         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2669         declaration of "block".
2670
2671 2018-10-04  Tom Tromey  <tom@tromey.com>
2672
2673         * common/filestuff.c (fdwalk): Remove inner declaration of
2674         "result".
2675
2676 2018-10-04  Tom Tromey  <tom@tromey.com>
2677
2678         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2679         "structs_addr" and hoist declaration.
2680
2681 2018-10-04  Tom Tromey  <tom@tromey.com>
2682
2683         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2684         variable "size".
2685
2686 2018-10-04  Tom Tromey  <tom@tromey.com>
2687
2688         * mdebugread.c (parse_partial_symbols): Use std::string.
2689
2690 2018-10-04  Tom Tromey  <tom@tromey.com>
2691
2692         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2693         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2694         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2695         header.
2696         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2697         more inner scope.
2698         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2699         * varobj.c (varobj_update): Rename inner "newobj",
2700         "type_changed".
2701         * valprint.c (generic_emit_char): Rename inner "buf".
2702         * valops.c (find_overload_match): Rename inner "temp".
2703         (value_struct_elt_for_reference): Declare "v" in more inner
2704         scope.
2705         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2706         * unittests/array-view-selftests.c (run_tests): Rename inner
2707         "vec".
2708         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2709         header.
2710         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2711         "tsv" in more inner scope.
2712         (print_one_static_tracepoint_marker): Rename inner
2713         "tuple_emitter".
2714         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2715         (tic6x_push_dummy_call): Don't redeclare "addr".
2716         * target-float.c: Declare "dto" lower.
2717         * symtab.c (lookup_local_symbol): Rename inner "sym".
2718         (find_pc_sect_line): Rename inner "pc".
2719         * stack.c (print_frame): Don't redeclare "gdbarch".
2720         (return_command): Rename inner "gdbarch".
2721         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2722         "sp".
2723         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2724         header.
2725         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2726         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2727         scope.
2728         * remote.c (remote_target::update_thread_list): Don't redeclare
2729         "tp".
2730         (remote_target::process_initial_stop_replies): Rename inner
2731         "thread".
2732         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2733         (remote_target::wait_as): Don't redeclare "stop_reply".
2734         (remote_target::get_thread_local_address): Rename inner
2735         "result".
2736         (remote_target::get_tib_address): Likewise.
2737
2738         * regcache.c (cooked_read_test): Rename "regnum".
2739         * record-btrace.c (cmd_record_btrace_start): Rename inner
2740         "exception".
2741         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2742         loop header.
2743         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2744         header.
2745         (ppu2spu_sniffer): Rename inner "buf".
2746         * parse.c (operator_check_standard): Rename inner "type",
2747         "objfile".
2748         * p-valprint.c (pascal_val_print): Introduce new scope for
2749         "low_bound", "high_bound".
2750         * p-exp.y (yylex): Declare "i" in loop header.
2751         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2752         Lower declaration of "s".
2753         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2754         header.
2755         (nios2_push_dummy_call): Rename "len".
2756         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2757         "buf".
2758         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2759         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2760         (linux_xfer_osdata_modules): Likewise.
2761         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2762         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2763         (mips_o64_push_dummy_call): Likewise.
2764         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2765         "op".
2766         * mi/mi-main.c (list_available_thread_groups): Rename inner
2767         "tuple_emitter".
2768         (mi_cmd_data_read_memory): Rename inner "opts".
2769         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2770         "tuple_emitter".
2771         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2772         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2773         more inner scope.
2774         (parse_partial_symbols): Rename inner "pst", "p", "name"
2775         * main.c (captured_main_1): Rename inner "i"s.
2776         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2777         "oso2".
2778         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2779         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2780         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2781         (handle_signal_stop): Rename inner "gdbarch".
2782         (handle_command): Declare "signum" in loop header.
2783         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2784         "status".
2785         (examine_prologue): Rename inner "sol" and "sof".
2786         (ia64_extract_return_value): Rename inner "val".  Declare another
2787         "val" in a more inner scope.
2788         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2789         inner scope.
2790         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2791         "except".
2792         * findvar.c (default_read_var_value): Don't redeclare "addr".
2793         * f-exp.y (yylex): Declare "i" in loop header.
2794         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2795         Rename inner "type", "expect_type".
2796         (evaluate_subexp_for_sizeof): Rename inner "pc".
2797         * elfread.c (elf_symfile_read): Rename inner "abfd".
2798         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2799         "bytes_read".
2800         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2801         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2802         (dwarf_decode_line_header): Rename inner "lh".
2803         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2804         "offset".  Declare "i" in loop header.
2805         (disassemble_dwarf_expression): Rename inner "addr_size".
2806         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2807         inner "result".
2808         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2809         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2810         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2811         "inner_list_emitter".
2812         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2813         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2814         declaration in a block.
2815         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2816         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2817         "obstack_final_size".
2818         * cp-support.c (inspect_type): Declare "i" in loop header.
2819         * compile/compile.c (compile_instance::insert_symbol_error):
2820         Rename inner "e".
2821         * common/agent.c (agent_run_command): Remove inner "ret"
2822         declaration.
2823         * coffread.c (coff_symfile_read): Rename inner "name".
2824         (coff_symfile_read): Rename inner "abfd".
2825         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2826         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2827         "high".
2828         * c-exp.y (lex_one_token): Move "len" declaration lower.
2829         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2830         "gdbarch".
2831         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2832         "b".
2833         (watch_command_1): Declare "mark" later.
2834         (clear_command): Don't shadow "a" or "b".
2835         (delete_command): Rename inner "b".
2836         (delete_trace_command): Likewise.
2837         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2838         "op".
2839         (arm_gdbarch_init): Remove inner "e_flags".
2840         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2841         "offset" in inner blocks.
2842
2843 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2844
2845         * dwarf-index-write.c (file_write): Don't write if the vector is
2846         empty.
2847
2848 2018-10-05  Tom de Vries  <tdevries@suse.de>
2849
2850         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2851         PyArg_ParseTuple call.
2852
2853 2018-10-05  Tom de Vries  <tdevries@suse.de>
2854
2855         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2856         PyArg_ParseTuple call.
2857
2858 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2859
2860         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2861         to avoid exceeding 80 characters per line limit.
2862
2863 2018-10-04  Tom Tromey  <tom@tromey.com>
2864
2865         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2866         (reread_symbols): Update.
2867         * complaints.h (clear_complaints): Remove argument.
2868         * complaints.c (enum complaint_series): Remove.
2869         (series): Remove global.
2870         (complaint_internal): Update.
2871         (clear_complaints): Remove argument.
2872
2873 2018-10-04  Tom Tromey  <tom@tromey.com>
2874
2875         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2876         debugging symbols" message if there is a separate debug objfile.
2877
2878 2018-10-04  Tom Tromey  <tom@tromey.com>
2879
2880         PR cli/19551:
2881         * symfile.c (symbol_file_add_with_addrs): Update output.
2882         * psymtab.c (require_partial_symbols): Update output.
2883
2884 2018-10-04  Tom Tromey  <tom@tromey.com>
2885
2886         PR cli/22234:
2887         * complaints.c: Emit \n.
2888
2889 2018-10-04  Tom Tromey  <tom@tromey.com>
2890
2891         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2892         (separate_debug_file_exists, find_separate_debug_file)
2893         (add_symbol_file_command, reread_symbols, allocate_symtab)
2894         (allocate_compunit_symtab): Use filtered printing, not
2895         unfiltered.
2896         * psymtab.c (require_partial_symbols, dump_psymtab)
2897         (allocate_psymtab): Use filtered printing, not unfiltered.
2898
2899 2018-10-04  Tom Tromey  <tom@tromey.com>
2900
2901         * complaints.c (complaint_internal): Correctly check complaint
2902         count.
2903
2904 2018-10-04  Tom Tromey  <tom@tromey.com>
2905
2906         * complaints.h (struct complaints): Remove declaration.
2907         * complaints.c (clear_complaints): Remove an unused variable.
2908
2909 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2910
2911         * MAINTAINERS (Write After Approval): Add self.
2912
2913 2018-10-03  Tom Tromey  <tom@tromey.com>
2914
2915         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2916         "buffer_contents".
2917         * coffread.c (coff_symtab_read): Initialize "newobj".
2918
2919 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2920
2921         * dwarf2read.c (read_func_scope): Remove struct keyword in
2922         range-based for.
2923
2924 2018-10-03  Tom Tromey  <tom@tromey.com>
2925
2926         * README: Mention --enable-ubsan.
2927         * NEWS: Mention --enable-ubsan.
2928         * acinclude.m4: Include sanitize.m4.
2929         * configure: Rebuild.
2930         * configure.ac: Call AM_GDB_UBSAN.
2931         * sanitize.m4: New file.
2932
2933 2018-10-03  Tom Tromey  <tom@tromey.com>
2934
2935         * expression.h (enum exp_opcode): Use uint8_t as base type.
2936         * expprint.c (op_name): Handle invalid opcodes.
2937
2938 2018-10-03  Tom Tromey  <tom@tromey.com>
2939
2940         * parse.c (prefixify_expression): Add assert.
2941         (parse_exp_in_context_1): Throw exception if the expression is
2942         empty.
2943
2944 2018-10-03  Tom Tromey  <tom@tromey.com>
2945
2946         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2947
2948 2018-10-03  Tom Tromey  <tom@tromey.com>
2949
2950         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2951
2952 2018-10-03  Tom Tromey  <tom@tromey.com>
2953
2954         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2955         unsigned.
2956
2957 2018-10-03  Tom Tromey  <tom@tromey.com>
2958
2959         * findvar.c (extract_integer): Do work in an unsigned type.
2960
2961 2018-10-03  Tom Tromey  <tom@tromey.com>
2962
2963         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2964         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2965         base type.
2966         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2967         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2968         type.
2969         * c-lang.h (enum c_string_type_values): Use unsigned as base
2970         type.
2971         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2972
2973 2018-10-03  Tom Tromey  <tom@tromey.com>
2974
2975         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2976         <~dwarf2_frame_state_reg_info>: Update.
2977         <dwarf2_frame_state_reg_info>: Update.
2978         <alloc_regs>: Add assertion.  Update.
2979         <reg>: Now a std::vector.
2980         <num_regs>: Remove.
2981         <swap>: Update.
2982         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2983         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2984
2985 2018-10-03  Tom Tromey  <tom@tromey.com>
2986
2987         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2988
2989 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2990
2991         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2992
2993 2018-10-02  Tom Tromey  <tom@tromey.com>
2994
2995         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2996
2997 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2998
2999         * NEWS: Mention changed commands.
3000         * ser-uds.c: New file.
3001         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
3002         * configure: Regenerate.
3003         * Makefile.in: Add new file.
3004         * serial.c (serial_open): Check if filename is a socket
3005         and lookup the appropriate interface accordingly.
3006
3007 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
3008
3009         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
3010         define.
3011         (AARCH64_EXTRA_MAGIC): Likewise.
3012         (AARCH64_FPSIMD_MAGIC): Likewise.
3013         (AARCH64_SVE_MAGIC): Likewise.
3014         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
3015         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
3016         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
3017         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
3018         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
3019         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
3020         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
3021         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
3022         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
3023         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
3024         (read_aarch64_ctx): Add function.
3025         (aarch64_linux_sigframe_init): Detect FP registers.
3026
3027 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
3028
3029         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
3030         (AARCH64_D0_REGNUM): Likewise.
3031         (AARCH64_S0_REGNUM): Likewise.
3032         (AARCH64_H0_REGNUM): Likewise.
3033         (AARCH64_B0_REGNUM): Likewise.
3034         (AARCH64_SVE_V0_REGNUM): Likewise.
3035         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
3036         (AARCH64_D0_REGNUM): Likewise.
3037         (AARCH64_S0_REGNUM): Likewise.
3038         (AARCH64_H0_REGNUM): Likewise.
3039         (AARCH64_B0_REGNUM): Likewise.
3040         (AARCH64_SVE_V0_REGNUM): Likewise.
3041
3042 2018-10-01  Gary Benson <gbenson@redhat.com>
3043
3044         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
3045         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
3046         prfpregset_t instead of gdb_prfpregset_t.
3047         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
3048         * configure, config.in: Rebuild.
3049
3050 2018-10-01  Gary Benson <gbenson@redhat.com>
3051
3052         * common/gdb_proc_service.h: New file, factored out from...
3053         * gdb_proc_service.h: Moved common code to the above file.
3054         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
3055
3056 2018-10-01  Gary Benson <gbenson@redhat.com>
3057
3058         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
3059         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
3060
3061 2018-10-01  Gary Benson <gbenson@redhat.com>
3062
3063         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
3064         (AC_CHECK_HEADERS): Check for linux/elf.h.
3065         * configure, config.in: Rebuild.
3066         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
3067         doesn't define elf_fpregset_t.
3068
3069 2018-10-01  Gary Benson <gbenson@redhat.com>
3070
3071         * gdb_proc_service.h: Whitespace change.
3072
3073 2018-10-01  Tom Tromey  <tom@tromey.com>
3074
3075         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
3076         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
3077         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
3078
3079 2018-10-01  Tom Tromey  <tom@tromey.com>
3080
3081         * README: Minor change.
3082
3083 2018-09-30  Pedro Alves  <palves@redhat.com>
3084
3085         * darwin-nat-info.c (darwin_debug_regions_recurse)
3086         (info_mach_exceptions_command): Remove unused local variables.
3087         * darwin-nat.c (darwin_decode_notify_message)
3088         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
3089         (darwin_stop_inferior, darwin_setup_exceptions)
3090         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
3091         (darwin_nat_target::attach, darwin_nat_target::detach)
3092         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
3093         local variables.
3094         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
3095         variables.
3096
3097 2018-09-29  Tom Tromey  <tom@tromey.com>
3098
3099         * README: Remove some leftover text.
3100
3101 2018-09-29  Tom Tromey  <tom@tromey.com>
3102
3103         * PROBLEMS: Rewrite.
3104         * README: Update.
3105
3106 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
3107
3108         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
3109         case with explicit breakpoint kind.
3110         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
3111         'additional_info' and related logic.
3112         (riscv_debug_breakpoints): New variable.
3113         (riscv_breakpoint_kind_from_pc): Use the length of the existing
3114         instruction to determine the breakpoint kind.
3115         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
3116         flag.  Update description of 'set/show riscv
3117         use-compressed-breakpoints' flag.
3118
3119 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
3120
3121         (NEWS): Mention changes to frame related commands.
3122         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
3123         (add_prefix_cmd_suppress_notification): New function.
3124         (add_com_suppress_notification): Call
3125         add_cmd_suppress_notification.
3126         * command.h (add_cmd_suppress_notification): Declare.
3127         (add_prefix_cmd_suppress_notification): Declare.
3128         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
3129         (parse_frame_specification): Moved from stack.c, with
3130         simplification to handle a single argument.
3131         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
3132         switch to the selected frame.  Add a header comment.
3133         * stack.c: Remove 'safe-ctype.h' include.
3134         (find_frame_for_function): Add declaration.
3135         (find_frame_for_address): New function.
3136         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
3137         (frame_selection_by_function_completer): New function.
3138         (info_frame_command): Rename to...
3139         (info_frame_command_core): ...this, and update parameter types.
3140         (select_frame_command): Rename to...
3141         (select_frame_command_core): ...this, and update parameter types.
3142         (frame_command): Rename to...
3143         (frame_command_core): ...this, and update parameter types.
3144         (class frame_command_helper): New class to wrap implementations of
3145         frame related sub-commands.
3146         (frame_apply_cmd_list): New static global.
3147         (frame_cmd_list): Make static.
3148         (select_frame_cmd_list): New global for sub-commands.
3149         (info_frame_cmd_list): New global for sub-commands.
3150         (_initialize_stack): Register sub-commands for 'frame',
3151         'select-frame', and 'info frame'.  Update 'frame apply' commands
3152         to use frame_apply_cmd_list.  Move function local static
3153         frame_apply_list to file static frame_apply_cmd_list for
3154         consistency.
3155         * stack.h (select_frame_command): Delete declarationn.
3156         (select_frame_for_mi): Declare new function.
3157
3158 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3159
3160         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
3161         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
3162         and NOP.
3163
3164 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
3165
3166         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
3167
3168 2018-09-26  Tom Tromey  <tom@tromey.com>
3169
3170         * valops.c (auto_abandon): Remove dead code.
3171
3172 2018-09-26  Tom Tromey  <tom@tromey.com>
3173
3174         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
3175
3176 2018-09-24  Tom Tromey  <tom@tromey.com>
3177
3178         * common/pathstuff.c (get_standard_cache_dir): Make
3179         "xdg_cache_home" and "home" const.
3180         * top.c (init_history): Make "tmpenv" const.
3181         * main.c (get_init_files): Make "homedir" const.
3182
3183 2018-09-23  Tom Tromey  <tom@tromey.com>
3184
3185         PR python/18852:
3186         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
3187
3188 2018-09-23  Tom Tromey  <tom@tromey.com>
3189
3190         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
3191         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
3192         * python/python-internal.h (gdbpy_handle_exception): Declare.
3193         * python/py-utils.c (gdbpy_handle_exception): New function.
3194
3195 2018-09-23  Tom Tromey  <tom@tromey.com>
3196
3197         PR python/17284:
3198         * python/py-type.c (typy_template_argument): Check for negative
3199         argument number.
3200
3201 2018-09-23  Tom Tromey  <tom@tromey.com>
3202
3203         PR python/14062:
3204         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
3205
3206 2018-09-23  Tom Tromey  <tom@tromey.com>
3207
3208         PR python/18170:
3209         * python/py-value.c (valpy_int): Allow conversion from pointer
3210         type.
3211
3212 2018-09-23  Tom Tromey  <tom@tromey.com>
3213
3214         PR python/20126:
3215         * python/py-value.c (valpy_int): Respect type sign.
3216
3217 2018-09-23  Tom Tromey  <tom@tromey.com>
3218
3219         PR python/18352;
3220         * python/py-value.c (valpy_float): Allow conversions from int or
3221         char.
3222         (valpy_int, valpy_long): Allow conversions from float.
3223
3224 2018-09-23  Tom Tromey  <tom@tromey.com>
3225
3226         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
3227         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
3228
3229 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3230
3231         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
3232         __sighndlr.
3233         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
3234
3235 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3236
3237         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3238         target_terminal::ours().
3239
3240 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3241
3242         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3243         of vl to ULONGEST.
3244
3245 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3246
3247         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3248         redundant condition.
3249
3250 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3251
3252         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3253
3254         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3255         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3256         * sol-thread.c (ps_pdmodel): Don't guard definition.
3257
3258         * procfs.c: Fix formatting.
3259
3260         * procfs.c (sysset_t_alloc): Remove.
3261         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3262         (procfs_debug_inferior): Likewise.
3263         (procfs_set_exec_trap): Likewise.
3264         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3265         (proc_set_traced_sysexit): Likewise.
3266
3267         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3268         (dead_procinfo): Likewise.
3269         (proc_warn): Likewise.
3270         (proc_error): Likewise.
3271         (proc_get_LDT_entry): Likewise.
3272         (do_attach): Likewise.
3273         (procfs_target::pid_to_str): Likewise.
3274         (iterate_over_mappings): Likewise.
3275
3276         * procfs.c (create_procinfo): Fix ARI warning.
3277         (proc_get_status): Likewise.
3278         (proc_stop_process): Likewise.
3279         (proc_run_process): Likewise.
3280         (proc_kill): Likewise.
3281         (proc_get_LDT_entry): Likewise.
3282         (procfs_find_LDT_entry): Likewise.
3283         (proc_update_threads): Likewise.
3284         (proc_iterate_over_threads): Likewise.
3285         (do_attach): Likewise.
3286         (procfs_xfer_memory): Likewise.
3287         (invalidate_cache): Likewise.
3288         (procfs_target::resume): Likewise.
3289         (procfs_init_inferior): Likewise.
3290         (procfs_set_exec_trap): Likewise.
3291         (procfs_target::thread_alive): Likewise.
3292         (procfs_target::pid_to_exec_file): Likewise.
3293         (iterate_over_mappings): Likewise.
3294         (procfs_target::make_corefile_notes): Likewise.
3295         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3296
3297         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3298         (procfs_find_LDT_entry): Likewise.
3299         * sol-thread.c (ps_lgetLDT): Likewise.
3300
3301 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3302
3303         PR tdep/17903
3304         * procfs.c (procfs_target): Declare pid_to_exec_file.
3305         (procfs_target::pid_to_exec_file): New.
3306
3307 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3308
3309         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3310         renaming.
3311         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3312         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3313
3314 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3315
3316         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3317         (supply_fpregset, fill_fpregset): Move ...
3318         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3319         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3320         Remove references to ioctl-based procfs.
3321         Include <sys/reg.h>.
3322         Remove PR_MODEL_NATIVE guards.
3323         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3324         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3325
3326 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3327
3328         PR gdb/20981:
3329         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3330         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3331         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3332
3333 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3334
3335         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3336         (fbsd_print_sockaddr_in6): Likewise.
3337
3338 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3339             Chris January  <chris.january@arm.com>
3340
3341         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3342         (evaluate_subexp_standard): Return a dummy type when
3343         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3344         OP_F77_UNDETERMINED_ARGLIST case.
3345         * expression.h (enum noside): Update comment.
3346
3347 2018-09-19  George Vasick <george.vasick@oracle.com>
3348
3349         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3350
3351 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3352             April Chin <april.chin@oracle.com>
3353             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3354
3355         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3356         uint_t lwpid_t.
3357         (create_procinfo): Print pids in /proc without leading zeros.
3358
3359 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3360
3361         * nios2-tdep.c (nios2_gcc_target_options): New.
3362         (nios2_gdb_arch_init): Install new hook.
3363
3364 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3365
3366         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3367         New file.
3368         * update-gnulib.sh: Apply patch.
3369         * configure: Re-generate.
3370
3371 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3372
3373         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3374         description.  Make "info proc" command descriptions more
3375         consistent.
3376
3377 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3378
3379         * NEWS: Mention 'info proc files' command.
3380
3381 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3382
3383         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3384         descriptors for IP_FILES and IP_ALL.
3385
3386 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3387
3388         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3389         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3390         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3391         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3392         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3393         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3394         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3395         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3396         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3397         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3398         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3399         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3400         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3401         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3402         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3403         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3404         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3405         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3406         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3407         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3408         (struct fbsd_sockaddr_un): New types.
3409         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3410         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3411         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3412         (fbsd_core_info_proc_files): New functions.
3413         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3414         IP_ALL.
3415         * fbsd-tdep.h (fbsd_info_proc_files_header)
3416         (fbsd_info_proc_files_entry): New.
3417
3418 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3419
3420         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3421         * infcmd.c (info_proc_cmd_files): New function.
3422         (_initialize_infcmd): Register 'info proc files' command.
3423
3424 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3425
3426         * gnulib/aclocal-m4-deps.mk: Re-generate.
3427         * gnulib/aclocal.m4: Re-generate.
3428         * gnulib/config.in: Re-generate.
3429         * gnulib/configure: Re-generate.
3430         * gnulib/import/Makefile.am: Re-generate.
3431         * gnulib/import/Makefile.in: Re-generate.
3432         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3433         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3434         * gnulib/import/arpa_inet.in.h: New file.
3435         * gnulib/import/inet_ntop.c: New file.
3436         * gnulib/import/m4/arpa_inet_h.m4: New file.
3437         * gnulib/import/m4/inet_ntop.m4: New file.
3438         * gnulib/import/m4/netinet_in_h.m4: New file.
3439         * gnulib/import/m4/socklen.m4: New file.
3440         * gnulib/import/m4/sockpfaf.m4: New file.
3441         * gnulib/import/m4/stdalign.m4: New file.
3442         * gnulib/import/m4/sys_uio_h.m4: New file.
3443         * gnulib/import/netinet_in.in.h: New file.
3444         * gnulib/import/stdalign.in.h: New file.
3445         * gnulib/import/sys_socket.c: New file.
3446         * gnulib/import/sys_socket.in.h: New file.
3447         * gnulib/import/sys_uio.in.h: New file.
3448         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3449         module.
3450
3451 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3452
3453         * gnulib/aclocal-m4-deps.mk: New file.
3454         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3455         deterministically.
3456
3457 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3458
3459         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3460         KVE_PATH.
3461
3462 2018-09-18  Tom Tromey  <tom@tromey.com>
3463
3464         * compile/compile-object-load.c (struct
3465         link_hash_table_cleanup_data): Add constructor and destructor.
3466         Use DISABLE_COPY_AND_ASSIGN.
3467         (~link_hash_table_cleanup_data): Rename from
3468         link_hash_table_free.  Now a destructor.
3469         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3470
3471 2018-09-18  Tom Tromey  <tom@tromey.com>
3472
3473         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3474         * compile/compile-object-load.c (struct munmap_list): Move to
3475         header file.
3476         (munmap_list::add): Rename from munmap_list_add; rewrite.
3477         (munmap_list::~munmap_list): Rename from munmap_list_free.
3478         (munmap_listp_free_cleanup): Remove.
3479         (compile_object_load): Update.
3480         * compile/compile-object-load.h (struct munmap_list): Move from
3481         compile-object-load.c.  Rewrite.
3482
3483 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3484
3485         * aarch64-tdep.c (pass_in_v): Use register size.
3486         (aarch64_extract_return_value): Likewise.
3487         (aarch64_store_return_value): Likewise.
3488
3489 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3490
3491         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3492         rlim_t.
3493
3494 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3495
3496         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3497         Fix short help line.
3498
3499 2018-09-17  Tom Tromey  <tom@tromey.com>
3500
3501         PR python/20445:
3502         * configure: Rebuild.
3503         * configure.ac: Conditionally use -DNDEBUG for Python.
3504
3505 2018-09-17  Tom Tromey  <tom@tromey.com>
3506
3507         * configure: Rebuild.
3508         * configure.ac: Use gmp as a library dependency when checking for
3509         mpfr.
3510
3511 2018-09-17  Pedro Alves  <palves@redhat.com>
3512
3513         * python/py-inferior.c (find_inferior_object): Delete.
3514
3515 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3516
3517         * compile/compile-cplus-types.c
3518         (compile_cplus_instance::enter_scope): Don't use new_scope after
3519         std::move.
3520
3521 2018-09-17  Tom Tromey  <tom@tromey.com>
3522
3523         * common/pathstuff.c (get_standard_cache_dir): Use
3524         ~/Library/Caches on macOS.
3525         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3526
3527 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3528
3529         PR python/23669
3530         * breakpoint.c (commands_cmd_element): New.
3531         (_initialize_breakpoint): Assign commands_cmd_element.
3532         * breakpoint.h (commands_cmd_element): New.
3533         * cli/cli-script.c (while_cmd_element, if_command,
3534         define_cmd_element): New.
3535         (command_name_equals): Remove.
3536         (process_next_line): Compare commands by pointer, not by name.
3537         (_initialize_cli_script): Assign the various cmd_list_element
3538         variables.
3539         * compile/compile.c (compile_cmd_element): New.
3540         (_initialize_compile): Assign compile_cmd_element.
3541         * compile/compile.h (compile_cmd_element): New.
3542         * guile/guile.c (guile_cmd_element): New.
3543         (install_gdb_commands): Assign guile_cmd_element.
3544         * guile/guile.h (guile_cmd_element): New.
3545         * python/python.c (python_cmd_element): New.
3546         (_initialize_python): Assign python_cmd_element.
3547         * python/python.h (python_cmd_element): New.
3548         * tracepoint.c (while_stepping_cmd_element): New.
3549         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3550         * tracepoint.h (while_stepping_cmd_element): New.
3551
3552 2018-09-17  Tom Tromey  <tom@tromey.com>
3553
3554         * infrun.c (save_infcall_suspend_state): Return
3555         infcall_suspend_state_up.
3556         (save_infcall_control_state): Return infcall_control_state_up.
3557         * inferior.h (save_infcall_suspend_state)
3558         (save_infcall_control_state): Declare later.  Return unique
3559         pointers.
3560
3561 2018-09-17  Tom Tromey  <tom@tromey.com>
3562
3563         * infrun.c (struct stop_context): Declare constructor,
3564         destructor, "changed" method.
3565         (stop_context::stop_context): Rename from save_stop_context.
3566         (stop_context::~stop_context): Rename from
3567         release_stop_context_cleanup.
3568         (normal_stop): Update.
3569         (stop_context::changed): Rename from stop_context_changed.  Return
3570         bool.
3571
3572 2018-09-17  Tom Tromey  <tom@tromey.com>
3573
3574         * inferior.h (struct infcall_suspend_state_deleter): New.
3575         (infcall_suspend_state_up): New typedef.
3576         (struct infcall_control_state_deleter): New.
3577         (infcall_control_state_up): New typedef.
3578         (make_cleanup_restore_infcall_suspend_state)
3579         (make_cleanup_restore_infcall_control_state): Don't declare.
3580         * infcall.c (call_function_by_hand_dummy): Update.
3581         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3582         (make_cleanup_restore_infcall_suspend_state): Remove.
3583         (do_restore_infcall_control_state_cleanup)
3584         (make_cleanup_restore_infcall_control_state): Remove.
3585
3586 2018-09-17  Tom Tromey  <tom@tromey.com>
3587
3588         * gdbthread.h (struct thread_control_state): Add initializer.
3589         (class thread_info) <control>: Remove initializer.
3590         * inferior.h (struct inferior_control_state): Add initializer.
3591         (class inferior) <control>: Remove initializer.
3592         (exit_inferior_1): Update.
3593         * infrun.c (struct infcall_control_state): Add constructors.
3594         (save_infcall_control_state): Use new.
3595         (restore_infcall_control_state, discard_infcall_control_state):
3596         Use delete.
3597
3598 2018-09-17  Tom Tromey  <tom@tromey.com>
3599
3600         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3601         unique_ptr.
3602         <siginfo_data>: Now a unique_xmalloc_ptr.
3603         (save_infcall_suspend_state, restore_infcall_suspend_state)
3604         (discard_infcall_suspend_state)
3605         (get_infcall_suspend_state_regcache): Update.
3606
3607 2018-09-17  Tom Tromey  <tom@tromey.com>
3608
3609         * gdbthread.h (struct thread_suspend_state): Add initializers.
3610         (class thread_info) <suspend>: Remove initializer.
3611         * infrun.c (struct infcall_suspend_state): Add initializers.
3612         (save_infcall_suspend_state): Use new.
3613         (discard_infcall_suspend_state): Use delete.
3614
3615 2018-09-16  Tom Tromey  <tom@tromey.com>
3616
3617         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3618         Remove.
3619         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3620         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3621         (py_varobj_iter_new): Likewise.
3622         (py_varobj_get_iterator): Use gdbpy_ref.
3623
3624 2018-09-16  Tom Tromey  <tom@tromey.com>
3625
3626         * python/py-threadevent.c (py_get_event_thread): Simplify.
3627         * python/py-inferior.c (infpy_thread_from_thread_handle):
3628         Return immediately after calling thread_to_thread_object.  Use
3629         Py_RETURN_NONE.
3630         (thread_to_thread_object): Set the exception on a NULL return.
3631
3632 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3633
3634         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3635
3636 2018-09-16  Tom Tromey  <tom@tromey.com>
3637
3638         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3639         Remove.
3640
3641 2018-09-16  Tom Tromey  <tom@tromey.com>
3642
3643         * python/python-internal.h (thread_to_thread_object): Change
3644         return type.
3645         * python/py-inferior.c (thread_to_thread_object): Return a new
3646         reference.
3647         (infpy_thread_from_thread_handle): Update.
3648         * python/py-infthread.c (gdbpy_selected_thread): Update.
3649         * python/py-stopevent.c (create_stop_event_object): Update.
3650         * python/py-threadevent.c (py_get_event_thread): Return a new
3651         reference.
3652         (py_get_event_thread): Update.
3653         * python/py-event.h (py_get_event_thread): Change return type.
3654         * python/py-continueevent.c (create_continue_event_object):
3655         Update.
3656
3657 2018-09-16  Tom Tromey  <tom@tromey.com>
3658
3659         * python/py-progspace.c (pspy_get_objfiles): Update.
3660         * python/python-internal.h (objfile_to_objfile_object): Change
3661         return type.
3662         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3663         Update.
3664         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3665         Update.
3666         * python/python.c (gdbpy_get_current_objfile): Update.
3667         (gdbpy_objfiles): Update.
3668         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3669         Update.
3670         (objfile_to_objfile_object): Return a new reference.
3671         * python/py-symtab.c (stpy_get_objfile): Update.
3672         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3673         Update.
3674
3675 2018-09-16  Tom Tromey  <tom@tromey.com>
3676
3677         * python/py-inferior.c (infpy_get_progspace): Update.
3678         * python/python-internal.h (pspace_to_pspace_object): Change
3679         return type.
3680         * python/py-newobjfileevent.c
3681         (create_clear_objfiles_event_object): Update.
3682         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3683         Update.
3684         * python/python.c (gdbpy_get_current_progspace): Update.
3685         (gdbpy_progspaces): Update.
3686         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3687         reference.
3688         * python/py-objfile.c (objfpy_get_progspace): Update.
3689         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3690         Update.
3691
3692 2018-09-16  Tom Tromey  <tom@tromey.com>
3693
3694         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3695         (solib_name, block_for_pc, find_pc_line): New functions.
3696         (execute_unwinders): Update.
3697         * python/py-block.c (gdbpy_block_for_pc): Remove.
3698         * python/py-inferior.c (infpy_get_progspace): New function.
3699         (inferior_object_getset) <progspace>: Add.
3700         * python/py-progspace.c (pspy_objfiles): Rewrite.
3701         (pspy_solib_name, pspy_block_for_pc)
3702         (pspy_find_pc_line, pspy_is_valid): New functions.
3703         (progspace_object_methods): Add entries for solib_name,
3704         block_for_pc, find_pc_line, is_valid.
3705         * python/python-internal.h (gdbpy_block_for_pc)
3706         (build_objfiles_list): Don't declare.
3707         * python/python.c: Don't include solib.h.
3708         (gdbpy_solib_name, gdbpy_find_pc_line)
3709         (gdbpy_get_current_progspace, build_objfiles_list)
3710         (gdbpy_objfiles): Remove.
3711         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3712         solib_name, find_pc_line>: Remove entries.
3713
3714 2018-09-16  Tom Tromey  <tom@tromey.com>
3715
3716         * top.c (new_ui_command): Use GNU style for metasyntactic
3717         variables.
3718         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3719         variables.
3720         * maint.c (maintenance_translate_address): Remove "<>" around
3721         text.
3722         * interps.c (interpreter_exec_cmd): Use GNU style for
3723         metasyntactic variables.
3724         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3725         metasyntactic variables.
3726         * tracepoint.c (tfind_range_command): Use GNU style for
3727         metasyntactic variables.
3728         (tfind_outside_command): Likewise.
3729         (_initialize_tracepoint): Likewise.
3730         * remote.c (extended_remote_target::create_inferior): Use GNU
3731         style for metasyntactic variables.
3732         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3733         metasyntactic variables.
3734         (adi_assign_command): Likewise.
3735
3736 2018-09-16  Tom Tromey  <tom@tromey.com>
3737
3738         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3739         metasyntactic variables.  Print message if no disassembler options
3740         are available.
3741
3742 2018-09-15  Tom Tromey  <tom@tromey.com>
3743
3744         * infcmd.c (get_inferior_args): Return const char *.
3745         * inferior.h (get_inferior_args): Return type now const.
3746         * linux-tdep.c (linux_fill_prpsinfo): Update.
3747         * procfs.c (procfs_target::make_corefile_notes): Update.
3748
3749 2018-09-07  Tom Tromey  <tom@tromey.com>
3750
3751         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3752         inside the TRY.
3753
3754 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3755
3756         * nios2-tdep.c (nios2_type_align): New.
3757         (nios2_gdb_arch_init): Install type_align hook.
3758
3759 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3760
3761         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3762         type that is neither object file owned, nor gdbarch owned.
3763         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3764         gdbarch is non-NULL.
3765         (alloc_type_instance): Allocate non-objfile owned types on the
3766         gdbarch obstack.
3767         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3768         using TYPE_ALLOC to ensure memory is allocated on the correct
3769         obstack.
3770         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3771         obstack, or the gdbarch obstack.
3772         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3773
3774 2018-09-14  Tom Tromey  <tom@tromey.com>
3775
3776         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3777         block.
3778
3779 2018-09-14  Tom Tromey  <tom@tromey.com>
3780
3781         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3782
3783 2018-09-13  Tom Tromey  <tom@tromey.com>
3784
3785         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3786         static.
3787
3788 2018-09-13  Tom Tromey  <tom@tromey.com>
3789
3790         * exec.c (try_open_exec_file): Use std::string.
3791
3792 2018-09-13  Tom Tromey  <tom@tromey.com>
3793
3794         * utils.h (gdb_bfd_errmsg): Return std::string.
3795         * exec.c (exec_file_attach): Update.
3796         * compile/compile-object-load.c (compile_object_load): Update.
3797         * utils.c (gdb_bfd_errmsg): Return std::string.
3798
3799 2018-09-13  Tom Tromey  <tom@tromey.com>
3800
3801         * procfs.c (struct procinfo_deleter): New.
3802         (procinfo_up): New typedef.
3803         (do_destroy_procinfo_cleanup): Remove.
3804         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3805
3806 2018-09-13  Tom Tromey  <tom@tromey.com>
3807
3808         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3809
3810 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3811 2018-09-13  Tom Tromey  <tom@tromey.com>
3812
3813         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3814         (pspy_get_objfiles): New function.
3815         (progspace_object_methods): New.
3816         (pspace_object_type): Add tp_methods callback.
3817         * python/python-internal.h (build_objfiles_list): New
3818         declaration.
3819         * python/python.c (build_objfiles_list): New function.
3820         (gdbpy_objfiles): Implement using build_objfiles_list.
3821         * NEWS: Mention the Progspace.objfiles method.
3822
3823 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3824
3825         * python/py-inferior.c (infpy_get_progspace): New function.
3826         (inferior_object_getset): Add progspace property.
3827         * NEWS: Mention the new property.
3828
3829 2018-09-13  Tom Tromey  <tom@tromey.com>
3830
3831         PR rust/23650:
3832         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3833
3834 2018-09-13  Tom Tromey  <tom@tromey.com>
3835
3836         PR rust/23626:
3837         * rust-lang.c (rust_enum_variant): Now static.
3838         (rust_empty_enum_p): New function.
3839         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3840         Handle empty enum.
3841
3842 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3843
3844         * python/py-inferior.c (infpy_repr): New.
3845         (inferior_object_type): Register infpy_repr.
3846         * python/py-objfile.c (objfpy_repr): New.
3847         (objfile_object_type): Register objfpy_repr.
3848
3849 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3850
3851         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3852
3853 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3854
3855         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3856         typo.
3857
3858 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3859
3860         * common/common-utils.c: Don't include '<sys/stat.h>'.
3861         (is_regular_file): Move to...
3862         * common/filestuff.c (is_regular_file): ... here.
3863         * common/common-utils.h (is_regular_file): Move to...
3864         * common/filestuff.h (is_regular_file): ... here.
3865
3866 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3867
3868         * skip.c (debug_skip): New variable.
3869         (skiplist_entry::do_skip_file_p): Add debug output.
3870         (skiplist_entry::do_skip_gfile_p): Likewise.
3871         (skiplist_entry::skip_function_p): Likewise.
3872         (_initialize_step_skip): Create debug command.
3873         * NEWS: Mention set/show debug skip.
3874
3875 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3876
3877         * darwin-nat.c (should_disable_startup_with_shell):
3878         New function.
3879         (darwin_nat_target::create_inferior): Add call.
3880
3881 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3882
3883         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3884         inf_port, msg_state>: Initialize.
3885         (struct darwin_thread_info) <signaled, single_step>: Change
3886         type and initialize.
3887         (struct darwin_thread_info) <event>: Initialize.
3888
3889 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3890
3891         PR gdb/23555
3892         PR gdb/23558
3893         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3894         guesses.
3895
3896 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3897
3898         Revert:
3899         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3900
3901         PR gdb/23555
3902         PR gdb/23558
3903         * gnulib/aclocal.m4: Regenerate.
3904         * gnulib/config.in: Regenerate.
3905         * gnulib/configure: Regenerate.
3906         * gnulib/import/Makefile.am: Update.
3907         * gnulib/import/Makefile.in: Update.
3908         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3909         * gnulib/import/_Noreturn.h: ... this.
3910         * gnulib/import/alloca.in.h: Update.
3911         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3912         * gnulib/import/arg-nonnull.h: ... this.
3913         * gnulib/import/assure.h: Update.
3914         * gnulib/import/at-func.c: Update.
3915         * gnulib/import/basename-lgpl.c: Update.
3916         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3917         * gnulib/import/c++defs.h: ... this.
3918         * gnulib/import/canonicalize-lgpl.c: Update.
3919         * gnulib/import/cdefs.h: Update.
3920         * gnulib/import/chdir-long.c: Update.
3921         * gnulib/import/chdir-long.h: Update.
3922         * gnulib/import/cloexec.c: Update.
3923         * gnulib/import/cloexec.h: Update.
3924         * gnulib/import/close.c: Update.
3925         * gnulib/import/closedir.c: Update.
3926         * gnulib/import/config.charset: Update.
3927         * gnulib/import/dirent-private.h: Update.
3928         * gnulib/import/dirent.in.h: Update.
3929         * gnulib/import/dirfd.c: Update.
3930         * gnulib/import/dirname-lgpl.c: Update.
3931         * gnulib/import/dirname.h: Update.
3932         * gnulib/import/dosname.h: Update.
3933         * gnulib/import/dup-safer-flag.c: Update.
3934         * gnulib/import/dup-safer.c: Update.
3935         * gnulib/import/dup.c: Update.
3936         * gnulib/import/dup2.c: Update.
3937         * gnulib/import/errno.in.h: Update.
3938         * gnulib/import/error.c: Update.
3939         * gnulib/import/error.h: Update.
3940         * gnulib/import/exitfail.c: Update.
3941         * gnulib/import/exitfail.h: Update.
3942         * gnulib/import/extra/update-copyright: Update.
3943         * gnulib/import/fchdir.c: Update.
3944         * gnulib/import/fcntl.c: Update.
3945         * gnulib/import/fcntl.in.h: Update.
3946         * gnulib/import/fd-hook.c: Update.
3947         * gnulib/import/fd-hook.h: Update.
3948         * gnulib/import/fd-safer-flag.c: Update.
3949         * gnulib/import/fd-safer.c: Update.
3950         * gnulib/import/fdopendir.c: Update.
3951         * gnulib/import/filename.h: Update.
3952         * gnulib/import/filenamecat-lgpl.c: Update.
3953         * gnulib/import/filenamecat.h: Update.
3954         * gnulib/import/flexmember.h: Update.
3955         * gnulib/import/float+.h: Update.
3956         * gnulib/import/float.c: Update.
3957         * gnulib/import/float.in.h: Update.
3958         * gnulib/import/fnmatch.c: Update.
3959         * gnulib/import/fnmatch.in.h: Update.
3960         * gnulib/import/fnmatch_loop.c: Update.
3961         * gnulib/import/fpucw.h: Update.
3962         * gnulib/import/frexp.c: Update.
3963         * gnulib/import/frexpl.c: Update.
3964         * gnulib/import/fstat.c: Update.
3965         * gnulib/import/fstatat.c: Update.
3966         * gnulib/import/getcwd-lgpl.c: Update.
3967         * gnulib/import/getcwd.c: Update.
3968         * gnulib/import/getdtablesize.c: Update.
3969         * gnulib/import/getlogin_r.c: Update.
3970         * gnulib/import/getprogname.c: Update.
3971         * gnulib/import/getprogname.h: Update.
3972         * gnulib/import/gettext.h: Update.
3973         * gnulib/import/gettimeofday.c: Update.
3974         * gnulib/import/glob-libc.h: Update.
3975         * gnulib/import/glob.c: Update.
3976         * gnulib/import/glob.in.h: Update.
3977         * gnulib/import/glob_internal.h: Update.
3978         * gnulib/import/glob_pattern_p.c: Update.
3979         * gnulib/import/globfree.c: Update.
3980         * gnulib/import/hard-locale.c: Update.
3981         * gnulib/import/hard-locale.h: Update.
3982         * gnulib/import/intprops.h: Update.
3983         * gnulib/import/inttypes.in.h: Update.
3984         * gnulib/import/isnan.c: Update.
3985         * gnulib/import/isnand-nolibm.h: Update.
3986         * gnulib/import/isnand.c: Update.
3987         * gnulib/import/isnanl-nolibm.h: Update.
3988         * gnulib/import/isnanl.c: Update.
3989         * gnulib/import/itold.c: Update.
3990         * gnulib/import/libc-config.h: Update.
3991         * gnulib/import/limits.in.h: Update.
3992         * gnulib/import/localcharset.c: Update.
3993         * gnulib/import/localcharset.h: Update.
3994         * gnulib/import/localtime-buffer.c: Update.
3995         * gnulib/import/localtime-buffer.h: Update.
3996         * gnulib/import/lstat.c: Update.
3997         * gnulib/import/m4/00gnulib.m4: Update.
3998         * gnulib/import/m4/__inline.m4: Update.
3999         * gnulib/import/m4/absolute-header.m4: Update.
4000         * gnulib/import/m4/alloca.m4: Update.
4001         * gnulib/import/m4/builtin-expect.m4: Update.
4002         * gnulib/import/m4/canonicalize.m4: Update.
4003         * gnulib/import/m4/chdir-long.m4: Update.
4004         * gnulib/import/m4/close.m4: Update.
4005         * gnulib/import/m4/closedir.m4: Update.
4006         * gnulib/import/m4/configmake.m4: Update.
4007         * gnulib/import/m4/d-ino.m4: Update.
4008         * gnulib/import/m4/d-type.m4: Update.
4009         * gnulib/import/m4/dirent_h.m4: Update.
4010         * gnulib/import/m4/dirfd.m4: Update.
4011         * gnulib/import/m4/dirname.m4: Update.
4012         * gnulib/import/m4/double-slash-root.m4: Update.
4013         * gnulib/import/m4/dup.m4: Update.
4014         * gnulib/import/m4/dup2.m4: Update.
4015         * gnulib/import/m4/eealloc.m4: Update.
4016         * gnulib/import/m4/environ.m4: Update.
4017         * gnulib/import/m4/errno_h.m4: Update.
4018         * gnulib/import/m4/error.m4: Update.
4019         * gnulib/import/m4/exponentd.m4: Update.
4020         * gnulib/import/m4/exponentl.m4: Update.
4021         * gnulib/import/m4/extensions.m4: Update.
4022         * gnulib/import/m4/extern-inline.m4: Update.
4023         * gnulib/import/m4/fchdir.m4: Update.
4024         * gnulib/import/m4/fcntl-o.m4: Update.
4025         * gnulib/import/m4/fcntl.m4: Update.
4026         * gnulib/import/m4/fcntl_h.m4: Update.
4027         * gnulib/import/m4/fdopendir.m4: Update.
4028         * gnulib/import/m4/filenamecat.m4: Update.
4029         * gnulib/import/m4/flexmember.m4: Update.
4030         * gnulib/import/m4/float_h.m4: Update.
4031         * gnulib/import/m4/fnmatch.m4: Update.
4032         * gnulib/import/m4/fnmatch_h.m4: Update.
4033         * gnulib/import/m4/fpieee.m4: Update.
4034         * gnulib/import/m4/frexp.m4: Update.
4035         * gnulib/import/m4/frexpl.m4: Update.
4036         * gnulib/import/m4/fstat.m4: Update.
4037         * gnulib/import/m4/fstatat.m4: Update.
4038         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4039         * gnulib/import/m4/getcwd-path-max.m4: Update.
4040         * gnulib/import/m4/getcwd.m4: Update.
4041         * gnulib/import/m4/getdtablesize.m4: Update.
4042         * gnulib/import/m4/getlogin.m4: Update.
4043         * gnulib/import/m4/getlogin_r.m4: Update.
4044         * gnulib/import/m4/getpagesize.m4: Update.
4045         * gnulib/import/m4/getprogname.m4: Update.
4046         * gnulib/import/m4/gettimeofday.m4: Update.
4047         * gnulib/import/m4/glibc21.m4: Update.
4048         * gnulib/import/m4/glob.m4: Update.
4049         * gnulib/import/m4/glob_h.m4: Update.
4050         * gnulib/import/m4/gnulib-cache.m4: Update.
4051         * gnulib/import/m4/gnulib-common.m4: Update.
4052         * gnulib/import/m4/gnulib-comp.m4: Update.
4053         * gnulib/import/m4/gnulib-tool.m4: Update.
4054         * gnulib/import/m4/hard-locale.m4: Update.
4055         * gnulib/import/m4/include_next.m4: Update.
4056         * gnulib/import/m4/inttypes-pri.m4: Update.
4057         * gnulib/import/m4/inttypes.m4: Update.
4058         * gnulib/import/m4/isnand.m4: Update.
4059         * gnulib/import/m4/isnanl.m4: Update.
4060         * gnulib/import/m4/largefile.m4: Update.
4061         * gnulib/import/m4/limits-h.m4: Update.
4062         * gnulib/import/m4/localcharset.m4: Update.
4063         * gnulib/import/m4/locale-fr.m4: Update.
4064         * gnulib/import/m4/locale-ja.m4: Update.
4065         * gnulib/import/m4/locale-zh.m4: Update.
4066         * gnulib/import/m4/localtime-buffer.m4: Update.
4067         * gnulib/import/m4/longlong.m4: Update.
4068         * gnulib/import/m4/lstat.m4: Update.
4069         * gnulib/import/m4/malloc.m4: Update.
4070         * gnulib/import/m4/malloca.m4: Update.
4071         * gnulib/import/m4/math_h.m4: Update.
4072         * gnulib/import/m4/mbrtowc.m4: Update.
4073         * gnulib/import/m4/mbsinit.m4: Update.
4074         * gnulib/import/m4/mbsrtowcs.m4: Update.
4075         * gnulib/import/m4/mbstate_t.m4: Update.
4076         * gnulib/import/m4/memchr.m4: Update.
4077         * gnulib/import/m4/memmem.m4: Update.
4078         * gnulib/import/m4/mempcpy.m4: Update.
4079         * gnulib/import/m4/memrchr.m4: Update.
4080         * gnulib/import/m4/mkdir.m4: Update.
4081         * gnulib/import/m4/mkstemp.m4: Update.
4082         * gnulib/import/m4/mmap-anon.m4: Update.
4083         * gnulib/import/m4/mode_t.m4: Update.
4084         * gnulib/import/m4/msvc-inval.m4: Update.
4085         * gnulib/import/m4/msvc-nothrow.m4: Update.
4086         * gnulib/import/m4/multiarch.m4: Update.
4087         * gnulib/import/m4/nocrash.m4: Update.
4088         * gnulib/import/m4/off_t.m4: Update.
4089         * gnulib/import/m4/onceonly.m4: Update.
4090         * gnulib/import/m4/open-cloexec.m4: Update.
4091         * gnulib/import/m4/open.m4: Update.
4092         * gnulib/import/m4/openat.m4: Update.
4093         * gnulib/import/m4/opendir.m4: Update.
4094         * gnulib/import/m4/pathmax.m4: Update.
4095         * gnulib/import/m4/rawmemchr.m4: Update.
4096         * gnulib/import/m4/readdir.m4: Update.
4097         * gnulib/import/m4/readlink.m4: Update.
4098         * gnulib/import/m4/realloc.m4: Update.
4099         * gnulib/import/m4/rename.m4: Update.
4100         * gnulib/import/m4/rewinddir.m4: Update.
4101         * gnulib/import/m4/rmdir.m4: Update.
4102         * gnulib/import/m4/save-cwd.m4: Update.
4103         * gnulib/import/m4/secure_getenv.m4: Update.
4104         * gnulib/import/m4/setenv.m4: Update.
4105         * gnulib/import/m4/signal_h.m4: Update.
4106         * gnulib/import/m4/ssize_t.m4: Update.
4107         * gnulib/import/m4/stat-time.m4: Update.
4108         * gnulib/import/m4/stat.m4: Update.
4109         * gnulib/import/m4/std-gnu11.m4: Update.
4110         * gnulib/import/m4/stdbool.m4: Update.
4111         * gnulib/import/m4/stddef_h.m4: Update.
4112         * gnulib/import/m4/stdint.m4: Update.
4113         * gnulib/import/m4/stdio_h.m4: Update.
4114         * gnulib/import/m4/stdlib_h.m4: Update.
4115         * gnulib/import/m4/strchrnul.m4: Update.
4116         * gnulib/import/m4/strdup.m4: Update.
4117         * gnulib/import/m4/strerror.m4: Update.
4118         * gnulib/import/m4/string_h.m4: Update.
4119         * gnulib/import/m4/strstr.m4: Update.
4120         * gnulib/import/m4/strtok_r.m4: Update.
4121         * gnulib/import/m4/sys_socket_h.m4: Update.
4122         * gnulib/import/m4/sys_stat_h.m4: Update.
4123         * gnulib/import/m4/sys_time_h.m4: Update.
4124         * gnulib/import/m4/sys_types_h.m4: Update.
4125         * gnulib/import/m4/tempname.m4: Update.
4126         * gnulib/import/m4/time_h.m4: Update.
4127         * gnulib/import/m4/unistd-safer.m4: Update.
4128         * gnulib/import/m4/unistd_h.m4: Update.
4129         * gnulib/import/m4/warn-on-use.m4: Update.
4130         * gnulib/import/m4/wchar_h.m4: Update.
4131         * gnulib/import/m4/wchar_t.m4: Update.
4132         * gnulib/import/m4/wctype_h.m4: Update.
4133         * gnulib/import/m4/wint_t.m4: Update.
4134         * gnulib/import/malloc.c: Update.
4135         * gnulib/import/malloc/scratch_buffer.h: Update.
4136         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4137         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4138         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4139         * gnulib/import/malloca.c: Update.
4140         * gnulib/import/malloca.h: Update.
4141         * gnulib/import/malloca.valgrind: Update.
4142         * gnulib/import/math.in.h: Update.
4143         * gnulib/import/mbrtowc.c: Update.
4144         * gnulib/import/mbsinit.c: Update.
4145         * gnulib/import/mbsrtowcs-impl.h: Update.
4146         * gnulib/import/mbsrtowcs-state.c: Update.
4147         * gnulib/import/mbsrtowcs.c: Update.
4148         * gnulib/import/memchr.c: Update.
4149         * gnulib/import/memmem.c: Update.
4150         * gnulib/import/mempcpy.c: Update.
4151         * gnulib/import/memrchr.c: Update.
4152         * gnulib/import/mkdir.c: Update.
4153         * gnulib/import/mkstemp.c: Update.
4154         * gnulib/import/msvc-inval.c: Update.
4155         * gnulib/import/msvc-inval.h: Update.
4156         * gnulib/import/msvc-nothrow.c: Update.
4157         * gnulib/import/msvc-nothrow.h: Update.
4158         * gnulib/import/open.c: Update.
4159         * gnulib/import/openat-die.c: Update.
4160         * gnulib/import/openat-priv.h: Update.
4161         * gnulib/import/openat-proc.c: Update.
4162         * gnulib/import/openat.c: Update.
4163         * gnulib/import/openat.h: Update.
4164         * gnulib/import/opendir.c: Update.
4165         * gnulib/import/pathmax.h: Update.
4166         * gnulib/import/pipe-safer.c: Update.
4167         * gnulib/import/rawmemchr.c: Update.
4168         * gnulib/import/readdir.c: Update.
4169         * gnulib/import/readlink.c: Update.
4170         * gnulib/import/realloc.c: Update.
4171         * gnulib/import/ref-add.sin: Update.
4172         * gnulib/import/ref-del.sin: Update.
4173         * gnulib/import/rename.c: Update.
4174         * gnulib/import/rewinddir.c: Update.
4175         * gnulib/import/rmdir.c: Update.
4176         * gnulib/import/same-inode.h: Update.
4177         * gnulib/import/save-cwd.c: Update.
4178         * gnulib/import/save-cwd.h: Update.
4179         * gnulib/import/scratch_buffer.h: Update.
4180         * gnulib/import/secure_getenv.c: Update.
4181         * gnulib/import/setenv.c: Update.
4182         * gnulib/import/signal.in.h: Update.
4183         * gnulib/import/stat-time.c: Update.
4184         * gnulib/import/stat-time.h: Update.
4185         * gnulib/import/stat-w32.c: Update.
4186         * gnulib/import/stat-w32.h: Update.
4187         * gnulib/import/stat.c: Update.
4188         * gnulib/import/stdbool.in.h: Update.
4189         * gnulib/import/stddef.in.h: Update.
4190         * gnulib/import/stdint.in.h: Update.
4191         * gnulib/import/stdio.in.h: Update.
4192         * gnulib/import/stdlib.in.h: Update.
4193         * gnulib/import/str-two-way.h: Update.
4194         * gnulib/import/strchrnul.c: Update.
4195         * gnulib/import/strdup.c: Update.
4196         * gnulib/import/streq.h: Update.
4197         * gnulib/import/strerror-override.c: Update.
4198         * gnulib/import/strerror-override.h: Update.
4199         * gnulib/import/strerror.c: Update.
4200         * gnulib/import/string.in.h: Update.
4201         * gnulib/import/stripslash.c: Update.
4202         * gnulib/import/strnlen1.c: Update.
4203         * gnulib/import/strnlen1.h: Update.
4204         * gnulib/import/strstr.c: Update.
4205         * gnulib/import/strtok_r.c: Update.
4206         * gnulib/import/sys_stat.in.h: Update.
4207         * gnulib/import/sys_time.in.h: Update.
4208         * gnulib/import/sys_types.in.h: Update.
4209         * gnulib/import/tempname.c: Update.
4210         * gnulib/import/tempname.h: Update.
4211         * gnulib/import/time.in.h: Update.
4212         * gnulib/import/unistd--.h: Update.
4213         * gnulib/import/unistd-safer.h: Update.
4214         * gnulib/import/unistd.in.h: Update.
4215         * gnulib/import/unsetenv.c: Update.
4216         * gnulib/import/verify.h: Update.
4217         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4218         * gnulib/import/wchar.in.h: Update.
4219         * gnulib/import/wctype.in.h: Update.
4220         * gnulib/import/xalloc-oversized.h: Update.
4221         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4222         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4223
4224 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
4225
4226         * record-btrace.c (get_thread_current_frame): Remove
4227         old_inferior_ptid.
4228
4229 2018-09-10  Jerome Guitton  <guitton@adacore.com>
4230
4231         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
4232         with check_tag to 1 if and only if the type is tagged and the
4233         component being searched cannot been found in the current
4234         view. Otherwise, always call ada_to_fixed_type with
4235         check_tag to 0.
4236
4237 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4238
4239         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4240         declaration.
4241         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4242         * ada-varobj.c (ada_varobj_get_number_of_children,
4243         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4244
4245 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4246
4247         * ada-valprint.c (ada_value_print): Use type instead of
4248         enclosing type.
4249
4250 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4251
4252         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4253         an array of access to unconstrained array.
4254
4255 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4256
4257         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4258         (ada_check_typedef): Use it.
4259
4260 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4261
4262         * ada-varobj.c (ada_varobj_describe_struct_child)
4263         (ada_varobj_describe_child): Handle union case like struct one.
4264
4265 2018-09-10  Tom Tromey  <tom@tromey.com>
4266
4267         PR python/18380:
4268         * python/python.c (_initialize_python): Make example in "python"
4269         help work in Python 3.
4270
4271 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4272
4273         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4274         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4275         $(EXEEXT) to the script, as it is not a program.
4276
4277 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4278
4279         * python/py-prettyprint.c (pretty_print_one_value): Return
4280         gdbpy_ref<>.
4281         (print_string_repr): Adjust.
4282         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4283         * python/python-internal.h (apply_varobj_pretty_printer): Return
4284         gdbpy_ref<>.
4285         * varobj.c (varobj_value_get_print_value): Adjust.
4286
4287 2018-09-08  Tom Tromey  <tom@tromey.com>
4288
4289         PR python/16047:
4290         * python/py-prettyprint.c (pretty_print_one_value): Check for
4291         to_string method.
4292
4293 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4294
4295         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4296         replace_operator_with_call.
4297
4298 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4299
4300         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4301
4302 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4303
4304         * ada-typeprint.c (print_range): Print the bounds using TYPE
4305         rather than its TYPE_TARGET_TYPE.
4306
4307 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4308
4309         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4310         call to ada_to_fixed_value_create.
4311
4312 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4313
4314         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4315
4316 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4317
4318         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4319         by calls to error.
4320
4321 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4322
4323         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4324         Move update of loop variable "fi".
4325
4326 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4327
4328         * ada-lang.c (value_assign_to_component): In the case of
4329         big-endian targets, extract the bits of the given VAL
4330         using an src_offset of zero if container is not a scalar.
4331
4332 2018-09-06  Simon Ser  <contact@emersion.fr>
4333
4334         PR gdb/23105
4335         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4336         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4337         * fbsd-tdep.c (fbsd_make_note_desc): New.
4338         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4339         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4340         * target.h (enum target_object) Add FreeBSD-specific
4341         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4342
4343 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4344
4345         * compile/compile-c.h (generate_c_for_variable_locations):
4346         Change reference to pointer.
4347         * compile/compile-c-support.c (compile_program) <compute>:
4348         Likewise.
4349         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4350         (generate_c_for_for_one_variable): Likewise
4351         (generate_c_for_variable_locations): Likewise
4352         * compile/compile-c-types.c (compile_c_instance::convert_type):
4353         Likewise
4354         * compile/compile-cplus-symbols.c (convert_one_symbol):
4355         std::move the scope passed to enter_scope.
4356         * compile/compile-cplus-types.c
4357         (compile_cplus_instance::enter_scope): Make parameter
4358         rvalue-reference.
4359         (compile_cplus_instance::new_scope): Change reference to
4360         pointer.
4361         (compile_cplus_instance::convert_type): Likewise
4362         (compile_cplus_convert_typedef): std::move the scope passed to
4363         enter_scope.
4364         (compile_cplus_convert_struct_or_union): Likewise.
4365         (compile_cplus_convert_enum): Likewise.
4366         (compile_cplus_convert_namespace): Likewise.
4367         * compile/compile-cplus.h (compile_cplus_instance)
4368         <enter_scope>: Make parameter rvalue-reference.
4369         * compile/compile-internal.h (compile_instance)
4370         <get_cached_type>: Likewise
4371         * compile/compile-loc2c.c (push): Likewise
4372         (pushf): Likewise
4373         (unary): Likewise
4374         (binary): Likewise
4375         (print_label): Likewise
4376         (pushf_register_address): Likewise
4377         (pushf_register): Likewise
4378         (do_compile_dwarf_expr_to_c): Likewise
4379         (compile_dwarf_expr_to_c): Likewise
4380         (compile_dwarf_bounds_to_c): Likewise
4381         * compile/compile.c (compile_instance::get_cached_type):
4382         Likewise
4383         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4384         (compile_dwarf_bounds_to_c): Likewise
4385         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4386         (dwarf2_compile_property_to_c): Likewise
4387         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4388         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4389         Likewise
4390
4391 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4392
4393         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4394         * tui/tui-data.c (init_content_element): Don't initialize it.
4395
4396 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4397
4398         * tui/tui-data.h (struct tui_win_info)
4399         <detail::opaque>: Remove.
4400         * tui/tui-data.c (init_win_info): Remove assignment.
4401
4402 2018-09-05  Tom Tromey  <tom@tromey.com>
4403
4404         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4405         -Wformat-nonliteral.
4406         * target-float.c (host_float_ops<T>::to_string)
4407         (host_float_ops<T>::from_string): Use
4408         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4409         * configure: Rebuild.
4410
4411 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4412
4413         * printcmd.c (printf_c_string): Use
4414         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4415         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4416
4417 2018-09-05  Tom Tromey  <tom@tromey.com>
4418
4419         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4420
4421 2018-09-05  Tom de Vries  <tdevries@suse.de>
4422
4423         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4424         with resolve_abstract_p == true.
4425         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4426         defaulting to false. Propagate resolve_abstract_p to
4427         dwarf2_fetch_die_loc_sect_off.
4428         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4429         parameter, defaulting to false.
4430         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4431         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4432         parameter.
4433         * dwarf2read.h (struct die_info): Forward-declare.
4434         (die_info_ptr): New typedef.
4435         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4436
4437 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4438
4439         GDB 8.2 released.
4440
4441 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4442             Pedro Alves  <palves@redhat.com>
4443
4444         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4445         "aclocal-m4-deps.mk".  Include file here.
4446         $(srcdir)/aclocal.m4: Add "configure.ac".
4447         * gnulib/aclocal-m4-deps.mk: New file.
4448         * gnulib/update-gnulib.sh: Automatically update
4449         "aclocal-m4-deps.mk".
4450
4451 2018-09-04  Tom Tromey  <tom@tromey.com>
4452
4453         * configure: Rebuild.
4454         * configure.ac: Remove multi-ice code.
4455
4456 2018-09-04  Tom Tromey  <tom@tromey.com>
4457
4458         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4459         (ada-exp.o): Update.
4460
4461 2018-09-04  Tom Tromey  <tom@tromey.com>
4462
4463         * Makefile.in (printcmd.o, target-float.o): Remove.
4464         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4465
4466 2018-09-04  Tom Tromey  <tom@tromey.com>
4467
4468         * gnulib/Makefile.in: Remove obsolete comment.
4469         * Makefile.in: Remove obsolete comment.
4470
4471 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4472
4473         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4474         line with '+'.
4475
4476 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4477
4478         * riscv-tdep.c: Add 'prologue-value.h' include.
4479         (struct riscv_unwind_cache): New struct.
4480         (riscv_debug_unwinder): New global.
4481         (riscv_scan_prologue): Update arguments, capture register details
4482         from prologue scan.
4483         (riscv_skip_prologue): Reformat arguments line, move end of
4484         prologue calculation into riscv_scan_prologue.
4485         (riscv_frame_cache): Update return type, create
4486         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4487         details.
4488         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4489         (riscv_frame_prev_register): Use the trad_frame within the
4490         riscv_unwind_cache.
4491         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4492         flag.
4493
4494 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4495
4496         * trad-frame.h (trad_frame_set_realreg): Declare.
4497         (trad_frame_set_addr): Declare.
4498         * trad-frame.c (trad_frame_set_realreg): Define new function.
4499         (trad_frame_set_addr): Define new function.
4500         (trad_frame_set_reg_realreg): Use new function.
4501         (trad_frame_set_reg_addr): Use new function.
4502
4503 2018-09-01  Keith Seitz  <keiths@redhat.com>
4504
4505         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4506         pulongest instead of "%lld".
4507         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4508         ATTRIBUTE_UNUSED.
4509
4510 2018-08-31  Tom Tromey  <tom@tromey.com>
4511
4512         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4513         variant part type.
4514
4515 2018-08-31  Pedro Alves  <palves@redhat.com>
4516
4517         * gdbarch.h: Regenerate.
4518
4519 2018-08-31  Pedro Alves  <palves@redhat.com>
4520
4521         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4522         * target.h (Hardware watchpoint interfaces): Describe
4523         continuable/steppable/non-steppable watchpoints.
4524         * gdbarch.h, gdbarch.c: Regenerate.
4525
4526 2018-08-31  Pedro Alves  <palves@redhat.com>
4527
4528         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4529         Delete.
4530         * s390-linux-nat.c
4531         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4532         * target.h (target_ops::have_continuable_watchpoint): Delete.
4533         (target_have_continuable_watchpoint): Delete.
4534         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4535         * target-delegates.c: Regenerate.
4536
4537 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4538
4539         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4540         the files present in "gnulib/import/m4/".
4541
4542 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4543
4544         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4545         c.sw, c.swsp, and c.sdsp.
4546
4547 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4548
4549         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4550         (riscv_read_misa_reg): Don't cache value read into inferior data.
4551         (riscv_new_inferior_data): Delete.
4552         (riscv_inferior_data_cleanup): Delete.
4553         (riscv_inferior_data): Delete.
4554         (riscv_invalidate_inferior_data): Delete.
4555         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4556
4557 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4558
4559         * compile/compile-cplus-types.c
4560         (compile_cplus_instance::leave_scope): Take the address of scope
4561         object.
4562         (compile_cplus_instance::convert_qualified_base): Compare quals
4563         to 0.
4564
4565 2018-08-30  Keith Seitz  <keiths@redhat.com>
4566
4567         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4568         Use "%s" and host_address_to_string instead of "%p" in printf.
4569
4570 2018-08-29  Keith Seitz  <keiths@redhat.com>
4571
4572         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4573         and compile-cplus-types.c.
4574         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4575         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4576         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4577         Declare.
4578         * compile/compile-c-support.c: Include compile-cplus.h.
4579         (load_libcompile): Templatize.
4580         (get_compile_context): "New" function.
4581         (c_get_compile_context): Use get_compile_context.
4582         (cplus_get_compile_context): New function.
4583         (cplus_push_user_expression, cplus_pop_user_expression)
4584         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4585         (cplus_compute_program): Define new structs/functions.
4586         * compile/compile-cplus-symmbols.c: New file.
4587         * compile/compile-cplus-types.c: New file.
4588         * compile/compile-cplus.h: New file.
4589         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4590         Declare.
4591         * compile/compile-object-load.c (get_out_value_type): Use
4592         strncmp_iw when comparing symbol names.
4593         (compile_object_load): Add mst_bss and mst_data.
4594         * compile/compile.c (_initialize_compile): Remove
4595         -Wno-implicit-function-declaration from `compile_args'.
4596         * compile/gcc-cp-plugin.h: New file.
4597         * NEWS: Mention C++ compile support and new debug options.
4598
4599 2018-08-29  Keith Seitz  <keiths@redhat.com>
4600
4601         * linespec.c (collect_info::add_symbol): Make virtual.
4602         (struct symbol_searcher_collect_info): New struct.
4603         (symbol_searcher::find_all_symbols): New method.
4604         * symtab.h (class symbol_searcher): New class.
4605
4606 2018-08-29  Keith Seitz  <keiths@redhat.com>
4607
4608         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4609         Change to vector of block_symbol.  Update all users.
4610         (struct collect_info) <symbols>: Likewise.
4611         (collect_info::add_symbol): Take block_symbol as argument.
4612         Update all callers.
4613         (decode_compound_collector) <m_symbols>: Change type to vector
4614         of block_symbol.  Update all users.
4615         (decode_compound_collector::operator ()): Change parameter type
4616         to block_symbol.
4617         (find_method, find_function_symbols, find_linespec_symbols)
4618         (find_label_symbols_in_block, find_label_symbols): Change symbol
4619         vectors to block_symbol vectors.
4620         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4621         block_symbol.
4622
4623 2018-08-29  Keith Seitz  <keiths@redhat.com>
4624
4625         * linespec.c (symbolp): Remove typedef and VEC definitions.
4626         (bound_minimal_symbol_d): Likewise.
4627
4628 2018-08-29  Keith Seitz  <keiths@redhat.com>
4629
4630         * linespec.c (decode_compound_collector::decode_compound_collector):
4631         Remove initialization for `m_symtabs'.
4632         (decode_compound_collector::release_symbols): Change return type
4633         to std::vector.  Update all callers.
4634         (class decode_compound_collector) <m_symbols>: Change type to
4635         std::vector.
4636         (lookup_prefix_sym): Change return type to std::vector.  Update all
4637         callers.
4638         (compare_symbols): Remove.
4639         (std_compare_symbols): Rename to `compare_symbols'.
4640         (find_method): Change `sym_classes' parameter to std::vector.
4641         Update all callers.  Use std::sort to sort sym_classes.
4642         (find_linespec_symbols): Remove cleanup.
4643
4644 2018-08-29  Keith Seitz  <keiths@redhat.com>
4645
4646         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4647         std::vector.  Update all users.
4648         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4649         (struct collect_info) <minimal_symbols>: Likewise.
4650         (compare_msymbols): Return bool.  Change parameters to const
4651         bound_minimal_symbol references.
4652         (find_method, find_function_symbols, find_linespec_symbols): Change
4653         `minsyms' parameter to std::vector.  Update all callers.
4654
4655 2018-08-29  Keith Seitz  <keiths@redhat.com>
4656
4657         * linespec.c (struct linespec) <label_symbols>: Change type to
4658         std::vector.  Update all users.
4659         (find_label_symbols_in_block): Change `result' parameter to
4660         std::vector.  Update all callers.
4661         (find_label_symbols): Return std::vector.  Update all callers.
4662
4663 2018-08-29  Keith Seitz  <keiths@redhat.com>
4664
4665         * linespec.c (struct linespec) <function_symbols>: Change type to
4666         std::vector.  Update all users.
4667         (struct collect_info) <function_symbols>: Likewise.
4668         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4669         (std_compare_symbols): New function.
4670         (find_method, find_function_symbols, find_linespec_symbols)
4671         (find_label_symbols_in_block): Change `symbols' parameter to
4672         std::vector.  Update all callers.
4673         (find_label_symbols): Likewise for `function_symbols' and
4674         `label_funcs_ret'.
4675
4676 2018-08-29  Keith Seitz  <keiths@redhat.com>
4677
4678         * linespec.c (symtab_vector_up): Define.
4679         (struct linespec) <file_symtabs>: Change type to std::vector *.
4680         Update all uses.
4681         (struct collect_info) <file_symtabs>: Likewise.
4682         (collect_symtabs_from_filename): Return symtab_vector_up.
4683         Update all callers.
4684         (decode_objc): Remove cleanup.
4685         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4686         (symtab_collector::release_symtabs): Return symtab_vector_up.
4687         Update all callers.
4688         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4689         Update all users.
4690         (collect_symtabs_from_filename, symtabs_from_filename): Return
4691         symtab_vector_up.  Update all callers.
4692
4693 2018-08-29  Tom Tromey  <tom@tromey.com>
4694
4695         * csky-tdep.c (csky_analyze_prologue): Use
4696         core_addr_to_string_nz.
4697
4698 2018-08-29  Tom Tromey  <tom@tromey.com>
4699
4700         * windows-nat.c (struct xlate_exception) <them>: Change type to
4701         DWORD.
4702         (xlate): Fix formatting.  Remove last entry.
4703         (struct xlate_exception, xlate): Comment out.
4704         (windows_nat_target::resume): Use ranged for.
4705
4706 2018-08-29  Jim Wilson  <jimw@sifive.com>
4707
4708         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4709         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4710         of NT_PRFPREG.
4711         (riscv_linux_nat_target::store_registers): Likewise.
4712
4713 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4714
4715         PR gdb/23555
4716         PR gdb/23558
4717         * gnulib/aclocal.m4: Regenerate.
4718         * gnulib/config.in: Regenerate.
4719         * gnulib/configure: Regenerate.
4720         * gnulib/import/Makefile.am: Update.
4721         * gnulib/import/Makefile.in: Update.
4722         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4723         * gnulib/import/_Noreturn.h: ... this.
4724         * gnulib/import/alloca.in.h: Update.
4725         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4726         * gnulib/import/arg-nonnull.h: ... this.
4727         * gnulib/import/assure.h: Update.
4728         * gnulib/import/at-func.c: Update.
4729         * gnulib/import/basename-lgpl.c: Update.
4730         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4731         * gnulib/import/c++defs.h: ... this.
4732         * gnulib/import/canonicalize-lgpl.c: Update.
4733         * gnulib/import/cdefs.h: Update.
4734         * gnulib/import/chdir-long.c: Update.
4735         * gnulib/import/chdir-long.h: Update.
4736         * gnulib/import/cloexec.c: Update.
4737         * gnulib/import/cloexec.h: Update.
4738         * gnulib/import/close.c: Update.
4739         * gnulib/import/closedir.c: Update.
4740         * gnulib/import/config.charset: Update.
4741         * gnulib/import/dirent-private.h: Update.
4742         * gnulib/import/dirent.in.h: Update.
4743         * gnulib/import/dirfd.c: Update.
4744         * gnulib/import/dirname-lgpl.c: Update.
4745         * gnulib/import/dirname.h: Update.
4746         * gnulib/import/dosname.h: Update.
4747         * gnulib/import/dup-safer-flag.c: Update.
4748         * gnulib/import/dup-safer.c: Update.
4749         * gnulib/import/dup.c: Update.
4750         * gnulib/import/dup2.c: Update.
4751         * gnulib/import/errno.in.h: Update.
4752         * gnulib/import/error.c: Update.
4753         * gnulib/import/error.h: Update.
4754         * gnulib/import/exitfail.c: Update.
4755         * gnulib/import/exitfail.h: Update.
4756         * gnulib/import/extra/update-copyright: Update.
4757         * gnulib/import/fchdir.c: Update.
4758         * gnulib/import/fcntl.c: Update.
4759         * gnulib/import/fcntl.in.h: Update.
4760         * gnulib/import/fd-hook.c: Update.
4761         * gnulib/import/fd-hook.h: Update.
4762         * gnulib/import/fd-safer-flag.c: Update.
4763         * gnulib/import/fd-safer.c: Update.
4764         * gnulib/import/fdopendir.c: Update.
4765         * gnulib/import/filename.h: Update.
4766         * gnulib/import/filenamecat-lgpl.c: Update.
4767         * gnulib/import/filenamecat.h: Update.
4768         * gnulib/import/flexmember.h: Update.
4769         * gnulib/import/float+.h: Update.
4770         * gnulib/import/float.c: Update.
4771         * gnulib/import/float.in.h: Update.
4772         * gnulib/import/fnmatch.c: Update.
4773         * gnulib/import/fnmatch.in.h: Update.
4774         * gnulib/import/fnmatch_loop.c: Update.
4775         * gnulib/import/fpucw.h: Update.
4776         * gnulib/import/frexp.c: Update.
4777         * gnulib/import/frexpl.c: Update.
4778         * gnulib/import/fstat.c: Update.
4779         * gnulib/import/fstatat.c: Update.
4780         * gnulib/import/getcwd-lgpl.c: Update.
4781         * gnulib/import/getcwd.c: Update.
4782         * gnulib/import/getdtablesize.c: Update.
4783         * gnulib/import/getlogin_r.c: Update.
4784         * gnulib/import/getprogname.c: Update.
4785         * gnulib/import/getprogname.h: Update.
4786         * gnulib/import/gettext.h: Update.
4787         * gnulib/import/gettimeofday.c: Update.
4788         * gnulib/import/glob-libc.h: Update.
4789         * gnulib/import/glob.c: Update.
4790         * gnulib/import/glob.in.h: Update.
4791         * gnulib/import/glob_internal.h: Update.
4792         * gnulib/import/glob_pattern_p.c: Update.
4793         * gnulib/import/globfree.c: Update.
4794         * gnulib/import/hard-locale.c: Update.
4795         * gnulib/import/hard-locale.h: Update.
4796         * gnulib/import/intprops.h: Update.
4797         * gnulib/import/inttypes.in.h: Update.
4798         * gnulib/import/isnan.c: Update.
4799         * gnulib/import/isnand-nolibm.h: Update.
4800         * gnulib/import/isnand.c: Update.
4801         * gnulib/import/isnanl-nolibm.h: Update.
4802         * gnulib/import/isnanl.c: Update.
4803         * gnulib/import/itold.c: Update.
4804         * gnulib/import/libc-config.h: Update.
4805         * gnulib/import/limits.in.h: Update.
4806         * gnulib/import/localcharset.c: Update.
4807         * gnulib/import/localcharset.h: Update.
4808         * gnulib/import/localtime-buffer.c: Update.
4809         * gnulib/import/localtime-buffer.h: Update.
4810         * gnulib/import/lstat.c: Update.
4811         * gnulib/import/m4/00gnulib.m4: Update.
4812         * gnulib/import/m4/__inline.m4: Update.
4813         * gnulib/import/m4/absolute-header.m4: Update.
4814         * gnulib/import/m4/alloca.m4: Update.
4815         * gnulib/import/m4/builtin-expect.m4: Update.
4816         * gnulib/import/m4/canonicalize.m4: Update.
4817         * gnulib/import/m4/chdir-long.m4: Update.
4818         * gnulib/import/m4/close.m4: Update.
4819         * gnulib/import/m4/closedir.m4: Update.
4820         * gnulib/import/m4/configmake.m4: Update.
4821         * gnulib/import/m4/d-ino.m4: Update.
4822         * gnulib/import/m4/d-type.m4: Update.
4823         * gnulib/import/m4/dirent_h.m4: Update.
4824         * gnulib/import/m4/dirfd.m4: Update.
4825         * gnulib/import/m4/dirname.m4: Update.
4826         * gnulib/import/m4/double-slash-root.m4: Update.
4827         * gnulib/import/m4/dup.m4: Update.
4828         * gnulib/import/m4/dup2.m4: Update.
4829         * gnulib/import/m4/eealloc.m4: Update.
4830         * gnulib/import/m4/environ.m4: Update.
4831         * gnulib/import/m4/errno_h.m4: Update.
4832         * gnulib/import/m4/error.m4: Update.
4833         * gnulib/import/m4/exponentd.m4: Update.
4834         * gnulib/import/m4/exponentl.m4: Update.
4835         * gnulib/import/m4/extensions.m4: Update.
4836         * gnulib/import/m4/extern-inline.m4: Update.
4837         * gnulib/import/m4/fchdir.m4: Update.
4838         * gnulib/import/m4/fcntl-o.m4: Update.
4839         * gnulib/import/m4/fcntl.m4: Update.
4840         * gnulib/import/m4/fcntl_h.m4: Update.
4841         * gnulib/import/m4/fdopendir.m4: Update.
4842         * gnulib/import/m4/filenamecat.m4: Update.
4843         * gnulib/import/m4/flexmember.m4: Update.
4844         * gnulib/import/m4/float_h.m4: Update.
4845         * gnulib/import/m4/fnmatch.m4: Update.
4846         * gnulib/import/m4/fnmatch_h.m4: Update.
4847         * gnulib/import/m4/fpieee.m4: Update.
4848         * gnulib/import/m4/frexp.m4: Update.
4849         * gnulib/import/m4/frexpl.m4: Update.
4850         * gnulib/import/m4/fstat.m4: Update.
4851         * gnulib/import/m4/fstatat.m4: Update.
4852         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4853         * gnulib/import/m4/getcwd-path-max.m4: Update.
4854         * gnulib/import/m4/getcwd.m4: Update.
4855         * gnulib/import/m4/getdtablesize.m4: Update.
4856         * gnulib/import/m4/getlogin.m4: Update.
4857         * gnulib/import/m4/getlogin_r.m4: Update.
4858         * gnulib/import/m4/getpagesize.m4: Update.
4859         * gnulib/import/m4/getprogname.m4: Update.
4860         * gnulib/import/m4/gettimeofday.m4: Update.
4861         * gnulib/import/m4/glibc21.m4: Update.
4862         * gnulib/import/m4/glob.m4: Update.
4863         * gnulib/import/m4/glob_h.m4: Update.
4864         * gnulib/import/m4/gnulib-cache.m4: Update.
4865         * gnulib/import/m4/gnulib-common.m4: Update.
4866         * gnulib/import/m4/gnulib-comp.m4: Update.
4867         * gnulib/import/m4/gnulib-tool.m4: Update.
4868         * gnulib/import/m4/hard-locale.m4: Update.
4869         * gnulib/import/m4/include_next.m4: Update.
4870         * gnulib/import/m4/inttypes-pri.m4: Update.
4871         * gnulib/import/m4/inttypes.m4: Update.
4872         * gnulib/import/m4/isnand.m4: Update.
4873         * gnulib/import/m4/isnanl.m4: Update.
4874         * gnulib/import/m4/largefile.m4: Update.
4875         * gnulib/import/m4/limits-h.m4: Update.
4876         * gnulib/import/m4/localcharset.m4: Update.
4877         * gnulib/import/m4/locale-fr.m4: Update.
4878         * gnulib/import/m4/locale-ja.m4: Update.
4879         * gnulib/import/m4/locale-zh.m4: Update.
4880         * gnulib/import/m4/localtime-buffer.m4: Update.
4881         * gnulib/import/m4/longlong.m4: Update.
4882         * gnulib/import/m4/lstat.m4: Update.
4883         * gnulib/import/m4/malloc.m4: Update.
4884         * gnulib/import/m4/malloca.m4: Update.
4885         * gnulib/import/m4/math_h.m4: Update.
4886         * gnulib/import/m4/mbrtowc.m4: Update.
4887         * gnulib/import/m4/mbsinit.m4: Update.
4888         * gnulib/import/m4/mbsrtowcs.m4: Update.
4889         * gnulib/import/m4/mbstate_t.m4: Update.
4890         * gnulib/import/m4/memchr.m4: Update.
4891         * gnulib/import/m4/memmem.m4: Update.
4892         * gnulib/import/m4/mempcpy.m4: Update.
4893         * gnulib/import/m4/memrchr.m4: Update.
4894         * gnulib/import/m4/mkdir.m4: Update.
4895         * gnulib/import/m4/mkstemp.m4: Update.
4896         * gnulib/import/m4/mmap-anon.m4: Update.
4897         * gnulib/import/m4/mode_t.m4: Update.
4898         * gnulib/import/m4/msvc-inval.m4: Update.
4899         * gnulib/import/m4/msvc-nothrow.m4: Update.
4900         * gnulib/import/m4/multiarch.m4: Update.
4901         * gnulib/import/m4/nocrash.m4: Update.
4902         * gnulib/import/m4/off_t.m4: Update.
4903         * gnulib/import/m4/onceonly.m4: Update.
4904         * gnulib/import/m4/open-cloexec.m4: Update.
4905         * gnulib/import/m4/open.m4: Update.
4906         * gnulib/import/m4/openat.m4: Update.
4907         * gnulib/import/m4/opendir.m4: Update.
4908         * gnulib/import/m4/pathmax.m4: Update.
4909         * gnulib/import/m4/rawmemchr.m4: Update.
4910         * gnulib/import/m4/readdir.m4: Update.
4911         * gnulib/import/m4/readlink.m4: Update.
4912         * gnulib/import/m4/realloc.m4: Update.
4913         * gnulib/import/m4/rename.m4: Update.
4914         * gnulib/import/m4/rewinddir.m4: Update.
4915         * gnulib/import/m4/rmdir.m4: Update.
4916         * gnulib/import/m4/save-cwd.m4: Update.
4917         * gnulib/import/m4/secure_getenv.m4: Update.
4918         * gnulib/import/m4/setenv.m4: Update.
4919         * gnulib/import/m4/signal_h.m4: Update.
4920         * gnulib/import/m4/ssize_t.m4: Update.
4921         * gnulib/import/m4/stat-time.m4: Update.
4922         * gnulib/import/m4/stat.m4: Update.
4923         * gnulib/import/m4/std-gnu11.m4: Update.
4924         * gnulib/import/m4/stdbool.m4: Update.
4925         * gnulib/import/m4/stddef_h.m4: Update.
4926         * gnulib/import/m4/stdint.m4: Update.
4927         * gnulib/import/m4/stdio_h.m4: Update.
4928         * gnulib/import/m4/stdlib_h.m4: Update.
4929         * gnulib/import/m4/strchrnul.m4: Update.
4930         * gnulib/import/m4/strdup.m4: Update.
4931         * gnulib/import/m4/strerror.m4: Update.
4932         * gnulib/import/m4/string_h.m4: Update.
4933         * gnulib/import/m4/strstr.m4: Update.
4934         * gnulib/import/m4/strtok_r.m4: Update.
4935         * gnulib/import/m4/sys_socket_h.m4: Update.
4936         * gnulib/import/m4/sys_stat_h.m4: Update.
4937         * gnulib/import/m4/sys_time_h.m4: Update.
4938         * gnulib/import/m4/sys_types_h.m4: Update.
4939         * gnulib/import/m4/tempname.m4: Update.
4940         * gnulib/import/m4/time_h.m4: Update.
4941         * gnulib/import/m4/unistd-safer.m4: Update.
4942         * gnulib/import/m4/unistd_h.m4: Update.
4943         * gnulib/import/m4/warn-on-use.m4: Update.
4944         * gnulib/import/m4/wchar_h.m4: Update.
4945         * gnulib/import/m4/wchar_t.m4: Update.
4946         * gnulib/import/m4/wctype_h.m4: Update.
4947         * gnulib/import/m4/wint_t.m4: Update.
4948         * gnulib/import/malloc.c: Update.
4949         * gnulib/import/malloc/scratch_buffer.h: Update.
4950         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4951         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4952         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4953         * gnulib/import/malloca.c: Update.
4954         * gnulib/import/malloca.h: Update.
4955         * gnulib/import/malloca.valgrind: Update.
4956         * gnulib/import/math.in.h: Update.
4957         * gnulib/import/mbrtowc.c: Update.
4958         * gnulib/import/mbsinit.c: Update.
4959         * gnulib/import/mbsrtowcs-impl.h: Update.
4960         * gnulib/import/mbsrtowcs-state.c: Update.
4961         * gnulib/import/mbsrtowcs.c: Update.
4962         * gnulib/import/memchr.c: Update.
4963         * gnulib/import/memmem.c: Update.
4964         * gnulib/import/mempcpy.c: Update.
4965         * gnulib/import/memrchr.c: Update.
4966         * gnulib/import/mkdir.c: Update.
4967         * gnulib/import/mkstemp.c: Update.
4968         * gnulib/import/msvc-inval.c: Update.
4969         * gnulib/import/msvc-inval.h: Update.
4970         * gnulib/import/msvc-nothrow.c: Update.
4971         * gnulib/import/msvc-nothrow.h: Update.
4972         * gnulib/import/open.c: Update.
4973         * gnulib/import/openat-die.c: Update.
4974         * gnulib/import/openat-priv.h: Update.
4975         * gnulib/import/openat-proc.c: Update.
4976         * gnulib/import/openat.c: Update.
4977         * gnulib/import/openat.h: Update.
4978         * gnulib/import/opendir.c: Update.
4979         * gnulib/import/pathmax.h: Update.
4980         * gnulib/import/pipe-safer.c: Update.
4981         * gnulib/import/rawmemchr.c: Update.
4982         * gnulib/import/readdir.c: Update.
4983         * gnulib/import/readlink.c: Update.
4984         * gnulib/import/realloc.c: Update.
4985         * gnulib/import/ref-add.sin: Update.
4986         * gnulib/import/ref-del.sin: Update.
4987         * gnulib/import/rename.c: Update.
4988         * gnulib/import/rewinddir.c: Update.
4989         * gnulib/import/rmdir.c: Update.
4990         * gnulib/import/same-inode.h: Update.
4991         * gnulib/import/save-cwd.c: Update.
4992         * gnulib/import/save-cwd.h: Update.
4993         * gnulib/import/scratch_buffer.h: Update.
4994         * gnulib/import/secure_getenv.c: Update.
4995         * gnulib/import/setenv.c: Update.
4996         * gnulib/import/signal.in.h: Update.
4997         * gnulib/import/stat-time.c: Update.
4998         * gnulib/import/stat-time.h: Update.
4999         * gnulib/import/stat-w32.c: Update.
5000         * gnulib/import/stat-w32.h: Update.
5001         * gnulib/import/stat.c: Update.
5002         * gnulib/import/stdbool.in.h: Update.
5003         * gnulib/import/stddef.in.h: Update.
5004         * gnulib/import/stdint.in.h: Update.
5005         * gnulib/import/stdio.in.h: Update.
5006         * gnulib/import/stdlib.in.h: Update.
5007         * gnulib/import/str-two-way.h: Update.
5008         * gnulib/import/strchrnul.c: Update.
5009         * gnulib/import/strdup.c: Update.
5010         * gnulib/import/streq.h: Update.
5011         * gnulib/import/strerror-override.c: Update.
5012         * gnulib/import/strerror-override.h: Update.
5013         * gnulib/import/strerror.c: Update.
5014         * gnulib/import/string.in.h: Update.
5015         * gnulib/import/stripslash.c: Update.
5016         * gnulib/import/strnlen1.c: Update.
5017         * gnulib/import/strnlen1.h: Update.
5018         * gnulib/import/strstr.c: Update.
5019         * gnulib/import/strtok_r.c: Update.
5020         * gnulib/import/sys_stat.in.h: Update.
5021         * gnulib/import/sys_time.in.h: Update.
5022         * gnulib/import/sys_types.in.h: Update.
5023         * gnulib/import/tempname.c: Update.
5024         * gnulib/import/tempname.h: Update.
5025         * gnulib/import/time.in.h: Update.
5026         * gnulib/import/unistd--.h: Update.
5027         * gnulib/import/unistd-safer.h: Update.
5028         * gnulib/import/unistd.in.h: Update.
5029         * gnulib/import/unsetenv.c: Update.
5030         * gnulib/import/verify.h: Update.
5031         * gnulib/import/extra/snippet/warn-on-use.h: Update.
5032         * gnulib/import/wchar.in.h: Update.
5033         * gnulib/import/wctype.in.h: Update.
5034         * gnulib/import/xalloc-oversized.h: Update.
5035         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
5036         "53e2c179f26a890fa6685af4b6c1397ee370433b".
5037
5038 2018-08-16  Gary Benson <gbenson@redhat.com>
5039
5040         PR gdb/13000:
5041         * gdb/main.c (captured_main_1): Exit with nonzero status
5042         in batch mode if the last command to be executed failed.
5043         * NEWS: Mention the above.
5044
5045 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
5046
5047         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
5048         end of warning message.
5049
5050 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
5051
5052         PR gdb/22943:
5053         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
5054         (aarch64_extract_return_value): Use
5055         aapcs_is_vfp_call_or_return_candidate.
5056         (aarch64_return_in_memory): Likewise.
5057         (aarch64_store_return_value): Likewise.
5058
5059 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
5060
5061         * aarch64-tdep.c
5062         (aapcs_is_vfp_call_or_return_candidate): Make static
5063         (pass_in_v_or_stack): Remove function.
5064         (pass_in_v_vfp_candidate): New function.
5065         (aarch64_push_dummy_call): Check for float register candidates.
5066
5067 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
5068
5069         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
5070         (aapcs_is_vfp_call_or_return_candidate_1): New function.
5071         (aapcs_is_vfp_call_or_return_candidate): Likewise.
5072
5073 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
5074
5075         PR build/23399
5076         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
5077         (struct ipa_sym_addresses): Rename to...
5078         (struct ipa_sym_addresses_common): ... this.
5079         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
5080
5081 2018-08-28  Tom Tromey  <tom@tromey.com>
5082
5083         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
5084         (token_fifo): Now a std::vector.
5085         (yylex, c_parse): Update.
5086         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
5087         (token_fifo): Now a std::vector.
5088         (yylex, d_parse): Update.
5089         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
5090         (token_fifo): Now a std::vector.
5091         (yylex, go_parse): Update.
5092
5093 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
5094
5095         * parser-defs.h (struct type_stack) <elements>: Change type to
5096         std::vector<union type_stack_elt>.
5097         <depth, size>: Remove.
5098         * parse.c (parse_exp_in_context_1): Adjust.
5099         (type_stack_reserve): Remove.
5100         (check_type_stack_depth): Remove.
5101         (insert_into_type_stack): Adjust to std::vector.
5102         (insert_type): Likewise.
5103         (push_type): Likewise.
5104         (push_type_int): Likewise.
5105         (insert_type_address_space): Likewise.
5106         (pop_type): Likewise.
5107         (pop_type_int): Likewise.
5108         (pop_typelist): Likewise.
5109         (pop_type_stack): Likewise.
5110         (append_type_stack): Likewise.
5111         (push_type_stack): Likewise.
5112         (get_type_stack): Likewise.
5113         (type_stack_cleanup): Likewise.
5114         (push_typelist): Likewise.
5115         (follow_types): Likewise.
5116         (_initialize_parse): Likewise.
5117
5118 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
5119
5120         * NEWS: Mention csky target.
5121
5122 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
5123             Hafiz Abid Qadeer  <abidh@codesourcery.com>
5124             Don Breazeal  <donb@codesourcery.com>
5125
5126         * csky-linux-tdep.c: New file.
5127         * csky-tdep.c: Likewise.
5128         * csky-tdep.h: Likewise.
5129         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
5130         csky-tdep.o.
5131         (HFILES_NO_SRCDIR): Add csky-tdep.h.
5132         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
5133         * configure.tgt: Add csky support.
5134
5135 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
5136
5137         * python/py-framefilter.c (py_print_frame): Print frame architecture
5138         when printing on an MI output.
5139
5140 2018-08-27  Tom Tromey  <tom@tromey.com>
5141
5142         PR build/23087:
5143         * configure: Rebuild.
5144         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
5145
5146 2018-08-27  Tom Tromey  <tom@tromey.com>
5147
5148         * aarch64-linux-tdep.c
5149         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
5150         casts to int.
5151
5152 2018-08-27  Tom Tromey  <tom@tromey.com>
5153
5154         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
5155         unsigned.
5156         (ppc64_standard_linkage1, ppc64_standard_linkage2)
5157         (ppc64_standard_linkage3, ppc64_standard_linkage4)
5158         (ppc64_standard_linkage5, ppc64_standard_linkage6)
5159         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
5160         unsigned.
5161
5162 2018-08-27  Tom Tromey  <tom@tromey.com>
5163
5164         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
5165         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
5166
5167 2018-08-27  Tom Tromey  <tom@tromey.com>
5168
5169         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
5170         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
5171         ULONGEST_MAX.
5172         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
5173         ULONGEST_MAX.
5174         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
5175         ULONGEST_MAX.
5176         * sparc-linux-tdep.c (sparc32_linux_sigframe)
5177         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
5178         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
5179         ULONGEST_MAX.
5180         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
5181         (ppc64_linux_sigaction_tramp_frame)
5182         (ppc32_linux_sighandler_tramp_frame)
5183         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5184         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
5185         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
5186         * mn10300-linux-tdep.c (am33_linux_sigframe)
5187         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
5188         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
5189         * mips-linux-tdep.c (mips_linux_o32_sigframe)
5190         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
5191         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
5192         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
5193         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
5194         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
5195         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
5196         * microblaze-linux-tdep.c
5197         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5198         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
5199         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
5200         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
5201         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
5202         * common/common-types.h (ULONGEST_MAX): New define.
5203         (CORE_ADDR_MAX): Fix formatting.
5204         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
5205         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
5206         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
5207         (arm_linux_rt_sigreturn_tramp_frame)
5208         (arm_eabi_linux_sigreturn_tramp_frame)
5209         (arm_eabi_linux_rt_sigreturn_tramp_frame)
5210         (thumb2_eabi_linux_sigreturn_tramp_frame)
5211         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
5212         (arm_linux_restart_syscall_tramp_frame)
5213         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
5214         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
5215         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
5216         ULONGEST_MAX.
5217         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
5218
5219 2018-08-27  Tom Tromey  <tom@tromey.com>
5220
5221         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
5222         CORE_ADDR_MAX.
5223         * mips-tdep.c (mips_deal_with_atomic_sequence)
5224         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
5225         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
5226         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
5227         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
5228         CORE_ADDR_MAX.
5229         * aarch64-tdep.c (aarch64_software_single_step): Use
5230         CORE_ADDR_MAX.
5231
5232 2018-08-27  Tom Tromey  <tom@tromey.com>
5233
5234         * linespec.c (complete_linespec_component): Add cast to "char".
5235         * completer.c (completion_tracker::build_completion_result): Add
5236         cast to "char".
5237
5238 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5239
5240         * solist.h (struct solist, struct target_so_ops): Fix
5241         indentation.
5242
5243 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5244
5245         * ada-tasks.c (ada_task_info_s): Remove typedef.
5246         (DEF_VEC_O(ada_task_info_s)): Remove.
5247         (struct ada_tasks_inferior_data): Initialize fields.
5248         <task_list>: Make an std::vector.
5249         (get_ada_tasks_inferior_data): Allocate with new.
5250         (ada_get_task_number): Adjust.
5251         (get_task_number_from_id): Likewise.
5252         (valid_task_id): Likewise.
5253         (ada_get_task_info_from_ptid): Likewise.
5254         (iterate_over_live_ada_tasks): Likewise.
5255         (add_ada_task): Likewise.
5256         (read_known_tasks): Likewise.
5257         (ada_build_task_list): Likewise.
5258         (print_ada_task_info): Likewise.
5259         (info_task): Likewise.
5260         (task_command_1): Likewise.
5261
5262 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5263
5264         * ada-lang.c (add_angle_brackets): Return std::string.
5265
5266 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5267
5268         * python/py-threadevent.c (py_get_event_thread): Initialize
5269         pythread.
5270
5271 2018-08-24  Pedro Alves  <palves@redhat.com>
5272
5273         * python/py-bpevent.c (create_breakpoint_event_object): Use
5274         copy-initialization.
5275         * python/py-continueevent.c (emit_continue_event): Use
5276         copy-initialization.
5277         * python/py-exitedevent.c (create_exited_event_object): Return a
5278         gdbpy_ref<>.
5279         (emit_exited_event): Use copy-initialization.
5280         * python/py-inferior.c (python_new_inferior)
5281         (python_inferior_deleted, add_thread_object): Use
5282         copy-initialization.
5283         * python/py-infevents.c (create_inferior_call_event_object)
5284         (create_register_changed_event_object)
5285         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5286         (emit_inferior_call_event, emit_memory_changed_event)
5287         (emit_register_changed_event): Use copy-initialization.
5288         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5289         Return a gdbpy_ref<>.
5290         (emit_new_objfile_event): Use copy-initialization.
5291         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5292         (emit_clear_objfiles_event): Use copy-initialization.
5293         * python/py-signalevent.c (create_signal_event_object): Use
5294         copy-initialization.
5295         * python/py-threadevent.c (create_thread_event_object): Use
5296         copy-initialization.
5297
5298 2018-08-24  Pedro Alves  <palves@redhat.com>
5299             Simon Marchi  <simon.marchi@ericsson.com>
5300
5301         PR gdb/23379
5302         * python/py-continueevent.c: Include "gdbthread.h".
5303         (create_continue_event_object): Add intro comment.  Add 'ptid'
5304         parameter.  Use it to find thread to pass to
5305         create_thread_event_object.
5306         (emit_continue_event): Pass PTID down to
5307         create_continue_event_object.
5308         * python/py-event.h (py_get_event_thread): Declare.
5309         (create_thread_event_object): Remove default from 'thread'
5310         parameter.
5311         * python/py-stopevent.c (create_stop_event_object): Use
5312         py_get_event_thread.
5313         * python/py-threadevent.c (get_event_thread): Rename to ...
5314         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5315         and use it to find the thread.
5316         (create_thread_event_object): Assert that THREAD isn't null.
5317         Don't find the event thread here.
5318
5319 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5320
5321         * block.h (blockrange, blockranges): New struct declarations.
5322         (struct block): Add new field named `ranges'.
5323         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5324         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5325         macros for accessing ranges in struct block.
5326         (make_blockranges): New declaration.
5327         block.c (make_blockranges): New function.
5328         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5329         for block.
5330         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5331         * blockframe.c (cache_pc_function_block): New static global.
5332         (clear_pc_function_cache): Clear cache_pc_function_block.
5333         (find_pc_partial_function): Move comment to symtab.h.  Add
5334         support for non-contiguous blocks.
5335         * cli/cli-cmds.c (block.h): Include.
5336         (print_disassembly): Handle printing of non-contiguous blocks.
5337         (disassemble_current_function): Likewise.
5338         (disassemble_command): Likewise.
5339
5340         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5341         BLOCK_START.
5342         * blockframe.c (get_pc_function_start): Likewise.
5343         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5344         (gcc_symbol_address): Likewise.
5345         * compile/compile-object-run.c (compile_object_run): Likewise.
5346         * compile/compile.c (get_expr_block_and_pc): Likewise.
5347         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5348         (func_addr_to_tail_call_list): Likewise.
5349         * findvar.c (default_read_var_value): Likewise.
5350         * inline-frame.c (inline_frame_this_id): Likewise.
5351         (skip-inline_frames): Likewise.
5352         * infcmd.c (until_next_command): Likewise.
5353         * linespec.c (convert_linespec_to_sals): Likewise.
5354         * parse.c (parse_exp_in_context_1): Likewise.
5355         * printcmd.c (build_address_symbolic): likewise.
5356         (info_address_command): Likewise.
5357         symtab.c (find_function_start_sal): Likewise.
5358         (skip_prologue_sal): Likewise.
5359         (find_function_alias_target): Likewise.
5360         (find_gnu_ifunc): Likewise.
5361         * stack.c (find_frame_funname): Likewise.
5362         * symtab.c (fixup_symbol_section): Likewise.
5363         (find_function_start_sal): Likewise.
5364         (skip_prologue_sal): Likewsie.
5365         (find_function_alias_target): Likewise.
5366         (find_gnu_ifunc): Likewise.
5367         * tracepoint.c (info_scope_command): Likewise.
5368         * value.c (value_fn_field): Likewise.
5369
5370         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5371         in place of find_pc_partial_function.
5372         * blockframe.c (find_function_entry_range_from_pc): New function.
5373         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5374         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5375         for each range in a block.
5376
5377
5378 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5379
5380         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5381         incrementation.
5382
5383 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5384
5385         * solib-svr4.c (read_program_headers_from_bfd): Return
5386         gdb::optional<gdb::byte_vector>.
5387         (svr4_exec_displacement): Adjust.
5388
5389 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5390
5391         * solib-svr4.c (read_program_header): Return
5392         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5393         (find_program_interpreter): Return
5394         gdb::optional<gdb::byte_vector>.
5395         (scan_dyntag_auxv): Adjust.
5396         (enable_break): Adjust.
5397         (svr4_exec_displacement): Adjust.
5398
5399 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5400
5401         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5402         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5403
5404 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5405
5406         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5407         string_vprintf.
5408         * guile/scm-utils.c (gdbscm_printf): Likewise.
5409         * serial.c (serial_printf): Likewise.
5410         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5411
5412 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5413
5414         * stack.c (print_frame): Print frame architecture when printing on
5415         an MI output.
5416         * NEWS: Mention new "arch" attribute in frame output.
5417
5418 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5419
5420         * arch/aarch64.h (aarch64_regnum): Update comment.
5421
5422 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5423
5424         * NEWS: Add SVE to 8.2 section.
5425
5426 2018-08-21  Pedro Alves  <palves@redhat.com>
5427
5428         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5429         out from gdbscm_parse_function_args.
5430         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5431         gdbscm_parse_function_args_1.
5432
5433 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5434
5435         PR gdb/17816
5436         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5437         operator.
5438
5439 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5440
5441         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5442
5443 2018-08-19  Michael Spang  <spang@google.com>
5444
5445         PR gdb/11786
5446         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5447         for PT_TLS segments.
5448
5449 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5450
5451         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5452         dwarf_variable_value.
5453         * dwarf2-frame.c (class dwarf_expr_executor):
5454         Add override for dwarf_variable_value.
5455         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5456         (class symbol_needs_eval_context): Likewise.
5457         (indirect_synthetic_pointer): Add forward declaration.
5458         (sect_variable_value): New function.
5459         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5460         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5461         for DW_OP_GNU_variable_value.
5462
5463 2018-08-16  Tom Tromey  <tom@tromey.com>
5464
5465         * top.c (read_command_file): Update.
5466         (command_line_input): Remove "repeat" argument.
5467         * ada-lang.c (get_selections): Update.
5468         * linespec.c (decode_line_2): Update.
5469         * defs.h (command_line_input): Remove argument.
5470         * cli/cli-script.c (read_next_line): Update.
5471         * python/py-gdb-readline.c: Update.
5472
5473 2018-08-17  Tom Tromey  <tom@tromey.com>
5474
5475         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5476         command_line_input.
5477
5478 2018-08-15  Tom Tromey  <tom@tromey.com>
5479
5480         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5481
5482 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5483
5484         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5485         If used, use find_pc_partial_function to find address range
5486         to disassemble.
5487         * mi/mi-main.c (mi_cmd_list_features): Report
5488         "data-disassemble-a-option" feature.
5489         * NEWS: Mention new -data-disassemble option -a.
5490
5491 2018-08-13  Tom Tromey  <tom@tromey.com>
5492
5493         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5494
5495 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5496
5497         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5498         (aarch64_linux_collect_sve_regset): Likewise.
5499         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5500         * regcache.h (regcache_map_entry_size): New function.
5501
5502 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5503
5504         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5505         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5506         (SVE_HEADER_VL_LENGTH): Likewise.
5507         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5508         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5509         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5510         (SVE_HEADER_SIZE_OFFSET): Likewise.
5511         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5512         (SVE_HEADER_VL_OFFSET): Likewise.
5513         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5514         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5515         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5516         (SVE_HEADER_SIZE): Likewise.
5517         (aarch64_linux_core_read_vq): Add function.
5518         (aarch64_linux_core_read_description): Check for SVE section.
5519
5520 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5521
5522         * aarch64-fbsd-tdep.c
5523         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5524         collect_size.
5525         * aarch64-linux-tdep.c
5526         (aarch64_linux_iterate_over_regset_sections): Likewise.
5527         * alpha-linux-tdep.c
5528         (alpha_linux_iterate_over_regset_sections):
5529         * alpha-nbsd-tdep.c
5530         (alphanbsd_iterate_over_regset_sections): Likewise.
5531         * amd64-fbsd-tdep.c
5532         (amd64fbsd_iterate_over_regset_sections): Likewise.
5533         * amd64-linux-tdep.c
5534         (amd64_linux_iterate_over_regset_sections): Likewise.
5535         * arm-bsd-tdep.c
5536         (armbsd_iterate_over_regset_sections): Likewise.
5537         * arm-fbsd-tdep.c
5538         (arm_fbsd_iterate_over_regset_sections): Likewise.
5539         * arm-linux-tdep.c
5540         (arm_linux_iterate_over_regset_sections): Likewise.
5541         * corelow.c (get_core_registers_cb): Likewise.
5542         (core_target::fetch_registers): Likewise.
5543         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5544         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5545         * gdbarch.h (void): Regenerate.
5546         * gdbarch.sh: Add supply_size and collect_size.
5547         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5548         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5549         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5550         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5551         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5552         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5553         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5554         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5555         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5556         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5557         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5558         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5559         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5560         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5561         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5562         Likewise.
5563         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5564         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5565         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5566         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5567         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5568         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5569         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5570         Likewise.
5571         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5572         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5573         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5574         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5575         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5576         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5577         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5578         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5579
5580 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5581
5582         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5583         with string_printf.
5584
5585 2018-08-10  Keith Seitz  <keiths@redhat.com>
5586
5587         * compile/compile-c-support.c (add_code_header, add_code_footer):
5588         Move into policy class.
5589         (c_push_user_expression, pop_user_expression_nop)
5590         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5591         (compile_program): New host class.
5592         (c_compile_program): New typedef.
5593         (c_compute_porgram): Use c_compile_program.
5594
5595 2018-08-10  Keith Seitz  <keiths@redhat.com>
5596
5597         * compile/compile-internal.h (compile_instance::~compile_instance):
5598         Remove calls to htab_delete.
5599         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5600         * compile.c (compile_instance::compile_instance): Initialize
5601         htab unique pointers.
5602         (compile_instance::get_cached_type, compile_instance::insert_type)
5603         (compile_instance::error_symbol_once): Update for unique_ptr.
5604
5605 2018-08-10  Keith Seitz  <keiths@redhat.com>
5606
5607         * compile/compile-c-symbols.c (struct symbol_error)
5608         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5609         (compile_instance::insert_symbol_error)
5610         (compile_instance::error_symbol_once): Move to ...
5611         * compile/compile.c: ... here.
5612
5613 2018-08-10  Keith Seitz  <keiths@redhat.com>
5614
5615         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5616         instead of `new_compile_instance'.
5617         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5618         Update description.
5619         If the symbol error map is not initialized, create it.
5620         (generate_c_for_for_one_symbol): Do not check/initialize
5621         the symbol error map.
5622         * compile/compile-c-types.c (compile_c_instance): Make a class.
5623         Update all callers.
5624         (compile_instance::compile_instance): Initialize the type cache.
5625         (get_cached_type): New function.
5626         (insert_type): Update description.
5627         (compile_c_instance::m_default_cflags): Define.
5628         (convert_type): Update description.  Use get_cached_type.
5629         (delete_instance): Moved to destructor.
5630         (new_compile_instance): Moved to constructor.
5631         * compile/compile-c.h (compile_c_instance): Make class inheriting
5632         from compile_instance.
5633         <base>: Remove field.
5634         <type_map, symbol_err_map>: Move to base class.
5635         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5636         * compile/compile-internal.h (compile_instance): Make class.
5637         <type_map_t, symbol_err_map_t>: Define.
5638         <fe>: Rename to `m_gcc_fe'.
5639         <scope, block, gcc_target_options>: Add `m_' prefix.
5640         <m_type_map, m_symbol_err_map>: New fields, moved from
5641         compile_c_instance.
5642         <destroy>: Remove.
5643         (convert_type, new_compile_instance): Remove.
5644         * compile/compile.c (cleanup_compile_instance): Remove.
5645         (compile_to_object): Use unique_ptr to eliminate cleanups.
5646         (compile_instance::set_print_callback, compile_instance::version)
5647         (compile_instance::set_verbose)
5648         (compile_instance::set_driver_filename)
5649         (compile_instance::set_triplet_regexp)
5650         (compile_instance::set_arguments)
5651         (compile_instance::set_source_file)
5652         (compile_instance::compile): Define.
5653
5654 2018-08-10  Keith Seitz  <keiths@redhat.com>
5655
5656         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5657         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5658         gcc-c-fe.def to define C plugin.
5659         (delete_instance): Delete `c_plugin'.
5660         (new_compile_instance): Initialize `c_plugin'.
5661         * compile/compile-c.h: Include gcc_c_plugin.h.
5662         (struct compile_c_instance) <c_plugin>: New member.
5663         * gcc-c-plugin.h: New file.
5664         Update all callers with API change.
5665
5666 2018-08-10  Keith Seitz  <keiths@redhat.com>
5667
5668         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5669         (HFILES_NO_SRCDIR): ... to here.
5670         Add compile-internal.h and compile-c.h.
5671         * compile/compile-c-support.c: Include compile-c.h.
5672         * compile/compile-c-symbols.c: Include compile-c.h.
5673         (generate_c_for_variable_locations): Update comment.
5674         * compile/compile-c-types.c: Include compile-c.h.
5675         * compile/compile-c.h: New file -- moved C language declarations
5676         from other files here.
5677         * compile/compile-internal.h: Do not include hashtab.h or
5678         common/enum-flags.h.
5679         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5680         (gcc_convert_symbol, gcc_symbol_address)
5681         (generate_c_for_variable_locations, c_get_mode_for_size)
5682         (c_get_range_decl_name): Definitions moved to compile-c.h.
5683         * compile/compile-loc2c.c: Include compile-c.h.
5684
5685 2018-08-10  Keith Seitz  <keiths@redhat.com>
5686
5687         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5688         (c_symbol_substitution_name): ... this.
5689         Update all callers.
5690
5691 2018-08-10  Keith Seitz  <keiths@redhat.com>
5692
5693         * compile/compile-c-support.c (c_compute_program): Use
5694         unique_xmalloc_ptr to eliminate cleanup.
5695         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5696         Return a unique_xmalloc_ptr and eliminate cleanup.
5697         * compile/compile-internal.h (generate_c_for_variable_locations):
5698         Return unique_xmalloc_ptr and update description.
5699
5700 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5701
5702         * corelow.c (core_target::get_core_register_section): Rename
5703         min_size to section_min_size.
5704
5705 2018-08-09  Jim Wilson  <jimw@sifive.com>
5706
5707         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5708         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5709         * NEWS: Mention new GNU/Linux RISC-V target.
5710         * configure.host: Add riscv*-*-linux*.
5711         * configure.nat: Add riscv*.
5712         * configure.tgt: Add riscv*-*-linux*.
5713         * riscv-linux-nat.c: New file.
5714         * riscv-linux-tdep.c: New file.
5715
5716 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5717
5718         * infrun.c (resume): Make static, add forward declaration.
5719         (proceed): Update header comment.
5720         * infrun.h (resume): Delete declaration.
5721
5722 2018-08-09  Tom Tromey  <tom@tromey.com>
5723
5724         * riscv-tdep.h: Minor formatting fixes.
5725
5726 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5727
5728         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5729         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5730         (test_mkdir_recursive): Likewise.
5731         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5732
5733 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5734
5735         * valarith.c (value_subscripted_rvalue): If an array is not in
5736         memory, and we don't know the upper bound, then we can't know that
5737         the requested element exists or not.
5738
5739 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5740
5741         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5742         (target_options_to_string): Add comment.
5743
5744 2018-08-08  Tom Tromey  <tom@tromey.com>
5745
5746         * unittests/scoped_mmap-selftests.c: Check result of "write".
5747
5748 2018-08-08  Jim Wilson  <jimw@sifive.com>
5749
5750         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5751         (decode_register_index_short): New.
5752         (decode_j_type_insn, decode_cj_type_insn): New.
5753         (decode_b_type_insn, decode_cb_type_insn): New.
5754         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5755         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5756         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5757         is_c_sw_insn instead of is_sw_insn.
5758         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5759         (riscv_software_single_step): New.
5760         * riscv-tdep.h (riscv_software_single_step): Declare.
5761
5762         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5763         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5764
5765 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5766
5767         PR gdb/18050:
5768         * target.c (dispose_inferior): Don't dispose of inferiors that are
5769         already killed.
5770
5771 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5772
5773         * remote.c (remote_target::download_tracepoint): Change char* to
5774         const char*.
5775
5776 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5777
5778         * target.h (target_options_to_string): Return an std::string.
5779         * target.c (str_comma_list_concat_elem): Return void, use
5780         std::string.
5781         (do_option): Likewise.
5782         (target_options_to_string): Return an std::string.
5783         * linux-nat.c (linux_nat_target::wait): Adjust.
5784         * target-debug.h (target_debug_print_options): Adjust.
5785
5786 2018-08-07  Tom Tromey  <tom@tromey.com>
5787
5788         * Makefile.in (CPPFLAGS): New variable.
5789         (INTERNAL_CPPFLAGS): Use it.
5790
5791 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5792
5793         * NEWS: Mention the index cache.
5794
5795 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5796
5797         * common/pathstuff.h (get_standard_cache_dir): New.
5798         * common/pathstuff.c (get_standard_cache_dir): New.
5799         * build-id.h (build_id_to_string): New.
5800         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5801         DEBUG_STR_SUFFIX): Move to here.
5802         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5803         DEBUG_STR_SUFFIX): Move from there.
5804         (write_psymtabs_to_index): Make non-static, add basename
5805         parameter.  Write to temporary files, rename when done.
5806         (save_gdb_index_command): Adjust call to
5807         write_psymtabs_to_index.
5808         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5809         field.
5810         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5811         (get_gdb_index_contents_from_cache): New.
5812         (get_gdb_index_contents_from_cache_dwz): New.
5813         (dwarf2_initialize_objfile): Read index from cache.
5814         (dwarf2_build_psymtabs): Save to index.
5815         * dwarf-index-cache.h: New file.
5816         * dwarf-index-cache.c: New file.
5817         * dwarf-index-write.h: New file.
5818
5819 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5820
5821         * gnulib/aclocal.m4: Re-generate.
5822         * gnulib/config.in: Re-generate.
5823         * gnulib/configure: Re-generate.
5824         * gnulib/import/Makefile.am: Re-generate.
5825         * gnulib/import/Makefile.in: Re-generate.
5826         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5827         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5828         * gnulib/import/m4/mkdir.m4: New file.
5829         * gnulib/import/mkdir.c: New file.
5830         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5831         module.
5832
5833 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5834
5835         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5836         * common/scoped_mmap.c: New file.
5837         * common/scoped_mmap.h (destroy): New method.
5838         (~scoped_mmap, reset): Use destroy.
5839         (scoped_mmap): New move constructor.
5840         (mmap_file): New declaration.
5841         * unittests/scoped_mmap-selftests.c (test_normal,
5842         test_invalid_filename, run_tests): New functions.
5843         (_initialize_scoped_mmap_selftests): Register selftest.
5844
5845 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5846
5847         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5848         (read_gdb_index_from_buffer): ... this.  Remove section
5849         parameter, add buffer parameter.
5850         (get_gdb_index_contents_ftype,
5851         get_gdb_index_contents_dwz_ftype): New typedefs.
5852         (dwarf2_read_gdb_index): Add callback parameters to get the
5853         index contents.
5854         (get_gdb_index_contents_from_section): New.
5855         (dwarf2_initialize_objfile): Update call to
5856         dwarf2_read_gdb_index.
5857
5858 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5859
5860         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5861         (gdb_open_cloexec): Likewise.
5862         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5863         (commandline_from_pid): Likewise.
5864         (linux_xfer_osdata_threads): Likewise.
5865         (linux_xfer_osdata_fds): Likewise.
5866         * ada-lang.c (is_package_name): Likewise.
5867         * auxv.c (procfs_xfer_auxv): Likewise.
5868         * breakpoint.c (print_one_breakpoint_location): Use
5869         uiout::field_fmt.
5870         (print_one_catch_solib): Use string_printf.
5871         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5872         (add_pe_forwarded_sym): Likewise.
5873         * dwarf2read.c (create_type_unit_group): Likewise.
5874         (build_error_marker_type): Likewise.
5875         * infcall.c (get_function_name): Likewise.
5876         * valprint.c (print_converted_chars_to_obstack): Likewise.
5877         * xtensa-tdep.c (xtensa_register_type): Likewise.
5878
5879 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5880
5881         * remote.c (remote_target::download_tracepoint): Fix format
5882         string errors.
5883
5884 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5885
5886         * tracefile.c: Include common/byte-vector.h.
5887         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5888         with trace_regblock_size if needed.  Update uses of buf.
5889
5890 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5891
5892         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5893         std::vector<unsigned char>.
5894         * tracepoint.c (collection_list::collection_list): Remove
5895         m_regs_mask initializer from initializer list.  Resize
5896         m_regs_mask using the largest remote register number.
5897         (collection_list::add_remote_register): Remove size check on
5898         m_regs_mask.  Use at to access element.
5899         (collection_list::stringify): Change type of temp_buf to
5900         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5901         stringify the register mask.  Use pack_hex_byte for the register
5902         mask.
5903
5904 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5905
5906         * tracepoint.h (class collection_list) <add_register>: Remove.
5907         <add_remote_register, add_ax_registers, add_local_register>:
5908         Declare.
5909         <add_memrange>: Add scope parameter.
5910         * tracepoint.c (encode_actions_1): Likewise.
5911         (collection_list::add_register): Rename to ...
5912         (collection_list::add_remote_register): ... this.  Update
5913         comment.
5914         (collection_list::add_ax_registers, add_local_register): New
5915         methods.
5916         (collection_list::add_memrange): Add scope parameter.  Call
5917         add_local_register instead of add_register.
5918         (finalize_tracepoint_aexpr): New function.
5919         (collection_list::collect_symbol): Update calls to add_memrange.
5920         Call add_local_register instead of add_register.  Call
5921         add_ax_registers.  Call finalize_tracepoint_aexpr.
5922         (encode_actions_1): Get remote regnos for $reg action.  Call
5923         add_remote_register, add_ax_registers, and add_local_register.
5924         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5925         (validate_actionline): Call finalize_tracepoint_aexpr.
5926
5927 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5928
5929         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5930         Replace array buf with gdb::char_vector buf, of size
5931         get_remote_packet_size ().  Replace references to buf and
5932         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5933         and xsnprintf with snprintf.  Raise errors if the buffer is too
5934         small.
5935
5936 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5937
5938         * remote.c (remote_target::download_tracepoint): Fix the has_more
5939         predicate in the QTDP action list iteration.
5940
5941 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5942
5943         * remote.c (remote_target::download_tracepoint): Fix indentation
5944         in for block.
5945
5946 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5947
5948         * proc-api.c (_initialize_proc_api): Remove c, unused.
5949         * procfs.c (procfs_init_inferior): Remove signals, unused.
5950         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5951         unused.
5952
5953 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5954             Andrew Burgess  <andrew.burgess@embecosm.com>
5955
5956         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5957         'W_STOPCODE (0)' as this could be ambiguous.
5958
5959 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5960
5961         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5962         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5963         "ai_socktype").
5964
5965 2018-08-02  Tom Tromey  <tom@tromey.com>
5966
5967         PR symtab/16842.
5968         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5969         symbols.
5970         (process_structure_scope): Likewise.
5971
5972 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5973
5974         PR gdb/22629:
5975         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5976         kill inferior.
5977
5978 2018-08-02  Tom Tromey  <tom@tromey.com>
5979
5980         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5981         (darwin_suspend_inferior, darwin_resume_inferior)
5982         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5983         (darwin_check_new_threads): Check result of get_darwin_inferior.
5984
5985 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5986
5987         GDB 8.1.1 released.
5988
5989 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5990
5991         * varobj.c (varobj_get_path_expr_parent): Report an error if
5992         parent is a dynamic varobj.
5993
5994 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5995
5996         * gnulib/aclocal.m4: Re-generate.
5997         * gnulib/config.in: Re-generate.
5998         * gnulib/configure: Re-generate.
5999         * gnulib/import/Makefile.in: Re-generate.
6000         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
6001         * gnulib/import/m4/onceonly.m4: Re-generate.
6002
6003 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
6004
6005         * target-descriptions.c (struct xml_test_tdesc): New.
6006         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
6007         (record_xml_tdesc): Update.
6008         (maintenance_check_xml_descriptions): Update.
6009         * target-descriptions.h (record_xml_tdesc): Update comment.
6010
6011 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
6012
6013         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
6014         checking array bounds are defined.
6015
6016 2018-07-30  Tom Tromey  <tom@tromey.com>
6017
6018         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
6019         irreflexivity violation.
6020
6021 2018-07-30  Tom Tromey  <tom@tromey.com>
6022
6023         * cli/cli-decode.c (lookup_cmd): Remove lint code.
6024         * value.c (unpack_long): Remove lint code.
6025         * valops.c (value_ind): Remove lint code.
6026         * valarith.c (value_x_binop, value_x_unop, value_equal)
6027         (value_pos): Remove lint code.
6028
6029 2018-07-28  Tom de Vries  <tdevries@suse.de>
6030
6031         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
6032         with undefined upper bound as <optimized out>.
6033
6034 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
6035
6036         * gcore.in: Rename variable "name" to "prefix".  Expand
6037         "usage" text.
6038
6039 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
6040
6041         * windows-nat.c (windows_nat_target::create_inferior): Update to
6042         call close() in global namespace.
6043
6044 2018-07-26  Tom Tromey  <tom@tromey.com>
6045
6046         * dwarf-index-write.c (add_address_entry): Don't add objfile
6047         offsets.
6048         * dbxread.c (find_stab_function): Rename from
6049         find_stab_function_addr.  Return a bound_minimal_symbol.
6050         (read_dbx_symtab): Use raw_text_low, raw_text_high.
6051         Don't add objfile offsets.
6052         (end_psymtab): Use raw_text_low, raw_text_high,
6053         MSYMBOL_VALUE_RAW_ADDRESS.
6054         (read_ofile_symtab): Update.
6055         (process_one_symbol): Update.
6056         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
6057         offsets.
6058         (dw2_relocate): Remove.
6059         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
6060         searching addrmap.
6061         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
6062         Update.
6063         (process_psymtab_comp_unit_reader, add_partial_symbol)
6064         (add_partial_subprogram, dwarf2_ranges_read): Update.
6065         (load_partial_dies): Update.
6066         (add_address_entry): Don't add objfile offsets.
6067         (dwarf2_build_include_psymtabs): Update.
6068         (create_addrmap_from_aranges): Don't add objfile offsets.
6069         (dw2_find_pc_sect_compunit_symtab): Update.
6070         * mdebugread.c (parse_symbol): Don't add objfile offsets.
6071         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
6072         Update.
6073         (parse_partial_symbols): Don't add objfile offsets.  Use
6074         raw_text_low, raw_text_high.  Update.
6075         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
6076         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
6077         or call 'relocate' quick function.  Clear psymbol_map.
6078         * psympriv.h (struct partial_symbol) <address>: Add section
6079         offset.
6080         <set_unrelocated_address>: Rename from set_address.
6081         <raw_text_low, raw_text_high>: New methods.
6082         <text_low, text_high>: Add objfile parameter.
6083         (add_psymbol_to_bcache): Add 'section' parameter.  Call
6084         set_unrelocated_address.
6085         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
6086         (find_pc_psymbol): Update.
6087         (fixup_psymbol_section, relocate_psymtabs): Remove.
6088         (dump_psymtab, psym_functions): Update.
6089         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
6090         parameter.
6091         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
6092         (start_psymtab_common): Update.
6093         * symfile-debug.c (debug_qf_relocate): Remove.
6094         (debug_sym_quick_functions): Update.
6095         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
6096         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
6097         Update.
6098
6099 2018-07-26  Tom Tromey  <tromey@redhat.com>
6100
6101         * dbxread.c (end_psymtab): Use text_high_valid and
6102         text_low_valid.
6103         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
6104         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
6105         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
6106         Update comment.
6107         <text_low_valid, text_high_valid>: New fields.
6108         <set_text_low, set_text_high>: Update.
6109         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
6110
6111 2018-07-26  Tom Tromey  <tom@tromey.com>
6112
6113         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
6114         Update.
6115         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
6116         textlow and texthigh fields.
6117         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
6118         Update.
6119         * mdebugread.c (parse_lines, parse_partial_symbols)
6120         (psymtab_to_symtab_1): Update.
6121         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
6122         Rename fields.  Update comment.  Now private.
6123         <text_low, text_high, set_text_low, set_text_high>: New methods.
6124         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
6125         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
6126         (start_psymtab_common, maintenance_info_psymtabs)
6127         (maintenance_check_psymtabs): Update.
6128         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
6129         texthigh fields.
6130         (scan_xcoff_symtab): Update.
6131
6132 2018-07-26  Tom Tromey  <tromey@redhat.com>
6133
6134         * psympriv.h (struct partial_symbol) <unrelocated_address,
6135         address, set_address>: New methods.
6136         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
6137         (fixup_psymbol_section, relocate_psymtabs): Update.
6138         (print_partial_symbols): Add 'objfile' parameter.  Update.
6139         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
6140         Update.
6141
6142 2018-07-26  Tom Tromey  <tom@tromey.com>
6143
6144         * dwarf-index-write.c (write_psymbols, debug_names::insert)
6145         (debug_names::write_psymbols): Update.
6146         * psympriv.h (struct partial_symbol): Derive from
6147         general_symbol_info.
6148         <obj_section>: New method.
6149         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
6150         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
6151         (find_pc_sect_psymbol, fixup_psymbol_section)
6152         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
6153         (print_partial_symbols, recursively_search_psymtabs)
6154         (compare_psymbols, psymbol_hash, psymbol_compare)
6155         (add_psymbol_to_bcache, maintenance_check_psymtabs)
6156         (psymbol_name_matches, psym_fill_psymbol_map): Update.
6157
6158 2018-07-26  Tom Tromey  <tromey@redhat.com>
6159
6160         * dbxread.c (end_psymtab): Remove dead code.
6161
6162 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
6163
6164         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
6165         DWARF unwinders are disabled.
6166         * dwarf2-frame.c: Add dwarf2read.h include.
6167         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
6168         disabled.
6169         (dwarf2_frame_unwinders_enabled_p): Define.
6170         (show_dwarf_unwinders_enabled_p): New function.
6171         (_initialize_dwarf2_frame): Register switch to control DWARF
6172         unwinder use.
6173         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
6174         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
6175         (show_dwarf_cmdlist): Remove static keyword.
6176         * dwarf2read.h (set_dwarf_cmdlist): Declare.
6177         (show_dwarf_cmdlist): Declare.
6178         * NEWS: Document new feature.
6179
6180 2018-07-26  Tom de Vries  <tdevries@suse.de>
6181
6182         PR breakpoints/23366
6183         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
6184
6185 2018-07-26  Tom de Vries  <tdevries@suse.de>
6186
6187         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
6188         DW_AT_count can't be translated to a dynamic prop.
6189
6190 2018-07-25  Tom de Vries  <tdevries@suse.de>
6191
6192         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
6193         try/catch.
6194
6195 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
6196
6197         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
6198
6199 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
6200
6201         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
6202
6203 2018-07-24  Keith Seitz  <keiths@redhat.comt
6204
6205         PR symtab/23010
6206         * dwarf2read.c (dw2_add_symbol_to_list): New function.
6207         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
6208         instead of add_symbol_to_list.
6209         (read_file_scope): Call prepare_one_comp_unit before reading
6210         any other DIEs.
6211
6212 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
6213
6214         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
6215
6216 2018-07-24  Tom Tromey  <tom@tromey.com>
6217
6218         * utils.c (malloc, realloc, free): Don't declare.
6219         * configure, config.in: Rebuild.
6220         * configure.ac: Don't check for declarations of free, malloc, or
6221         realloc.
6222
6223 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6224
6225         * aarch64-linux-nat.c
6226         (aarch64_linux_nat_target::stopped_data_address): Remove unused
6227         variable.
6228         * arm-linux-nat.c (fetch_regs): Likewise.
6229         (store_regs): Likewise.
6230         (fetch_vfp_regs): Likewise.
6231         (store_vfp_regs): Likewise.
6232         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
6233         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
6234         (arm_linux_nat_target::insert_watchpoint): Likewise.
6235         (arm_linux_nat_target::remove_watchpoint): Likewise.
6236         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6237         Likewise.
6238         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6239         Likewise.
6240         * ppc-linux-nat.c (fetch_register): Likewise.
6241         (fetch_all_gp_regs): Likewise.
6242         (fetch_ppc_registers): Likewise.
6243         (store_all_gp_regs): Likewise.
6244         (store_ppc_registers): Likewise.
6245         (hwdebug_insert_point): Likewise.
6246         (can_use_watchpoint_cond_accel): Likewise.
6247         * remote-sim.c (gdb_os_write_stdout): Likewise.
6248
6249 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6250             Tom Tromey  <tom@tromey.com>
6251
6252         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6253         test for it.
6254         * configure: Rebuild.
6255
6256 2018-07-22  Tom Tromey  <tom@tromey.com>
6257
6258         * regformats/regdat.sh: Define xmltarget_${name} inside
6259         #ifndef IN_PROCESS_AGENT.
6260
6261 2018-07-22  Tom Tromey  <tom@tromey.com>
6262
6263         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6264
6265 2018-07-22  Tom Tromey  <tom@tromey.com>
6266
6267         * symfile.c (reread_symbols): Notify iter, not objfile.
6268
6269 2018-07-22  Tom Tromey  <tom@tromey.com>
6270
6271         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6272         Use arch_ops.
6273         (ravenscar_thread_target::prepare_to_store): Likewise.
6274
6275 2018-07-22  Tom Tromey  <tom@tromey.com>
6276
6277         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6278         unused variable.  Call value_fetch_lazy when needed.
6279         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6280         Remove unused variable.  Call value_fetch_lazy when needed.
6281
6282 2018-07-22  Tom Tromey  <tom@tromey.com>
6283
6284         * m32c-tdep.c (mark_dma): Return void.
6285         (make_regs): Remove unused declarations.
6286
6287 2018-07-22  Tom Tromey  <tom@tromey.com>
6288
6289         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6290         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6291         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6292         bkscm_get_valid_block_smob_arg_unsafe for effect.
6293
6294 2018-07-22  Tom Tromey  <tom@tromey.com>
6295
6296         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6297         value_type.
6298
6299 2018-07-22  Tom Tromey  <tom@tromey.com>
6300
6301         * windows-nat.c (saved_context): Conditionally define.
6302         * remote.c (remote_target::remote_btrace_maybe_reopen):
6303         Conditionally declare "warned".
6304         * inflow.c (sigquit_ours): Conditionally define.
6305         (new_tty): Move "tty" declaration inside #if.
6306         * guile/guile.c (guile_datadir): Conditionally define.
6307         * charset.c (set_be_le_names): Move some declarations inside #if.
6308         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6309         #if.
6310         (parse_xml_btrace_conf): Likewise.
6311
6312 2018-07-22  Tom Tromey  <tom@tromey.com>
6313
6314         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6315
6316 2018-07-22  Tom Tromey  <tom@tromey.com>
6317
6318         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6319         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6320         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6321         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6322         * stack.c (frame_apply_level_command): Remove unused variable.
6323         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6324         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6325         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6326         unused variable.
6327         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6328         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6329         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6330         variable.
6331         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6332         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6333         variable.
6334         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6335         Remove unused variable.
6336         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6337         variable.
6338         * common/tdesc.c (print_xml_feature::visit): Remove unused
6339         variable.
6340         * compile/compile-object-load.c (store_regs): Remove unused
6341         variables.
6342         * complaints.c (clear_complaints): Remove unused variable.
6343         * corelow.c (core_target_open): Remove unused variable.
6344         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6345         variable.
6346         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6347         variable.
6348         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6349         variable.
6350         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6351         variable.
6352         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6353         variable.
6354         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6355         variable.
6356         * ia64-tdep.c (examine_prologue): Remove unused variable.
6357         * infcall.c (run_inferior_call): Remove unused variable.
6358         * inferior.c (exit_inferior): Remove unused variable.
6359         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6360         * linespec.c (decode_line_2): Remove unused variable.
6361         * linux-nat.c (super_close): Remove.
6362         * linux-tdep.c (linux_info_proc): Remove unused variable.
6363         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6364         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6365         Remove unused variable.
6366         * parse.c (find_minsym_type_and_address): Remove unused variable.
6367         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6368         variable.
6369         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6370         variable.
6371         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6372         variables.
6373         * record-btrace.c (record_btrace_target::store_registers): Remove
6374         unused variable.
6375         (cmd_show_record_btrace_cpu): Remove unused variable.
6376         * riscv-tdep.c (riscv_register_reggroup_p)
6377         (riscv_push_dummy_call, riscv_return_value): Remove unused
6378         variable.
6379         * rust-exp.y (literal): Remove unused variable.
6380         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6381         unused variable.
6382         <STRUCTOP_ANONYMOUS>: Likewise.
6383         * s390-linux-tdep.c (s390_linux_init_abi_31)
6384         (s390_linux_init_abi_64): Remove unused variable.
6385         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6386         (file_select_thread, net_windows_open, _initialize_ser_windows):
6387         Remove unused variables.
6388         * symtab.c (find_pc_sect_line): Remove unused variable.
6389         * target-memory.c (compute_garbled_blocks): Remove unused
6390         variable.
6391         (target_write_memory_blocks): Remove unused variable.
6392         * target.c (target_stack::unpush): Remove unused variables.
6393         * tracepoint.c (start_tracing, all_tracepoint_actions)
6394         (merge_uploaded_trace_state_variables)
6395         (print_one_static_tracepoint_marker): Remove unused variable.
6396         * unittests/basic_string_view/element_access/char/1.cc (test01):
6397         Remove unused variable.
6398         * windows-nat.c (windows_continue, windows_add_all_dlls)
6399         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6400         Remove unused variables.
6401
6402 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6403
6404         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6405         attr_profile in HAVE_ELF.
6406         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6407         HAVE_ELF.
6408
6409 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6410
6411         * frame.c (frame_register_unwind): Change parameter name.
6412         (frame_unwind_register): Likewise.
6413         (frame_unwind_register_value): Likewise.
6414         (frame_unwind_register_signed): Likewise.
6415         (frame_unwind_register_unsigned): Likewise.
6416         * frame.h (frame_register_unwind): Likewise.
6417         (frame_unwind_register): Likewise.
6418         (frame_unwind_register_value): Likewise.
6419         (frame_unwind_register_signed): Likewise.
6420         (frame_unwind_register_unsigned): Likewise.
6421         (frame_unwind_arch): Likewise.
6422
6423 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6424
6425         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6426         ISA maintenance.
6427
6428 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6429
6430         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6431         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6432         hand.
6433
6434 2018-07-20  Keith Seitz  <keiths@redhat.com>
6435
6436         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6437         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6438         m_compunit_symtab, m_language>: Add "m_" prefix.
6439         Update all uses.
6440         * buildsym.c: Update all uses.
6441
6442 2018-07-20  Tom Tromey  <tom@tromey.com>
6443
6444         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6445         * buildsym.h (record_line_ftype): Remove typedef.
6446
6447 2018-07-20  Tom Tromey  <tom@tromey.com>
6448
6449         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6450         (end_expandable_symtab): Likewise.
6451         (end_symtab_get_static_block): Likewise.
6452         (end_symtab_from_static_block): Likewise.
6453         * buildsym-legacy.c (augment_type_symtab): Remove.
6454         (end_expandable_symtab): Remove.
6455         (end_symtab_get_static_block): Remove.
6456         (end_symtab_from_static_block): Remove.
6457
6458 2018-07-20  Tom Tromey  <tom@tromey.com>
6459
6460         * dwarf2read.c: Include buildsym.h.
6461         (struct dwarf2_cu) <builder>: New method.
6462         (fixup_go_packaging): Update.
6463         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6464         use scoped_free_pendings.
6465         (using_directives): Add "cu" parameter, remove "language".
6466         (read_import_statement, setup_type_unit_groups, )
6467         (read_func_scope, read_lexical_block_scope)
6468         (dwarf2_record_block_ranges, read_namespace): Update.
6469         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6470         (lnp_state_machine::handle_end_sequence): Update.
6471         (class lnp_state_machine) <m_cu>: New member.
6472         <m_record_line_callback>: Remove.
6473         <m_currently_recording_lines>: New member.
6474         (lnp_state_machine::handle_set_file): Update.
6475         (noop_record_line): Remove.
6476         (dwarf_record_line_p): Add cu parameter.
6477         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6478         (lnp_state_machine::record_line)
6479         (lnp_state_machine::lnp_state_machine)
6480         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6481         (dwarf_decode_lines): Update.
6482         (dwarf2_start_subfile): Add cu parameter.
6483         (dwarf2_start_symtab, new_symbol): Update.
6484         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6485         Remove dwarf2_per_objfile parameter.
6486         (dwarf_decode_macros): Update.
6487
6488 2018-07-20  Tom Tromey  <tom@tromey.com>
6489
6490         * stabsread.c (define_symbol): Update.
6491         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6492         * dwarf2read.c (new_symbol): Update.
6493         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6494         * cp-namespace.c: Include buildsym.h.
6495         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6496         * buildsym-legacy.c (get_buildsym_compunit): New function.
6497
6498 2018-07-20  Tom Tromey  <tom@tromey.com>
6499
6500         * xcoffread.c: Include buildsym-legacy.h.
6501         * windows-nat.c: Include buildsym-legacy.h.
6502         * stabsread.c: Include buildsym-legacy.h.
6503         * mdebugread.c: Include buildsym-legacy.h.
6504         * buildsym-legacy.h: New file.
6505         * buildsym-legacy.c: New file, from buildsym.c.
6506         * go32-nat.c: Include buildsym-legacy.h.
6507         * dwarf2read.c: Include buildsym-legacy.h.
6508         * dbxread.c: Include buildsym-legacy.h.
6509         * cp-namespace.c: Include buildsym-legacy.h.
6510         * coffread.c: Include buildsym-legacy.h.
6511         * buildsym.h: Move some contents to buildsym-legacy.h.
6512         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6513         buildsym-legacy.c.
6514         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6515
6516 2018-07-20  Tom Tromey  <tom@tromey.com>
6517
6518         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6519         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6520         (buildsym_compunit::buildsym_compunit)
6521         (buildsym_compunit::~buildsym_compunit)
6522         (buildsym_compunit::get_macro_table): Define.
6523
6524 2018-07-20  Tom Tromey  <tom@tromey.com>
6525
6526         * buildsym.c (reset_symtab_globals): Remove.
6527         (buildsym_compunit::end_symtab_from_static_block): Update.
6528         (buildsym_compunit::augment_type_symtab): Update.
6529         (end_symtab_from_static_block): Call free_buildsym_compunit.
6530         (augment_type_symtab, end_symtab, end_expandable_symtab):
6531         Likewise.
6532
6533 2018-07-20  Tom Tromey  <tom@tromey.com>
6534
6535         * arch-utils.c: Do not include buildsym.h.
6536         * mipsread.c: Do not include buildsym.h.
6537         * machoread.c: Do not include buildsym.h.
6538         * elfread.c: Do not include buildsym.h.
6539
6540 2018-07-20  Tom Tromey  <tom@tromey.com>
6541
6542         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6543         initialization.
6544         (buildsym_compunit): Add new constructor.
6545         (struct buildsym_compunit) <get_last_source_file, finish_block,
6546         record_block_range, start_subfile, patch_subfile_names,
6547         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6548         set_last_source_start_addr, get_last_source_start_addr,
6549         get_local_using_directives, set_local_using_directives,
6550         get_global_using_directives, outermost_context_p,
6551         get_current_context_stack, get_context_stack_depth,
6552         get_current_subfile, get_local_symbols, get_file_symbols,
6553         get_global_symbols, record_debugformat, record_producer,
6554         push_context, pop_context, end_symtab_get_static_block,
6555         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6556         New public methods.
6557         <record_pending_block, finish_block_internal, make_blockvector,
6558         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6559         private methods.
6560         Update all users.
6561
6562 2018-05-22  Tom Tromey  <tom@tromey.com>
6563
6564         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6565         parameter.
6566         (finish_block_internal): Update.
6567
6568 2018-07-20  Tom Tromey  <tom@tromey.com>
6569
6570         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6571         parameter.
6572         (finish_block_internal): Update.
6573
6574 2018-07-20  Tom Tromey  <tom@tromey.com>
6575
6576         * buildsym.h (EXTERN): Don't define or undef.
6577         * buildsym.c (EXTERN): Don't define.
6578
6579 2018-07-20  Tom Tromey  <tom@tromey.com>
6580
6581         * buildsym.c: Remove TODO comment.
6582
6583 2018-07-20  Tom Tromey  <tom@tromey.com>
6584
6585         * coffread.c (coff_symtab_read): Update.
6586         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6587         (xcoff_new_init): Update.
6588         * mipsread.c (mipscoff_new_init): Update.
6589         * mdebugread.c (mdebug_build_psymtabs): Update.
6590         * elfread.c (elf_new_init): Update.
6591         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6592         Update.
6593         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6594         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6595         (stabsect_build_psymtabs): Update.
6596         * buildsym.h (buildsym_init): Don't declare.
6597         * buildsym.c: Update comment.
6598         (prepare_for_building): Remove.
6599         (start_symtab, restart_symtab): Update.
6600         (reset_symtab_globals): Update comment.
6601         (buildsym_init): Remove.
6602
6603 2018-07-20  Tom Tromey  <tom@tromey.com>
6604
6605         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6606         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6607         (read_enum_type, common_block_start, common_block_end)
6608         (cleanup_undefined_types_1, finish_global_stabs): Update.
6609         * mdebugread.c (psymtab_to_symtab_1): Update.
6610         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6611         (read_lexical_block_scope, new_symbol): Update.
6612         * dbxread.c (process_one_symbol): Update.
6613         * coffread.c (coff_symtab_read, process_coff_symbol)
6614         (coff_read_enum_type): Update.
6615         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6616         declare.
6617         (get_local_symbols, get_file_symbols, get_global_symbols): New
6618         functions.
6619         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6620         m_global_symbols.
6621         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6622         (~scoped_free_pendings): Update.
6623         (finish_block, prepare_for_building, reset_symtab_globals)
6624         (end_symtab_get_static_block, end_symtab_with_blockvector)
6625         (augment_type_symtab, push_context): Update.
6626         (get_local_symbols, get_file_symbols, get_global_symbols): New
6627         functions.
6628         (buildsym_init): Update.
6629
6630 2018-07-20  Tom Tromey  <tom@tromey.com>
6631
6632         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6633         (process_full_type_unit): Likewise.
6634         (dwarf2_start_symtab): Set list_in_scope.
6635
6636 2018-07-20  Tom Tromey  <tom@tromey.com>
6637
6638         * dwarf2read.c (process_psymtab_comp_unit_reader)
6639         (build_type_psymtabs_reader): Do not set list_in_scope.
6640
6641 2018-07-20  Tom Tromey  <tom@tromey.com>
6642
6643         * buildsym.c (free_pendings): Remove.
6644         (add_symbol_to_list, scoped_free_pendings)
6645         (finish_block_internal, buildsym_init): Update.
6646
6647 2018-07-20  Tom Tromey  <tom@tromey.com>
6648
6649         * xcoffread.c (read_xcoff_symtab): Update.
6650         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6651         Update.
6652         * dbxread.c (process_one_symbol): Update.
6653         * coffread.c (coff_symtab_read): Update.
6654         * buildsym.h (finish_block): Update.
6655         * buildsym.c (finish_block): Remove "listhead" argument.
6656         (end_symtab_get_static_block): Update.
6657
6658 2018-07-20  Tom Tromey  <tom@tromey.com>
6659
6660         * buildsym.h (class scoped_free_pendings): Remove constructor.
6661         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6662         method.
6663         <m_pending_block_obstack, m_pending_blocks>: New members.
6664         (pending_block_obstack, pending_blocks): Remove.
6665         (scoped_free_pendings::scoped_free_pendings): Default.
6666         (~scoped_free_pendings): Update.
6667         (free_pending_blocks): Remove.
6668         (finish_block_internal, record_pending_block, make_blockvector)
6669         (end_symtab_get_static_block, augment_type_symtab, push_context)
6670         (buildsym_init): Update.
6671
6672 2018-07-20  Tom Tromey  <tom@tromey.com>
6673
6674         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6675         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6676         members.
6677         (pending_addrmap, pending_addrmap_obstack)
6678         (pending_addrmap_interesting): Remove.
6679         (scoped_free_pendings, record_block_range, make_blockvector)
6680         (prepare_for_building, reset_symtab_globals, buildsym_init):
6681         Update.
6682
6683 2018-07-20  Tom Tromey  <tom@tromey.com>
6684
6685         * xcoffread.c (process_linenos): Update.
6686         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6687         * mdebugread.c (psymtab_to_symtab_1): Update.
6688         * dwarf2read.c (setup_type_unit_groups)
6689         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6690         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6691         * dbxread.c (process_one_symbol): Update.
6692         * coffread.c (coff_symtab_read, enter_linenos)
6693         (process_coff_symbol): Update.
6694         * buildsym.h (current_subfile): Don't declare.
6695         (get_current_subfile): Declare.
6696         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6697         member.
6698         (start_subfile, free_buildsym_compunit, push_subfile)
6699         (prepare_for_building, start_symtab): Update.
6700         (get_current_subfile): New function.
6701
6702 2018-07-20  Tom Tromey  <tom@tromey.com>
6703
6704         * coffread.c (coff_symtab_read): Update.
6705         * xcoffread.c (read_xcoff_symtab): Update.
6706         * dwarf2read.c (new_symbol): Update.
6707         (read_func_scope, read_lexical_block_scope): Update.
6708         * dbxread.c (process_one_symbol): Update.
6709         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6710         (outermost_context_p): Remove macro.
6711         (outermost_context_p, get_current_context_stack)
6712         (get_context_stack_depth): Declare.
6713         (pop_context): Return struct context_stack.
6714         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6715         member.
6716         (context_stack_size): Remove.
6717         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6718         (prepare_for_building, end_symtab_get_static_block)
6719         (augment_type_symtab, push_context): Update.
6720         (pop_context): Return struct context_stack.
6721         (outermost_context_p, get_current_context_stack)
6722         (get_context_stack_depth): New functions.
6723         (buildsym_init): Update.
6724
6725 2018-07-20  Tom Tromey  <tom@tromey.com>
6726
6727         * rust-exp.y: Now a pure parser.  Update all rules.
6728         (%union): Move earlier.
6729         (current_parser, work_obstack): Remove globals.
6730         (rust_parser, ~rust_parser): Update.
6731         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6732         lex_character, lex_number, lex_string, lex_identifier,
6733         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6734         convert_name, convert_params_to_expression,
6735         convert_ast_to_expression, ast_basic_type, ast_operation,
6736         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6737         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6738         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6739         ast_array_type, ast_slice_type, ast_reference_type,
6740         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6741         (rust_parse): Update.
6742         (rustyyerror, rustyylex): Add parser parameter.
6743         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6744         (rust_lex_stringish_test, rust_lex_test_sequence)
6745         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6746         (rust_lex_test_push_back, rust_lex_tests): Update.
6747
6748 2018-07-19  Pedro Alves  <palves@redhat.com>
6749
6750         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6751         gdb::unique_xmalloc_ptr.
6752         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6753         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6754         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6755         copy-initialization.
6756         * guile/scm-pretty-print.c (ppscm_print_children): Use
6757         gdb::unique_xmalloc_ptr instead of cleanups.
6758         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6759         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6760         gdb::unique_xmalloc_ptr.
6761         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6762         Adjust to use gdb::unique_xmalloc_ptr.
6763         * guile/scm-utils.c (extract_arg): Adjust.
6764         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6765         gdb::unique_xmalloc_ptr instead of a cleanup.
6766
6767 2018-07-19  Tom Tromey  <tom@tromey.com>
6768
6769         * utils.c (do_value_free_to_mark)
6770         (make_cleanup_value_free_to_mark): Remove.
6771         * utils.h (make_cleanup_value_free_to_mark): Remove.
6772
6773 2018-07-19  Pedro Alves  <palves@redhat.com>
6774
6775         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6776         forwarding reference.
6777
6778 2018-07-18  Pedro Alves  <palves@redhat.com>
6779
6780         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6781         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6782         cleanup.
6783
6784 2018-07-18  Pedro Alves  <palves@redhat.com>
6785
6786         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6787         exceptions.
6788         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6789         (gdbscm_wrap): New.
6790         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6791         directly instead of a cleanup.
6792         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6793         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6794         (vlscm_binop_gdbthrow): New, factored out from ...
6795         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6796         (vlscm_rich_compare): Use gdbscm_wrap.
6797         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6798         instead of a cleanup.
6799         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6800         cleanup.
6801         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6802         Use xfree directly instead of a cleanup.
6803         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6804         Adjust to use gdbscm_wrap and scoped_value_mark.
6805         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6806         (gdbscm_value_address, gdbscm_value_dereference)
6807         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6808         scoped_value_mark.
6809         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6810         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6811         scoped_value_mark.
6812         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6813         gdbscm_wrap and scoped_value_mark.
6814         (gdbscm_value_to_string): Use xfree directly instead of a
6815         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6816         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6817         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6818         scoped_value_mark.
6819         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6820         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6821         scoped_value_mark.
6822         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6823         gdbscm_wrap.
6824
6825 2018-07-18  Tom de Vries  <tdevries@suse.de>
6826
6827         * findvar.c (default_read_var_value): Also resolve dynamic type for
6828         LOC_OPTIMIZED_OUT vars.
6829
6830 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6831
6832         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6833         decoding.
6834
6835 2018-07-17  Tom Tromey  <tom@tromey.com>
6836
6837         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6838         (compute_enum_list, pascm_set_param_value_x)
6839         (gdbscm_parameter_value): Update.
6840         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6841         (gdbscm_scm_to_host_string): Update.
6842         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6843         Update.
6844         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6845         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6846         * guile/scm-string.c (gdbscm_scm_to_string): Return
6847         unique_xmalloc_ptr.
6848         (gdbscm_scm_to_host_string): Likewise.
6849
6850 2018-07-17  Tom Tromey  <tom@tromey.com>
6851
6852         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6853         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6854         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6855         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6856         unique_xmalloc_ptr.
6857
6858 2018-07-17  Tom Tromey  <tom@tromey.com>
6859
6860         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6861         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6862         Update.
6863         * guile/scm-cmd.c (cmdscm_function): Update.
6864         * guile/scm-pretty-print.c
6865         (ppscm_print_exception_unless_memory_error): Update.
6866         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6867         Return unique_xmalloc_ptr.
6868
6869 2018-07-17  Tom Tromey  <tom@tromey.com>
6870
6871         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6872         Use string_printf.
6873
6874 2018-07-17  Jim Wilson  <jimw@sifive.com>
6875
6876         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6877         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6878         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6879         unecessary braces after EF_RISCV_RVC test.  Delete call to
6880         set_gdbarch_decr_pc_after_break.
6881
6882         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6883         RISCV_LAST_FP_REGNUM + 1.
6884         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6885
6886 2018-07-17  Tom Tromey  <tom@tromey.com>
6887
6888         * configure.ac: Remove --disable-gdbcli.
6889         * configure: Rebuild.
6890         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6891         (SUBDIR_CLI_CFLAGS): Remove.
6892         (SFILES): Use SUBDIR_CLI_SRCS.
6893         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6894
6895 2018-07-17  Tom Tromey  <tom@tromey.com>
6896
6897         PR gdb/18624:
6898         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6899
6900 2018-07-16  Jim Wilson  <jimw@sifive.com>
6901
6902         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6903
6904 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6905
6906         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6907         variable.
6908         (libunwind_frame_sniffer): Likewise.
6909         (libunwind_frame_prev_register): Likewise.
6910         (libunwind_sigtramp_frame_sniffer): Likewise.
6911         * ia64-tdep.c (ia64_access_reg): Likewise.
6912         (ia64_access_rse_reg): Likewise.
6913         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6914         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6915
6916 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6917
6918         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6919
6920 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6921
6922         * remote-sim.c (gdbsim_target::close,
6923         gdbsim_target::mourn_inferior): Remove unused variables.
6924
6925 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6926
6927         * ia64-tdep.c (ktab_buf): New global.
6928         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6929         (get_kernel_table): Adjust.
6930
6931 2018-07-16  Tom Tromey  <tom@tromey.com>
6932
6933         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6934         * dwarf2read.c (using_directives, new_symbol): Use
6935         outermost_context_p.
6936         * dbxread.c (process_one_symbol): Use outermost_context_p.
6937         * coffread.c (coff_symtab_read): Use outermost_context_p.
6938
6939 2018-07-16  Tom Tromey  <tom@tromey.com>
6940
6941         * dwarf2read.c (using_directives, read_func_scope)
6942         (read_lexical_block_scope): Update.
6943         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6944         * buildsym.h (local_using_directives, global_using_directives):
6945         Don't declare.
6946         (get_local_using_directives, set_local_using_directives)
6947         (get_global_using_directives): Declare.
6948         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6949         m_global_using_directives>: New members.
6950         (finish_block_internal, prepare_for_building)
6951         (reset_symtab_globals, end_symtab_get_static_block)
6952         (push_context): Update.
6953         (get_local_using_directives, set_local_using_directives)
6954         (get_global_using_directives): New functions.
6955         (buildsym_init): Update.
6956
6957 2018-07-16  Tom Tromey  <tom@tromey.com>
6958
6959         * xcoffread.c (xcoff_initial_scan): Don't call
6960         free_pending_blocks.
6961         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6962         * buildsym.h (class scoped_free_pendings): Add constructor.
6963         (free_pending_blocks): Don't declare.
6964         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6965         (free_pending_blocks): Now static.
6966
6967 2018-07-16  Tom Tromey  <tom@tromey.com>
6968
6969         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6970         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6971         member.
6972         (struct subfile_stack): Remove.
6973         (subfile_stack): Remove.
6974         (push_subfile, pop_subfile, buildsym_init): Update.
6975
6976 2018-07-16  Tom Tromey  <tom@tromey.com>
6977
6978         * buildsym.c (push_subfile): Use gdb_assert.
6979         (pop_subfile): Use gdb_assert.
6980
6981 2018-07-16  Tom Tromey  <tom@tromey.com>
6982
6983         * buildsym.h (merge_symbol_lists): Remove.
6984         * buildsym.c (merge_symbol_lists): Remove.
6985
6986 2018-07-16  Tom Tromey  <tom@tromey.com>
6987
6988         * stabsread.c (scan_file_globals): Update comment.
6989         * stabsread.h (scan_file_globals): Move from buildsym.h.
6990         * buildsym.h (scan_file_globals): Move to stabsread.h.
6991
6992 2018-07-16  Tom Tromey  <tom@tromey.com>
6993
6994         * xcoffread.c (xcoff_new_init): Update.
6995         * mipsread.c (mipscoff_new_init): Update.
6996         * mdebugread.c (mdebug_build_psymtabs): Update.
6997         * elfread.c (elf_new_init): Update.
6998         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6999         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
7000         * buildsym.h (buildsym_new_init): Don't declare.
7001         * buildsym.c (buildsym_new_init): Remove.
7002
7003 2018-07-16  Tom Tromey  <tom@tromey.com>
7004
7005         * stabsread.h (within_function): Move from buildsym.h.
7006         * stabsread.c (start_stabs): Clear within_function.
7007         * coffread.c (coff_start_symtab): Clear within_function.
7008         * buildsym.h (within_function): Move to stabsread.h.
7009         * buildsym.c (prepare_for_building): Update.
7010
7011 2018-07-16  Tom Tromey  <tom@tromey.com>
7012
7013         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
7014         * dwarf2read.c (dwarf2_start_symtab): Don't set
7015         processing_gcc_compilation.
7016         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
7017
7018 2018-07-16  Tom Tromey  <tom@tromey.com>
7019
7020         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
7021         (next_symbol_text_func): Move from buildsym.h.
7022         * stabsread.c (hashname): Move from buildsym.c.
7023         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
7024         (next_symbol_text_func, hashname): Move to stabsread.h.
7025         * buildsym.c: Don't include bcache.h
7026         (hashname): Move to stasbread.c.
7027
7028 2018-07-16  Tom Tromey  <tom@tromey.com>
7029
7030         * buildsym.h (context_stack_size): Don't declare.
7031         * buildsym.c (context_stack_size): New global.
7032
7033 2018-07-16  Tom Tromey  <tom@tromey.com>
7034
7035         * dbxread.c (processing_acc_compilation): New global.
7036         * buildsym.h (processing_acc_compilation): Don't declare.
7037
7038 2018-07-16  Tom Tromey  <tom@tromey.com>
7039
7040         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
7041         * dbxread.c (read_ofile_symtab): Update.
7042         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
7043         * buildsym.h (last_source_start_addr): Remove.
7044         (set_last_source_start_addr, get_last_source_start_addr):
7045         Declare.
7046         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
7047         parameter.
7048         (struct buildsym_compunit) <m_last_source_start_addr>: New
7049         member.
7050         (prepare_for_building): Remove start_addr parameter.
7051         (start_symtab, restart_symtab, end_symtab_get_static_block)
7052         (end_symtab_with_blockvector): Update.
7053         (set_last_source_start_addr, get_last_source_start_addr): New
7054         functions.
7055
7056 2018-07-16  Tom Tromey  <tom@tromey.com>
7057
7058         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
7059         member.
7060         (have_line_numbers): Remove.
7061         (record_line, prepare_for_building, end_symtab_get_static_block)
7062         (augment_type_symtab): Update.
7063
7064 2018-07-16  Tom Tromey  <tom@tromey.com>
7065
7066         * buildsym.c (~buildsym_compunit): Free the macro table.
7067         (struct buildsym_compunit) <get_macro_table, release_macros>: New
7068         methods.
7069         <m_pending_macros>: New member.
7070         (pending_macros): Remove.
7071         (~scoped_free_pendings, get_macro_table, prepare_for_building)
7072         (reset_symtab_globals, end_symtab_get_static_block)
7073         (end_symtab_with_blockvector, augment_type_symtab)
7074         (buildsym_init): Update.
7075
7076 2018-07-16  Tom Tromey  <tom@tromey.com>
7077
7078         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
7079         parameter.
7080         (buildsym_compunit::set_last_source_file): New method.
7081         <m_last_source_file>: New member.
7082         (prepare_for_building): Remove "name" parameter.
7083         (start_symtab, restart_symtab, reset_symtab_globals): Update.
7084         (last_source_file): Remove.
7085         (set_last_source_file, get_last_source_file): Update.
7086
7087 2018-07-16  Tom Tromey  <tom@tromey.com>
7088
7089         * buildsym.c (prepare_for_building): Add assert.
7090
7091 2018-07-16  Tom Tromey  <tom@tromey.com>
7092
7093         * buildsym.c (~buildsym_compunit): Update.
7094         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
7095         (start_subfile, patch_subfile_names)
7096         (end_symtab_with_blockvector): Update.
7097
7098 2018-07-16  Tom Tromey  <tom@tromey.com>
7099
7100         * buildsym.c (struct buildsym_compunit): Add constructor,
7101         destructor, initializers.
7102         (start_buildsym_compunit): Remove.
7103         (free_buildsym_compunit): Use "delete".
7104         (start_symtab, restart_symtab): Use "new".
7105
7106 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
7107
7108         * symfile.c (set_objfile_default_section_offset): Remove struct
7109         keyword.
7110
7111 2018-07-14  Stafford Horne  <shorne@gmail.com>
7112
7113         * (Responsible Maintainers): Add myself as or1k maintainer.
7114
7115 2018-07-13  Tom Tromey  <tom@tromey.com>
7116
7117         * symfile.c (set_objfile_default_section_offset): Use extra braces
7118         around initializer.
7119
7120 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
7121
7122         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
7123         non-branching basr.
7124
7125 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7126
7127         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7128         unittests/cli-utils-selftests.c
7129         * unittests/cli-utils-selftests.c: New file.
7130
7131 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7132
7133         * NEWS: Mention new commands. Mention change to 'thread apply'.
7134
7135 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7136
7137         * thread.c (thr_try_catch_cmd): New function.
7138         (thread_apply_all_command): Handle qcs flags.
7139         (thread_apply_command): Handle qcs flags.
7140         (taas_command): New function.
7141         (tfaas_command): New function.
7142         (_initialize_thread): Update to setup the new commands 'taas
7143         and 'tfaas'. Change doc string for 'thread apply'.
7144
7145 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7146
7147         * stack.c: (trailing_outermost_frame): New function, mostly
7148         extracted from backtrace_command_1.
7149         (leading_innermost_frame): New function.
7150         (backtrace_command_1): Update to call trailing_outermost_frame.
7151         (frame_apply_command_count): New function.
7152         (frame_apply_level_command): New function.
7153         (frame_apply_all_command): New function.
7154         (frame_apply_command): New function.
7155         (faas_command): New function.
7156         (frame_cmd_list): New variable.
7157         (_initialize_stack): Update to setup the new commands 'frame apply'
7158         and 'faas'.
7159
7160 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7161
7162         * cli-utils.c (number_or_range_parser::get_number): Only handle
7163         numbers or convenience var as numbers.
7164         (parse_flags): New function.
7165         (parse_flags_qcs): New function.
7166         (number_or_range_parser::finished): Ensure parsing end is detected
7167         before end of string.
7168         * cli-utils.h (parse_flags): New function.
7169         (parse_flags_qcs): New function.
7170         (number_or_range_parser): Remove m_finished bool.
7171         (number_or_range_parser::skip_range): Set m_in_range to false.
7172
7173 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
7174
7175         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
7176         on Windows.
7177
7178 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7179             Jan Kratochvil  <jan.kratochvil@redhat.com>
7180             Paul Fertser  <fercerpav@gmail.com>
7181             Tsutomu Seki  <sekiriki@gmail.com>
7182             Pedro Alves  <palves@redhat.com>
7183
7184         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7185         'unittests/parse-connection-spec-selftests.c'.
7186         (COMMON_SFILES): Add 'common/netstuff.c'.
7187         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
7188         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
7189         * common/netstuff.c: New file.
7190         * common/netstuff.h: New file.
7191         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
7192         (wait_for_connect): Update comment.  New parameter
7193         'gdb::optional<int> sock' instead of 'struct serial *scb'.
7194         Use 'sock' directly instead of 'scb->fd'.
7195         (try_connect): New function, with code from 'net_open'.
7196         (net_open): Rewrite main loop to deal with multiple
7197         sockets/addresses.  Handle IPv6-style hostnames; implement
7198         support for IPv6 connections.
7199         * unittests/parse-connection-spec-selftests.c: New file.
7200
7201 2018-07-11  Pedro Alves  <palves@redhat.com>
7202
7203         PR gdb/23377
7204         * remote.c (remote_target::remote_detach_pid): Call
7205         set_current_process.
7206
7207 2018-07-11  Pedro Alves  <palves@redhat.com>
7208
7209         * h8300-tdep.c (h8300_gdbarch_init): Remove
7210         set_gdbarch_ecoff_reg_to_regnum calls.
7211
7212 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7213
7214         PR c++/23373
7215         * c-typeprint.c (c_type_print_base_struct_union): Don't print
7216         offsets/sizes for static members of a class/struct.
7217
7218 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
7219
7220         * target-descriptions.c (tdesc_register_bitsize): Rename.
7221         * target-descriptions.h (tdesc_register_bitsize): Likewise.
7222         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
7223         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
7224
7225 2018-07-10  Tom Tromey  <tom@tromey.com>
7226
7227         * breakpoint.c (moribund_locations): Now static and a
7228         std::vector.
7229         (breakpoint_init_inferior, moribund_breakpoint_here_p)
7230         (build_bpstat_chain, update_global_location_list)
7231         (breakpoint_retire_moribund): Update.
7232         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
7233         VEC.
7234
7235 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7236
7237         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7238         (riscv_register_reggroup_p): Use new function, remove unneeded
7239         parenthesis.
7240         (riscv_push_dummy_call): Extend assert to compare against xlen or
7241         flen based on register type.
7242
7243 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7244
7245         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7246
7247 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7248
7249         * remote.c (show_hardware_watchpoint_limit): New function.
7250         (show_hardware_watchpoint_length_limit): New function.
7251         (show_hardware_breakpoint_limit): New function.
7252         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7253         where appropriate, update help text.
7254
7255 2018-07-09  Tom Tromey  <tom@tromey.com>
7256
7257         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7258         (CLIBS): Don't mention NAT_CLIBS.
7259
7260 2018-07-09  Tom Tromey  <tom@tromey.com>
7261
7262         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7263         (LIBGDB_OBS, clean mostlyclean): Update.
7264         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7265
7266 2018-07-09  Tom Tromey  <tom@tromey.com>
7267
7268         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7269         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7270         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7271
7272 2018-07-09  Tom Tromey  <tom@tromey.com>
7273
7274         * Makefile.in (ALLDEPFILES): Remove exec.c.
7275         (COMMON_OBS): Remove exec.o.
7276         (COMMON_SFILES): Add exec.c.
7277
7278 2018-07-09  Tom Tromey  <tom@tromey.com>
7279
7280         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7281
7282 2018-07-09  Tom Tromey  <tom@tromey.com>
7283
7284         * Makefile.in (clean mostlyclean): Remove stamp-version.
7285         (version.c): Depend on stamp-version.
7286         (stamp-version): New rule, from version.c rule.
7287
7288 2018-07-09  Tom Tromey  <tom@tromey.com>
7289
7290         * Makefile.in (init.c): Depend on stamp-init.
7291         (stamp-init): New rule, from init.c rule.
7292         (clean mostlyclean): Remove stamp-init.
7293
7294 2018-07-09  Tom Tromey  <tom@tromey.com>
7295
7296         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7297         SUBDIR_GCC_COMPILE_SRCS.
7298
7299 2018-07-09  Tom Tromey  <tom@tromey.com>
7300
7301         * Makefile.in (init.c): Remove some unused sed rules.
7302
7303 2018-07-09  Tom Tromey  <tom@tromey.com>
7304
7305         * Makefile.in (TSOBS): Remove.
7306         (INIT_FILES): Update.
7307         (LIBGDB_OBS): Update.
7308         (COMMON_SFILES): Add inflow.c.
7309         (SFILES): Remove inflow.c.
7310
7311 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7312
7313         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7314
7315 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7316
7317         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7318         get_saveloc_name, is_signal_frame_name, step_name,
7319         init_remote_name, create_addr_space_name,
7320         destroy_addr_space_name, search_unwind_table_name,
7321         find_dyn_list_name): Constify.
7322
7323 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7324
7325         * darwin-nat.c (darwin_pthread_kill): New function.
7326         (darwin_resume_thread): Use darwin_pthread_kill.
7327
7328 2018-07-05  Tom de Vries  <tdevries@suse.de>
7329
7330         * macroexp.c (macro_buffer) <operator=>: New member function.
7331
7332 2018-07-04  Tom Tromey  <tom@tromey.com>
7333
7334         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7335
7336 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7337
7338         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7339         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7340         * maint.c: Likewise.
7341         * top.c: Likewise.
7342
7343 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7344
7345         * NEWS: Create a new section for the next release branch.
7346         Rename the section of the current branch, now that it has
7347         been cut.
7348
7349 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7350
7351         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7352         * version.in: Bump version to 8.2.50.DATE-git.
7353
7354 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7355             Pedro Alves  <palves@redhat.com>
7356
7357         * linux-nat.c (linux_init_ptrace): Rename to ...
7358         (linux_init_ptrace_procfs): ... this.  Call
7359         linux_proc_init_warnings.
7360         (linux_nat_target::post_attach)
7361         (linux_nat_target::post_startup_inferior): Adjust.
7362         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7363         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7364
7365 2018-07-04  Tom de Vries  <tdevries@suse.de>
7366
7367         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7368         check ...
7369         (read_comp_unit_head): ... here.
7370
7371 2018-07-03  Tom Tromey  <tom@tromey.com>
7372
7373         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7374         (stop_tracing, tstatus_command)
7375         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7376         (print_one_static_tracepoint_marker): Update.
7377         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7378         std::vector.
7379         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7380         VEC.
7381         (all_tracepoints, static_tracepoints_here): Return std::vector.
7382
7383 2018-07-03  Tom Tromey  <tom@tromey.com>
7384
7385         * common/ptid.c (ptid_equal): Remove.
7386         * common/ptid.h (ptid_equal): Don't declare.
7387         * ada-tasks.c: Update.
7388         * breakpoint.c: Update.
7389         * common/agent.c: Update.
7390         * corelow.c: Update.
7391         * darwin-nat-info.c: Update.
7392         * darwin-nat.c: Update.
7393         * dcache.c: Update.
7394         * dtrace-probe.c: Update.
7395         * dummy-frame.c: Update.
7396         * fbsd-nat.c: Update.
7397         * frame.c: Update.
7398         * gdbthread.h: Update.
7399         * gnu-nat.c: Update.
7400         * go32-nat.c: Update.
7401         * inf-loop.c: Update.
7402         * inf-ptrace.c: Update.
7403         * infcall.c: Update.
7404         * infcmd.c: Update.
7405         * inflow.c: Update.
7406         * infrun.c: Update.
7407         * linux-fork.c: Update.
7408         * linux-nat.c: Update.
7409         * linux-thread-db.c: Update.
7410         * mi/mi-cmd-var.c: Update.
7411         * mi/mi-interp.c: Update.
7412         * mi/mi-main.c: Update.
7413         * nto-procfs.c: Update.
7414         * ppc-linux-tdep.c: Update.
7415         * procfs.c: Update.
7416         * python/py-inferior.c: Update.
7417         * python/py-record-btrace.c: Update.
7418         * python/py-record.c: Update.
7419         * ravenscar-thread.c: Update.
7420         * regcache.c: Update.
7421         * remote-sim.c: Update.
7422         * remote.c: Update.
7423         * sol-thread.c: Update.
7424         * solib.c: Update.
7425         * target.c: Update.
7426         * tui/tui-stack.c: Update.
7427         * varobj.c: Update.
7428         * windows-nat.c: Update.
7429         * windows-tdep.c: Update.
7430
7431 2018-07-03  Tom Tromey  <tom@tromey.com>
7432
7433         * common/ptid.c (ptid_match): Remove.
7434         * common/ptid.h (ptid_match): Don't declare.
7435         * fbsd-nat.c: Update.
7436         * infcmd.c: Update.
7437         * infrun.c: Update.
7438         * linux-nat.c: Update.
7439         * record-btrace.c: Update.
7440         * regcache.c: Update.
7441         * remote.c: Update.
7442
7443 2018-07-03  Tom Tromey  <tom@tromey.com>
7444
7445         * common/ptid.c (ptid_tid_p): Remove.
7446         * common/ptid.h (ptid_tid_p): Don't declare.
7447         * sol-thread.c: Update.
7448
7449 2018-07-03  Tom Tromey  <tom@tromey.com>
7450
7451         * common/ptid.c (ptid_lwp_p): Remove.
7452         * common/ptid.h (ptid_lwp_p): Don't declare.
7453         * fbsd-nat.c: Update.
7454         * linux-nat.c: Update.
7455         * nat/linux-procfs.c: Update.
7456         * nat/x86-linux-dregs.c: Update.
7457         * sol-thread.c: Update.
7458
7459 2018-07-03  Tom Tromey  <tom@tromey.com>
7460
7461         * common/ptid.c (ptid_is_pid): Remove.
7462         * common/ptid.h (ptid_is_pid): Don't declare.
7463         * infrun.c: Update.
7464         * linux-nat.c: Update.
7465         * mi/mi-interp.c: Update.
7466         * remote.c: Update.
7467         * thread.c: Update.
7468
7469 2018-07-03  Tom Tromey  <tom@tromey.com>
7470
7471         * common/ptid.c (ptid_get_tid): Remove.
7472         * common/ptid.h (ptid_get_tid): Don't declare.
7473         * ada-tasks.c: Update.
7474         * aix-thread.c: Update.
7475         * bsd-uthread.c: Update.
7476         * darwin-nat.c: Update.
7477         * fbsd-nat.c: Update.
7478         * i386-darwin-nat.c: Update.
7479         * infrun.c: Update.
7480         * linux-tdep.c: Update.
7481         * nto-procfs.c: Update.
7482         * ppc-ravenscar-thread.c: Update.
7483         * python/py-infthread.c: Update.
7484         * ravenscar-thread.c: Update.
7485         * sol-thread.c: Update.
7486         * sparc-ravenscar-thread.c: Update.
7487         * windows-nat.c: Update.
7488
7489 2018-07-03  Tom Tromey  <tom@tromey.com>
7490
7491         * common/ptid.c (ptid_get_lwp): Remove.
7492         * common/ptid.h (ptid_get_lwp): Don't declare.
7493         * aarch64-linux-nat.c: Update.
7494         * ada-tasks.c: Update.
7495         * aix-thread.c: Update.
7496         * amd64-linux-nat.c: Update.
7497         * arm-linux-nat.c: Update.
7498         * corelow.c: Update.
7499         * fbsd-nat.c: Update.
7500         * fbsd-tdep.c: Update.
7501         * gnu-nat.c: Update.
7502         * i386-cygwin-tdep.c: Update.
7503         * i386-gnu-nat.c: Update.
7504         * i386-linux-nat.c: Update.
7505         * ia64-linux-nat.c: Update.
7506         * inf-ptrace.c: Update.
7507         * infrun.c: Update.
7508         * linux-fork.c: Update.
7509         * linux-nat.c: Update.
7510         * linux-tdep.c: Update.
7511         * linux-thread-db.c: Update.
7512         * mips-linux-nat.c: Update.
7513         * nat/aarch64-linux-hw-point.c: Update.
7514         * nat/aarch64-linux.c: Update.
7515         * nat/linux-btrace.c: Update.
7516         * nat/linux-osdata.c: Update.
7517         * nat/linux-procfs.c: Update.
7518         * nat/x86-linux-dregs.c: Update.
7519         * obsd-nat.c: Update.
7520         * ppc-fbsd-nat.c: Update.
7521         * ppc-linux-nat.c: Update.
7522         * procfs.c: Update.
7523         * python/py-infthread.c: Update.
7524         * ravenscar-thread.c: Update.
7525         * remote.c: Update.
7526         * s390-linux-nat.c: Update.
7527         * sol-thread.c: Update.
7528         * sol2-tdep.c: Update.
7529         * spu-linux-nat.c: Update.
7530         * x86-linux-nat.c: Update.
7531         * xtensa-linux-nat.c: Update.
7532
7533 2018-07-03  Tom Tromey  <tom@tromey.com>
7534
7535         * common/ptid.c (ptid_get_pid): Remove.
7536         * common/ptid.h (ptid_get_pid): Don't declare.
7537         * aarch64-linux-nat.c: Update.
7538         * ada-lang.c: Update.
7539         * aix-thread.c: Update.
7540         * alpha-bsd-nat.c: Update.
7541         * amd64-fbsd-nat.c: Update.
7542         * amd64-linux-nat.c: Update.
7543         * arm-linux-nat.c: Update.
7544         * arm-nbsd-nat.c: Update.
7545         * auxv.c: Update.
7546         * break-catch-syscall.c: Update.
7547         * breakpoint.c: Update.
7548         * bsd-uthread.c: Update.
7549         * corelow.c: Update.
7550         * ctf.c: Update.
7551         * darwin-nat.c: Update.
7552         * fbsd-nat.c: Update.
7553         * fbsd-tdep.c: Update.
7554         * gcore.c: Update.
7555         * gnu-nat.c: Update.
7556         * hppa-nbsd-nat.c: Update.
7557         * hppa-obsd-nat.c: Update.
7558         * i386-fbsd-nat.c: Update.
7559         * ia64-linux-nat.c: Update.
7560         * inf-ptrace.c: Update.
7561         * infcmd.c: Update.
7562         * inferior.c: Update.
7563         * inferior.h: Update.
7564         * inflow.c: Update.
7565         * infrun.c: Update.
7566         * linux-fork.c: Update.
7567         * linux-nat.c: Update.
7568         * linux-tdep.c: Update.
7569         * linux-thread-db.c: Update.
7570         * m68k-bsd-nat.c: Update.
7571         * mi/mi-interp.c: Update.
7572         * mi/mi-main.c: Update.
7573         * mips-linux-nat.c: Update.
7574         * mips-nbsd-nat.c: Update.
7575         * mips64-obsd-nat.c: Update.
7576         * nat/aarch64-linux-hw-point.c: Update.
7577         * nat/aarch64-linux.c: Update.
7578         * nat/linux-btrace.c: Update.
7579         * nat/linux-osdata.c: Update.
7580         * nat/linux-procfs.c: Update.
7581         * nat/x86-linux-dregs.c: Update.
7582         * nto-procfs.c: Update.
7583         * obsd-nat.c: Update.
7584         * ppc-linux-nat.c: Update.
7585         * ppc-nbsd-nat.c: Update.
7586         * ppc-obsd-nat.c: Update.
7587         * proc-service.c: Update.
7588         * procfs.c: Update.
7589         * python/py-inferior.c: Update.
7590         * python/py-infthread.c: Update.
7591         * ravenscar-thread.c: Update.
7592         * record.c: Update.
7593         * remote-sim.c: Update.
7594         * remote.c: Update.
7595         * rs6000-nat.c: Update.
7596         * s390-linux-nat.c: Update.
7597         * sh-nbsd-nat.c: Update.
7598         * sol-thread.c: Update.
7599         * sparc-nat.c: Update.
7600         * sparc64-tdep.c: Update.
7601         * spu-linux-nat.c: Update.
7602         * spu-tdep.c: Update.
7603         * target-debug.h: Update.
7604         * target.c: Update.
7605         * thread.c: Update.
7606         * tid-parse.c: Update.
7607         * tracefile-tfile.c: Update.
7608         * vax-bsd-nat.c: Update.
7609         * windows-nat.c: Update.
7610         * x86-linux-nat.c: Update.
7611         * x86-nat.c: Update.
7612
7613 2018-07-03  Tom Tromey  <tom@tromey.com>
7614
7615         * common/ptid.c (pid_to_ptid): Remove.
7616         * common/ptid.h (pid_to_ptid): Don't declare.
7617         * aix-thread.c: Update.
7618         * arm-linux-nat.c: Update.
7619         * common/ptid.c: Update.
7620         * common/ptid.h: Update.
7621         * corelow.c: Update.
7622         * ctf.c: Update.
7623         * darwin-nat.c: Update.
7624         * fbsd-nat.c: Update.
7625         * fork-child.c: Update.
7626         * gnu-nat.c: Update.
7627         * go32-nat.c: Update.
7628         * inf-ptrace.c: Update.
7629         * infcmd.c: Update.
7630         * inferior.c: Update.
7631         * infrun.c: Update.
7632         * linux-fork.c: Update.
7633         * linux-nat.c: Update.
7634         * nat/aarch64-linux-hw-point.c: Update.
7635         * nat/fork-inferior.c: Update.
7636         * nat/x86-linux-dregs.c: Update.
7637         * nto-procfs.c: Update.
7638         * obsd-nat.c: Update.
7639         * procfs.c: Update.
7640         * progspace.c: Update.
7641         * remote.c: Update.
7642         * rs6000-nat.c: Update.
7643         * s390-linux-nat.c: Update.
7644         * sol-thread.c: Update.
7645         * spu-linux-nat.c: Update.
7646         * target.c: Update.
7647         * top.c: Update.
7648         * tracefile-tfile.c: Update.
7649         * windows-nat.c: Update.
7650
7651 2018-07-03  Tom Tromey  <tom@tromey.com>
7652
7653         * common/ptid.h (ptid_build): Don't declare.
7654         * common/ptid.c (ptid_build): Remove.
7655         * aix-thread.c: Update.
7656         * bsd-kvm.c: Update.
7657         * bsd-uthread.c: Update.
7658         * common/agent.c: Update.
7659         * common/ptid.c: Update.
7660         * common/ptid.h: Update.
7661         * corelow.c: Update.
7662         * darwin-nat.c: Update.
7663         * fbsd-nat.c: Update.
7664         * gnu-nat.c: Update.
7665         * linux-fork.c: Update.
7666         * linux-nat.c: Update.
7667         * linux-thread-db.c: Update.
7668         * nat/linux-osdata.c: Update.
7669         * nat/linux-procfs.c: Update.
7670         * nto-procfs.c: Update.
7671         * obsd-nat.c: Update.
7672         * proc-service.c: Update.
7673         * procfs.c: Update.
7674         * ravenscar-thread.c: Update.
7675         * remote-sim.c: Update.
7676         * remote.c: Update.
7677         * sol-thread.c: Update.
7678         * target.c: Update.
7679         * windows-nat.c: Update.
7680
7681 2018-07-03  Tom Tromey  <tom@tromey.com>
7682
7683         * infrun.c (follow_exec): Use exit_inferior_silent.
7684         * inferior.c (exit_inferior_num_silent): Remove.
7685         * inferior.h (exit_inferior_num_silent): Don't declare.
7686
7687 2018-07-03  Tom Tromey  <tom@tromey.com>
7688
7689         PR cli/23340:
7690         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7691         inferior_ptid on error.
7692
7693 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7694             Simon Marchi  <simon.marchi@polymtl.ca>
7695
7696         PR tdep/8282
7697         * disasm.h (gdb_disassembler): Add
7698         `m_disassembler_options_holder'. member
7699         * disasm.c (get_all_disassembler_options): New function.
7700         (gdb_disassembler::gdb_disassembler): Use it.
7701         (gdb_buffered_insn_length_init_dis): Likewise.
7702         (gdb_buffered_insn_length): Adjust accordingly.
7703         (set_disassembler_options): Handle options with arguments.
7704         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7705         line if showing options with descriptions.
7706         (disassembler_options_completer): Adapt to using the
7707         `disasm_options_and_args_t' structure.
7708         * mips-tdep.c (mips_disassembler_options): New variable.
7709         (mips_disassembler_options_o32): Likewise.
7710         (mips_disassembler_options_n32): Likewise.
7711         (mips_disassembler_options_n64): Likewise.
7712         (gdb_print_insn_mips): Don't set `disassembler_options'.
7713         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7714         functions.
7715         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7716         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7717         `gdbarch_disassembler_options_implicit' and
7718         `gdbarch_valid_disassembler_options'.
7719         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7720         `disasm_options_and_args_t' structure.
7721         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7722         method.
7723         (valid_disassembler_options): Switch from `disasm_options_t' to
7724         the `disasm_options_and_args_t' structure.
7725         * NEWS: Document `set disassembler-options' support for the MIPS
7726         target.
7727         * gdbarch.h: Regenerate.
7728         * gdbarch.c: Regenerate.
7729
7730 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7731
7732         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7733
7734 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7735
7736         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7737         parameter in call to amd64_target_description.
7738         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7739         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7740         (amd64fbsd_init_abi): Likewise.
7741         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7742         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7743         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7744         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7745
7746 2018-06-29  Pedro Alves  <palves@redhat.com>
7747
7748         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7749         "segments" parameter.
7750         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7751         (_initialize_amd64_tdep): Update call to
7752         amd64_create_target_description.
7753         (amd64_target_description): Add "segments" parameter.  Adjust
7754         the implementation to use it.
7755         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7756         call to amd64_create_target_description.
7757         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7758         * gdb/arch/amd64.h (amd64_create_target_description): Add
7759         "segments" register.
7760         * gdb/arch/amd64.c (amd64_create_target_description): Add
7761         "segments" parameter.  Call create_feature_i386_64bit_segments
7762         only if SEGMENTS is true.
7763         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7764         call to amd64_create_target_description.
7765
7766 2018-06-29  Pedro Alves  <palves@redhat.com>
7767
7768         * thread.c (thread_target_id_str): New, factored out from ...
7769         (print_thread_info_1): ... here.  Use it to compute the max
7770         "Target Id" column width.
7771
7772 2018-06-29  Pedro Alves  <palves@redhat.com>
7773
7774         * remote.c (remote_target::extra_thread_info): Delete
7775         'display_buf' and 'n' locals.  from the cache, regardless of
7776         packet mechanims is in use.  Use cache for qThreadExtra and qP
7777         methods too.
7778
7779 2018-06-29  Pedro Alves  <palves@redhat.com>
7780
7781         * blockframe.c (find_pc_sect_containing_function): New function.
7782         * breakpoint.c (print_breakpoint_location): Don't call
7783         find_pc_sect_function.
7784         * linespec.c (create_sals_line_offset): Record the location's
7785         symbol in the sal.
7786         * linespec.c (convert_address_location_to_sals): Fill in sal's
7787         symbol with find_pc_sect_containing_function.
7788         * symtab.c (find_function_start_sal): Rename to ...
7789         (find_function_start_sal_1): ... this.
7790         (find_function_start_sal): Reimplement as wrapper around
7791         find_function_start_sal_1, and use
7792         find_pc_sect_containing_function to fill in the sal's symbol.
7793         (find_function_start_sal(symbol*, bool)): Adjust.
7794         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7795         comments.
7796         (find_pc_sect_containing_function): Declare.
7797
7798 2018-06-29  Pedro Alves  <palves@redhat.com>
7799
7800         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7801         true if the the location has no symbol.
7802
7803 2018-06-28  Tom Tromey  <tom@tromey.com>
7804
7805         * NEWS: Mention --enable-codesign.
7806         * silent-rules.mk (ECHO_SIGN): New variable.
7807         * configure.ac: Add --enable-codesign.
7808         * configure: Rebuild.
7809         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7810         (gdb$(EXEEXT)): Optionally invoke codesign.
7811
7812 2018-06-28  Pedro Alves  <palves@redhat.com>
7813
7814         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7815         comments.
7816         (switch_to_thread_no_regs): Adjust comment.
7817         * infcmd.c (stop_pc): Delete.
7818         (post_create_inferior, info_program_command): Replace references
7819         to stop_pc with references to thread_info->suspend.stop_pc.
7820         * inferior.h (stop_pc): Delete declaration.
7821         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7822         (handle_inferior_event_1, handle_signal_stop)
7823         (process_event_stop_test, keep_going_stepped_thread)
7824         (handle_step_into_function, handle_step_into_function_backward)
7825         (print_stop_location): Replace references to stop_pc with
7826         references to thread_info->suspend.stop_pc.
7827         (struct infcall_suspend_state) <stop_pc>: Delete field.
7828         (save_infcall_suspend_state, restore_infcall_suspend_state):
7829         Remove references to inf_stat->stop_pc.
7830         * linux-fork.c (fork_load_infrun_state): Likewise.
7831         * record-btrace.c (record_btrace_set_replay): Likewise.
7832         * record-full.c (record_full_goto_entry): Likewise.
7833         * remote.c (print_one_stopped_thread): Likewise.
7834         * target.c (target_resume): Extend comment.
7835         * thread.c (set_executing_thread): New.
7836         (set_executing): Use it.
7837         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7838         Remove references to stop_pc.
7839
7840 2018-06-28  Pedro Alves  <palves@redhat.com>
7841
7842         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7843         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7844
7845 2018-06-28  Tom Tromey  <tom@tromey.com>
7846
7847         * coffread.c (coff_symfile_finish): Update.
7848         * xcoffread.c (xcoff_symfile_finish): Update.
7849         * elfread.c (elf_symfile_finish): Update.
7850         * symfile.h (dwarf2_free_objfile): Don't declare.
7851         * dwarf2read.c (_initialize_dwarf2_read): Use
7852         register_objfile_data_with_cleanup.
7853         (dwarf2_free_objfile): Now static.  Change signature.
7854
7855 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7856
7857         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7858         option "-o" to add-symbol-file-load to add an offset to each
7859         section's load address.
7860         * symfile.c (set_objfile_default_section_offset): New function.
7861
7862 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7863
7864         * symfile.c (add_symbol_file_command): Make sure that sections
7865         with the same name are sorted in the same order.
7866
7867 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7868
7869         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7870         require the second argument.  If omitted, load sections at the
7871         addresses specified in the file.
7872
7873 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7874
7875         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7876         (_initialize_symfile): Add option "-o" to symbol-file to add an
7877         offset to each section of the symbol file.
7878
7879 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7880
7881         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7882
7883 2018-06-27  Tom Tromey  <tom@tromey.com>
7884
7885         * stack.c (_initialize_stack): Update "func" help text.
7886
7887 2018-06-27  Tom Tromey  <tom@tromey.com>
7888
7889         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7890         std::vector.
7891         (unwind_infopy_str, pyuw_create_unwind_info)
7892         (unwind_infopy_add_saved_register, pyuw_sniffer)
7893         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7894         Update.
7895         (struct saved_reg): Add constructor.
7896         <value>: Now a gdbpy_ref<>.
7897
7898 2018-06-27  Tom Tromey  <tom@tromey.com>
7899
7900         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7901
7902 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7903
7904         * gdb-gdb.py.in: Format using autopep8.
7905
7906 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7907
7908         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7909         (type_lookup_function): Recognize CORE_ADDR values.
7910
7911 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7912
7913         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7914         print tag_name.
7915
7916 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7917
7918         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7919         <__lt__>: Add.
7920
7921 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7922
7923         * gdb-gdb.py: Move to...
7924         * gdb-gdb.py.in: ... here.
7925         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7926         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7927         dependencies.
7928         (distclean): Remove gdb-gdb.py when cleaning.
7929         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7930         * configure: Re-generate.
7931
7932 2018-06-27  Pedro Alves  <palves@redhat.com>
7933
7934         * proc-service.c (get_ps_regcache): New.
7935         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7936         (ps_lsetfpregs): Use it.
7937
7938 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7939
7940         PR gdb/21695
7941         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7942         declaration.
7943         (dwarf_decode_lines_1): Adjust.
7944
7945 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7946
7947         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7948         override.
7949         <info_proc>: Likewise.
7950
7951 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7952
7953         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7954         to windows_fetch_one_register, and only handle the case of
7955         fetching one register.  Move the code that reloads the context
7956         and iterates over all registers if R is negative to...
7957         (windows_nat_target::fetch_registers): ... here.
7958         (do_windows_store_inferior_registers): Rename to
7959         windows_store_one_register, and only handle the case of storing
7960         one register.  Move the code that handles the case where r is
7961         negative to...
7962         (windows_nat_target::store_registers) ... here.
7963
7964 2018-06-26  Tom Tromey  <tom@tromey.com>
7965
7966         PR rust/22574:
7967         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7968         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7969         Update.
7970         (rust_internal_print_type): Add podata parameter.
7971         (rust_print_type): Update.
7972
7973 2018-06-26  Tom Tromey  <tom@tromey.com>
7974
7975         * typeprint.h (struct print_offset_data) <update, finish,
7976         maybe_print_hole>: New methods.
7977         <indentation>: New constant.
7978         * typeprint.c (print_offset_data::indentation): Define.
7979         (print_offset_data::maybe_print_hole, print_offset_data::update)
7980         (print_offset_data::finish): Move from c-typeprint.c and rename.
7981         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7982         (print_spaces_filtered_with_print_options): Update.
7983         (c_print_type_union_field_offset, maybe_print_hole)
7984         (c_print_type_struct_field_offset): Move to typeprint.c and
7985         rename.
7986         (c_type_print_base_struct_union): Update.
7987
7988 2018-06-25  Pedro Alves  <palves@redhat.com>
7989
7990         * gdbthread.h (thread_info_ref, delete_thread)
7991         (delete_thread_silent, first_thread_of_inferior)
7992         (any_thread_of_inferior, switch_to_thread)
7993         (enable_thread_stack_temporaries)
7994         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7995         (get_last_thread_stack_temporary)
7996         (value_in_thread_stack_temporaries, can_access_registers_thread):
7997         Spell out "struct thread_info" instead of just "thread_info".
7998         * inferior.h (notice_new_inferior): Likewise.
7999
8000 2018-06-25  Pedro Alves  <palves@redhat.com>
8001
8002         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
8003         pass thread_info pointer to delete_thread.
8004         (windows_nat_target::detach): Pass inferior pointer to
8005         detach_inferior.
8006         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
8007         delete_thread.
8008         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
8009         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
8010         and pass a thread_info pointer to delete_thread.
8011         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
8012         pass thread_info pointer to delete_thread.
8013         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
8014         delete_thread_silent call.
8015         * procfs.c (procfs_target::detach): Pass inferior pointer to
8016         detach_inferior.
8017         (procfs_target::wait): Pass thread_info pointer to delete_thread.
8018         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
8019         delete_thread_silent call.
8020         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
8021         pass thread_info pointer to delete_thread.
8022         (windows_nat_target::detach): Pass inferior pointer to
8023         delete_inferior.
8024
8025 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
8026
8027         * regcache.c (readable_regcache::read_part): Fix asserts.
8028         (reg_buffer::raw_collect_part): New function.
8029         (regcache::write_part): Fix asserts.
8030         (reg_buffer::raw_supply_part): New function.
8031         (regcache::transfer_regset_register): New helper function.
8032         (regcache::transfer_regset): Call new functions.
8033         (regcache_supply_regset): Use gdb_byte*.
8034         (regcache::supply_regset): Likewise.
8035         (regcache_collect_regset): Likewise.
8036         (regcache::collect_regset): Likewise.
8037         * regcache.h (reg_buffer::raw_collect_part): New declaration.
8038         (reg_buffer::raw_supply_part): Likewise.
8039         (regcache::transfer_regset_register): Likewise.
8040         (regcache::transfer_regset): Use gdb_byte*.
8041
8042 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
8043
8044         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
8045
8046 2018-06-21  Pedro Alves  <palves@redhat.com>
8047
8048         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
8049         instead of a ptid_t.  All callers adjusted.
8050         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
8051         adjusted.
8052         (print_ada_task_info, display_current_task_id, task_command_1):
8053         Adjust.
8054         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
8055         inferior_thread.
8056         (breakpoint_kind): Adjust.
8057         (remove_breakpoints_pid): Rename to ...
8058         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
8059         pointer.  All callers adjusted.
8060         (bpstat_clear_actions): Use inferior_thread.
8061         (get_bpstat_thread): New.
8062         (bpstat_do_actions): Use it.
8063         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
8064         to take a thread_info pointer.  All callers adjusted.
8065         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
8066         (breakpoint_re_set_thread): Use inferior_thread.
8067         * breakpoint.h (struct inferior): Forward declare.
8068         (bpstat_stop_status): Update.
8069         (remove_breakpoints_pid): Delete.
8070         (remove_breakpoints_inf): New.
8071         * bsd-uthread.c (bsd_uthread_target::wait)
8072         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
8073         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
8074         (maint_btrace_packet_history_cmd)
8075         (maint_btrace_clear_packet_history_cmd): Adjust.
8076         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
8077         inferior_thread.
8078         * cli/cli-interp.c: Include "inferior.h".
8079         * common/refcounted-object.h (struct
8080         refcounted_object_ref_policy): New.
8081         * compile/compile-object-load.c: Include gdbthread.h.
8082         (store_regs): Use inferior_thread.
8083         * corelow.c (core_target::close): Use current_inferior.
8084         (core_target_open): Adjust to use first_thread_of_inferior and use
8085         the current inferior.
8086         * ctf.c (ctf_target::close): Adjust to use current_inferior.
8087         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
8088         <thread>: ... this new field.  All references adjusted.
8089         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
8090         Take a thread_info pointer instead of a ptid_t.
8091         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
8092         (dummy_frame_discard, register_dummy_frame_dtor): Take a
8093         thread_info pointer instead of a ptid_t.
8094         * elfread.c: Include "inferior.h".
8095         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
8096         Use inferior_thread.
8097         * eval.c (evaluate_subexp): Likewise.
8098         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
8099         inferior_thread.
8100         * gdb_proc_service.h (struct thread_info): Forward declare.
8101         (struct ps_prochandle) <ptid>: Delete, replaced by ...
8102         <thread>: ... this new field.  All references adjusted.
8103         * gdbarch.h, gdbarch.c: Regenerate.
8104         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
8105         'thread' parameter.  All implementations and callers adjusted.
8106         * gdbthread.h (thread_info) <set_running>: New method.
8107         (delete_thread, delete_thread_silent): Take a thread_info pointer
8108         instead of a ptid.
8109         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
8110         (first_thread_of_process): Delete, replaced by ...
8111         (first_thread_of_inferior): ... this new function.  All callers
8112         adjusted.
8113         (any_live_thread_of_process): Delete, replaced by ...
8114         (any_live_thread_of_inferior): ... this new function.  All callers
8115         adjusted.
8116         (switch_to_thread, switch_to_no_thread): Declare.
8117         (is_executing): Delete.
8118         (enable_thread_stack_temporaries): Update comment.
8119         <enable_thread_stack_temporaries>: Take a thread_info pointer
8120         instead of a ptid_t.  Incref the thread.
8121         <~enable_thread_stack_temporaries>: Decref the thread.
8122         <m_ptid>: Delete
8123         <m_thr>: New.
8124         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8125         (get_last_thread_stack_temporary)
8126         (value_in_thread_stack_temporaries, can_access_registers_thread):
8127         Take a thread_info pointer instead of a ptid_t.  All callers
8128         adjusted.
8129         * infcall.c (get_call_return_value): Use inferior_thread.
8130         (run_inferior_call): Work with thread pointers instead of ptid_t.
8131         (call_function_by_hand_dummy): Work with thread pointers instead
8132         of ptid_t.  Use thread_info_ref.
8133         * infcmd.c (proceed_thread_callback): Access thread's state
8134         directly.
8135         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
8136         access thread's state directly.
8137         (continue_command): Use inferior_thread.
8138         (info_program_command): Use find_thread_ptid and access thread
8139         state directly.
8140         (proceed_after_attach_callback): Use thread state directly.
8141         (notice_new_inferior): Take a thread_info pointer instead of a
8142         ptid_t.  All callers adjusted.
8143         (exit_inferior): Take an inferior pointer instead of a pid.  All
8144         callers adjusted.
8145         (exit_inferior_silent): New.
8146         (detach_inferior): Delete.
8147         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
8148         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
8149         (detach_inferior_command, kill_inferior_command): Use
8150         find_inferior_id instead of valid_gdb_inferior_id and
8151         gdb_inferior_id_to_pid.
8152         (inferior_command): Use inferior and thread pointers.
8153         * inferior.h (struct thread_info): Forward declare.
8154         (notice_new_inferior): Take a thread_info pointer instead of a
8155         ptid_t.  All callers adjusted.
8156         (detach_inferior): Delete declaration.
8157         (exit_inferior, exit_inferior_silent): Take an inferior pointer
8158         instead of a pid.  All callers adjusted.
8159         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
8160         (valid_gdb_inferior_id): Delete.
8161         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
8162         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
8163         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
8164         ...
8165         <inf>: ... this new field.
8166         <step_ptid>: Delete, replaced by ...
8167         <step_thread>: ... this new field.
8168         (get_displaced_stepping_state): Take an inferior pointer instead
8169         of a pid.  All callers adjusted.
8170         (displaced_step_in_progress_any_inferior): Adjust.
8171         (displaced_step_in_progress_thread): Take a thread pointer instead
8172         of a ptid_t.  All callers adjusted.
8173         (displaced_step_in_progress, add_displaced_stepping_state): Take
8174         an inferior pointer instead of a pid.  All callers adjusted.
8175         (get_displaced_step_closure_by_addr): Adjust.
8176         (remove_displaced_stepping_state): Take an inferior pointer
8177         instead of a pid.  All callers adjusted.
8178         (displaced_step_prepare_throw, displaced_step_prepare)
8179         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
8180         All callers adjusted.
8181         (start_step_over): Adjust.
8182         (infrun_thread_ptid_changed): Remove bit updating ptids in the
8183         displaced step queue.
8184         (do_target_resume): Adjust.
8185         (fetch_inferior_event): Use inferior_thread.
8186         (context_switch, get_inferior_stop_soon): Take an
8187         execution_control_state pointer instead of a ptid_t.  All callers
8188         adjusted.
8189         (switch_to_thread_cleanup): Delete.
8190         (stop_all_threads): Use scoped_restore_current_thread.
8191         * inline-frame.c: Include "gdbthread.h".
8192         (inline_state) <inline_state>: Take a thread pointer instead of a
8193         ptid_t.  All callers adjusted.
8194         <ptid>: Delete, replaced by ...
8195         <thread>: ... this new field.
8196         (find_inline_frame_state): Take a thread pointer instead of a
8197         ptid_t.  All callers adjusted.
8198         (skip_inline_frames, step_into_inline_frame)
8199         (inline_skipped_frames, inline_skipped_symbol): Take a thread
8200         pointer instead of a ptid_t.  All callers adjusted.
8201         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
8202         (inline_skipped_frames, inline_skipped_symbol): Likewise.
8203         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
8204         pointers directly.
8205         * linux-nat.c (get_detach_signal): Likewise.
8206         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
8207         (thread_db_notice_clone): Adjust.
8208         (thread_db_find_new_threads_silently)
8209         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
8210         a thread pointer instead of a ptid_t.  All callers adjusted.
8211         * mi/mi-cmd-var.c: Include "inferior.h".
8212         (mi_cmd_var_update_iter): Update to use thread pointers.
8213         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
8214         inferior directly.
8215         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
8216         out to ...
8217         (mi_output_running): ... this new function.
8218         (mi_on_resume_1): Adjust to use it.
8219         (mi_user_selected_context_changed): Adjust to use inferior_thread.
8220         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
8221         directly.
8222         (interrupt_thread_callback): : Adjust to use thread and inferior
8223         pointers.
8224         * proc-service.c: Include "gdbthread.h".
8225         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
8226         * progspace-and-thread.c: Include "inferior.h".
8227         * progspace.c: Include "inferior.h".
8228         * python/py-exitedevent.c (create_exited_event_object): Adjust to
8229         hold a reference to an inferior_object.
8230         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
8231         inferior_thread.
8232         * python/py-inferior.c (struct inferior_object): Give the type a
8233         tag name instead of a typedef.
8234         (python_on_normal_stop): No need to check if the current thread is
8235         listed.
8236         (inferior_to_inferior_object): Change return type to
8237         inferior_object.  All callers adjusted.
8238         (find_thread_object): Delete, bits factored out to ...
8239         (thread_to_thread_object): ... this new function.
8240         * python/py-infthread.c (create_thread_object): Use
8241         inferior_to_inferior_object.
8242         (thpy_is_stopped): Use thread pointer directly.
8243         (gdbpy_selected_thread): Use inferior_thread.
8244         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8245         field, replaced with ...
8246         <thread>: ... this new field.  All users adjusted.
8247         (btpy_insn_or_gap_new): Drop const.
8248         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8249         callers adjusted.
8250         * python/py-record.c: Include "gdbthread.h".
8251         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8252         a ptid_t.  All callers adjusted.
8253         (gdbpy_current_recording): Use inferior_thread.
8254         * python/py-record.h (recpy_record_object) <ptid>: Delete
8255         field, replaced with ...
8256         <thread>: ... this new field.  All users adjusted.
8257         (recpy_element_object) <ptid>: Delete
8258         field, replaced with ...
8259         <thread>: ... this new field.  All users adjusted.
8260         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8261         a ptid_t.  All callers adjusted.
8262         * python/py-threadevent.c: Include "gdbthread.h".
8263         (get_event_thread): Use thread_to_thread_object.
8264         * python/python-internal.h (struct inferior_object): Forward
8265         declare.
8266         (find_thread_object, find_inferior_object): Delete declarations.
8267         (thread_to_thread_object, inferior_to_inferior_object): New
8268         declarations.
8269         * record-btrace.c: Include "inferior.h".
8270         (require_btrace_thread): Use inferior_thread.
8271         (record_btrace_frame_sniffer)
8272         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8273         (get_thread_current_frame): Use scoped_restore_current_thread and
8274         switch_to_thread.
8275         (get_thread_current_frame): Use thread pointer directly.
8276         (record_btrace_replay_at_breakpoint): Use thread's inferior
8277         pointer directly.
8278         * record-full.c: Include "inferior.h".
8279         * regcache.c: Include "gdbthread.h".
8280         (get_thread_arch_regcache): Use the inferior's address space
8281         directly.
8282         (get_thread_regcache, registers_changed_thread): New.
8283         * regcache.h (get_thread_regcache(thread_info *thread)): New
8284         overload.
8285         (registers_changed_thread): New.
8286         (remote_target) <remote_detach_1>: Swap order of parameters.
8287         (remote_add_thread): <remote_add_thread>: Return the new thread.
8288         (get_remote_thread_info(ptid_t)): New overload.
8289         (remote_target::remote_notice_new_inferior): Use thread pointers
8290         directly.
8291         (remote_target::process_initial_stop_replies): Use
8292         thread_info::set_running.
8293         (remote_target::remote_detach_1, remote_target::detach)
8294         (extended_remote_target::detach): Adjust.
8295         * stack.c (frame_show_address): Use inferior_thread.
8296         * target-debug.h (target_debug_print_thread_info_pp): New.
8297         * target-delegates.c: Regenerate.
8298         * target.c (default_thread_address_space): Delete.
8299         (memory_xfer_partial_1): Use current_inferior.
8300         (target_detach): Use current_inferior.
8301         (target_thread_address_space): Delete.
8302         (generic_mourn_inferior): Use current_inferior.
8303         * target.h (struct target_ops) <thread_address_space>: Delete.
8304         (target_thread_address_space): Delete.
8305         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8306         pointers directly.
8307         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8308         thread pointer instead of a ptid_t.  Adjust all callers.
8309         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8310         (first_thread_of_process): Delete, replaced by ...
8311         (first_thread_of_inferior): ... this new function.  All callers
8312         adjusted.
8313         (any_thread_of_process): Rename to ...
8314         (any_thread_of_inferior): ... this, and take an inferior pointer.
8315         (any_live_thread_of_process): Rename to ...
8316         (any_live_thread_of_inferior): ... this, and take an inferior
8317         pointer.
8318         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8319         (value_in_thread_stack_temporaries)
8320         (get_last_thread_stack_temporary): Take a thread pointer instead
8321         of a ptid_t.  Adjust all callers.
8322         (thread_info::set_running): New.
8323         (validate_registers_access): Use inferior_thread.
8324         (can_access_registers_ptid): Rename to ...
8325         (can_access_registers_thread): ... this, and take a thread
8326         pointer.
8327         (print_thread_info_1): Adjust to compare thread pointers instead
8328         of ptids.
8329         (switch_to_no_thread, switch_to_thread): Make extern.
8330         (scoped_restore_current_thread::~scoped_restore_current_thread):
8331         Use m_thread pointer directly.
8332         (scoped_restore_current_thread::scoped_restore_current_thread):
8333         Use inferior_thread.
8334         (thread_command): Use thread pointer directly.
8335         (thread_num_make_value_helper): Use inferior_thread.
8336         * top.c (execute_command): Use inferior_thread.
8337         * tui/tui-interp.c: Include "inferior.h".
8338         * varobj.c (varobj_create): Use inferior_thread.
8339         (value_of_root_1): Use find_thread_global_id instead of
8340         global_thread_id_to_ptid.
8341
8342 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8343
8344         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8345         possible.
8346         (regcache::write_part): Likewise.
8347         (readable_regcache::cooked_read_part): Update comment.
8348         (readable_regcache::cooked_write_part): Likewise.
8349         * regcache.h: (readable_regcache::read_part): Likewise.
8350         (regcache::write_part): Likewise.
8351
8352 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8353             Dirk Schubert  <dirk.schubert@arm.com>
8354
8355         * aarch64-linux-nat.c (post_attach): New.
8356         (aarch64_linux_nat_target::post_attach): Override post_attach to
8357         record the number of hardware debug registers.
8358
8359 2018-06-20  Tom Tromey  <tom@tromey.com>
8360
8361         * python/py-param.c (add_setshow_generic): Make parameters const.
8362         (parmpy_init): Update.
8363
8364 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8365
8366         * regcache.h (regcache_cooked_read_ftype): Rename to...
8367         (register_read_ftype): ...this, change type to function_view.
8368         (class reg_buffer) <save>: Remove src parameter.
8369         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8370         parameter non-const in first overload.  Remove src parameter in
8371         second overload.
8372         * regcache.c (do_cooked_read): Remove.
8373         (readonly_detached_regcache::readonly_detached_regcache): Make
8374         parameter non-const, adjust call to other constructor.
8375         (reg_buffer::save): Remove src parameter.
8376         * frame.c (do_frame_register_read): Remove.
8377         (frame_save_as_regcache): Use lambda function.
8378         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8379         parameter to ppu2spu_data *.
8380         (ppu2spu_sniffer): Use lambda function.
8381
8382 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8383
8384         * record-full.c (record_full_target::insert_breakpoint): Remove
8385         "struct" keyword, add const.
8386
8387 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8388
8389         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8390         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8391         * configure.ac: Remove AC_PREREQ, add missing quoting.
8392         * gnulib/configure.ac: Modernize usage of
8393         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8394         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8395         (AUTOMAKE_VERSION): Bump to 1.15.1.
8396         * configure: Re-generate.
8397         * config.in: Re-generate.
8398         * aclocal.m4: Re-generate.
8399         * gnulib/aclocal.m4: Re-generate.
8400         * gnulib/config.in: Re-generate.
8401         * gnulib/configure: Re-generate.
8402         * gnulib/import/Makefile.in: Re-generate.
8403
8404 2018-06-19  Pedro Alves  <palves@redhat.com>
8405
8406         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8407         (lookup_minimal_symbol_by_pc_section): ... here with
8408         gdb_assert_not_reached added.
8409
8410 2018-06-19  Pedro Alves  <palves@redhat.com>
8411
8412         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8413         parameter with a block parameter.  Compare location's block symbol
8414         with the frame's block instead of addresses.
8415         (skip_inline_frames): Pass the current block instead of the
8416         frame's address.  Break out as soon as we determine the frame
8417         should not be skipped.
8418
8419 2018-06-18  Tom Tromey  <tom@tromey.com>
8420
8421         * solib-aix.c (solib_aix_get_section_offsets): Return
8422         unique_xmalloc_ptr.
8423         (solib_aix_solib_create_inferior_hook): Update.
8424
8425 2018-06-18  Tom Tromey  <tom@tromey.com>
8426
8427         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8428
8429 2018-06-18  Tom Tromey  <tom@tromey.com>
8430
8431         * solib-frv.c (frv_relocate_main_executable): Use
8432         unique_xmalloc_ptr.
8433         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8434         unique_xmalloc_ptr.
8435
8436 2018-06-18  Tom Tromey  <tom@tromey.com>
8437
8438         * objfiles.h (inhibit_section_map_updates): Update.
8439         (resume_section_map_updates, resume_section_map_updates_cleanup):
8440         Remove.
8441         * solib-svr4.c (svr4_handle_solib_event): Update.
8442         * objfiles.c (inhibit_section_map_updates): Return
8443         scoped_restore_tmpl<int>.
8444         (resume_section_map_updates, resume_section_map_updates_cleanup):
8445         Remove.
8446
8447 2018-06-18  Tom Tromey  <tom@tromey.com>
8448
8449         * valprint.h (read_string): Update.
8450         * valprint.c (read_string): Change type of "buffer".
8451         (val_print_string): Update.
8452         * python/py-value.c (valpy_string): Update.
8453         * language.h (struct language_defn) <la_get_string>: Change
8454         type of "buffer".
8455         (default_get_string, c_get_string): Update.
8456         * language.c (default_get_string): Change type of "buffer".
8457         * guile/scm-value.c (gdbscm_value_to_string): Update.
8458         * c-lang.c (c_get_string): Change type of "buffer".
8459
8460 2018-06-18  Tom Tromey  <tom@tromey.com>
8461
8462         * ser-mingw.c (struct pipe_state_destroyer): New.
8463         (pipe_state_up): New typedef.
8464         (cleanup_pipe_state): Remove.
8465         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8466
8467 2018-06-18  Tom Tromey  <tom@tromey.com>
8468
8469         * rust-lang.h (rust_yyerror): Don't declare.
8470         * rust-lang.c (rust_language_defn): Update.
8471         * rust-exp.y (yyerror): Now static.
8472         * parse.c (parse_exp_in_context_1): Update.
8473         * p-lang.h (p_yyerror): Don't declare.
8474         * p-lang.c (p_language_defn): Update.
8475         * p-exp.y (yyerror): Now static.
8476         * opencl-lang.c (opencl_language_defn): Update.
8477         * objc-lang.c (objc_language_defn): Update.
8478         * m2-lang.h (m2_yyerror): Don't declare.
8479         * m2-lang.c (m2_language_defn): Update.
8480         * m2-exp.y (yyerror): Now static.
8481         * language.h (struct language_defn) <la_error>: Remove.
8482         * language.c (unk_lang_error): Remove.
8483         (unknown_language_defn, auto_language_defn): Remove.
8484         * go-lang.h (go_yyerror): Don't declare.
8485         * go-lang.c (go_language_defn): Update.
8486         * go-exp.y (yyerror): Now static.
8487         * f-lang.h (f_yyerror): Don't declare.
8488         * f-lang.c (f_language_defn): Update.
8489         * f-exp.y (yyerror): Now static.
8490         * d-lang.h (d_yyerror): Don't declare.
8491         * d-lang.c (d_language_defn): Update.
8492         * d-exp.y (yyerror): Now static.
8493         * c-lang.h (c_yyerror): Don't declare.
8494         * c-lang.c (c_language_defn, cplus_language_defn)
8495         (asm_language_defn, minimal_language_defn): Update.
8496         * c-exp.y (yyerror): Now static.
8497         * ada-lang.h (ada_yyerror): Don't declare.
8498         * ada-lang.c (ada_language_defn): Update.
8499         * ada-exp.y (yyerror): Now static.
8500
8501 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8502
8503         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8504         (store_sveregs_to_thread): Likewise.
8505         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8506         (aarch64_linux_store_inferior_registers): Likewise.
8507         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8508         function.
8509         (aarch64_sve_regs_copy_to_regcache): Likewise.
8510         (aarch64_sve_regs_copy_from_regcache): Likewise.
8511         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8512         declaration.
8513         (aarch64_sve_regs_copy_to_regcache): Likewise.
8514         (aarch64_sve_regs_copy_from_regcache): Likewise.
8515         (sve_context): Structure from Linux headers.
8516         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8517         (SVE_SIG_ZREG_SIZE): Likewise.
8518         (SVE_SIG_PREG_SIZE): Likewise.
8519         (SVE_SIG_FFR_SIZE): Likewise.
8520         (SVE_SIG_REGS_OFFSET): Likewise.
8521         (SVE_SIG_ZREGS_OFFSET): Likewise.
8522         (SVE_SIG_ZREG_OFFSET): Likewise.
8523         (SVE_SIG_ZREGS_SIZE): Likewise.
8524         (SVE_SIG_PREGS_OFFSET): Likewise.
8525         (SVE_SIG_PREG_OFFSET): Likewise.
8526         (SVE_SIG_PREGS_SIZE): Likewise.
8527         (SVE_SIG_FFR_OFFSET): Likewise.
8528         (SVE_SIG_REGS_SIZE): Likewise.
8529         (SVE_SIG_CONTEXT_SIZE): Likewise.
8530         (SVE_PT_REGS_MASK): Likewise.
8531         (SVE_PT_REGS_FPSIMD): Likewise.
8532         (SVE_PT_REGS_SVE): Likewise.
8533         (SVE_PT_VL_INHERIT): Likewise.
8534         (SVE_PT_VL_ONEXEC): Likewise.
8535         (SVE_PT_REGS_OFFSET): Likewise.
8536         (SVE_PT_FPSIMD_OFFSET): Likewise.
8537         (SVE_PT_FPSIMD_SIZE): Likewise.
8538         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8539         (SVE_PT_SVE_PREG_SIZE): Likewise.
8540         (SVE_PT_SVE_FFR_SIZE): Likewise.
8541         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8542         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8543         (__SVE_SIG_TO_PT): Likewise.
8544         (SVE_PT_SVE_OFFSET): Likewise.
8545         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8546         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8547         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8548         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8549         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8550         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8551         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8552         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8553         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8554         (SVE_PT_SVE_SIZE): Likewise.
8555         (SVE_PT_SIZE): Likewise.
8556         (HAS_SVE_STATE): New define.
8557
8558 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8559
8560         * nat/aarch64-sve-linux-sigcontext.h: New file.
8561         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8562         new files.
8563         (SVE_VQ_MIN): Likewise.
8564         (SVE_VQ_MAX): Likewise.
8565         (SVE_VL_MIN): Likewise.
8566         (SVE_VL_MAX): Likewise.
8567         (SVE_NUM_ZREGS): Likewise.
8568         (SVE_NUM_PREGS): Likewise.
8569         (sve_vl_valid): Likewise.
8570         (struct user_sve_header): Likewise.
8571
8572 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8573             Richard Bunt <Richard.Bunt@arm.com>
8574
8575         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8576         was requested by GDB.
8577
8578 2018-06-15  Tom de Vries  <tdevries@suse.de>
8579
8580         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8581
8582 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8583
8584         * gnulib/update-gnulib.sh: Print expected versions of
8585         autoconf/aclocal.
8586
8587 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8588
8589         * arch-utils.c (default_type_align): Use type_length_units.
8590         * gdbtypes.c (type_align): Use type_length_units.
8591
8592 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8593
8594         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8595         of 'define' command.
8596
8597 2018-06-14  Tom de Vries  <tdevries@suse.de>
8598
8599         PR cli/22573
8600         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8601         get_no_prettyformat_print_options.
8602
8603 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8604
8605         * sparc-nat.h: Include target.h.
8606         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8607         <fetch_registers>: Remove this argument in function call.
8608         <store_registers>: Remove this argument in function call, remove
8609         extra semicolon.
8610         <low_forget_process>: Call sparc64_forget_process instead of
8611         sparc_forget_process.
8612
8613 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8614
8615         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8616         (procfs_target::make_corefile_notes): Adjust to new
8617         target_read_alloc return type.
8618
8619 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8620             Stephen Roberts  <stephen.roberts@arm.com>
8621
8622         PR gdb/22882
8623         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8624         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8625         Move should_notify_stop local into more inner scope.
8626
8627 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8628             Stephen Roberts  <stephen.roberts@arm.com>
8629
8630         PR gdb/22882
8631         * infrun.c (resume_1): Add call to mark_async_event_handler.
8632
8633 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8634
8635         * infrun.c (do_target_wait): Change old version of $pc printed.
8636
8637 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8638
8639         * dwarf2read.c (read_index_from_section): Rename to...
8640         (read_gdb_index_from_section): ... this, update all callers.
8641         (dwarf2_read_index): Rename to...
8642         (dwarf2_read_gdb_index): ... this, update all callers.
8643
8644 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8645
8646         * hppa-linux-nat.c
8647         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8648         hppa_linux_nat_target::fetch_registers.
8649
8650 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8651
8652         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8653         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8654         (AARCH64_DWARF_SVE_FFR): Likewise.
8655         (AARCH64_DWARF_SVE_P0): Likewise.
8656         (AARCH64_DWARF_SVE_Z0): Likewise.
8657
8658 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8659
8660         * common/common-regcache.h (raw_compare): New function.
8661         * regcache.c (regcache::raw_compare): Likewise.
8662         * regcache.h (regcache::raw_compare): New declaration.
8663
8664 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8665
8666         * common/common-regcache.h (reg_buffer_common): New structure.
8667         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8668         (reg_buffer::raw_supply): Likewise.
8669         (reg_buffer::raw_supply_integer): Likewise.
8670         (reg_buffer::raw_supply_zeroed): Likewise.
8671         (reg_buffer::raw_collect): Likewise.
8672         (reg_buffer::raw_collect_integer): Likewise.
8673         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8674         (reg_buffer::raw_supply): Likewise.
8675         (reg_buffer::raw_supply_integer): Likewise.
8676         (reg_buffer::raw_supply_zeroed): Likewise.
8677         (reg_buffer::raw_collect): Likewise.
8678         (reg_buffer::raw_collect_integer): Likewise.
8679
8680 2018-06-10  Tom Tromey  <tom@tromey.com>
8681
8682         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8683         (class remote_state) <stop_reply_queue>: Now std::vector.
8684         (remote_state::~remote_state)
8685         (remote_target::stop_reply_queue_length): Update.
8686         (struct queue_iter_param, remove_child_of_pending_fork)
8687         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8688         (check_pending_event_prevents_wildcard_vcont_callback)
8689         (remove_stop_reply_for_inferior)
8690         (remove_stop_reply_of_remote_state)
8691         (remote_notif_remove_once_on_match)
8692         (stop_reply_match_ptid_and_ws)
8693         (remote_kill_child_of_pending_fork): Remove.
8694         (remote_target::remove_new_fork_children)
8695         (remote_target::check_pending_events_prevent_wildcard_vcont)
8696         (remote_target::discard_pending_stop_replies)
8697         (remote_target::discard_pending_stop_replies_in_queue)
8698         (remote_target::remote_notif_remove_queued_reply)
8699         (remote_target::queued_stop_reply)
8700         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8701         (remote_target::wait, remote_target::kill_new_fork_children)
8702         (remote_target::async): Update.
8703
8704 2018-06-10  Tom Tromey  <tom@tromey.com>
8705
8706         * record-full.c (record_full_arch_list_cleanups): Remove.
8707         (record_full_message): Use try/catch.
8708         (record_full_wait_cleanups): Remove.
8709         (record_full_wait_1): Use try/catch.
8710         (record_full_restore): Likewise.
8711
8712 2018-06-10  Tom Tromey  <tom@tromey.com>
8713
8714         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8715         declare VEC.  Add constructor.
8716         <in_target_beneath>: Now bool.
8717         (record_full_breakpoints): Now a std::vector, static.
8718         (record_full_sync_record_breakpoints)
8719         (record_full_init_record_breakpoints)
8720         (record_full_target::insert_breakpoint)
8721         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8722
8723 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8724
8725         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8726         * serial.c (serial_interface_lookup): Remove struct keyword.
8727
8728 2018-06-10  Tom Tromey  <tom@tromey.com>
8729
8730         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8731         method.
8732         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8733         a method.
8734         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8735         method.
8736         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8737         "beneath" as a method.
8738         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8739         Use "beneath" as a method.
8740
8741 2018-06-10  Tom Tromey  <tom@tromey.com>
8742
8743         * tracefile.c (struct trace_file_writer_deleter): New.
8744         <operator()>: Rename from trace_file_writer_xfree.
8745         (trace_file_writer_up): New typedef.
8746         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8747
8748 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8749
8750         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8751         <m_registers, m_register_status>: Change type to
8752         std::unique_ptr.
8753         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8754         XCNEWVEC.
8755
8756 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8757
8758         * common/common-regcache.h (enum register_status): Add
8759         underlying type "signed char".
8760         * regcache.h (reg_buffer) <m_register_status>: Change type to
8761         register_status *.
8762         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8763         register_status instead of signed char.
8764         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8765         (reg_buffer::get_register_status): Remove cast.
8766         (readable_regcache::raw_read): Remove cast.
8767         (readable_regcache::cooked_read): Remove cast.
8768
8769 2018-06-09  Tom Tromey  <tom@tromey.com>
8770
8771         * source.c (reverse_search_command, forward_search_command): Use
8772         scoped_fd.
8773
8774 2018-06-09  Tom Tromey  <tom@tromey.com>
8775
8776         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8777         (serial_ops_list): Now static, std::vector.
8778         (serial_interface_lookup, serial_add_interface): Update.
8779
8780 2018-06-09  Tom Tromey  <tom@tromey.com>
8781
8782         * dwarf2read.c (process_cu_includes): Update.
8783         (process_full_comp_unit): Update.
8784         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8785         std::vector.
8786
8787 2018-06-08  Paul Koning  <paul_koning@dell.com>
8788
8789         PR gdb/23252
8790
8791         * python/python.c (do_start_initialization):
8792         Avoid call to internal Python API.
8793         (init__gdb_module): New function.
8794
8795 2018-06-08  Gary Benson <gbenson@redhat.com>
8796
8797         * linux-thread-db.c (valprint.h): New include.
8798         (struct check_thread_db_info): New structure.
8799         (check_thread_db_on_load, tdb_testinfo): New static globals.
8800         (check_thread_db, check_thread_db_callback): New functions.
8801         (try_thread_db_load_1): Run integrity checks if requested.
8802         (maintenance_check_libthread_db): New function.
8803         (_initialize_thread_db): Register "maint check libthread-db"
8804         and "maint set/show check-libthread-db".
8805         * NEWS: Mention the above new commands.
8806
8807 2018-06-08  Tom Tromey  <tom@tromey.com>
8808
8809         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8810         now a method.
8811
8812 2018-06-08  Tom Tromey  <tom@tromey.com>
8813
8814         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8815
8816 2018-06-08  Tom Tromey  <tom@tromey.com>
8817
8818         * common/btrace-common.h (struct btrace_data): Add constructor,
8819         destructor, move assignment operator.
8820         <empty, clear, fini>: New methods.
8821         <format>: Initialize.
8822         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8823         (btrace_data_empty): Don't declare.
8824         * common/btrace-common.c (btrace_data_init): Remove.
8825         (btrace_data::fini): Rename from btrace_data_fini.
8826         (btrace_data::empty): Rename from btrace_data_empty.
8827         (btrace_data::clear): Rename from btrace_data_clear.  Return
8828         bool.
8829         * btrace.h (make_cleanup_btrace_data): Don't declare.
8830         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8831         (parse_xml_btrace): Update.
8832         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8833         (maint_btrace_clear_packet_history_cmd): Update.
8834
8835 2018-06-07  Pedro Alves  <palves@redhat.com>
8836
8837         * target.h (target_ops) <beneath>: Now a method.  All references
8838         updated.
8839         (class target_stack): New.
8840         * target.c (g_target_stack): New.
8841         (g_current_top_target): Delete.
8842         (current_top_target): Get the top target out of g_target_stack.
8843         (target_stack::push, target_stack::unpush): New.
8844         (push_target, unpush_target): Reimplement.
8845         (target_is_pushed): Reimplement in terms of g_target_stack.
8846         (target_ops::beneath, target_stack::find_beneath): New.
8847
8848 2018-06-07  Pedro Alves  <palves@redhat.com>
8849
8850         * target.h (find_target_beneath): Delete declaration.
8851         * target.c (find_target_beneath): Delete definition.
8852         * aix-thread.c: All callers of find_target_beneath adjusted to
8853         call target_ops::beneath instead.
8854         * bsd-uthread.c: Likewise.
8855         * linux-thread-db.c: Likewise.
8856         * ravenscar-thread.c: Likewise.
8857         * sol-thread.c: Likewise.
8858         * spu-multiarch.c: Likewise.
8859
8860 2018-06-07  Pedro Alves  <palves@redhat.com>
8861
8862         * target.h (target_ops) <beneath>: Now a method.  All references
8863         updated.
8864         (target_ops) <m_beneath>: New.
8865         * target.c (target_ops::beneath): New.
8866         * corelow.c: Adjust all references to target_ops::beneath.
8867         * linux-thread-db.c: Likewise.
8868         * make-target-delegates: Likewise.
8869         * record-btrace.c: Likewise.
8870         * record-full.c: Likewise.
8871         * remote.c: Likewise.
8872         * target.c: Likewise.
8873         * target-delegates.c: Regenerate.
8874
8875 2018-06-07  Pedro Alves  <palves@redhat.com>
8876
8877         * target.h (target_stack): Delete.
8878         (current_top_target): Declare function.
8879         * target.c (target_stack): Delete.
8880         (g_current_top_target): New.
8881         (current_top_target): New function.
8882         * auxv.c: Use current_top_target instead of target_stack
8883         throughout.
8884         * avr-tdep.c: Likewise.
8885         * breakpoint.c: Likewise.
8886         * corefile.c: Likewise.
8887         * elfread.c: Likewise.
8888         * eval.c: Likewise.
8889         * exceptions.c: Likewise.
8890         * frame.c: Likewise.
8891         * gdbarch-selftests.c: Likewise.
8892         * gnu-v3-abi.c: Likewise.
8893         * ia64-tdep.c: Likewise.
8894         * ia64-vms-tdep.c: Likewise.
8895         * infcall.c: Likewise.
8896         * infcmd.c: Likewise.
8897         * infrun.c: Likewise.
8898         * linespec.c: Likewise.
8899         * linux-tdep.c: Likewise.
8900         * minsyms.c: Likewise.
8901         * ppc-linux-nat.c: Likewise.
8902         * ppc-linux-tdep.c: Likewise.
8903         * procfs.c: Likewise.
8904         * regcache.c: Likewise.
8905         * remote.c: Likewise.
8906         * rs6000-tdep.c: Likewise.
8907         * s390-linux-nat.c: Likewise.
8908         * s390-tdep.c: Likewise.
8909         * solib-aix.c: Likewise.
8910         * solib-darwin.c: Likewise.
8911         * solib-dsbt.c: Likewise.
8912         * solib-spu.c: Likewise.
8913         * solib-svr4.c: Likewise.
8914         * solib-target.c: Likewise.
8915         * sparc-tdep.c: Likewise.
8916         * sparc64-tdep.c: Likewise.
8917         * spu-tdep.c: Likewise.
8918         * symfile.c: Likewise.
8919         * symtab.c: Likewise.
8920         * target-descriptions.c: Likewise.
8921         * target-memory.c: Likewise.
8922         * target.c: Likewise.
8923         * target.h: Likewise.
8924         * tracefile-tfile.c: Likewise.
8925         * tracepoint.c: Likewise.
8926         * valops.c: Likewise.
8927         * valprint.c: Likewise.
8928         * value.c: Likewise.
8929         * windows-tdep.c: Likewise.
8930         * mi/mi-main.c: Likewise.
8931
8932 2018-06-07  Tom Tromey  <tom@tromey.com>
8933
8934         * valprint.h (build_address_symbolic): Declare.
8935         * printcmd.c (print_address_symbolic): Update.
8936         (build_address_symbolic): Change "name" and "filename" to
8937         std::string.
8938         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8939         Update.
8940         * defs.h (build_address_symbolic): Remove declaration.
8941
8942 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8943
8944         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8945         (aarch64_vnv_type): Add function.
8946         (aarch64_pseudo_register_name): Add V regs for SVE.
8947         (aarch64_pseudo_register_type): Likewise.
8948         (aarch64_pseudo_register_reggroup_p): Likewise.
8949         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8950         (aarch64_pseudo_read_value): Add V regs for SVE.
8951         (aarch64_pseudo_write_2): Use V0 offset for SVE
8952         (aarch64_pseudo_write): Add V regs for SVE.
8953         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8954
8955 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8956
8957         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8958         (sve_vl_from_vq): Likewise.
8959
8960 2018-06-05  Tom Tromey  <tom@tromey.com>
8961
8962         * cli/cli-cmds.c (show_version): Update.
8963         * top.c (print_gdb_version): Add "interactive" parameter.
8964         Update.
8965         * main.c (captured_main_1): Update.
8966         * top.h (print_gdb_version): Add "interactive" parameter and a
8967         comment.
8968
8969 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8970
8971         * common/enum-flags.h: Add trailing semicolon to example in
8972         comment.
8973
8974 2018-06-05  Tom Tromey  <tom@tromey.com>
8975
8976         PR cli/12326:
8977         * NEWS: Add entry about pager.
8978         * utils.c (pagination_disabled_for_command): New global.
8979         (prompt_for_continue): Allow "c" response to prompt.
8980         (reinitialize_more_filter): Clear
8981         pagination_disabled_for_command.
8982         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8983
8984 2018-06-04  Tom Tromey  <tom@tromey.com>
8985
8986         * ada-lang.h (ada_lookup_symbol_list): Update.
8987         * ada-lang.c (resolve_subexp): Update.
8988         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8989         parameter.
8990         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8991         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8992         results parameter to std::vector.
8993         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8994         Update.
8995         * ada-exp.y (block_lookup): Update.
8996         (select_possible_type_sym): Change type of syms.  Remove nsyms
8997         parameter.
8998         (write_var_or_type, write_name_assoc): Update.
8999
9000 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
9001
9002         * windows-nat.c (windows_nat_target::xfer_partial): Return
9003         TARGET_XFER_E_IO if we need to delegate to the target beneath
9004         but BENEATH is NULL.
9005
9006 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
9007
9008         * Makefile.in (config.status): Add configure.nat as a
9009         dependency.
9010
9011 2018-06-04  Tom Tromey  <tom@tromey.com>
9012
9013         * cp-name-parser.y (cpname_state): Add method declarations.
9014         (HANDLE_QUAL): Update.
9015         (cpname_state::d_grab, cpname_state::fill_comp)
9016         (cpname_state::make_operator, cpname_state::make_dtor)
9017         (cpname_state::make_builtin_type, cpname_state::make_name)
9018         (cpname_state::d_qualify, cpname_state::d_int_type)
9019         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
9020         (%union): Move earlier.
9021
9022 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9023
9024         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
9025
9026 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9027
9028         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
9029         (aarch64_pseudo_write_1): Likewise.
9030         (aarch64_pseudo_read_value): Use helper.
9031         (aarch64_pseudo_write): Likewise.
9032
9033 2018-06-04  Pedro Alves  <palves@redhat.com>
9034
9035         * darwin-nat.c (darwin_ops): Delete.
9036         (darwin_attach_pid): Use get_native_target.
9037
9038 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9039
9040         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
9041         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
9042
9043 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9044
9045         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
9046         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
9047         (aarch64_gdbarch_init): Check for SVE.
9048         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
9049
9050 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
9051
9052         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
9053         * aarch64-tdep.h (aarch64_read_description): Likewise.
9054         * arch/aarch64.c (aarch64_create_target_description): Likewise.
9055         * arch/aarch64.h (aarch64_create_target_description): Likewise.
9056         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
9057         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
9058         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
9059
9060 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
9061
9062         * value.c (value_fetch_lazy_bitfield): New.
9063         (value_fetch_lazy_memory): New.
9064         (value_fetch_lazy_register): New.
9065         (value_fetch_lazy): Factor out to smaller functions.
9066
9067 2018-06-01  Tom Tromey  <tom@tromey.com>
9068
9069         * cp-name-parser.y (backslashable, represented): Now const.
9070
9071 2018-06-01  Tom Tromey  <tom@tromey.com>
9072
9073         * cp-name-parser.y: Include parser-defs.h.
9074         (parser_fprintf): Remove declaration.
9075
9076 2018-06-01  Tom Tromey  <tom@tromey.com>
9077
9078         * cp-name-parser.y: Use %pure-parser, %lex-param, and
9079         %parse-param.
9080         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
9081         (global_result): Remove globals.
9082         (struct cpname_state): New.
9083         (yyparse): Don't declare.
9084         (yylex, yyerror): Move declarations after %union.
9085         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
9086         (make_name): Add state parameter.
9087         Update all callers.
9088         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
9089         parameter.
9090         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
9091         Update.
9092         (yylex): Add lvalp, state parameters.
9093         (yyerror): Add state parameter.
9094         (cp_demangled_name_to_comp): Update.
9095
9096 2018-06-01  Tom Tromey  <tom@tromey.com>
9097
9098         * cp-name-parser.y (parser_fprintf): Declare.
9099         (GDB_YY_REMAP_PREFIX): Define.
9100         Include yy-remap.h.  Don't redefine yy* identifiers.
9101
9102 2018-06-01  Tom Tromey  <tom@tromey.com>
9103
9104         * python/py-type.c (typy_legacy_template_argument): Update.
9105         * cp-support.h (cp_demangled_name_to_comp): Update.
9106         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
9107         parameter to be a "std::string *".
9108         (main): Update.
9109
9110 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
9111
9112         * ada-lex.l: Include "diagnostics.h" instead of
9113         "common/diagnostics.h".
9114         * unittests/environ-selftests.c: Likewise.
9115         * common/diagnostics.h: Moved to ../include.
9116
9117 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
9118
9119         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
9120         to language_mode_manual while calling breakpoint_re_set_one.
9121
9122 2018-06-01  Tom Tromey  <tom@tromey.com>
9123
9124         * valops.c (value_cast_structs, destructor_name_p): Update.
9125         * symtab.c (gdb_mangle_name): Update.
9126         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
9127         Update.
9128         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
9129         (pascal_object_print_value_fields, pascal_object_print_value):
9130         Update.
9131         * p-typeprint.c (pascal_type_print_derivation_info): Update.
9132         * linespec.c (find_methods): Update.
9133         * gdbtypes.h (type_name_no_tag): Remove.
9134         (type_name_or_error): Rename from type_name_no_tag_or_error.
9135         * gdbtypes.c (type_name_no_tag): Remove.
9136         (type_name_or_error): Rename from type_name_no_tag_or_error.
9137         (lookup_struct_elt_type, check_typedef): Update.
9138         * expprint.c (print_subexp_standard): Update.
9139         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
9140         * d-namespace.c (d_lookup_nested_symbol): Update.
9141         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
9142         (cp_print_class_member): Update.
9143         * cp-namespace.c (cp_lookup_nested_symbol): Update.
9144         * completer.c (add_struct_fields): Update.
9145         * c-typeprint.c (cp_type_print_derivation_info)
9146         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
9147         Update.
9148         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
9149         (ada_prefer_type, ada_is_exception_sym): Update.
9150
9151 2018-06-01  Tom Tromey  <tom@tromey.com>
9152
9153         * valops.c (enum_constant_from_type, value_namespace_elt)
9154         (value_maybe_namespace_elt): Update.
9155         * valarith.c (find_size_for_pointer_math): Update.
9156         * target-descriptions.c (make_gdb_type): Update.
9157         * symmisc.c (print_symbol): Update.
9158         * stabsread.c (define_symbol, read_type)
9159         (complain_about_struct_wipeout, add_undefined_type)
9160         (cleanup_undefined_types_1): Update.
9161         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
9162         (rust_range_type_p, val_print_struct, rust_print_struct_def)
9163         (rust_internal_print_type, rust_composite_type)
9164         (rust_evaluate_funcall, rust_evaluate_subexp)
9165         (rust_inclusive_range_type_p): Update.
9166         * python/py-type.c (typy_get_tag): Update.
9167         * p-typeprint.c (pascal_type_print_base): Update.
9168         * mdebugread.c (parse_symbol, parse_type): Update.
9169         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
9170         Update.
9171         * guile/scm-type.c (gdbscm_type_tag): Update.
9172         * go-lang.c (sixg_string_p): Update.
9173         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
9174         Update.
9175         * gdbtypes.h (struct main_type) <tag_name>: Remove.
9176         (TYPE_TAG_NAME): Remove.
9177         * gdbtypes.c (type_name_no_tag): Simplify.
9178         (check_typedef, check_types_equal, recursive_dump_type)
9179         (copy_type_recursive, arch_composite_type): Update.
9180         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
9181         in summary mode when needed.
9182         * eval.c (evaluate_funcall): Update.
9183         * dwarf2read.c (fixup_go_packaging, read_structure_type)
9184         (process_structure_scope, read_enumeration_type)
9185         (read_namespace_type, read_module_type, determine_prefix): Update.
9186         * cp-support.c (inspect_type): Update.
9187         * coffread.c (process_coff_symbol, decode_base_type): Update.
9188         * c-varobj.c (c_is_path_expr_parent): Update.
9189         * c-typeprint.c (c_type_print_base_struct_union): Update.
9190         (c_type_print_base_1): Update.  Print struct/class/union/enum in
9191         summary when using C language.
9192         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
9193         (gen_maybe_namespace_elt): Update.
9194         * ada-lang.c (ada_type_name): Simplify.
9195         (empty_record, ada_template_to_fixed_record_type_1)
9196         (template_to_static_fixed_type)
9197         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
9198
9199 2018-06-01  Tom Tromey  <tom@tromey.com>
9200
9201         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
9202         c_print_type.
9203         * c-typeprint.c (c_print_type_1): Add "language" parameter.
9204         (c_print_type): Update.
9205         (c_print_type): New overload.
9206         (c_type_print_varspec_prefix, c_type_print_args)
9207         (c_type_print_varspec_suffix, c_print_type_no_offsets)
9208         (c_type_print_base_struct_union, c_type_print_base_1)
9209         (cp_type_print_method_args): Add "language" parameter.
9210         (c_type_print_base): Update.
9211         * c-lang.h (c_print_type): Add new overload.
9212
9213 2018-06-01  Tom Tromey  <tom@tromey.com>
9214
9215         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
9216         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
9217
9218 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
9219
9220         * aarch64-tdep.c (aarch64_sve_register_names): New const
9221         var.
9222         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
9223         (AARCH64_SVE_Z_REGS_NUM): New define.
9224         (AARCH64_SVE_P_REGS_NUM): Likewise.
9225         (AARCH64_SVE_NUM_REGS): Likewise.
9226
9227 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
9228
9229         * nat/linux-ptrace.h [__alpha__]
9230         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
9231         definitions.
9232
9233 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
9234
9235         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9236         the endianness selected.
9237         * NEWS: Document `set endian auto' mode operation update.
9238
9239 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9240
9241         * Makefile.in: Add new header.
9242         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9243         (sve_vl_from_vg): Likewise.
9244         (sve_vq_from_vl): Likewise.
9245         (sve_vl_from_vq): Likewise.
9246         (sve_vq_from_vg): Likewise.
9247         (sve_vg_from_vq): Likewise.
9248         * configure.nat: Add new c file.
9249         * nat/aarch64-sve-linux-ptrace.c: New file.
9250         * nat/aarch64-sve-linux-ptrace.h: New file.
9251
9252 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9253
9254         * aarch64-linux-nat.c (aarch64_linux_read_description):
9255         Add parmeter zero.
9256         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9257         Likewise.
9258         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9259         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9260         (aarch64_gdbarch_init): Add parmeter zero.
9261         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9262         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9263         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9264         parmeter.
9265         * doc/gdb.texinfo: Describe SVE feature
9266         * features/aarch64-sve.c: New file.
9267
9268 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9269
9270         PR gdb/23210
9271         * gdbarch.sh (significant_addr_bit): Default to zero when
9272         not set by target architecture.
9273         * gdbarch.c: Re-generated.
9274         * utils.c (address_significant): Update.
9275
9276 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9277
9278         * stack.c (func_command): Remove trailing newline in call to error.
9279
9280 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9281
9282         * regcache.h (regcache_raw_collect): Remove, update callers to
9283         use regcache::raw_collect.
9284         * regcache.c (regcache_raw_collect): Remove.
9285
9286 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9287
9288         * regcache.h (regcache_raw_supply): Remove, update callers to
9289         use detached_regcache::raw_supply.
9290         * regcache.c (regcache_raw_supply): Remove.
9291
9292 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9293
9294         * regcache.h (regcache_cooked_write_part): Remove, update
9295         callers to use regcache::cooked_write_part.
9296         * regcache.c (regcache_cooked_write_part): Remove.
9297
9298 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9299
9300         * regcache.h (regcache_cooked_read_part): Remove, update callers
9301         to use readable_regcache::cooked_read_part.
9302         * regcache.c (regcache_cooked_read_part): Remove.
9303
9304 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9305
9306         * regcache.h (regcache_cooked_read_value): Remove, update
9307         callers to use readable_regcache::cooked_read_value.
9308         * regcache.c (regcache_cooked_read_value): Remove.
9309
9310 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9311
9312         * regcache.h (regcache_cooked_write): Remove, update callers to
9313         use regcache::cooked_write.
9314         * regcache.c (regcache_cooked_write): Remove.
9315
9316 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9317
9318         * regcache.h (regcache_invalidate): Remove, update callers to
9319         use detached_regcache::invalidate instead.
9320         * regcache.c (regcache_invalidate): Remove.
9321
9322 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9323
9324         * regcache.h (regcache_raw_write_part): Remove, update callers
9325         to use regcache::raw_write_part instead.
9326         * regcache.c (regcache_raw_write_part): Remove.
9327
9328 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9329
9330         * regcache.h (regcache_raw_read_part): Remove, update callers to
9331         use readable_regcache::raw_read_part instead.
9332         * regcache.c (regcache_raw_read_part): Remove.
9333
9334 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9335
9336         * regcache.h (regcache_cooked_read): Remove, update callers to
9337         use readable_regcache::cooked_read instead.
9338         * regcache.c (regcache_cooked_read): Remove.
9339
9340 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9341
9342         * regcache.h (regcache_raw_write): Remove, update callers to use
9343         regcache::raw_write instead.
9344         * regcache.c (regcache_raw_write): Remove.
9345
9346 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9347
9348         * regcache.h (regcache_raw_read): Remove, update callers to use
9349         readable_regcache::raw_read instead.
9350         * regcache.c (regcache_raw_read): Remove.
9351
9352 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9353
9354         * regcache.h (regcache_raw_update): Remove, update callers to
9355         use readable_regcache::raw_update instead.
9356         * regcache.c (regcache_raw_update): Remove.
9357
9358 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9359
9360         * regcache.h (regcache_register_status): Remove, update callers
9361         to use reg_buffer::get_register_status directly instead.
9362         * regcache.c (regcache_register_status): Remove.
9363
9364 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9365
9366         * regcache.h (regcache_get_ptid): Remove, update all callers to
9367         call regcache::ptid instead.
9368         * regcache.c (regcache_get_ptid): Remove.
9369
9370 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9371
9372         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9373
9374 2018-05-30  Pedro Alves  <palves@redhat.com>
9375
9376         * common/common-exceptions.h (exception_rethrow): Use
9377         ATTRIBUTE_NORETURN.
9378
9379 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9380
9381         * breakpoint.c (print_solib_event, check_status_catch_solib):
9382         Remove struct keyword in range-based for loops.
9383         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9384         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9385         Likewise.
9386         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9387         Likewise.
9388         * symfile.c (addr_info_make_relative): Likewise.
9389         * thread.c (value_in_thread_stack_temporaries): Likewise.
9390
9391 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9392
9393         PR gdb/16841
9394         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9395         aggregate type to get its real type before accessing it.
9396
9397 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9398
9399         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9400         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9401         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9402         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9403         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9404         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9405         * printcmd.c (info_address_command): Likewise.
9406
9407 2018-05-29  Tom Tromey  <tom@tromey.com>
9408
9409         * windows-nat.c (handle_exception): Update fall-through comment.
9410
9411 2018-05-29  Tom Tromey  <tom@tromey.com>
9412
9413         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9414         (struct program_space) <added_solibs>: Now a std::vector.
9415         * breakpoint.c (print_solib_event): Update.
9416         (check_status_catch_solib): Update.
9417         * progspace.c (clear_program_space_solib_cache): Update.
9418         * solib.c (update_solib_list): Update.
9419
9420 2018-05-29  Tom Tromey  <tom@tromey.com>
9421
9422         * python/py-type.c (typy_richcompare): Update.
9423         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9424         * gdbtypes.h (types_deeply_equal): Return bool.
9425         (types_equal): Likewise.
9426         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9427         declare VEC.
9428         (check_types_equal): Change worklist to std::vector.  Return
9429         bool.
9430         (struct type_equality_entry): Add constructor.
9431         (compare_maybe_null_strings): Return bool.
9432         (check_types_worklist): Return bool.  Change worklist to
9433         std::vector.
9434         (types_deeply_equal): Use std::vector.
9435         (types_equal): Return bool.
9436         (compare_maybe_null_strings): Simplify.
9437
9438 2018-05-29  Tom Tromey  <tom@tromey.com>
9439
9440         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9441
9442 2018-05-29  Tom Tromey  <tom@tromey.com>
9443
9444         * objc-lang.h: Don't include cp-support.h.
9445         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9446         declare VEC.
9447
9448 2018-05-27  Tom Tromey  <tom@tromey.com>
9449
9450         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9451
9452 2018-05-25  Tom Tromey  <tom@tromey.com>
9453
9454         * value.c (value::location): Initialize.
9455
9456 2018-05-25  Tom Tromey  <tom@tromey.com>
9457
9458         * dbxread.c (init_bincl_list): Remove.
9459         (bincl_list): Now a std::vector.
9460         (bincls_allocated, next_bincl): Remove.
9461         (free_bincl_list, do_free_bincl_list_cleanup)
9462         (make_cleanup_free_bincl_list): Remove.
9463         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9464         unique_xmalloc_ptr.
9465         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9466         (struct header_file_location): Add constructor.
9467         (add_bincl_to_list): Remove.
9468
9469 2018-05-25  Tom Tromey  <tom@tromey.com>
9470
9471         * tui/tui.c (tui_enable): Update.
9472         * mi/mi-interp.c (mi_interp::init): Update.
9473         * interps.h (class interp) <name>: New method.
9474         <m_name>: Rename from name.
9475         (~scoped_restore_interp): Update.
9476         * interps.c (interp::interp): Update.
9477         (interp_add, interp_set, interp_lookup_existing)
9478         (current_interp_named_p): Update.
9479
9480 2018-05-25  Tom Tromey  <tom@tromey.com>
9481
9482         * interps.c (interp_name): Remove.
9483         * mi/mi-interp.c (mi_interp::init): Update.
9484         * interps.h (interp_name): Remove.
9485         (~scoped_restore_interp): Update.
9486         * tui/tui.c (tui_enable): Update.
9487
9488 2018-05-25  Tom Tromey  <tom@tromey.com>
9489
9490         * utils.c (fputs_maybe_filtered): Update.
9491         * linespec.c (decode_line_full): Update.
9492         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9493         (mi_print_breakpoint_for_event, mi_solib_loaded)
9494         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9495         (mi_user_selected_context_changed): Update.
9496         * mi/mi-main.c (mi_execute_command): Update.
9497         * cli/cli-script.c (execute_control_command): Update.
9498         * python/python.c (execute_gdb_command): Update.
9499         * solib.c (info_sharedlibrary_command): Update.
9500         * interps.c (interp_ui_out): Remove.
9501         * interps.h (interp_ui_out): Remove.
9502
9503 2018-05-25  Tom Tromey  <tom@tromey.com>
9504
9505         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9506         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9507         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9508
9509 2018-05-25  Tom Tromey  <tom@tromey.com>
9510
9511         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9512         * interps.c (interp_exec): Use scoped_restore.
9513
9514 2018-05-25  Tom Tromey  <tom@tromey.com>
9515
9516         * remote.c (remote_target::remote_file_get): Use
9517         gdb::byte_vector.
9518         (remote_target::remote_file_put): Likewise.
9519
9520 2018-05-25  Tom Tromey  <tom@tromey.com>
9521
9522         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9523         a std::string.
9524         (get_pe_section_index, add_pe_exported_sym): Update.
9525         (read_pe_exported_syms): Use gdb::def_vector.
9526
9527 2018-05-25  Tom Tromey  <tom@tromey.com>
9528
9529         * frame.c (remove_prev_frame): Remove.
9530         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9531
9532 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9533
9534         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9535         Remove prototypes.
9536         * mips-linux-nat.c (supply_fpregset): Always call
9537         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9538         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9539         `mips_fill_fpregset'.
9540         * mips-linux-tdep.c (mips_supply_fpregset)
9541         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9542         (mips_fill_fpregset_wrapper): Remove functions.
9543         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9544         (mips_linux_fpregset): Remove variable.
9545         (mips_linux_iterate_over_regset_sections): Use
9546         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9547         (mips_linux_o32_sigframe_init): Remove comment.
9548
9549 2018-05-25  Pedro Alves  <palves@redhat.com>
9550
9551         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9552         (struct readahead_cache, struct packet_reg, struct
9553         remote_arch_state, class remote_state): Move higher up in the
9554         file.
9555         (remote_target::m_remote_state): Now an object instead of a pointer.
9556         (remote_target::get_remote_state): Adjust.
9557
9558 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9559
9560         * stack.c (select_and_print_frame): Delete.
9561         (struct function_bounds): Move struct within function.
9562         (func_command): Most content moved into new function
9563         find_frame_for_function, use new function, print result, add
9564         function comment.
9565         (find_frame_for_function): New function, now returns a result.
9566
9567 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9568
9569         * stack.c (iterate_over_block_arg_vars): Fix comment.
9570         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9571
9572 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9573
9574         PR gdb/23203
9575         * frame.c
9576         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9577         Define.
9578         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9579         Define.
9580         * frame.h (class scoped_restore_selected_frame): New class.
9581         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9582         of any exception, use scoped_restore_selected_frame to restore the
9583         frame instead.
9584
9585 2018-05-24  Pedro Alves  <palves@redhat.com>
9586
9587         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9588         override.
9589
9590 2018-05-23  Tom Tromey  <tom@tromey.com>
9591
9592         * complaints.c (struct complaints): Remove.
9593         (symfile_complaint_book): Remove.
9594         (series): New global.
9595         (complaint_internal): Update.
9596         (clear_complaints): Update.
9597
9598 2018-05-23  Tom Tromey  <tom@tromey.com>
9599
9600         * complaints.c (counters): New global.
9601         (struct complain): Remove.
9602         (struct complaints) <root>: Remove.
9603         (complaint_sentinel): Remove.
9604         (symfile_complaint_book): Update.
9605         (find_complaint) Remove.
9606         (complaint_internal, clear_complaints): Update.
9607
9608 2018-05-23  Tom Tromey  <tom@tromey.com>
9609
9610         * complaints.c (struct complain) <file, line>: Remove.
9611         (find_complaint): Remove file, line parameters.
9612         (complaint_internal): Update.
9613
9614 2018-05-23  Tom Tromey  <tom@tromey.com>
9615
9616         * complaints.c (vcomplaint): Remove.
9617         (complaint_internal) Merge in contents of vcomplaint.
9618
9619 2018-05-23  Tom Tromey  <tom@tromey.com>
9620
9621         * complaints.c (struct complaints) <explanation>: Remove.
9622         (symfile_explanations): Remove.
9623         (symfile_complaint_book): Update.
9624         (vcomplaint): Update.
9625         (struct explanation): Remove.
9626
9627 2018-05-23  Tom Tromey  <tom@tromey.com>
9628
9629         * complaints.c (symfile_complaints): Remove.
9630         (complaint_internal): Remove "complaints" parameter.
9631         (clear_complaints, vcomplaint): Remove "c" parameter.
9632         (get_complaints): Remove.
9633         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9634         (dwarf2_debug_line_missing_file_complaint)
9635         (dwarf2_debug_line_missing_end_sequence_complaint)
9636         (dwarf2_complex_location_expr_complaint)
9637         (dwarf2_const_value_length_mismatch_complaint)
9638         (dwarf2_section_buffer_overflow_complaint)
9639         (dwarf2_macro_malformed_definition_complaint)
9640         (dwarf2_invalid_attrib_class_complaint)
9641         (create_addrmap_from_index, dw2_symtab_iter_next)
9642         (dw2_expand_marked_cus)
9643         (dw2_debug_names_iterator::find_vec_in_debug_names)
9644         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9645         (create_debug_type_hash_table, init_cutu_and_read_dies)
9646         (partial_die_parent_scope, add_partial_enumeration)
9647         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9648         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9649         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9650         (create_cus_hash_table, create_dwp_hash_table)
9651         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9652         (dwarf2_rnglists_process, dwarf2_ranges_process)
9653         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9654         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9655         (handle_struct_member_die, process_structure_scope)
9656         (read_array_type, read_common_block, read_module_type)
9657         (read_tag_pointer_type, read_typedef, read_base_type)
9658         (read_subrange_type, load_partial_dies, partial_die_info::read)
9659         (partial_die_info::read, partial_die_info::read)
9660         (partial_die_info::read, read_checked_initial_length_and_offset)
9661         (dwarf2_string_attr, read_formatted_entries)
9662         (dwarf_decode_line_header)
9663         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9664         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9665         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9666         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9667         (get_signatured_type, get_DW_AT_signature_type)
9668         (decode_locdesc, file_file_name, consume_improper_spaces)
9669         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9670         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9671         (dwarf2_symbol_mark_computed, set_die_type)
9672         (read_attribute_value): Update.
9673         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9674         Update.
9675         * dbxread.c (unknown_symtype_complaint)
9676         (lbrac_mismatch_complaint, repeated_header_complaint)
9677         (set_namestring, function_outside_compilation_unit_complaint)
9678         (read_dbx_symtab, process_one_symbol): Update.
9679         * gdbtypes.c (stub_noname_complaint): Update.
9680         * windows-nat.c (handle_unload_dll): Update.
9681         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9682         (decode_base_type): Update.
9683         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9684         (eb_complaint, record_include_begin, record_include_end)
9685         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9686         (process_xcoff_symbol, read_symbol)
9687         (function_outside_compilation_unit_complaint)
9688         (scan_xcoff_symtab): Update.
9689         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9690         * buildsym.c (finish_block_internal, make_blockvector)
9691         (end_symtab_get_static_block, augment_type_symtab): Update.
9692         * dtrace-probe.c (dtrace_process_dof)
9693         (dtrace_static_probe_ops::get_probes): Update.
9694         * complaints.h (struct complaint): Don't declare.
9695         (symfile_complaints): Remove.
9696         (complaint_internal): Remove "complaints" parameter.
9697         (complaint): Likewise.
9698         (clear_complaints): Likewise.
9699         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9700         (reread_symbols): Update.
9701         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9702         (dwarf2_frame_cache, decode_frame_entry): Update.
9703         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9704         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9705         (info_selectors_command): Update.
9706         * macrotab.c (macro_include, check_for_redefinition)
9707         (macro_undef): Update.
9708         * objfiles.c (filter_overlapping_sections): Update.
9709         * stabsread.c (invalid_cpp_abbrev_complaint)
9710         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9711         (define_symbol, error_type, read_type, rs6000_builtin_type)
9712         (stabs_method_name_from_physname, read_member_functions)
9713         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9714         (attach_fields_to_type, complain_about_struct_wipeout)
9715         (read_range_type, read_args, common_block_start)
9716         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9717         Update.
9718         * mdebugread.c (index_complaint, unknown_ext_complaint)
9719         (basic_type_complaint, bad_tag_guess_complaint)
9720         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9721         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9722         (parse_procedure, parse_lines)
9723         (function_outside_compilation_unit_complaint)
9724         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9725         (bad_tag_guess_complaint, reg_value_complaint): Update.
9726         * cp-support.c (demangled_name_complaint): Update.
9727         * macroscope.c (sal_macro_scope): Update.
9728         * dwarf-index-write.c (class debug_names): Update.
9729
9730 2018-05-23  Tom Tromey  <tom@tromey.com>
9731
9732         * complaints.c (clear_complaints): Remove "noisy" parameter.
9733         * complaints.h (clear_complaints): Update.
9734         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9735         (reread_symbols): Update.
9736
9737 2018-05-23  Tom Tromey  <tom@tromey.com>
9738
9739         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9740         SUBSEQUENT_MESSAGE.
9741         (vcomplaint, clear_complaints): Update.
9742         (symfile_explanations): Remove some messages.
9743
9744 2018-05-23  Tom Tromey  <tom@tromey.com>
9745
9746         * complaints.c (internal_complaint): Remove.
9747         * complaints.h (internal_complaint): Remove.
9748
9749 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9750
9751         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9752
9753 2018-05-22  Pedro Alves  <palves@redhat.com>
9754
9755         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9756         (remote_fileio_badfd, remote_fileio_return_errno)
9757         (remote_fileio_return_success, remote_fileio_func_open)
9758         (remote_fileio_func_open, remote_fileio_func_close)
9759         (remote_fileio_func_read, remote_fileio_func_write)
9760         (remote_fileio_func_lseek, remote_fileio_func_rename)
9761         (remote_fileio_func_unlink, remote_fileio_func_stat)
9762         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9763         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9764         remote_target parameter.
9765         (remote_fio_func_map) <func>: Add remote_target parameter.
9766         (do_remote_fileio_request, remote_fileio_request):
9767         * remote-fileio.h (remote_fileio_request):
9768         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9769         remote_target parameter.
9770         (remote_notif_process, handle_notification): Adjust to pass down
9771         the remote.
9772         (remote_notif_state_allocate): Add remote_target parameter.  Save
9773         it.
9774         * remote-notif.h (struct remote_target): Forward declare.
9775         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9776         remote_target parameter.
9777         (struct remote_notif_state) <remote>: New field.
9778         (remote_notif_ack, remote_notif_parse): Add remote_target
9779         parameter.
9780         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9781         remote_target parameter.
9782         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9783         (threads_listing_context, rmt_thread_action, protocol_feature)
9784         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9785         (packet_result, struct threads_listing_context, remote_state):
9786         Move definitions and declarations higher up.
9787         (remote_target) <~remote_target>: Declare.
9788         (remote_download_command_source, remote_file_put, remote_file_get)
9789         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9790         (remote_hostio_pread_vFile, remote_hostio_send_command)
9791         (remote_hostio_set_filesystem, remote_hostio_open)
9792         (remote_hostio_close, remote_hostio_unlink, remote_state)
9793         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9794         (get_memory_write_packet_size, get_memory_read_packet_size)
9795         (append_pending_thread_resumptions, remote_detach_1)
9796         (append_resumption, remote_resume_with_vcont)
9797         (add_current_inferior_and_thread, wait_ns, wait_as)
9798         (process_stop_reply, remote_notice_new_inferior)
9799         (process_initial_stop_replies, remote_add_thread)
9800         (btrace_sync_conf, remote_btrace_maybe_reopen)
9801         (remove_new_fork_children, kill_new_fork_children)
9802         (discard_pending_stop_replies, stop_reply_queue_length)
9803         (check_pending_events_prevent_wildcard_vcont)
9804         (discard_pending_stop_replies_in_queue, stop_reply)
9805         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9806         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9807         (remote_interrupt_as, remote_interrupt_ns)
9808         (remote_get_noisy_reply, remote_query_attached)
9809         (remote_add_inferior, remote_current_thread, get_current_thread)
9810         (set_thread, set_general_thread, set_continue_thread)
9811         (set_general_process, write_ptid)
9812         (remote_unpack_thread_info_response, remote_get_threadinfo)
9813         (parse_threadlist_response, remote_get_threadlist)
9814         (remote_threadlist_iterator, remote_get_threads_with_ql)
9815         (remote_get_threads_with_qxfer)
9816         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9817         (get_offsets, remote_check_symbols, remote_supported_packet)
9818         (remote_query_supported, remote_packet_size)
9819         (remote_serial_quit_handler, remote_detach_pid)
9820         (remote_vcont_probe, remote_resume_with_hc)
9821         (send_interrupt_sequence, interrupt_query)
9822         (remote_notif_get_pending_events, fetch_register_using_p)
9823         (send_g_packet, process_g_packet, fetch_registers_using_g)
9824         (store_register_using_P, store_registers_using_G)
9825         (set_remote_traceframe, check_binary_download)
9826         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9827         (remote_xfer_live_readonly_partial, remote_read_bytes)
9828         (remote_send_printf, remote_flash_write, readchar)
9829         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9830         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9831         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9832         (extended_remote_disable_randomization, extended_remote_run)
9833         (send_environment_packet, extended_remote_environment_support)
9834         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9835         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9836         (packet_command): Now methods of ...
9837         (remote_target): ... this class.
9838         (m_remote_state) <remote_target>: New field.
9839         (struct remote_state) <stop_reply_queue,
9840         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9841         fields.
9842         (remote_state::remote_state): Allocate stop_reply_queue.
9843         (remote_state): Delete global.
9844         (get_remote_state_raw): Delete.
9845         (remote_target::get_remote_state): Allocate m_remote_state on
9846         demand.
9847         (get_current_remote_target): New.
9848         (remote_ops, extended_remote_ops): Delete.
9849         (wait_forever_enabled_p, remote_async_inferior_event_token):
9850         Delete, moved to struct remote_state.
9851         (remote_target::close): Delete self.  Destruction bits split to
9852         ...
9853         (remote_target::~remote_target): ... this.
9854         (show_memory_packet_size): Adjust to use
9855         get_current_remote_target.
9856         (struct protocol_feature) <func>: Add remote_target parameter.
9857         All callers adjusted.
9858         (curr_quit_handler_target): New.
9859         (remote_serial_quit_handler): Reimplement.
9860         (remote_target::open_1): Adjust to use get_current_remote_target.
9861         Heap-allocate remote_target/extended_remote_target instances.
9862         (vcont_builder::vcont_builder): Add remote_target parameter, and
9863         save it in m_remote.  All callers adjusted.
9864         (vcont_builder::m_remote): New field.
9865         (vcont_builder::restart, vcont_builder::flush)
9866         (vcont_builder::push_action): Use it.
9867         (remote_target::commit_resume): Use it.
9868         (struct queue_iter_param) <remote>: New field.
9869         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9870         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9871         (check_pending_event_prevents_wildcard_vcont_callback)
9872         (remote_target::check_pending_events_prevent_wildcard_vcont)
9873         (remote_target::discard_pending_stop_replies)
9874         (remote_target::discard_pending_stop_replies_in_queue)
9875         (remote_target::remote_notif_remove_queued_reply): Fill in
9876         'remote' field.
9877         (remote_notif_get_pending_events): New.
9878         (remote_target::readchar, remote_target::remote_serial_write):
9879         Save/restore curr_quit_handler_target.
9880         (putpkt): New.
9881         (kill_new_fork_children): Fill in 'remote' field.
9882         (packet_command): Use get_current_remote_target, defer to
9883         remote_target method of same name.
9884         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9885         parameter, and save it in m_remote.  All callers adjusted.
9886         (scoped_remote_fd::release): Use m_remote.
9887         (scoped_remote_fd::m_remote): New field.
9888         (remote_file_put, remote_file_get, remote_file_delete): Use
9889         get_current_remote_target, defer to remote_target method of same
9890         name.
9891         (remote_btrace_reset): Add remote_state paremeter.  Update all
9892         callers.
9893         (remote_async_inferior_event_handler). Pass down 'data'.
9894         (remote_new_objfile): Use get_current_remote_target.
9895         (remote_target::vcont_r_supported): New.
9896         (set_range_stepping): Use get_current_remote_target and
9897         remote_target::vcont_r_supported.
9898         (_initialize_remote): Don't allocate 'remote_state' and
9899         'stop_reply_queue' globals.
9900         * remote.h (struct remote_target): Forward declare.
9901         (getpkt, putpkt, remote_notif_get_pending_events): Add
9902         'remote_target' parameter.
9903
9904 2018-05-22  Pedro Alves  <palves@redhat.com>
9905
9906         * remote.c (vcont_builder): Now a class.  Make all data members
9907         private.
9908         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9909         Declare methods.
9910         (vcont_builder_restart): Rename to ...
9911         (vcont_builder::restart): ... this.
9912         (vcont_builder_flush): Rename to ...
9913         (vcont_builder::flush): ... this.
9914         (vcont_builder_push_action): Rename to ...
9915         (vcont_builder::push_action): ... this.
9916         (remote_target::commit_resume): Adjust.
9917
9918 2018-05-22  Pedro Alves  <palves@redhat.com>
9919
9920         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9921         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9922         (get_fixed_memory_packet_size): New.
9923         (get_memory_packet_size): Use it.
9924         (set_memory_packet_size): Don't override the config size with
9925         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9926         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9927         Don't refer to get_memory_packet_size if not connected to a remote
9928         target.  Show "(default)" if configured size is 0.
9929
9930 2018-05-22  Pedro Alves  <palves@redhat.com>
9931
9932         * remote.c (remote_target::mourn_inferior): Move
9933         discard_pending_stop_replies call here from ...
9934         (_initialize_remote): ... here.
9935
9936 2018-05-22  Pedro Alves  <palves@redhat.com>
9937
9938         * remote.c (compare_section_command): Remove set_general_process
9939         call.
9940
9941 2018-05-22  Pedro Alves  <palves@redhat.com>
9942
9943         * remote.c (struct packet_reg, struct remote_arch_state):
9944         Move higher up in the file.
9945         (remote_state) <m_arch_states>: Store remote_arch_state values
9946         instead of remote_arch_state pointers.
9947         (remote_state::get_remote_arch_state): Adjust.
9948
9949 2018-05-22  Pedro Alves  <palves@redhat.com>
9950
9951         * remote.c: Include <unordered_map>.
9952         (remote_state): Now a class.
9953         (remote_state) <get_remote_arch_state>: Declare method.
9954         <get_remote_arch_state>: New field.
9955         (remote_arch_state) <remote_arch_state>: Declare ctor.
9956         <regs>: Now a unique_ptr.
9957         (remote_gdbarch_data_handle): Delete.
9958         (get_remote_arch_state): Delete.
9959         (remote_state::get_remote_arch_state): New.
9960         (get_remote_state): Adjust to call remote_state's
9961         get_remote_arch_state method.
9962         (init_remote_state): Delete, bits factored out to ...
9963         (remote_arch_state::remote_arch_state): ... this new method.
9964         (get_remote_packet_size, get_memory_packet_size)
9965         (process_g_packet, remote_target::fetch_registers)
9966         (remote_target::prepare_to_store, store_registers_using_G)
9967         (remote_target::store_registers, remote_target::get_trace_status):
9968         Adjust to call remote_state's method.
9969         (_initialize_remote): Remove reference to
9970         remote_gdbarch_data_handle.
9971
9972 2018-05-22  Pedro Alves  <palves@redhat.com>
9973
9974         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9975         pread>: New method declarations.
9976         (remote_target::open_1): Adjust.
9977         (readahead_cache_invalidate): Rename to ...
9978         (readahead_cache::invalidate): ... this, and adjust to be a class
9979         method.
9980         (readahead_cache_invalidate_fd): Rename to ...
9981         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9982         class method.
9983         (remote_hostio_pwrite): Adjust.
9984         (remote_hostio_pread_from_cache): Rename to ...
9985         (readahead_cache::pread): ... this, and adjust to be a class
9986         method.
9987         (remote_hostio_close): Adjust.
9988
9989 2018-05-22  Pedro Alves  <palves@redhat.com>
9990
9991         * remote.c (remote_hostio_close_cleanup): Delete.
9992         (class scoped_remote_fd): New.
9993         (remote_file_put, remote_file_get): Use it.
9994
9995 2018-05-22  Pedro Alves  <palves@redhat.com>
9996
9997         (struct vCont_action_support): Use bool and initialize all fields.
9998         (struct readahead_cache): Initialize all fields.
9999         (remote_state): Use bool and initialize all fields.
10000         (remote_state::remote_state, remote_state::~remote_state): New.
10001         (new_remote_state): Delete.
10002         (_initialize_remote): Use new to allocate remote_state.
10003
10004 2018-05-22  Pedro Alves  <palves@redhat.com>
10005             張俊芝  <zjz@zjz.name>
10006
10007         PR gdb/22973
10008         * c-exp.y: Include "c-support.h".
10009         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
10010         of tolower.  Use c_ident_is_alpha to scan names.
10011         * c-lang.c: Include "c-support.h".
10012         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
10013         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
10014         * c-support.h: New file, with bits factored out from ...
10015         * cp-name-parser.y: ... this file.
10016         Include "c-support.h".
10017         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
10018         c-support.h and renamed.
10019         (symbol_end, yylex): Adjust.
10020
10021 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10022
10023         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
10024         parameter type to CORE_ADDR.
10025         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
10026         parameter type in declaration to CORE_ADDR.
10027         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
10028         target_auxv_search to get AT_HWCAP and use the result to get the
10029         target description.
10030         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
10031         to CORE_ADDR. Remove the cast of the return value to unsigned
10032         long. Fix error predicate of target_auxv_search.
10033         (ppc_linux_nat_target::read_description): Change the type of the
10034         hwcap variable to CORE_ADDR.
10035
10036 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10037
10038         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
10039         if the size of fpscr is larger than 32 bits.
10040
10041 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10042
10043         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
10044         (ppc32_linux_vsxregmap): New global.
10045         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
10046         regcache_supply_regset, and regcache_collect_regset.
10047         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
10048         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
10049         (fetch_vsx_register, store_vsx_register): Remove.
10050         (fetch_vsx_registers): Add regno parameter. Get regset using
10051         ppc_linux_vsxregset. Use regset to supply registers.
10052         (store_vsx_registers): Add regno parameter. Get regset using
10053         ppc_linux_vsxregset. Use regset to collect registers.
10054         (fetch_register): Call fetch_vsx_registers instead of
10055         fetch_vsx_register.
10056         (store_register): Call store_vsx_registers instead of
10057         store_vsx_register.
10058         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
10059         new regno parameter.
10060         (store_ppc_registers): Call store_vsx_registers with -1 for the
10061         new regno parameter.
10062         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
10063         (ppc_collect_vsxregset): Remove.
10064
10065 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10066
10067         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
10068         offset fields.
10069         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
10070         for vector register offset fields.
10071         (ppc64_fbsd_reg_offsets): Likewise.
10072         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
10073         to vector register offset fields.
10074         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
10075         to vector register offset fields.
10076         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
10077         vector register offset fields.
10078         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
10079         initializers for vector register offset fields.
10080         (rs6000_aix64_reg_offsets): Likewise.
10081         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
10082         (ppc_supply_vrregset): Remove.
10083         (ppc_collect_vrregset): Remove.
10084         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
10085         (ppc_linux_vrregset) : New function.
10086         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
10087         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
10088         (ppc32_linux_vrregset): Remove.
10089         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
10090         and use result instead of ppc32_linux_vrregset.
10091         (ppc32_linux_reg_offsets): Remove initializers for vector register
10092         offset fields.
10093         (ppc64_linux_reg_offsets): Likewise.
10094         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
10095         * ppc-linux-nat.c: Include regset.h.
10096         (gdb_vrregset_t): Adjust comment to account for little-endian
10097         mode.
10098         (supply_vrregset, fill_vrregset): Remove.
10099         (fetch_altivec_register, store_altivec_register): Remove.
10100         (fetch_altivec_registers): Add regno parameter. Get regset using
10101         ppc_linux_vrregset. Use regset to supply registers.
10102         (store_altivec_registers): Add regno parameter. Get regset using
10103         ppc_linux_vrregset. Use regset to collect registers.
10104         (fetch_register): Call fetch_altivec_registers instead of
10105         fetch_altivec_register.
10106         (store_register): Call store_altivec_registers instead of
10107         store_altivec_register.
10108         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
10109         the new regno parameter.
10110         (store_ppc_registers): Call store_altivec_registers with -1 for
10111         the new regno parameter.
10112
10113 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10114
10115         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
10116         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
10117         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
10118         (gdb_vrregset_t): Change array type size to
10119         PPC_LINUX_SIZEOF_VRREGSET.
10120         (gdb_vsxregset_t): Change array type size to
10121         PPC_LINUX_SIZEOF_VSXREGSET.
10122         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
10123         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
10124         PPC_LINUX_SIZEOF_VSXREGSET.
10125
10126 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10127
10128         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
10129         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
10130         nat/ppc-linux.c.
10131         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
10132         ppc_linux_target_wordsize with tid.
10133         (ppc_linux_nat_target::read_description): Call ppc_linux_target
10134         wordsize with tid.
10135         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
10136         (ppc64_64bit_inferior_p): Add static and inline specifiers.
10137         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
10138         tid parameter. Remove static specifier.
10139         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
10140         (ppc_linux_target_wordsize): New declaration.
10141
10142 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10143
10144         * arch/ppc-linux-common.c: New file.
10145         * arch/ppc-linux-common.h: New file.
10146         * arch/ppc-linux-tdesc.h: New file.
10147         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
10148         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
10149         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
10150         arch/ppc-linux-tdesc.h.
10151         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
10152         arch/ppc-linux-tdesc.h.
10153         (ppc_linux_nat_target::read_description): Remove target
10154         description matching code. Fill a ppc_linux_features struct and
10155         call ppc_linux_match_description with it. Move comment about ISA
10156         2.05 to ppc-linux-common.c.
10157         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
10158         arch/ppc-linux-tdesc.h.
10159         (ppc_linux_core_read_description): Remove target description
10160         matching code. Fill a ppc_linux_features struct and call
10161         ppc_linux_match_description with it.
10162         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
10163         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
10164         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
10165         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
10166         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
10167         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
10168         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
10169         (tdesc_powerpc_e500l): Remove.
10170
10171 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
10172
10173         * ada-lang.c (catch_assert_command): Pass empty string instead
10174         of NULL for excep_string argument.
10175
10176 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
10177
10178         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
10179         the width of the requested register exceeds the width of the
10180         `ptrace' data type.
10181
10182 2018-05-21  Tom Tromey  <tom@tromey.com>
10183
10184         * printcmd.c (output_command): Remove.
10185         (output_command_const): Rename to output_command.
10186         * valprint.h (output_command): Rename from output_command_const.
10187         * tracepoint.c (trace_dump_actions): Call output_command.
10188
10189 2018-05-21  Tom Tromey  <tom@tromey.com>
10190
10191         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
10192         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
10193         * ada-lang.h (create_ada_exception_catchpoint): Update.
10194         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
10195         std::string.
10196         (create_excep_cond_exprs, ~ada_catchpoint)
10197         (should_stop_exception, print_one_exception)
10198         (print_mention_exception, print_recreate_exception): Update.
10199         (ada_get_next_arg): Remove.
10200         (catch_ada_exception_command_split): Use std::string.  Change type
10201         of "excep_string", "cond_string".
10202         (catch_ada_exception_command): Update.
10203         (create_ada_exception_catchpoint): Change type of excep_string.
10204         (ada_exception_sal): Remove excep_string parameter.
10205         (~ada_catchpoint): Remove.
10206
10207 2018-05-21  Tom Tromey  <tom@tromey.com>
10208
10209         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
10210         cleanup.
10211
10212 2018-05-21  Tom Tromey  <tom@tromey.com>
10213
10214         * ada-lang.c (ada_exception_message_1, ada_exception_message):
10215         Return unique_xmalloc_ptr.
10216         (print_it_exception): Update.
10217
10218 2018-05-21  Tom Tromey  <tom@tromey.com>
10219
10220         * tracepoint.c (trace_dump_actions): Use std::string.
10221
10222 2018-05-21  Tom Tromey  <tom@tromey.com>
10223
10224         * symfile.c (reread_symbols): Use std::string for original_name.
10225
10226 2018-05-21  Tom Tromey  <tom@tromey.com>
10227
10228         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
10229         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
10230         constructor.
10231
10232 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
10233
10234         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10235         instance to...
10236         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10237         * objfiles.c (get_objfile_bfd_data): Allocate
10238         objfile_per_bfd_storage with obstack_new when allocating on
10239         obstack.
10240
10241 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10242
10243         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10244         OBSTACK_ZALLOC.
10245         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10246         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10247         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10248         (add_pending): Likewise.
10249         (parse_symbol): Likewise.
10250         (parse_partial_symbols): Likewise.
10251         (psymtab_to_symtab_1): Likewise.
10252         (new_psymtab): Likewise.
10253         (elfmdebug_build_psymtabs): Likewise.
10254         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10255         * objfiles.c (get_objfile_bfd_data): Likewise.
10256         (objfile_register_static_link): Likewise.
10257         * psymtab.c (allocate_psymtab): Likewise.
10258         * stabsread.c (read_member_functions): Likewise.
10259         * xcoffread.c (xcoff_end_psymtab): Likewise.
10260
10261 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10262
10263         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10264         compiler supports std::is_trivially_constructible.
10265         * common/poison.h: Include obstack.h.
10266         (IsMallocable): Define to is_trivially_constructible if the
10267         compiler supports it, define to true_type otherwise.
10268         (xobnew): New.
10269         (XOBNEW): Redefine.
10270         (xobnewvec): New.
10271         (XOBNEWVEC): Redefine.
10272         * gdb_obstack.h (obstack_zalloc): New.
10273         (OBSTACK_ZALLOC): Redefine.
10274         (obstack_calloc): New.
10275         (OBSTACK_CALLOC): Redefine.
10276         (obstack_new): New.
10277         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10278         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10279         gdbarch.c.
10280         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10281         obstack_calloc/obstack_zalloc.
10282         (gdbarch_obstack_zalloc): Remove.
10283         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10284
10285 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10286
10287         * stack.c (backtrace_command_1): Remove useless variable int i.
10288
10289 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10290
10291         * stack.c (print_frame_info): Fix comment.
10292
10293 2018-05-18  Tom Tromey  <tom@tromey.com>
10294
10295         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10296         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10297         (~dwarf2_per_objfile): Update
10298         (dwarf2_get_dwz_file): Use new.
10299         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10300         unique_ptr.
10301
10302 2018-05-18  Tom Tromey  <tom@tromey.com>
10303
10304         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10305         unique_ptr.
10306         * dwarf2read.c (struct dwp_file): Add constructor and
10307         initializers.
10308         (open_and_init_dwp_file): Return a unique_ptr.
10309         (dwarf2_per_objfile, create_dwp_hash_table)
10310         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10311         (lookup_dwo_unit_in_dwp): Update.
10312         (open_and_init_dwp_file, get_dwp_file): Update.
10313
10314 2018-05-18  Tom Tromey  <tom@tromey.com>
10315
10316         * dwarf2read.c (dwarf2_per_objfile): Update.
10317         (struct mapped_index): Add initializers.
10318         (dwarf2_read_index): Use new.
10319         (dw2_symtab_iter_init): Update.
10320         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10321         unique_ptr.
10322
10323 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10324
10325         * dwarf2read.c (mapped_index) <total_size>: Remove.
10326
10327 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10328
10329         * unittests/format_pieces-selftests.c (test_format_specifier):
10330         Add ARI comments.
10331
10332 2018-05-18  Tom Tromey  <tom@tromey.com>
10333
10334         * c-typeprint.c (maybe_print_hole): New function.
10335         (c_print_type_struct_field_offset): Update.
10336         (c_type_print_base_struct_union): Call maybe_print_hole.
10337
10338 2018-05-17  Keith Seitz  <keiths@redhat.com>
10339
10340         * breakpoint.c (build_bpstat_chain): New function, moved from
10341         bpstat_stop_status.
10342         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10343         If no stop chain is passed, call build_bpstat_chain to build it.
10344         * breakpoint.h (build_bpstat_chain): Declare.
10345         (bpstat_stop_status): Move documentation here from breakpoint.c.
10346         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10347         build the stop chain and pass it to skip_inline_frames.
10348         Pass this stop chain to bpstat_stop_status.
10349         * inline-frame.c: Include breakpoint.h.
10350         (stopped_by_user_bp_inline_frame): New function.
10351         (skip_inline_frames): Add parameter `stop_chain'.
10352         Move documention to inline-frame.h.
10353         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10354         whether the frame should be elided.
10355         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10356         Add moved documentation and update for new parameter.
10357
10358 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10359
10360         PR cli/14975
10361         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10362         unittests/format_pieces-selftests.c.
10363         * common/format.h (format_piece) <operator==>: New.
10364         (format_pieces) <operator[]>: Remove.
10365         * common/format.c (format_pieces::format_pieces): Handle \e.
10366         * unittests/format_pieces-selftests.c: New.
10367
10368 2018-05-17  Tom Tromey  <tom@tromey.com>
10369
10370         PR symtab/23010:
10371         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10372         (dw2_instantiate_symtab): Add skip_partial parameter.
10373         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10374         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10375         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10376         (dw2_expand_symtabs_matching_one)
10377         (dw2_find_pc_sect_compunit_symtab)
10378         (dw2_debug_names_lookup_symbol)
10379         (dw2_debug_names_expand_symtabs_for_function): Update.
10380         (init_cutu_and_read_dies): Add skip_partial parameter.
10381         (process_psymtab_comp_unit, build_type_psymtabs_1)
10382         (process_skeletonless_type_unit, load_partial_comp_unit)
10383         (psymtab_to_symtab_1): Update.
10384         (load_full_comp_unit): Add skip_partial parameter.
10385         (process_imported_unit_die, dwarf2_read_addr_index)
10386         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10387         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10388         (read_signatured_type): Update.
10389
10390 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10391
10392         * value.c (release_value): Remove unused variable.
10393         (record_latest_value): Likewise.
10394         (access_value_history): Likewise.
10395         (preserve_values): Likewise.
10396
10397 2018-05-17  Tom Tromey  <tom@tromey.com>
10398
10399         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10400         Initialize.
10401
10402 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10403
10404         PR gdb/22286
10405         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10406         Also handle registers whose width is not a multiple of
10407         PTRACE_TYPE_RET.
10408         (linux_nat_trad_target::store_register): Likewise.
10409
10410 2018-05-16  Tom Tromey  <tom@tromey.com>
10411
10412         * gdbcore.h (core_bfd): Redefine.
10413         * corelow.c (core_target::close): Update.
10414         (core_target_open): Update.
10415         * progspace.h (struct program_space) <cbfd>: Now a
10416         gdb_bfd_ref_ptr.
10417
10418 2018-05-16  Tom Tromey  <tom@tromey.com>
10419
10420         PR cli/19551:
10421         * symfile-add-flags.h (enum symfile_add_flags)
10422         <SYMFILE_NOT_FILENAME>: New constant.
10423         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10424         objfile name from BFD.
10425         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10426         * minidebug.c (find_separate_debug_file_in_section): Put
10427         ".gnu_debugdata" into BFD's file name.
10428
10429 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10430
10431         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10432         Remove.
10433
10434 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10435
10436         PR binutils/21446
10437         * aarch64-tdep.c (aarch64_analyze_prologue,
10438         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10439         Indicate not interested in errors.
10440
10441 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10442
10443         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10444         Supply the MIPS_ZERO_REGNUM register.
10445
10446 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10447
10448         * mips-tdep.c (mask_address_var): Make variable static.
10449
10450 2018-05-14  Tom Tromey  <tom@tromey.com>
10451
10452         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10453
10454 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10455
10456         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10457         FXSAVE_ADDR for the mxcsr register.
10458
10459 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10460
10461         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10462
10463 2018-05-11  Pedro Alves  <palves@redhat.com>
10464
10465         * corelow.c (core_target) <core_target>: No longer inline.
10466         Initialize m_core_gdbarch, m_core_vec and build the section table
10467         here.
10468         <~core_target>: New.
10469         <core_gdbarch, get_core_register_section>: New methods.
10470         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10471         factored out from ...
10472         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10473         (core_ops): Delete.
10474         (sniff_core_bfd): Add gdbarch parameter.
10475         (core_close): Delete, merged into ...
10476         (core_target::close): ... here.  Delete self.
10477         (core_close_cleanup): Delete.
10478         (core_target_open): Allocate a core_target on the heap.  Use a
10479         unique_ptr instead of a cleanup.  Bits moved into the core_target
10480         ctor.  Adjust to use core_target methods instead of globals.
10481         (get_core_register_section): Rename to ...
10482         (core_target::get_core_register_section): ... this and adjust.
10483         (struct get_core_registers_cb_data): New.
10484         (get_core_registers_cb): Use it.  Use bool.
10485         (core_target::fetch_registers, core_target::files_info)
10486         (core_target::xfer_partial, core_target::read_description)
10487         (core_target::pid_to, core_target::thread_name): Adjust to
10488         reference class fields instead of globals.
10489         * target.h (struct target_ops_deleter, target_ops_up): New.
10490
10491 2018-05-11  Pedro Alves  <palves@redhat.com>
10492
10493         * corefile.c (core_file_command): Move to corelow.c.
10494         * corelow.c (the_core_target): Delete.
10495         (core_file_command): Moved from corefile.c.  Check exec_bfd
10496         instead of the_core_target.  Use target_detach instead of calling
10497         into the_core_target directly.
10498         (maybe_say_no_core_file_now): New.
10499         (core_target::detach): Use it.
10500         (_initialize_corelow): Remove references to the_core_target.
10501         * gdbcore.h (the_core_target): Delete.
10502
10503 2018-05-11  Tom Tromey  <tromey@redhat.com>
10504             Pedro Alves  <palves@redhat.com>
10505
10506         * corefile.c (core_bfd): Remove.
10507         * gdbcore.h (core_bfd): Now a macro.
10508         * progspace.h (struct program_space) <cbfd>: New field.
10509
10510 2018-05-11  Tom Tromey  <tom@tromey.com>
10511
10512         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10513         gdb::def_vector.
10514
10515 2018-05-10  Tom Tromey  <tom@tromey.com>
10516
10517         * configure: Rebuild.
10518         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10519
10520 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10521
10522         PR server/23158:
10523         * regformats/regdat.sh: Adjust script, following the addition
10524         of the new expedite_regs parameter to init_target_desc.
10525
10526 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10527     
10528         PR gdb/23127
10529         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10530         set_gdbarch_significant_addr_bit.
10531         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10532         set_gdbarch_significant_addr_bit.
10533         * utils.c (address_significant): Update to sign extend addr.
10534
10535 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10536
10537         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10538         (xtensa_linux_init_abi): Limit tdep->num_regs by
10539         tdep->num_nopriv_regs.
10540         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10541         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10542         not initialized.
10543
10544 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10545
10546         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10547
10548 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10549
10550         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10551         (I387_MXCSR_INIT_VAL): New constant.
10552         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10553         buffer if it was supplied by the inferior.
10554         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10555         (i387_xsave_get_clear_bv): New function.
10556         (i387_supply_xsave): Only read x87 control registers from the
10557         xsave buffer if the feature is enabled, and the state will have
10558         been written, otherwise, provide a suitable default.
10559         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10560         including x87 control registers.  Update control registers if they
10561         have changed from the default value, and mark features as enabled
10562         as required.
10563         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10564
10565 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10566
10567         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10568
10569 2018-05-07  Tom Tromey  <tom@tromey.com>
10570
10571         * configure: Rebuild.
10572         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10573
10574 2018-05-07  Tom Tromey  <tom@tromey.com>
10575
10576         PR tdep/20362:
10577         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10578         bit.  Use correct value for VDIV.
10579
10580 2018-05-04  Tom Tromey  <tom@tromey.com>
10581
10582         * configure: Rebuild.
10583         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10584
10585 2018-05-04  Tom Tromey  <tom@tromey.com>
10586
10587         * linux-record.c (record_linux_system_call) <case
10588         RECORD_SYS_RECVFROM>: Add "break".
10589
10590 2018-05-04  Tom Tromey  <tom@tromey.com>
10591
10592         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10593         Add missing "break".
10594         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10595         Add missing "break".
10596
10597 2018-05-04  Tom Tromey  <tom@tromey.com>
10598
10599         * rs6000-tdep.c (ppc_process_record_op4)
10600         (ppc_process_record_op63): Add fall-through comment.
10601
10602 2018-05-04  Tom Tromey  <tom@tromey.com>
10603
10604         * i386-tdep.c (i386_process_record): Add fall-through comment.
10605
10606 2018-05-04  Tom Tromey  <tom@tromey.com>
10607
10608         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10609         comment.
10610
10611 2018-05-04  Tom Tromey  <tom@tromey.com>
10612
10613         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10614         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10615         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10616         comment.
10617         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10618         comment.
10619         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10620         comment.
10621
10622 2018-05-04  Tom Tromey  <tom@tromey.com>
10623
10624         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10625
10626 2018-05-04  Tom Tromey  <tom@tromey.com>
10627
10628         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10629         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10630         * symfile.c (section_is_mapped): Fix fall-through comment.
10631         * stabsread.c (define_symbol, read_member_functions): Fix
10632         fall-through comment.
10633         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10634         comment.
10635         * remote.c (remote_wait_as): Fix fall-through comment.
10636         * p-exp.y (yylex): Fix fall-through comment.
10637         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10638         comment.
10639         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10640         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10641         * jv-exp.y (yylex): Fix fall-through comment.
10642         * go-exp.y (lex_one_token): Fix fall-through comment.
10643         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10644         fall-through comment.
10645         * f-exp.y (yylex): Fix fall-through comment.
10646         * dwarf2read.c (process_die): Fix fall-through comments.
10647         * dbxread.c (process_one_symbol): Fix fall-through comment.
10648         * d-exp.y (lex_one_token): Fix fall-through comment.
10649         * cp-name-parser.y (yylex): Fix fall-through comment.
10650         * coffread.c (coff_symtab_read): Fix fall-through comment.
10651         * c-exp.y (lex_one_token): Fix fall-through comment.
10652         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10653         comment.
10654         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10655         comment.
10656
10657 2018-05-04  Tom Tromey  <tom@tromey.com>
10658
10659         PR python/22730:
10660         * NEWS: Mention gdb.execute change.
10661         * gdbcmd.h (execute_control_command): Don't declare.
10662         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10663         execute_control_commands, execute_control_commands_to_string.
10664         * cli/cli-script.h (execute_control_commands)
10665         (execute_control_commands_to_string): Declare.
10666         (execute_control_command): Add from_tty parameter.
10667         * cli/cli-script.c (execute_control_commands)
10668         (execute_control_commands_to_string): New functions.
10669         (execute_user_command): Use execute_control_commands.
10670         (execute_control_command_1): Add "from_tty" parameter.  Update.
10671         (execute_control_command): Likewise.
10672
10673 2018-05-04  Tom Tromey  <tom@tromey.com>
10674
10675         PR python/22731:
10676         * NEWS: Mention that breakpoint commands are writable.
10677         * python/py-breakpoint.c (bppy_set_commands): New function.
10678         (breakpoint_object_getset) <"commands">: Use it.
10679
10680 2018-05-04  Tom Tromey  <tom@tromey.com>
10681
10682         * tracepoint.c (actions_command): Update.
10683         * mi/mi-cmd-break.c (mi_command_line_array)
10684         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10685         (mi_read_next_line): Remove.
10686         (mi_cmd_break_commands): Update.
10687         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10688         function_view.
10689         * cli/cli-script.c (get_command_line): Update.
10690         (process_next_line): Use function_view.  Constify.
10691         (recurse_read_control_structure, read_command_lines)
10692         (read_command_lines_1): Change argument types to function_view.
10693         (do_define_command, document_command): Update.
10694         * breakpoint.h (check_tracepoint_command): Don't declare.
10695         * breakpoint.c (check_tracepoint_command): Remove.
10696         (commands_command_1, create_tracepoint_from_upload): Update.
10697
10698 2018-05-04  Tom Tromey  <tom@tromey.com>
10699
10700         PR gdb/11750:
10701         * cli/cli-script.h (enum command_control_type) <define_control>:
10702         New constant.
10703         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10704         (build_command_line, execute_control_command_1)
10705         (process_next_line): Likewise.
10706         (do_define_command): New function, extracted from define_command.
10707         (define_command): Use it.
10708
10709 2018-05-04  Tom Tromey  <tom@tromey.com>
10710
10711         * tracepoint.c (actions_command): Update.
10712         * cli/cli-script.h (read_command_lines): Update.
10713         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10714         (MAX_TMPBUF): Remove define.
10715         (define_command): Use string_printf.
10716         (document_command): Likewise.
10717         * breakpoint.c (commands_command_1): Update.
10718
10719 2018-05-04  Tom Tromey  <tom@tromey.com>
10720
10721         * top.c (execute_command): Update.
10722         * cli/cli-script.h (print_command_lines): Now varargs.
10723         * cli/cli-script.c (print_command_lines): Now varargs.
10724         (execute_control_command_1) <case while_control, case if_control>:
10725         Update.
10726
10727 2018-05-04  Tom Tromey  <tom@tromey.com>
10728
10729         * tracepoint.c (all_tracepoint_actions): Rename from
10730         all_tracepoint_actions_and_cleanup.  Change return type.
10731         (actions_command, encode_actions_1, encode_actions)
10732         (trace_dump_actions, tdump_command): Update.
10733         * remote.c (remote_download_command_source): Update.
10734         * python/python.c (gdbpy_eval_from_control_command)
10735         (python_command, python_interactive_command): Update.
10736         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10737         * guile/guile.c (guile_command)
10738         (gdbscm_eval_from_control_command, guile_command): Update.
10739         * compile/compile.c (compile_code_command)
10740         (compile_print_command, compile_to_object): Update.
10741         * cli/cli-script.h (struct command_lines_deleter): New.
10742         (counted_command_line): New typedef.
10743         (struct command_line): Add constructor, destructor.
10744         <body_list>: Remove.
10745         <body_list_0, body_list_1>: New members.
10746         (command_line_up): Remove typedef.
10747         (read_command_lines, read_command_lines_1, get_command_line):
10748         Update.
10749         (copy_command_lines): Don't declare.
10750         * cli/cli-script.c (build_command_line): Use "new".
10751         (get_command_line): Return counted_command_line.
10752         (print_command_lines, execute_user_command)
10753         (execute_control_command_1, while_command, if_command): Update.
10754         (realloc_body_list): Remove.
10755         (process_next_line, recurse_read_control_structure): Update.
10756         (read_command_lines, read_command_lines_1): Return counted_command_line.
10757         (free_command_lines): Use "delete".
10758         (copy_command_lines): Remove.
10759         (define_command, document_command, show_user_1): Update.
10760         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10761         a counted_command_line.
10762         * breakpoint.h (counted_command_line): Remove typedef.
10763         (breakpoint_set_commands): Update.
10764         * breakpoint.c (check_no_tracepoint_commands)
10765         (validate_commands_for_breakpoint): Update.
10766         (breakpoint_set_commands): Change commands to be a
10767         counted_command_line.
10768         (commands_command_1, update_dprintf_command_list)
10769         (create_tracepoint_from_upload): Update.
10770
10771 2018-05-04  Tom Tromey  <tom@tromey.com>
10772
10773         * cli/cli-decode.h (cmd_list_element): New constructor.
10774         (~cmd_list_element): New destructor.
10775         (struct cmd_list_element): Add initializers.
10776         * cli/cli-decode.c (do_add_cmd): Use "new".
10777         (delete_cmd): Use "delete".
10778
10779 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10780             Pedro Alves <palves@redhat.com>
10781
10782         PR breakpoints/19806 and support for PR external/20207.
10783         * NEWS: Mention Aarch64 watchpoint improvements.
10784         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10785         watchpoints and PR external/20207 watchpoints.
10786         * nat/aarch64-linux-hw-point.c
10787         (kernel_supports_any_contiguous_range): New.
10788         (aarch64_watchpoint_offset): New.
10789         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10790         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10791         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10792         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10793         next_addr_orig_p.  Support PR external/20207 watchpoints.
10794         (aarch64_downgrade_regs): New.
10795         (aarch64_dr_state_insert_one_point): New parameters offset and
10796         addr_orig.
10797         (aarch64_dr_state_remove_one_point): Likewise.
10798         (aarch64_handle_breakpoint): Update caller.
10799         (aarch64_handle_aligned_watchpoint): Likewise.
10800         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10801         aligned_offset.
10802         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10803         aarch64_downgrade_regs.
10804         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10805         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10806         (DR_CONTROL_MASK): ... this.
10807         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10808         (unsigned int aarch64_watchpoint_offset): New prototype.
10809         (aarch64_linux_set_debug_regs): Remove const from state.
10810         * utils.c (align_up, align_down): Move to ...
10811         * common/common-utils.c (align_up, align_down): ... here.
10812         * utils.h (align_up, align_down): Move to ...
10813         * common/common-utils.h (align_up, align_down): ... here.
10814
10815 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10816
10817         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10818         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10819         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10820         Re-implement to match the ABI as summarized in GCC's
10821         gcc/config/sparc/sparc.c.  All callers updated.
10822         (sparc32_store_arguments): Remove assertion.
10823
10824 2018-05-04  Tom Tromey  <tom@tromey.com>
10825
10826         * printcmd.c: Don't include tui.h.
10827         (decode_format): Use skip_spaces.
10828
10829 2018-05-04  Tom Tromey  <tom@tromey.com>
10830
10831         PR gdb/22619:
10832         * printcmd.c (last_count): New global.
10833         (x_command): Use saved count when repeating.
10834
10835 2018-05-04  Tom Tromey  <tom@tromey.com>
10836
10837         * nto-procfs.c (do_closedir_cleanup): Remove.
10838         (procfs_pidlist): Use gdb_dir_up.
10839         * procfs.c (do_closedir_cleanup): Remove.
10840         (proc_update_threads): Use gdb_dir_up.
10841         * common/filestuff.h (struct gdb_dir_deleter): New.
10842         (gdb_dir_up): New typedef.
10843
10844 2018-05-04  Tom Tromey  <tom@tromey.com>
10845
10846         * ada-lang.c (print_mention_exception): Use std::string.
10847
10848 2018-05-04  Tom Tromey  <tom@tromey.com>
10849
10850         * ada-lang.c (create_excep_cond_exprs): Update.
10851         (ada_exception_catchpoint_cond_string): Use std::string.
10852
10853 2018-05-04  Tom Tromey  <tom@tromey.com>
10854
10855         * ada-lang.c (xget_renaming_scope): Return std::string.
10856         (old_renaming_is_invisible): Update.
10857
10858 2018-05-04  Tom Tromey  <tom@tromey.com>
10859
10860         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10861         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10862
10863 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10864
10865         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10866
10867 2018-05-04  Tom Tromey  <tom@tromey.com>
10868
10869         * remote.c (remote_query_supported_append): Change type.
10870         (remote_check_symbols): Update.
10871
10872 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10873
10874         PR gdb/11420
10875         * configure.ac: Prepend libpython.
10876         * python/python-config.py: Likewise.
10877         * configure: Regenerate.
10878
10879 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10880
10881         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10882
10883 2018-05-03  Pedro Alves  <palves@redhat.com>
10884
10885         * s390-linux-nat.c
10886         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10887         override.  Write 'true' instead of '1'.
10888         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10889         declaration.
10890
10891 2018-05-02  Pedro Alves  <palves@redhat.com>
10892
10893         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10894         add_inf_child_target.
10895         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10896         add_inf_child_target.
10897         * aix-thread.c (aix_thread_target_info): New.
10898         (aix_thread_target) <shortname, longname, doc>: Delete.
10899         <info>: New.
10900         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10901         add_inf_child_target.
10902         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10903         add_inf_child_target.
10904         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10905         add_inf_child_target.
10906         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10907         add_inf_child_target.
10908         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10909         add_inf_child_target.
10910         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10911         add_inf_child_target.
10912         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10913         add_inf_child_target.
10914         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10915         add_inf_child_target.
10916         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10917         add_inf_child_target.
10918         * bfd-target.c (target_bfd_target_info): New.
10919         (target_bfd) <shortname, longname, doc>: Delete.
10920         <info>: New.
10921         * bsd-kvm.c (bsd_kvm_target_info): New.
10922         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10923         <info>: New.
10924         (bsd_kvm_target::open): Rename to ...
10925         (bsd_kvm_target_open): ... this.  Adjust.
10926         * bsd-uthread.c (bsd_uthread_target_info): New.
10927         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10928         <info>: New.
10929         * corefile.c (core_file_command): Adjust.
10930         * corelow.c (core_target_info): New.
10931         (core_target) <shortname, longname, doc>: Delete.
10932         <info>: New.
10933         (core_target::open): Rename to ...
10934         (core_target_open): ... this.  Adjust.
10935         * ctf.c (ctf_target_info): New.
10936         (ctf_target) <shortname, longname, doc>: Delete.
10937         <info>: New.
10938         (ctf_target::open): Rename to ...
10939         (ctf_target_open): ... this.
10940         (_initialize_ctf): Adjust.
10941         * exec.c (exec_target_info): New.
10942         (exec_target) <shortname, longname, doc>: Delete.
10943         <info>: New.
10944         (exec_target::open): Rename to ...
10945         (exec_target_open): ... this.
10946         * gdbcore.h (core_target_open): Declare.
10947         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10948         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10949         add_inf_child_target.
10950         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10951         add_inf_child_target.
10952         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10953         add_inf_child_target.
10954         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10955         add_inf_child_target.
10956         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10957         add_inf_child_target.
10958         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10959         add_inf_child_target.
10960         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10961         add_inf_child_target.
10962         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10963         add_inf_child_target.
10964         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10965         add_inf_child_target.
10966         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10967         add_inf_child_target.
10968         * inf-child.c (inf_child_target_info): New.
10969         (inf_child_target::info): New.
10970         (inf_child_open_target): Remove 'target' parameter.  Use
10971         get_native_target instead.
10972         (inf_child_target::open): Delete.
10973         (add_inf_child_target): New.
10974         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10975         Delete.
10976         <info>: New.
10977         (add_inf_child_target): Declare.
10978         (inf_child_open_target): Declare.
10979         * linux-thread-db.c (thread_db_target_info): New.
10980         (thread_db_target) <shortname, longname, doc>: Delete.
10981         <info>: New.
10982         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10983         add_inf_child_target.
10984         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10985         add_inf_child_target.
10986         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10987         add_inf_child_target.
10988         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10989         add_inf_child_target.
10990         * make-target-delegates (print_class): Adjust.
10991         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10992         add_inf_child_target.
10993         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10994         add_inf_child_target.
10995         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10996         add_inf_child_target.
10997         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10998         add_inf_child_target.
10999         * nto-procfs.c (nto_native_target_info): New.
11000         (nto_procfs_target_native) <shortname, longname, doc>:
11001         Delete.
11002         <info>: New.
11003         (nto_procfs_target_info): New.
11004         (nto_procfs_target_procfs) <shortname, longname, doc>:
11005         Delete.
11006         <info>: New.
11007         (init_procfs_targets): Adjust.
11008         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
11009         add_inf_child_target.
11010         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
11011         add_inf_child_target.
11012         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
11013         add_inf_child_target.
11014         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
11015         add_inf_child_target.
11016         * ravenscar-thread.c (ravenscar_target_info): New.
11017         (ravenscar_thread_target) <shortname, longname, doc>:
11018         Delete.
11019         <info>: New.
11020         * record-btrace.c (record_btrace_target_info):
11021         (record_btrace_target) <shortname, longname, doc>: Delete.
11022         <info>: New.
11023         (record_btrace_target::open): Rename to ...
11024         (record_btrace_target_open): ... this.  Adjust.
11025         * record-full.c (record_longname, record_doc): New.
11026         (record_full_base_target) <shortname, longname, doc>: Delete.
11027         <info>: New.
11028         (record_full_target_info): New.
11029         (record_full_target): <shortname>: Delete.
11030         <info>: New.
11031         (record_full_core_open_1, record_full_open_1): Update comments.
11032         (record_full_base_target::open): Rename to ...
11033         (record_full_open): ... this.
11034         (cmd_record_full_restore): Update.
11035         (_initialize_record_full): Update.
11036         * remote-sim.c (remote_sim_target_info): New.
11037         (gdbsim_target) <shortname, longname, doc>: Delete.
11038         <info>: New.
11039         (gdbsim_target::open): Rename to ...
11040         (gdbsim_target_open): ... this.
11041         (_initialize_remote_sim): Adjust.
11042         * remote.c (remote_doc): New.
11043         (remote_target_info): New.
11044         (remote_target) <shortname, longname, doc>: Delete.
11045         <info>: New.
11046         (extended_remote_target_info): New.
11047         (extended_remote_target) <shortname, longname, doc>: Delete.
11048         <info>: New.
11049         (remote_target::open_1): Make static.  Adjust.
11050         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
11051         * s390-linux-nat.c (_initialize_s390_nat): Use
11052         add_inf_child_target.
11053         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
11054         add_inf_child_target.
11055         * sol-thread.c (thread_db_target_info): New.
11056         (sol_thread_target) <shortname, longname, doc>: Delete.
11057         <info>: New.
11058         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
11059         add_inf_child_target.
11060         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
11061         add_inf_child_target.
11062         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
11063         add_inf_child_target.
11064         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
11065         add_inf_child_target.
11066         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
11067         add_inf_child_target.
11068         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
11069         add_inf_child_target.
11070         * spu-linux-nat.c (_initialize_spu_nat): Use
11071         add_inf_child_target.
11072         * spu-multiarch.c (spu_multiarch_target_info): New.
11073         (spu_multiarch_target) <shortname, longname, doc>: Delete.
11074         <info>: New.
11075         * target-delegates.c: Regenerate.
11076         * target.c: Include <unordered_map>.
11077         (target_ops_p): Delete.
11078         (DEF_VEC_P(target_ops_p)): Delete.
11079         (target_factories): New.
11080         (test_target_info): New.
11081         (test_target_ops::info): New.
11082         (open_target): Adjust to use target_factories.
11083         (add_target_with_completer): Rename to ...
11084         (add_target): ... this.  Change prototype.  Register target_info
11085         and open callback in target_factories.  Register target_info in
11086         command context instead of target_ops.
11087         (add_target): Delete old implementation.
11088         (add_deprecated_target_alias): Change prototype.  Adjust.
11089         (the_native_target): New.
11090         (set_native_target, get_native_target): New.
11091         (find_default_run_target): Use the_native_target.
11092         (find_attach_target, find_run_target): Simplify.
11093         (target_ops::open): Delete.
11094         (dummy_target_info): New.
11095         (dummy_target::shortname, dummy_target::longname)
11096         (dummy_target::doc): Delete.
11097         (dummy_target::info): New.
11098         (debug_target::shortname, debug_target::longname)
11099         (debug_target::doc): Delete.
11100         (debug_target::info): New.
11101         * target.h (struct target_info): New.
11102         (target_ops::~target_ops): Add comment.
11103         (target_ops::info): New.
11104         (target_ops::shortname, target_ops::longname, target_ops::doc): No
11105         longer virtual.  Implement in terms of target_info.
11106         (set_native_target, get_native_target): Declare.
11107         (target_open_ftype): New.
11108         (add_target, add_target_with_completer)
11109         (add_deprecated_target_alias): Change prototype.
11110         (test_target) <shortname, longname, doc>: Delete.
11111         <info>: New.
11112         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
11113         add_inf_child_target.
11114         * tracefile-tfile.c (tfile_target_info): New.
11115         (tfile_target) <shortname, longname, doc>: Delete.
11116         <info>: New.
11117         (tfile_target::open): Rename to ...
11118         (tfile_target_open): ... this.
11119         (_initialize_tracefile_tfile): Adjust.
11120         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
11121         add_inf_child_target.
11122         * windows-nat.c (_initialize_windows_nat): Use
11123         add_inf_child_target.
11124         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
11125         add_inf_child_target.
11126
11127 2018-05-02  Pedro Alves  <palves@redhat.com>
11128
11129         * linux-nat.h (linux_nat_target) <low_new_thread,
11130         low_delete_thread, low_new_fork, low_forget_process,
11131         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
11132         New virtual methods.
11133         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
11134         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
11135         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
11136         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
11137         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
11138         Delete.
11139         * linux-fork.c (delete_fork): Adjust to call low method.
11140         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
11141         (linux_nat_new_fork, linux_nat_forget_process_hook)
11142         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
11143         (linux_nat_status_is_event):
11144         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
11145         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
11146         to call low method.
11147         (sigtrap_is_event): Rename to ...
11148         (linux_nat_target::low_status_is_event): ... this.
11149         (linux_nat_set_status_is_event): Delete.
11150         (save_stop_reason, linux_nat_wait_1)
11151         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
11152         low methods.
11153         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
11154         (linux_nat_set_new_fork, linux_nat_set_forget_process)
11155         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
11156         (linux_nat_set_prepare_to_resume): Delete.
11157         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
11158         low virtual methods.
11159         * amd64-linux-nat.c: Likewise.
11160         * arm-linux-nat.c: Likewise.
11161         * i386-linux-nat.c: Likewise.
11162         * ia64-linux-nat.c: Likewise.
11163         * mips-linux-nat.c: Likewise.
11164         * ppc-linux-nat.c: Likewise.
11165         * s390-linux-nat.c: Likewise.
11166         * sparc64-linux-nat.c: Likewise.
11167         * x86-linux-nat.c: Likewise.
11168         * x86-linux-nat.h: Include "nat/x86-linux.h".
11169         (x86_linux_nat_target) <low_new_fork, low_forget_process,
11170         low_prepare_to_resume, low_new_thread, low_delete_thread>:
11171         Override methods.
11172
11173 2018-05-02  Pedro Alves  <palves@redhat.com>
11174
11175         * target.h (target_ops)
11176         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
11177         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
11178         stopped_by_watchpoint, have_continuable_watchpoint,
11179         stopped_data_address, watchpoint_addr_within_range,
11180         can_accel_watchpoint_condition, can_run, thread_alive,
11181         has_all_memory, has_memory, has_stack, has_registers,
11182         has_execution, can_async_p, is_async_p, supports_non_stop,
11183         always_non_stop_p, can_execute_reverse, supports_multi_process,
11184         supports_enable_disable_tracepoint,
11185         supports_disable_randomization, supports_string_tracing,
11186         supports_evaluation_of_breakpoint_conditions,
11187         can_run_breakpoint_commands, filesystem_is_local,
11188         can_download_tracepoint, get_trace_state_variable_value,
11189         set_trace_notes, get_tib_address, use_agent, can_use_agent,
11190         record_is_replaying, record_will_replay,
11191         augmented_libraries_svr4_read>: Adjust to return bool.
11192         * aarch64-linux-nat.c: All implementations adjusted.
11193         * aix-thread.c: All implementations adjusted.
11194         * arm-linux-nat.c: All implementations adjusted.
11195         * breakpoint.c: All implementations adjusted.
11196         * bsd-kvm.c: All implementations adjusted.
11197         * bsd-uthread.c: All implementations adjusted.
11198         * corelow.c: All implementations adjusted.
11199         * ctf.c: All implementations adjusted.
11200         * darwin-nat.c: All implementations adjusted.
11201         * darwin-nat.h: All implementations adjusted.
11202         * exec.c: All implementations adjusted.
11203         * fbsd-nat.c: All implementations adjusted.
11204         * fbsd-nat.h: All implementations adjusted.
11205         * gnu-nat.c: All implementations adjusted.
11206         * gnu-nat.h: All implementations adjusted.
11207         * go32-nat.c: All implementations adjusted.
11208         * ia64-linux-nat.c: All implementations adjusted.
11209         * inf-child.c: All implementations adjusted.
11210         * inf-child.h: All implementations adjusted.
11211         * inf-ptrace.c: All implementations adjusted.
11212         * inf-ptrace.h: All implementations adjusted.
11213         * linux-nat.c: All implementations adjusted.
11214         * linux-nat.h: All implementations adjusted.
11215         * mips-linux-nat.c: All implementations adjusted.
11216         * nto-procfs.c: All implementations adjusted.
11217         * ppc-linux-nat.c: All implementations adjusted.
11218         * procfs.c: All implementations adjusted.
11219         * ravenscar-thread.c: All implementations adjusted.
11220         * record-btrace.c: All implementations adjusted.
11221         * record-full.c: All implementations adjusted.
11222         * remote-sim.c: All implementations adjusted.
11223         * remote.c: All implementations adjusted.
11224         * s390-linux-nat.c: All implementations adjusted.
11225         * sol-thread.c: All implementations adjusted.
11226         * spu-multiarch.c: All implementations adjusted.
11227         * target-delegates.c: All implementations adjusted.
11228         * target.c: All implementations adjusted.
11229         * target.h: All implementations adjusted.
11230         * tracefile-tfile.c: All implementations adjusted.
11231         * tracefile.c: All implementations adjusted.
11232         * tracefile.h: All implementations adjusted.
11233         * windows-nat.c: All implementations adjusted.
11234         * x86-linux-nat.h: All implementations adjusted.
11235         * x86-nat.h: All implementations adjusted.
11236
11237 2018-05-02  Pedro Alves  <palves@redhat.com>
11238
11239         * make-target-delegates (scan_target_h): Don't trim lines here.
11240         Replace sequences of tabs and/or whitespace with a single
11241         whitespace.
11242         (top level, parsing methods): Trim each line before processing it
11243         here.
11244
11245 2018-05-02  Pedro Alves  <palves@redhat.com>
11246             John Baldwin  <jhb@freebsd.org>
11247
11248         * target.h (enum strata) <debug_stratum>: New.
11249         (struct target_ops) <all delegation methods>: Replace by C++
11250         virtual methods, and drop "to_" prefix.  All references updated
11251         throughout.
11252         <to_shortname, to_longname, to_doc, to_data,
11253         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11254         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11255         virtual methods.  All references updated throughout.
11256         <can_attach, supports_terminal_ours, can_create_inferior,
11257         get_thread_control_capabilities, attach_no_wait>: New
11258         virtual methods.
11259         <insert_breakpoint, remove_breakpoint>: Now
11260         TARGET_DEFAULT_NORETURN methods.
11261         <info_proc>: Now returns bool.
11262         <to_magic>: Delete.
11263         (OPS_MAGIC): Delete.
11264         (current_target): Delete.  All references replaced by references
11265         to ...
11266         (target_stack): ... this.  New.
11267         (target_shortname, target_longname): Adjust.
11268         (target_can_run): Now a function declaration.
11269         (default_child_has_all_memory, default_child_has_memory)
11270         (default_child_has_stack, default_child_has_registers)
11271         (default_child_has_execution): Remove target_ops parameter.
11272         (complete_target_initialization): Delete.
11273         (memory_breakpoint_target): New template class.
11274         (test_target_ops): Refactor as a C++ class with virtual methods.
11275         * make-target-delegates (NAME_PART): Tighten.
11276         (POINTER_PART, CP_SYMBOL): New.
11277         (SIMPLE_RETURN_PART): Reimplement.
11278         (VEC_RETURN_PART): Expect less.
11279         (RETURN_PART, VIRTUAL_PART): New.
11280         (METHOD): Adjust to C++ virtual methods.
11281         (scan_target_h): Remove reference to C99.
11282         (dname): Output "target_ops::" prefix.
11283         (write_function_header): Adjust to output a C++ class method.
11284         (write_declaration): New.
11285         (write_delegator): Adjust to output a C++ class method.
11286         (tdname): Output "dummy_target::" prefix.
11287         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11288         method.
11289         (tdefault_names, debug_names): Delete.
11290         (return_types, tdefaults, styles, argtypes_array): New.
11291         (top level): All methods are delegators.
11292         (print_class): New.
11293         (top level): Print dummy_target and debug_target classes.
11294         * target-delegates.c: Regenerate.
11295         * target-debug.h (target_debug_print_enum_info_proc_what)
11296         (target_debug_print_thread_control_capabilities)
11297         (target_debug_print_thread_info_p): New.
11298         * target.c (dummy_target): Delete.
11299         (the_dummy_target, the_debug_target): New.
11300         (target_stack): Now extern.
11301         (set_targetdebug): Push/unpush debug target.
11302         (default_child_has_all_memory, default_child_has_memory)
11303         (default_child_has_stack, default_child_has_registers)
11304         (default_child_has_execution): Remove target_ops parameter.
11305         (complete_target_initialization): Delete.
11306         (add_target_with_completer): No longer call
11307         complete_target_initialization.
11308         (target_supports_terminal_ours): Use regular delegation.
11309         (update_current_target): Delete.
11310         (push_target): No longer check magic number.  Don't call
11311         update_current_target.
11312         (unpush_target): Don't call update_current_target.
11313         (target_is_pushed): No longer check magic number.
11314         (target_require_runnable): Skip for all stratums over
11315         process_stratum.
11316         (target_ops::info_proc): New.
11317         (target_info_proc): Use find_target_at and
11318         find_default_run_target.
11319         (target_supports_disable_randomization): Use regular delegation.
11320         (target_get_osdata): Use find_target_at.
11321         (target_ops::open, target_ops::close, target_ops::can_attach)
11322         (target_ops::attach, target_ops::can_create_inferior)
11323         (target_ops::create_inferior, target_ops::can_run)
11324         (target_can_run): New.
11325         (default_fileio_target): Use regular delegation.
11326         (target_ops::fileio_open, target_ops::fileio_pwrite)
11327         (target_ops::fileio_pread, target_ops::fileio_fstat)
11328         (target_ops::fileio_close, target_ops::fileio_unlink)
11329         (target_ops::fileio_readlink): New.
11330         (target_fileio_open_1, target_fileio_unlink)
11331         (target_fileio_readlink): Always call the target method.  Handle
11332         FILEIO_ENOSYS.
11333         (return_zero, return_zero_has_execution): Delete.
11334         (init_dummy_target): Delete.
11335         (dummy_target::dummy_target, dummy_target::shortname)
11336         (dummy_target::longname, dummy_target::doc)
11337         (debug_target::debug_target, debug_target::shortname)
11338         (debug_target::longname, debug_target::doc): New.
11339         (target_supports_delete_record): Use regular delegation.
11340         (setup_target_debug): Delete.
11341         (maintenance_print_target_stack): Skip debug_stratum.
11342         (initialize_targets): Instantiate the_dummy_target and
11343         the_debug_target.
11344         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11345         use target_stack.
11346         (target_auxv_search, fprint_target_auxv): Adjust.
11347         (info_auxv_command): Adjust to use target_stack.
11348         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11349         * exceptions.c (print_flush): Handle a NULL target_stack.
11350         * regcache.c (target_ops_no_register): Refactor as class with
11351         virtual methods.
11352
11353         * exec.c (exec_target): New class.
11354         (exec_ops): Now an exec_target.
11355         (exec_open, exec_close_1, exec_get_section_table)
11356         (exec_xfer_partial, exec_files_info, exec_has_memory)
11357         (exec_make_note_section): Refactor as exec_target methods.
11358         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11359         Delete.
11360         (exec_target::find_memory_regions): New.
11361         (_initialize_exec): Don't call init_exec_ops.
11362         * gdbcore.h (exec_file_clear): Delete.
11363
11364         * corefile.c (core_target): Delete.
11365         (core_file_command): Adjust.
11366         * corelow.c (core_target): New class.
11367         (the_core_target): New.
11368         (core_close): Remove target_ops parameter.
11369         (core_close_cleanup): Adjust.
11370         (core_target::close): New.
11371         (core_open, core_detach, get_core_registers, core_files_info)
11372         (core_xfer_partial, core_thread_alive, core_read_description)
11373         (core_pid_to_str, core_thread_name, core_has_memory)
11374         (core_has_stack, core_has_registers, core_info_proc): Rework as
11375         core_target methods.
11376         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11377         (_initialize_corelow): Initialize the_core_target.
11378         * gdbcore.h (core_target): Delete.
11379         (the_core_target): New.
11380
11381         * ctf.c: (ctf_target): New class.
11382         (ctf_ops): Now a ctf_target.
11383         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11384         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11385         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11386         methods.
11387         (init_ctf_ops): Delete.
11388         (_initialize_ctf): Don't call it.
11389         * tracefile-tfile.c (tfile_target): New class.
11390         (tfile_ops): Now a tfile_target.
11391         (tfile_open, tfile_close, tfile_files_info)
11392         (tfile_get_tracepoint_status, tfile_trace_find)
11393         (tfile_fetch_registers, tfile_xfer_partial)
11394         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11395         Refactor as tfile_target methods.
11396         (tfile_xfer_partial_features): Remove target_ops parameter.
11397         (init_tfile_ops): Delete.
11398         (_initialize_tracefile_tfile): Don't call it.
11399         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11400         (tracefile_has_stack, tracefile_has_registers)
11401         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11402         tracefile_target methods.
11403         (init_tracefile_ops): Delete.
11404         (tracefile_target::tracefile_target): New.
11405         * tracefile.h: Include "target.h".
11406         (tracefile_target): New class.
11407         (init_tracefile_ops): Delete.
11408
11409         * spu-multiarch.c (spu_multiarch_target): New class.
11410         (spu_ops): Now a spu_multiarch_target.
11411         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11412         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11413         (spu_search_memory, spu_mourn_inferior): Refactor as
11414         spu_multiarch_target methods.
11415         (init_spu_ops): Delete.
11416         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11417         complete_target_initialization.
11418
11419         * ravenscar-thread.c (ravenscar_thread_target): New class.
11420         (ravenscar_ops): Now a ravenscar_thread_target.
11421         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11422         (ravenscar_thread_alive, ravenscar_pid_to_str)
11423         (ravenscar_fetch_registers, ravenscar_store_registers)
11424         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11425         (ravenscar_stopped_by_hw_breakpoint)
11426         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11427         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11428         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11429         methods.
11430         (init_ravenscar_thread_ops): Delete.
11431         (_initialize_ravenscar): Remove references to
11432         init_ravenscar_thread_ops and complete_target_initialization.
11433
11434         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11435         (bsd_uthread_target): New class.
11436         (bsd_uthread_ops): Now a bsd_uthread_target.
11437         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11438         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11439         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11440         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11441         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11442         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11443         (bsd_uthread_target): Delete function.
11444         (_initialize_bsd_uthread): Remove reference to
11445         complete_target_initialization.
11446
11447         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11448         (target_bfd): ... this new class.
11449         (target_bfd_xfer_partial, target_bfd_get_section_table)
11450         (target_bfd_close): Refactor as target_bfd methods.
11451         (target_bfd::~target_bfd): New.
11452         (target_bfd_reopen): Adjust.
11453         (target_bfd::close): New.
11454
11455         * record-btrace.c (record_btrace_target): New class.
11456         (record_btrace_ops): Now a record_btrace_target.
11457         (record_btrace_open, record_btrace_stop_recording)
11458         (record_btrace_disconnect, record_btrace_close)
11459         (record_btrace_async, record_btrace_info)
11460         (record_btrace_insn_history, record_btrace_insn_history_range)
11461         (record_btrace_insn_history_from, record_btrace_call_history)
11462         (record_btrace_call_history_range)
11463         (record_btrace_call_history_from, record_btrace_record_method)
11464         (record_btrace_is_replaying, record_btrace_will_replay)
11465         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11466         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11467         (record_btrace_store_registers, record_btrace_prepare_to_store)
11468         (record_btrace_to_get_unwinder)
11469         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11470         (record_btrace_commit_resume, record_btrace_wait)
11471         (record_btrace_stop, record_btrace_can_execute_reverse)
11472         (record_btrace_stopped_by_sw_breakpoint)
11473         (record_btrace_supports_stopped_by_sw_breakpoint)
11474         (record_btrace_stopped_by_hw_breakpoint)
11475         (record_btrace_supports_stopped_by_hw_breakpoint)
11476         (record_btrace_update_thread_list, record_btrace_thread_alive)
11477         (record_btrace_goto_begin, record_btrace_goto_end)
11478         (record_btrace_goto, record_btrace_stop_replaying_all)
11479         (record_btrace_execution_direction)
11480         (record_btrace_prepare_to_generate_core)
11481         (record_btrace_done_generating_core): Refactor as
11482         record_btrace_target methods.
11483         (init_record_btrace_ops): Delete.
11484         (_initialize_record_btrace): Remove reference to
11485         init_record_btrace_ops.
11486         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11487         the execution_direction global.
11488         (record_full_base_target, record_full_target)
11489         (record_full_core_target): New classes.
11490         (record_full_ops): Now a record_full_target.
11491         (record_full_core_ops): Now a record_full_core_target.
11492         (record_full_target::detach, record_full_target::disconnect)
11493         (record_full_core_target::disconnect)
11494         (record_full_target::mourn_inferior, record_full_target::kill):
11495         New.
11496         (record_full_open, record_full_close, record_full_async): Refactor
11497         as methods of the record_full_base_target class.
11498         (record_full_resume, record_full_commit_resume): Refactor
11499         as methods of the record_full_target class.
11500         (record_full_wait, record_full_stopped_by_watchpoint)
11501         (record_full_stopped_data_address)
11502         (record_full_stopped_by_sw_breakpoint)
11503         (record_full_supports_stopped_by_sw_breakpoint)
11504         (record_full_stopped_by_hw_breakpoint)
11505         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11506         methods of the record_full_base_target class.
11507         (record_full_store_registers, record_full_xfer_partial)
11508         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11509         Refactor as methods of the record_full_target class.
11510         (record_full_can_execute_reverse, record_full_get_bookmark)
11511         (record_full_goto_bookmark, record_full_execution_direction)
11512         (record_full_record_method, record_full_info, record_full_delete)
11513         (record_full_is_replaying, record_full_will_replay)
11514         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11515         (record_full_stop_replaying): Refactor as methods of the
11516         record_full_base_target class.
11517         (record_full_core_resume, record_full_core_kill)
11518         (record_full_core_fetch_registers)
11519         (record_full_core_prepare_to_store)
11520         (record_full_core_store_registers, record_full_core_xfer_partial)
11521         (record_full_core_insert_breakpoint)
11522         (record_full_core_remove_breakpoint)
11523         (record_full_core_has_execution): Refactor
11524         as methods of the record_full_core_target class.
11525         (record_full_base_target::supports_delete_record): New.
11526         (init_record_full_ops): Delete.
11527         (init_record_full_core_ops): Delete.
11528         (record_full_save): Refactor as method of the
11529         record_full_base_target class.
11530         (_initialize_record_full): Remove references to
11531         init_record_full_ops and init_record_full_core_ops.
11532
11533         * remote.c (remote_target, extended_remote_target): New classes.
11534         (remote_ops): Now a remote_target.
11535         (extended_remote_ops): Now an extended_remote_target.
11536         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11537         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11538         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11539         (remote_pass_signals, remote_set_syscall_catchpoint)
11540         (remote_program_signals, )
11541         (remote_thread_always_alive): Remove target_ops parameter.
11542         (remote_thread_alive, remote_thread_name)
11543         (remote_update_thread_list, remote_threads_extra_info)
11544         (remote_static_tracepoint_marker_at)
11545         (remote_static_tracepoint_markers_by_strid)
11546         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11547         (remote_open): Refactor as methods of remote_target.
11548         (extended_remote_open, extended_remote_detach)
11549         (extended_remote_attach, extended_remote_post_attach):
11550         (extended_remote_supports_disable_randomization)
11551         (extended_remote_create_inferior): : Refactor as method of
11552         extended_remote_target.
11553         (remote_set_permissions, remote_open_1, remote_detach)
11554         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11555         (remote_resume, remote_commit_resume, remote_stop)
11556         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11557         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11558         (remote_prepare_to_store, remote_store_registers)
11559         (remote_flash_erase, remote_flash_done, remote_files_info)
11560         (remote_kill, remote_mourn, remote_insert_breakpoint)
11561         (remote_remove_breakpoint, remote_insert_watchpoint)
11562         (remote_watchpoint_addr_within_range)
11563         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11564         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11565         (remote_supports_stopped_by_sw_breakpoint)
11566         (remote_stopped_by_hw_breakpoint)
11567         (remote_supports_stopped_by_hw_breakpoint)
11568         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11569         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11570         (remote_verify_memory): Refactor as methods of remote_target.
11571         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11572         parameter.
11573         (remote_xfer_partial, remote_get_memory_xfer_limit)
11574         (remote_search_memory, remote_rcmd, remote_memory_map)
11575         (remote_pid_to_str, remote_get_thread_local_address)
11576         (remote_get_tib_address, remote_read_description): Refactor as
11577         methods of remote_target.
11578         (remote_target::fileio_open, remote_target::fileio_pwrite)
11579         (remote_target::fileio_pread, remote_target::fileio_close): New.
11580         (remote_hostio_readlink, remote_hostio_fstat)
11581         (remote_filesystem_is_local, remote_can_execute_reverse)
11582         (remote_supports_non_stop, remote_supports_disable_randomization)
11583         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11584         (remote_supports_enable_disable_tracepoint)
11585         (remote_supports_string_tracing)
11586         (remote_can_run_breakpoint_commands, remote_trace_init)
11587         (remote_download_tracepoint, remote_can_download_tracepoint)
11588         (remote_download_trace_state_variable, remote_enable_tracepoint)
11589         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11590         (remote_trace_start, remote_get_trace_status)
11591         (remote_get_tracepoint_status, remote_trace_stop)
11592         (remote_trace_find, remote_get_trace_state_variable_value)
11593         (remote_save_trace_data, remote_get_raw_trace_data)
11594         (remote_set_disconnected_tracing, remote_core_of_thread)
11595         (remote_set_circular_trace_buffer, remote_traceframe_info)
11596         (remote_get_min_fast_tracepoint_insn_len)
11597         (remote_set_trace_buffer_size, remote_set_trace_notes)
11598         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11599         (remote_disable_btrace, remote_teardown_btrace)
11600         (remote_read_btrace, remote_btrace_conf)
11601         (remote_augmented_libraries_svr4_read, remote_load)
11602         (remote_pid_to_exec_file, remote_can_do_single_step)
11603         (remote_execution_direction, remote_thread_handle_to_thread_info):
11604         Refactor as methods of remote_target.
11605         (init_remote_ops, init_extended_remote_ops): Delete.
11606         (remote_can_async_p, remote_is_async_p, remote_async)
11607         (remote_thread_events, remote_upload_tracepoints)
11608         (remote_upload_trace_state_variables): Refactor as methods of
11609         remote_target.
11610         (_initialize_remote): Remove references to init_remote_ops and
11611         init_extended_remote_ops.
11612
11613         * remote-sim.c (gdbsim_target): New class.
11614         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11615         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11616         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11617         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11618         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11619         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11620         Refactor as methods of gdbsim_target.
11621         (gdbsim_ops): Now a gdbsim_target.
11622         (init_gdbsim_ops): Delete.
11623         (gdbsim_cntrl_c): Adjust.
11624         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11625
11626         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11627         (the_amd64_linux_nat_target): New.
11628         (amd64_linux_fetch_inferior_registers)
11629         (amd64_linux_store_inferior_registers): Refactor as methods of
11630         amd64_linux_nat_target.
11631         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11632         * i386-linux-nat.c: Don't include "linux-nat.h".
11633         (i386_linux_nat_target): New class.
11634         (the_i386_linux_nat_target): New.
11635         (i386_linux_fetch_inferior_registers)
11636         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11637         as methods of i386_linux_nat_target.
11638         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11639         * inf-child.c (inf_child_ops): Delete.
11640         (inf_child_fetch_inferior_registers)
11641         (inf_child_store_inferior_registers): Delete.
11642         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11643         methods of inf_child_target.
11644         (inf_child_target::supports_terminal_ours)
11645         (inf_child_target::terminal_init)
11646         (inf_child_target::terminal_inferior)
11647         (inf_child_target::terminal_ours_for_output)
11648         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11649         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11650         New.
11651         (inf_child_open, inf_child_disconnect, inf_child_close)
11652         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11653         (inf_child_post_startup_inferior, inf_child_can_run)
11654         (inf_child_pid_to_exec_file): Refactor as methods of
11655         inf_child_target.
11656         (inf_child_follow_fork): Delete.
11657         (inf_child_target::can_create_inferior)
11658         (inf_child_target::can_attach): New.
11659         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11660         (inf_child_target::has_stack, inf_child_target::has_registers)
11661         (inf_child_target::has_execution): New.
11662         (inf_child_fileio_open, inf_child_fileio_pwrite)
11663         (inf_child_fileio_pread, inf_child_fileio_fstat)
11664         (inf_child_fileio_close, inf_child_fileio_unlink)
11665         (inf_child_fileio_readlink, inf_child_use_agent)
11666         (inf_child_can_use_agent): Refactor as methods of
11667         inf_child_target.
11668         (return_zero, inf_child_target): Delete.
11669         (inf_child_target::inf_child_target): New.
11670         * inf-child.h: Include "target.h".
11671         (inf_child_target): Delete function prototype.
11672         (inf_child_target): New class.
11673         (inf_child_open_target, inf_child_mourn_inferior)
11674         (inf_child_maybe_unpush_target): Delete.
11675         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11676         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11677         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11678         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11679         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11680         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11681         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11682         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11683         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11684         methods of inf_ptrace_target.
11685         (inf_ptrace_target): Delete function.
11686         * inf-ptrace.h: Include "inf-child.h".
11687         (inf_ptrace_target): Delete function declaration.
11688         (inf_ptrace_target): New class.
11689         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11690         * linux-nat.c (linux_target): New.
11691         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11692         (linux_nat_target::~linux_nat_target): New.
11693         (linux_child_post_attach, linux_child_post_startup_inferior)
11694         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11695         (linux_child_remove_fork_catchpoint)
11696         (linux_child_insert_vfork_catchpoint)
11697         (linux_child_remove_vfork_catchpoint)
11698         (linux_child_insert_exec_catchpoint)
11699         (linux_child_remove_exec_catchpoint)
11700         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11701         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11702         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11703         (linux_nat_stopped_data_address)
11704         (linux_nat_stopped_by_sw_breakpoint)
11705         (linux_nat_supports_stopped_by_sw_breakpoint)
11706         (linux_nat_stopped_by_hw_breakpoint)
11707         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11708         (linux_nat_kill, linux_nat_mourn_inferior)
11709         (linux_nat_xfer_partial, linux_nat_thread_alive)
11710         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11711         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11712         (linux_child_static_tracepoint_markers_by_strid)
11713         (linux_nat_is_async_p, linux_nat_can_async_p)
11714         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11715         (linux_nat_supports_multi_process)
11716         (linux_nat_supports_disable_randomization, linux_nat_async)
11717         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11718         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11719         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11720         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11721         methods of linux_nat_target.
11722         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11723         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11724         parameter.
11725         (check_stopped_by_watchpoint): Adjust.
11726         (linux_xfer_partial): Delete.
11727         (linux_target_install_ops, linux_target, linux_nat_add_target):
11728         Delete.
11729         (linux_nat_target::linux_nat_target): New.
11730         * linux-nat.h: Include "inf-ptrace.h".
11731         (linux_nat_target): New.
11732         (linux_target, linux_target_install_ops, linux_nat_add_target):
11733         Delete function declarations.
11734         (linux_target): Declare global.
11735         * linux-thread-db.c (thread_db_target): New.
11736         (thread_db_target::thread_db_target): New.
11737         (thread_db_ops): Delete.
11738         (the_thread_db_target): New.
11739         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11740         (thread_db_update_thread_list, thread_db_pid_to_str)
11741         (thread_db_extra_thread_info)
11742         (thread_db_thread_handle_to_thread_info)
11743         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11744         (thread_db_resume): Refactor as methods of thread_db_target.
11745         (init_thread_db_ops): Delete.
11746         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11747         * x86-linux-nat.c: Don't include "linux-nat.h".
11748         (super_post_startup_inferior): Delete.
11749         (x86_linux_nat_target::~x86_linux_nat_target): New.
11750         (x86_linux_child_post_startup_inferior)
11751         (x86_linux_read_description, x86_linux_enable_btrace)
11752         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11753         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11754         methods of x86_linux_nat_target.
11755         (x86_linux_create_target): Delete.  Bits folded ...
11756         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11757         pointer.
11758         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11759         (x86_linux_nat_target): New class.
11760         (x86_linux_create_target): Delete.
11761         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11762         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11763         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11764         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11765         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11766         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11767         make extern.
11768         (x86_use_watchpoints): Delete.
11769         * x86-nat.h: Include "breakpoint.h" and "target.h".
11770         (x86_use_watchpoints): Delete.
11771         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11772         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11773         (x86_insert_watchpoint, x86_remove_watchpoint)
11774         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11775         (x86_stopped_by_hw_breakpoint): New declarations.
11776         (x86_nat_target): New template class.
11777
11778         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11779         (the_ppc_linux_nat_target): New.
11780         (ppc_linux_fetch_inferior_registers)
11781         (ppc_linux_can_use_hw_breakpoint)
11782         (ppc_linux_region_ok_for_hw_watchpoint)
11783         (ppc_linux_ranged_break_num_registers)
11784         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11785         (ppc_linux_insert_mask_watchpoint)
11786         (ppc_linux_remove_mask_watchpoint)
11787         (ppc_linux_can_accel_watchpoint_condition)
11788         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11789         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11790         (ppc_linux_watchpoint_addr_within_range)
11791         (ppc_linux_masked_watch_num_registers)
11792         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11793         (ppc_linux_read_description): Refactor as methods of
11794         ppc_linux_nat_target.
11795         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11796
11797         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11798         (procfs_target): New class.
11799         (the_procfs_target): New.
11800         (procfs_target): Delete function.
11801         (procfs_auxv_parse, procfs_attach, procfs_detach)
11802         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11803         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11804         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11805         (procfs_create_inferior, procfs_update_thread_list)
11806         (procfs_thread_alive, procfs_pid_to_str)
11807         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11808         (procfs_stopped_data_address, procfs_insert_watchpoint)
11809         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11810         (proc_find_memory_regions, procfs_info_proc)
11811         (procfs_make_note_section): Refactor as methods of procfs_target.
11812         (_initialize_procfs): Adjust.
11813         * sol-thread.c (sol_thread_target): New class.
11814         (sol_thread_ops): Now a sol_thread_target.
11815         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11816         (sol_thread_fetch_registers, sol_thread_store_registers)
11817         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11818         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11819         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11820         (init_sol_thread_ops): Delete.
11821         (_initialize_sol_thread): Adjust.  Remove references to
11822         init_sol_thread_ops and complete_target_initialization.
11823
11824         * windows-nat.c (windows_nat_target): New class.
11825         (windows_fetch_inferior_registers)
11826         (windows_store_inferior_registers, windows_resume, windows_wait)
11827         (windows_attach, windows_detach, windows_pid_to_exec_file)
11828         (windows_files_info, windows_create_inferior)
11829         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11830         (windows_close, windows_pid_to_str, windows_xfer_partial)
11831         (windows_get_tib_address, windows_get_ada_task_ptid)
11832         (windows_thread_name, windows_thread_alive): Refactor as
11833         windows_nat_target methods.
11834         (do_initial_windows_stuff): Adjust.
11835         (windows_target): Delete function.
11836         (_initialize_windows_nat): Adjust.
11837
11838         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11839         (darwin_mourn_inferior, darwin_kill_inferior)
11840         (darwin_create_inferior, darwin_attach, darwin_detach)
11841         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11842         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11843         (darwin_supports_multi_process): Refactor as darwin_nat_target
11844         methods.
11845         (darwin_resume_to, darwin_files_info): Delete.
11846         (_initialize_darwin_inferior): Rename to ...
11847         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11848         * darwin-nat.h: Include "inf-child.h".
11849         (darwin_nat_target): New class.
11850         (darwin_complete_target): Delete.
11851         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11852         (darwin_target): New.
11853         (i386_darwin_fetch_inferior_registers)
11854         (i386_darwin_store_inferior_registers): Refactor as methods of
11855         darwin_nat_target.
11856         (darwin_complete_target): Delete, with ...
11857         (_initialize_i386_darwin_nat): ... bits factored out here.
11858
11859         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11860         (the_alpha_linux_nat_target): New.
11861         (alpha_linux_register_u_offset): Refactor as
11862         alpha_linux_nat_target method.
11863         (_initialize_alpha_linux_nat): Adjust.
11864         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11865         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11866         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11867         methods of linux_nat_trad_target.
11868         (linux_trad_target): Delete.
11869         * linux-nat-trad.h (linux_trad_target): Delete function.
11870         (linux_nat_trad_target): New class.
11871         * mips-linux-nat.c (mips_linux_nat_target): New class.
11872         (super_fetch_registers, super_store_registers, super_close):
11873         Delete.
11874         (the_mips_linux_nat_target): New.
11875         (mips64_linux_regsets_fetch_registers)
11876         (mips64_linux_regsets_store_registers)
11877         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11878         (mips_linux_register_u_offset, mips_linux_read_description)
11879         (mips_linux_can_use_hw_breakpoint)
11880         (mips_linux_stopped_by_watchpoint)
11881         (mips_linux_stopped_data_address)
11882         (mips_linux_region_ok_for_hw_watchpoint)
11883         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11884         (mips_linux_close): Refactor as methods of mips_linux_nat.
11885         (_initialize_mips_linux_nat): Adjust to C++ification.
11886
11887         * aix-thread.c (aix_thread_target): New class.
11888         (aix_thread_ops): Now an aix_thread_target.
11889         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11890         (aix_thread_fetch_registers, aix_thread_store_registers)
11891         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11892         (aix_thread_thread_alive, aix_thread_pid_to_str)
11893         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11894         Refactor as methods of aix_thread_target.
11895         (init_aix_thread_ops): Delete.
11896         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11897         and complete_target_initialization.
11898         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11899         (rs6000_nat_target): New class.
11900         (the_rs6000_nat_target): New.
11901         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11902         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11903         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11904         (super_create_inferior): Delete.
11905         (_initialize_rs6000_nat): Adjust to C++ification.
11906
11907         * arm-linux-nat.c (arm_linux_nat_target): New class.
11908         (the_arm_linux_nat_target): New.
11909         (arm_linux_fetch_inferior_registers)
11910         (arm_linux_store_inferior_registers, arm_linux_read_description)
11911         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11912         (arm_linux_remove_hw_breakpoint)
11913         (arm_linux_region_ok_for_hw_watchpoint)
11914         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11915         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11916         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11917         arm_linux_nat_target.
11918         (_initialize_arm_linux_nat): Adjust to C++ification.
11919
11920         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11921         (the_aarch64_linux_nat_target): New.
11922         (aarch64_linux_fetch_inferior_registers)
11923         (aarch64_linux_store_inferior_registers)
11924         (aarch64_linux_child_post_startup_inferior)
11925         (aarch64_linux_read_description)
11926         (aarch64_linux_can_use_hw_breakpoint)
11927         (aarch64_linux_insert_hw_breakpoint)
11928         (aarch64_linux_remove_hw_breakpoint)
11929         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11930         (aarch64_linux_region_ok_for_hw_watchpoint)
11931         (aarch64_linux_stopped_data_address)
11932         (aarch64_linux_stopped_by_watchpoint)
11933         (aarch64_linux_watchpoint_addr_within_range)
11934         (aarch64_linux_can_do_single_step): Refactor as methods of
11935         aarch64_linux_nat_target.
11936         (super_post_startup_inferior): Delete.
11937         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11938
11939         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11940         (the_hppa_linux_nat_target): New.
11941         (hppa_linux_fetch_inferior_registers)
11942         (hppa_linux_store_inferior_registers): Refactor as methods of
11943         hppa_linux_nat_target.
11944         (_initialize_hppa_linux_nat): Adjust to C++ification.
11945
11946         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11947         (the_ia64_linux_nat_target): New.
11948         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11949         (ia64_linux_stopped_data_address)
11950         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11951         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11952         ia64_linux_nat_target methods.
11953         (super_xfer_partial): Delete.
11954         (_initialize_ia64_linux_nat): Adjust to C++ification.
11955
11956         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11957         (the_m32r_linux_nat_target): New.
11958         (m32r_linux_fetch_inferior_registers)
11959         (m32r_linux_store_inferior_registers): Refactor as
11960         m32r_linux_nat_target methods.
11961         (_initialize_m32r_linux_nat): Adjust to C++ification.
11962
11963         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11964         (the_m68k_linux_nat_target): New.
11965         (m68k_linux_fetch_inferior_registers)
11966         (m68k_linux_store_inferior_registers): Refactor as
11967         m68k_linux_nat_target methods.
11968         (_initialize_m68k_linux_nat): Adjust to C++ification.
11969
11970         * s390-linux-nat.c (s390_linux_nat_target): New class.
11971         (the_s390_linux_nat_target): New.
11972         (s390_linux_fetch_inferior_registers)
11973         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11974         (s390_insert_watchpoint, s390_remove_watchpoint)
11975         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11976         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11977         (s390_auxv_parse, s390_read_description): Refactor as methods of
11978         s390_linux_nat_target.
11979         (_initialize_s390_nat): Adjust to C++ification.
11980
11981         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11982         (the_sparc_linux_nat_target): New.
11983         (_initialize_sparc_linux_nat): Adjust to C++ification.
11984         * sparc-nat.c (sparc_fetch_inferior_registers)
11985         (sparc_store_inferior_registers): Remove target_ops parameter.
11986         * sparc-nat.h (sparc_fetch_inferior_registers)
11987         (sparc_store_inferior_registers): Remove target_ops parameter.
11988         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11989         (the_sparc64_linux_nat_target): New.
11990         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11991
11992         * spu-linux-nat.c (spu_linux_nat_target): New class.
11993         (the_spu_linux_nat_target): New.
11994         (spu_child_post_startup_inferior, spu_child_post_attach)
11995         (spu_child_wait, spu_fetch_inferior_registers)
11996         (spu_store_inferior_registers, spu_xfer_partial)
11997         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11998         methods.
11999         (_initialize_spu_nat): Adjust to C++ification.
12000
12001         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
12002         (the_tilegx_linux_nat_target): New.
12003         (fetch_inferior_registers, store_inferior_registers):
12004         Refactor as methods.
12005         (_initialize_tile_linux_nat): Adjust to C++ification.
12006
12007         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
12008         (the_xtensa_linux_nat_target): New.
12009         (xtensa_linux_fetch_inferior_registers)
12010         (xtensa_linux_store_inferior_registers): Refactor as
12011         xtensa_linux_nat_target methods.
12012         (_initialize_xtensa_linux_nat): Adjust to C++ification.
12013
12014         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
12015         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
12016         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
12017         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
12018         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
12019         (fbsd_stopped_by_sw_breakpoint)
12020         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
12021         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
12022         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
12023         (fbsd_post_startup_inferior, fbsd_post_attach)
12024         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
12025         (fbsd_set_syscall_catchpoint)
12026         (super_xfer_partial, super_resume, super_wait)
12027         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
12028         (fbsd_handle_debug_trap): Remove target_ops parameter.
12029         (fbsd_nat_add_target): Delete.
12030         * fbsd-nat.h: Include "inf-ptrace.h".
12031         (fbsd_nat_add_target): Delete.
12032         (USE_SIGTRAP_SIGINFO): Define.
12033         (fbsd_nat_target): New class.
12034
12035         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
12036         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
12037         (amd64bsd_target): Delete.
12038         * amd64-bsd-nat.h: New file.
12039         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
12040         "x86-bsd-nat.h".
12041         (amd64_fbsd_nat_target): New class.
12042         (the_amd64_fbsd_nat_target): New.
12043         (amd64fbsd_read_description): Refactor as method of
12044         amd64_fbsd_nat_target.
12045         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
12046         (_initialize_amd64fbsd_nat): Adjust to C++ification.
12047         * amd64-nat.h (amd64bsd_target): Delete function declaration.
12048         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
12049         (i386bsd_store_inferior_registers): Remove target_ops parameter.
12050         (i386bsd_target): Delete.
12051         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
12052         (i386bsd_fetch_inferior_registers)
12053         (i386bsd_store_inferior_registers): Declare.
12054         (i386_bsd_nat_target): New class.
12055         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
12056         (the_i386_fbsd_nat_target): New.
12057         (i386fbsd_resume, i386fbsd_read_description): Refactor as
12058         i386_fbsd_nat_target methods.
12059         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
12060         (_initialize_i386fbsd_nat): Adjust to C++ification.
12061         * x86-bsd-nat.c (super_mourn_inferior): Delete.
12062         (x86bsd_mourn_inferior, x86bsd_target): Delete.
12063         (_initialize_x86_bsd_nat): Adjust to C++ification.
12064         * x86-bsd-nat.h: Include "x86-nat.h".
12065         (x86bsd_target): Delete declaration.
12066         (x86bsd_nat_target): New class.
12067
12068         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
12069         (the_aarch64_fbsd_nat_target): New.
12070         (aarch64_fbsd_fetch_inferior_registers)
12071         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
12072         aarch64_fbsd_nat_target.
12073         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
12074         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
12075         (the_alpha_bsd_nat_target): New.
12076         (alphabsd_fetch_inferior_registers)
12077         (alphabsd_store_inferior_registers): Refactor as
12078         alpha_bsd_nat_target methods.
12079         (_initialize_alphabsd_nat): Refactor as methods of
12080         alpha_bsd_nat_target.
12081         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
12082         (the_amd64_nbsd_nat_target): New.
12083         (_initialize_amd64nbsd_nat): Adjust to C++ification.
12084         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
12085         (the_amd64_obsd_nat_target): New.
12086         (_initialize_amd64obsd_nat): Adjust to C++ification.
12087         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
12088         (the_arm_fbsd_nat_target): New.
12089         (arm_fbsd_fetch_inferior_registers)
12090         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
12091         (_initialize_arm_fbsd_nat): Refactor as methods of
12092         arm_fbsd_nat_target.
12093         (_initialize_arm_fbsd_nat): Adjust to C++ification.
12094         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
12095         (the_arm_netbsd_nat_target): New.
12096         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
12097         arm_netbsd_nat_target.
12098         (_initialize_arm_netbsd_nat): Adjust to C++ification.
12099         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
12100         (the_hppa_nbsd_nat_target): New.
12101         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
12102         hppa_nbsd_nat_target methods.
12103         (_initialize_hppanbsd_nat): Adjust to C++ification.
12104         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
12105         (the_hppa_obsd_nat_target): New.
12106         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
12107         methods of hppa_obsd_nat_target.
12108         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
12109         add_target.
12110         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
12111         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
12112         add_target.
12113         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
12114         (_initialize_i386obsd_nat): Use add_target.
12115         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
12116         (the_m68k_bsd_nat_target): New.
12117         (m68kbsd_fetch_inferior_registers)
12118         (m68kbsd_store_inferior_registers): Refactor as methods of
12119         m68k_bsd_nat_target.
12120         (_initialize_m68kbsd_nat): Adjust to C++ification.
12121         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
12122         (the_mips_fbsd_nat_target): New.
12123         (mips_fbsd_fetch_inferior_registers)
12124         (mips_fbsd_store_inferior_registers): Refactor as methods of
12125         mips_fbsd_nat_target.
12126         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
12127         add_target.
12128         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
12129         (the_mips_nbsd_nat_target): New.
12130         (mipsnbsd_fetch_inferior_registers)
12131         (mipsnbsd_store_inferior_registers): Refactor as methods of
12132         mips_nbsd_nat_target.
12133         (_initialize_mipsnbsd_nat): Adjust to C++ification.
12134         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
12135         (the_mips64_obsd_nat_target): New.
12136         (mips64obsd_fetch_inferior_registers)
12137         (mips64obsd_store_inferior_registers): Refactor as methods of
12138         mips64_obsd_nat_target.
12139         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
12140         add_target.
12141         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
12142         nbsd_nat_target.
12143         * nbsd-nat.h: Include "inf-ptrace.h".
12144         (nbsd_nat_target): New class.
12145         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
12146         (obsd_wait): Refactor as methods of obsd_nat_target.
12147         (obsd_add_target): Delete.
12148         * obsd-nat.h: Include "inf-ptrace.h".
12149         (obsd_nat_target): New class.
12150         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
12151         (the_ppc_fbsd_nat_target): New.
12152         (ppcfbsd_fetch_inferior_registers)
12153         (ppcfbsd_store_inferior_registers): Refactor as methods of
12154         ppc_fbsd_nat_target.
12155         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
12156         add_target.
12157         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
12158         (the_ppc_nbsd_nat_target): New.
12159         (ppcnbsd_fetch_inferior_registers)
12160         (ppcnbsd_store_inferior_registers): Refactor as methods of
12161         ppc_nbsd_nat_target.
12162         (_initialize_ppcnbsd_nat): Adjust to C++ification.
12163         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
12164         (the_ppc_obsd_nat_target): New.
12165         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
12166         methods of ppc_obsd_nat_target.
12167         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
12168         add_target.
12169         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
12170         (the_sh_nbsd_nat_target): New.
12171         (shnbsd_fetch_inferior_registers)
12172         (shnbsd_store_inferior_registers): Refactor as methods of
12173         sh_nbsd_nat_target.
12174         (_initialize_shnbsd_nat): Adjust to C++ification.
12175         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
12176         (inf_ptrace_xfer_partial): Delete.
12177         (sparc_xfer_partial, sparc_target): Delete.
12178         * sparc-nat.h (sparc_fetch_inferior_registers)
12179         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
12180         (sparc_target): Delete function declaration.
12181         (sparc_target): New template class.
12182         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
12183         (_initialize_sparcnbsd_nat): Adjust to C++ification.
12184         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
12185         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
12186         add_target.
12187         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
12188         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
12189         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
12190         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
12191         add_target.
12192         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
12193         (the_vax_bsd_nat_target): New.
12194         (vaxbsd_fetch_inferior_registers)
12195         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
12196         methods.
12197         (_initialize_vaxbsd_nat): Adjust to C++ification.
12198
12199         * bsd-kvm.c (bsd_kvm_target): New class.
12200         (bsd_kvm_ops): Now a bsd_kvm_target.
12201         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
12202         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
12203         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
12204         bsd_kvm_target.
12205         (bsd_kvm_return_one): Delete.
12206         (bsd_kvm_add_target): Adjust to C++ification.
12207
12208         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
12209         (nto_procfs_target_procfs): New classes.
12210         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
12211         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
12212         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
12213         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
12214         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
12215         (procfs_remove_hw_breakpoint, procfs_resume)
12216         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
12217         (procfs_kill_inferior, procfs_store_registers)
12218         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
12219         as methods of nto_procfs_target.
12220         (nto_procfs_ops): Now an nto_procfs_target_procfs.
12221         (nto_native_ops): Delete.
12222         (procfs_open, procfs_native_open): Delete.
12223         (nto_native_ops): Now an nto_procfs_target_native.
12224         (init_procfs_targets): Adjust to C++ification.
12225         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
12226         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
12227         Refactor as methods of nto_procfs_target.
12228
12229         * go32-nat.c (go32_nat_target): New class.
12230         (the_go32_nat_target): New.
12231         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
12232         (go32_store_registers, go32_xfer_partial, go32_files_info)
12233         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
12234         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12235         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12236         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12237         (go32_target): Delete.
12238         (_initialize_go32_nat): Adjust to C++ification.
12239
12240         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12241         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12242         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12243         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12244         gnu_nat_target.
12245         (gnu_target): Delete.
12246         * gnu-nat.h (gnu_target): Delete.
12247         (gnu_nat_target): New class.
12248         * i386-gnu-nat.c (gnu_base_target): New.
12249         (i386_gnu_nat_target): New class.
12250         (the_i386_gnu_nat_target): New.
12251         (_initialize_i386gnu_nat): Adjust to C++ification.
12252
12253 2018-05-02  Pedro Alves  <palves@redhat.com>
12254
12255         * bfd-target.c (target_bfd_xclose): Rename to ...
12256         (target_bfd_close): ... this.
12257         (target_bfd_reopen): Adjust.
12258         * target.c (target_close): Remove references to to_xclose.
12259         * target.h (target_ops::to_xclose): Delete.
12260         (target_ops::to_close): Update comments.
12261
12262 2018-05-02  Pedro Alves  <palves@redhat.com>
12263
12264         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12265         "linux-nat.h".
12266         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12267         * inf-ptrace.c (inf_ptrace_register_u_offset)
12268         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12269         (inf_ptrace_store_register, inf_ptrace_store_registers)
12270         (inf_ptrace_trad_target): Move to ...
12271         * linux-nat-trad.c: ... this new file.
12272         * linux-nat-trad.h: New file.
12273         * linux-nat.c (linux_target_install_ops): Make extern.
12274         (linux_trad_target): Delete.
12275         * linux-nat.h (linux_trad_target): Delete declaration.
12276         (linux_target_install_ops): Declare.
12277         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12278         "linux-nat.h".
12279
12280 2018-05-02  Pedro Alves  <palves@redhat.com>
12281
12282         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12283         procfs_target/add_target here.
12284         * procfs.c (procfs_target): Make static.
12285         (_initialize_procfs): Call add_target here.
12286         * procfs.h (struct target_ops): Remove forward declaration.
12287         (procfs_target): Remove declaration.
12288         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12289
12290 2018-05-02  Pedro Alves  <palves@redhat.com>
12291
12292         * procfs.c (procfs_stopped_by_watchpoint)
12293         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12294         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12295         Forward declare.
12296         (procfs_use_watchpoints): Delete, move contents...
12297         (procfs_target): ... here.
12298         * procfs.h (procfs_use_watchpoints): Delete declaration.
12299         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12300         procfs_use_watchpoints.
12301         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12302         procfs_use_watchpoints.
12303
12304 2018-05-02  Tom Tromey  <tom@tromey.com>
12305
12306         PR python/20084:
12307         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12308         and var_zuinteger_unlimited.
12309         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12310         and PARAM_ZUINTEGER_UNLIMITED.
12311         (set_parameter_value): Handle var_zuinteger and
12312         var_zuinteger_unlimited.
12313         (add_setshow_generic): Likewise.
12314         (parmpy_init): Likewise.
12315
12316 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12317
12318         PR rust/23124
12319         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12320         pointer is not null before dereferencing it.
12321
12322 2018-04-30  Tom Tromey  <tom@tromey.com>
12323
12324         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12325         is_mi_like_p.
12326
12327 2018-04-30  Tom Tromey  <tom@tromey.com>
12328
12329         * breakpoint.c (mention): Remove use of is_mi_like_p.
12330         (print_mention_ranged_breakpoint): Likewise.
12331         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12332         of is_mi_like_p.
12333
12334 2018-04-30  Tom Tromey  <tom@tromey.com>
12335
12336         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12337
12338 2018-04-30  Tom Tromey  <tom@tromey.com>
12339
12340         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12341         (info_spu_event_command): Remove some uses of is_mi_like_p.
12342
12343 2018-04-30  Tom Tromey  <tom@tromey.com>
12344
12345         * python/py-framefilter.c (py_print_single_arg)
12346         (enumerate_locals, py_print_args, py_print_frame): Remove some
12347         uses of is_mi_like_p.
12348
12349 2018-04-30  Tom Tromey  <tom@tromey.com>
12350
12351         * ui-out.c: Update.
12352         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12353         * ui-out.h (ui_out::is_mi_like_p): Now const.
12354         (ui_out::do_is_mi_like_p): Now const.
12355         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12356
12357 2018-04-30  Tom Tromey  <tom@tromey.com>
12358
12359         * varobj.c (varobj_set_visualizer): Use new_reference.
12360         * python/python.c (gdbpy_decode_line): Use new_reference.
12361         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12362         new_reference.
12363
12364 2018-04-30  Tom Tromey  <tom@tromey.com>
12365
12366         * varobj.c (install_new_value): Use new_reference.
12367         * value.h (value_incref): Return void.  Swap intro comment with
12368         value_decref.
12369         * value.c (set_value_parent): Use new_reference.
12370         (value_incref): Return void.  Update intro comment.
12371         (release_value): Use new_reference.
12372         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12373
12374 2018-04-30  Tom Tromey  <tom@tromey.com>
12375
12376         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12377         * gdb_bfd.h (new_bfd_ref): Remove.
12378         (gdb_bfd_open): Update comment.
12379         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12380         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12381         (gdb_bfd_fdopenr): Use new_reference.
12382         * exec.c (exec_file_attach): Use new_reference.
12383
12384 2018-04-30  Tom Tromey  <tom@tromey.com>
12385
12386         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12387         method.
12388
12389 2018-04-30  Tom Tromey  <tom@tromey.com>
12390
12391         * jit.c (jit_read_code_entry): Use type_align.
12392         * i386-tdep.c (i386_gdbarch_init): Don't call
12393         set_gdbarch_long_long_align_bit.
12394         * gdbarch.sh: Remove long_long_align_bit.
12395         * gdbarch.c, gdbarch.h: Rebuild.
12396         * arc-tdep.c (arc_type_align): New function.
12397         (arc_gdbarch_init): Use arc_type_align.  Don't call
12398         set_gdbarch_long_long_align_bit.
12399
12400 2018-04-30  Tom Tromey  <tom@tromey.com>
12401
12402         * rust-lang.c (rust_type_alignment): Remove.
12403         (rust_composite_type): Use type_align.
12404
12405 2018-04-30  Tom Tromey  <tom@tromey.com>
12406
12407         * NEWS: Mention Type.align.
12408         * python/py-type.c (typy_get_alignof): New function.
12409         (type_object_getset): Add "alignof".
12410
12411 2018-04-30  Tom Tromey  <tom@tromey.com>
12412
12413         PR exp/17095:
12414         * NEWS: Update.
12415         * std-operator.def (UNOP_ALIGNOF): New operator.
12416         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12417         New.
12418         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12419         * c-lang.c (c_op_print_tab): Add alignof.
12420         * c-exp.y (ALIGNOF): New token.
12421         (exp): Add "ALIGNOF" production.
12422         (ident_tokens): Add _Alignof and alignof.
12423
12424 2018-04-30  Tom Tromey  <tom@tromey.com>
12425
12426         * i386-tdep.c (i386_type_align): New function.
12427         (i386_gdbarch_init): Update.
12428         * gdbarch.sh (type_align): New method.
12429         * gdbarch.c, gdbarch.h: Rebuild.
12430         * arch-utils.h (default_type_align): Declare.
12431         * arch-utils.c (default_type_align): New function.
12432         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12433         (struct type) <align_log2>: New field.
12434         <instance_flags>: Now a bitfield.
12435         (TYPE_RAW_ALIGN): New macro.
12436         (type_align, type_raw_align, set_type_align): Declare.
12437         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12438         functions.
12439         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12440         (get_alignment, maybe_set_alignment): New functions.
12441         (read_structure_type, read_enumeration_type, read_array_type)
12442         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12443         (read_subrange_type, read_base_type): Set type alignment.
12444
12445 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12446
12447         * dwarf2read.c (read_index_from_section): Use bool.
12448
12449 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12450
12451         PR gdb/22950
12452         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12453         with #ifdef.
12454
12455 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12456
12457         PR build/22873
12458         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12459         last step, and do it atomically.
12460
12461 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12462
12463         * compile/compile-c-types.c (convert_int, convert_float):
12464         Update for C FE v1.
12465
12466 2018-04-27  Tom Tromey  <tom@tromey.com>
12467
12468         PR rust/22545:
12469         * rust-lang.c (rust_inclusive_range_type_p): New function.
12470         (rust_range): Handle inclusive ranges.
12471         (rust_compute_range): Likewise.
12472         * rust-exp.y (struct rust_op) <inclusive>: New field.
12473         (DOTDOTEQ): New constant.
12474         (range_expr): Add "..=" productions.
12475         (operator_tokens): Add "..=" token.
12476         (ast_range): Add "inclusive" parameter.
12477         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12478         ranges.
12479         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12480         bounds values.
12481         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12482         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12483         Update comments.
12484         * expprint.c (print_subexp_standard): Handle new bounds values.
12485         (dump_subexp_body_standard): Likewise.
12486
12487 2018-04-27  Tom Tromey  <tom@tromey.com>
12488
12489         * configure: Rebuild.
12490         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12491         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12492         "OVERRIDE".
12493         (class symbol_needs_eval_context): Likewise.
12494         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12495         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12496         "virtual".
12497         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12498         "override".
12499         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12500         * aarch64-tdep.c (instruction_reader::read): Use "override".
12501         (instruction_reader_test::read): Likewise.
12502         * arm-tdep.c (instruction_reader::read): Use "override".
12503         (instruction_reader_thumb::read): Likewise.
12504
12505 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12506
12507         PR remote/9665
12508         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12509         instead of remote_send.
12510         (remote_send): Remove.
12511
12512 2018-04-26  Pedro Alves  <palves@redhat.com>
12513
12514         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12515         find_function_start_sal instead of find_pc_line.
12516
12517 2018-04-26  Pedro Alves  <palves@redhat.com>
12518
12519         * breakpoint.c (set_breakpoint_location_function): Handle
12520         mst_data_gnu_ifunc.
12521         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12522         * elfread.c (elf_symtab_read): Give data symbols with
12523         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12524         (elf_rel_plt_read): Update comment.
12525         * linespec.c (convert_linespec_to_sals): Handle
12526         mst_data_gnu_ifunc.
12527         (minsym_found): Handle mst_data_gnu_ifunc.
12528         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12529         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12530         * parse.c (find_minsym_type_and_address): Handle
12531         mst_data_gnu_ifunc.
12532         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12533         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12534         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12535         comment.
12536         <mst_data_gnu_ifunc>: New enumerator.
12537
12538 2018-04-26  Pedro Alves  <palves@redhat.com>
12539
12540         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12541         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12542         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12543         Handle it.
12544         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12545         (lookup_minimal_symbol_by_pc): Adjust.
12546         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12547         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12548         * minsyms.h (lookup_msym_prefer): New enum.
12549         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12550         parameter by a lookup_msym_prefer parameter.
12551
12552 2018-04-26  Pedro Alves  <palves@redhat.com>
12553
12554         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12555         ends in "@plt" instead of looking at the symbol's section.
12556
12557 2018-04-26  Pedro Alves  <palves@redhat.com>
12558
12559         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12560         all references.
12561         (find_pc_partial_function_gnu_ifunc): Rename to ...
12562         (find_pc_partial_function): ... this, and remove references to
12563         'is_gnu_ifunc_p'.
12564         (find_pc_partial_function): Delete old implementation.
12565         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12566
12567 2018-04-26  Pedro Alves  <palves@redhat.com>
12568
12569         * linespec.c (struct bound_minimal_symbol_search_key): New.
12570         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12571         skip first line if we found a GNU ifunc minimal symbol by name.
12572         (compare_msymbols): Change parameters to work with a destructured
12573         lhs minsym.
12574         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12575         functions.
12576
12577 2018-04-26  Pedro Alves  <palves@redhat.com>
12578
12579         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12580         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12581         address/name.
12582         (add_location_to_breakpoint): Store the minsym and the objfile in
12583         the breakpoint location.
12584         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12585         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12586         Record the minsym in the sal.
12587         * symtab.h (symtab_and_line) <msymbol>: New field.
12588
12589 2018-04-26  Pedro Alves  <palves@redhat.com>
12590
12591         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12592         unless we actually resolved the ifunc.
12593
12594 2018-04-26  Pedro Alves  <palves@redhat.com>
12595
12596         * c-exp.y (variable production): Prefer ifunc minsyms over
12597         regular function symbols.
12598         * symtab.c (find_gnu_ifunc): New function.
12599         * minsyms.h (lookup_msym_prefer): New enum.
12600         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12601         parameter by a lookup_msym_prefer parameter.
12602         * symtab.h (find_gnu_ifunc): New declaration.
12603
12604 2018-04-26  Pedro Alves  <palves@redhat.com>
12605
12606         * blockframe.c (find_gnu_ifunc_target_type): New function.
12607         (find_function_type): New.
12608         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12609         return a value with a memory address.
12610         (eval_call): For calls to GNU ifunc functions, try to find the
12611         type of the target function from the type that the resolver
12612         returns.
12613         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12614         symbols.
12615         * infcall.c (find_function_return_type): Delete.
12616         (find_function_addr): Add 'function_type' parameter.  For calls to
12617         GNU ifunc functions, try to find the type of the target function
12618         from the type that the resolver returns, and return it via
12619         FUNCTION_TYPE.
12620         (call_function_by_hand_dummy): Adjust to use the function type
12621         returned by find_function_addr.
12622         (find_function_addr): Add 'function_type' parameter and move
12623         description here.
12624         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12625         declarations.
12626
12627 2018-04-26  Pedro Alves  <palves@redhat.com>
12628
12629         * c-exp.y (variable production): Skip finding an alias for ifunc
12630         symbols.
12631
12632 2018-04-26  Pedro Alves  <palves@redhat.com>
12633
12634         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12635
12636 2018-04-25  Pedro Alves  <palves@redhat.com>
12637
12638         * infcmd.c (kill_command): Print the pid as string, not the whole
12639         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12640         message.
12641         * remote.c (remote_detach_1): Print the pid as string, not the
12642         whole thread's ptid.
12643
12644 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12645             Sergio Durigan Junior  <sergiodj@redhat.com>
12646             Pedro Alves  <palves@redhat.com>
12647
12648         * infcmd.c (kill_command): Print message when inferior has
12649         been killed.
12650         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12651         '1'.
12652         (add_inferior): Improve message printed when
12653         'print_inferior_events' is on.
12654         (exit_inferior): Remove message printed when
12655         'print_inferior_events' is on.
12656         (detach_inferior): Improve message printed when
12657         'print_inferior_events' is on.
12658         (initialize_inferiors): Use 'add_inferior_silent' to set
12659         'current_inferior_'.
12660         * inferior.h (print_inferior_events): Declare here as
12661         'extern'.
12662         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12663         '[Detaching...]' messages when 'print_inferior_events' is on.
12664         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12665         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12666         'Detaching after fork from child...', replace it by '... from
12667         parent...'.
12668         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12669         prefix/suffix when printing 'Detaching...' messages.  Print
12670         them when 'print_inferior_events' is on.
12671         * remote.c (remote_detach_1): Print message when detaching
12672         from inferior and '!is_fork_parent'.
12673
12674 2018-04-24  Tom Tromey  <tom@tromey.com>
12675
12676         * cli-out.h: Reindent.
12677
12678 2018-04-24  Tom Tromey  <tom@tromey.com>
12679
12680         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12681         (cli_ui_out::do_field_string): Use fputs_filtered.
12682         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12683
12684 2018-04-23  Tom Tromey  <tom@tromey.com>
12685
12686         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12687         gdb::unique_xmalloc_ptr.
12688
12689 2018-04-23  Tom Tromey  <tom@tromey.com>
12690
12691         * configure: Rebuild.
12692
12693 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12694
12695         PR gdb/23095
12696         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12697         prepare_for_testing.  Set normal_bp to r_debug_state if target
12698         is bsd.
12699
12700 2018-04-21  Pedro Alves  <palves@redhat.com>
12701             Rajendra SY  <rajendra.sy@gmail.com>
12702
12703         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12704         * remote.c (extended_remote_attach): In all-stop mode, mark the
12705         thread as executing.
12706
12707 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12708
12709         * thread.c (thread_apply_all_command): Fix comment.
12710         (thread_command): Fix comment.
12711
12712 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12713
12714         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12715         parameter.
12716         * features/aarch64-core.c (create_feature_aarch64_core):
12717         Regenerate.
12718         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12719         Likewise.
12720         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12721         Likewise.
12722         * features/i386/32bit-avx512.c
12723         (create_feature_i386_32bit_avx512): Likewise.
12724         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12725         Likewise.
12726         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12727         Likewise.
12728         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12729         Likewise.
12730         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12731         Likewise.
12732         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12733         Likewise.
12734         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12735         Likewise.
12736         * features/i386/64bit-avx512.c
12737         (create_feature_i386_64bit_avx512): Likewise.
12738         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12739         Likewise.
12740         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12741         Likewise.
12742         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12743         Likewise.
12744         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12745         Likewise.
12746         * features/i386/64bit-segments.c
12747         (create_feature_i386_64bit_segments): Likewise.
12748         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12749         Likewise.
12750         * features/i386/x32-core.c
12751         (create_feature_i386_x32_core): Likewise.
12752         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12753         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12754         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12755         * target-descriptions.c: In generated code, don't pass xml
12756         filename.
12757
12758 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12759
12760         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12761         (print_xml_feature::visit_post): Likewise.
12762         (print_xml_feature::visit): Likewise.
12763         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12764         (print_xml_feature): Add new class.
12765         * regformats/regdat.sh: Null xmltarget on feature targets.
12766         * target-descriptions.c (struct target_desc): Add xmltarget.
12767         (maintenance_check_tdesc_xml_convert): Add unittest function.
12768         (tdesc_get_features_xml): Add function to get xml.
12769         (maintenance_check_xml_descriptions): Test xml generation.
12770         * xml-tdesc.c (string_read_description_xml): Add function.
12771         * xml-tdesc.h (string_read_description_xml): Add declaration.
12772
12773 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12774
12775         * features/Makefile: Add feature marker to targets with new style
12776         target descriptions.
12777         * regformats/aarch64.dat: Regenerate.
12778         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12779         * regformats/i386/amd64-avx-linux.dat: Likewise.
12780         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12781         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12782         * regformats/i386/amd64-linux.dat: Likewise.
12783         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12784         * regformats/i386/amd64.dat: Likewise.
12785         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12786         * regformats/i386/i386-avx-linux.dat: Likewise.
12787         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12788         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12789         * regformats/i386/i386-linux.dat: Likewise.
12790         * regformats/i386/i386-mmx-linux.dat: Likewise.
12791         * regformats/i386/i386-mpx-linux.dat: Likewise.
12792         * regformats/i386/i386.dat: Likewise.
12793         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12794         * regformats/i386/x32-avx-linux.dat: Likewise.
12795         * regformats/i386/x32-linux.dat: Likewise.
12796         * regformats/tic6x-c62x-linux.dat: Likewise.
12797         * regformats/tic6x-c64x-linux.dat: Likewise.
12798         * regformats/tic6x-c64xp-linux.dat: Likewise.
12799         * regformats/regdat.sh: Parse feature marker.
12800
12801 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12802
12803         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12804         (tdesc_osabi_name): Likewise.
12805         * target-descriptions.c (tdesc_architecture_name): Add new
12806         function.
12807         (tdesc_osabi_name): Likewise.
12808
12809 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12810
12811         * common/tdesc.c (tdesc_predefined_type): Move to here.
12812         (tdesc_named_type): Likewise.
12813         (tdesc_create_vector): Likewise.
12814         (tdesc_create_struct): Likewise.
12815         (tdesc_set_struct_size): Likewise.
12816         (tdesc_create_union): Likewise.
12817         (tdesc_create_flags): Likewise.
12818         (tdesc_create_enum): Likewise.
12819         (tdesc_add_field): Likewise.
12820         (tdesc_add_typed_bitfield): Likewise.
12821         (tdesc_add_bitfield): Likewise.
12822         (tdesc_add_flag): Likewise.
12823         (tdesc_add_enum_value): Likewise.
12824         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12825         (struct tdesc_type_vector): Likewise.
12826         (struct tdesc_type_field): Likewise.
12827         (struct tdesc_type_with_fields): Likewise.
12828         (tdesc_create_enum): Add declaration.
12829         (tdesc_add_typed_bitfield): Likewise.
12830         (tdesc_add_enum_value): Likewise.
12831         * target-descriptions.c (tdesc_type_field): Move from here.
12832         (tdesc_type_builtin): Likewise.
12833         (tdesc_type_vector): Likewise.
12834         (tdesc_type_with_fields): Likewise.
12835         (tdesc_predefined_types): Likewise.
12836         (tdesc_named_type): Likewise.
12837         (tdesc_create_vector): Likewise.
12838         (tdesc_create_struct): Likewise.
12839         (tdesc_set_struct_size): Likewise.
12840         (tdesc_create_union): Likewise.
12841         (tdesc_create_flags): Likewise.
12842         (tdesc_create_enum): Likewise.
12843         (tdesc_add_field): Likewise.
12844         (tdesc_add_typed_bitfield): Likewise.
12845         (tdesc_add_bitfield): Likewise.
12846         (tdesc_add_flag): Likewise.
12847         (tdesc_add_enum_value): Likewise.
12848         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12849         (tdesc_add_typed_bitfield): Likewise.
12850         (tdesc_add_enum_value): Likewise.
12851
12852 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12853
12854         * common/tdesc.c (tdesc_feature::accept): Move to here.
12855         (tdesc_feature::operator==): Likewise.
12856         (tdesc_create_reg): Likewise.
12857         * common/tdesc.h (tdesc_type_kind): Likewise.
12858         (struct tdesc_type): Likewise.
12859         (struct tdesc_feature): Likewise.
12860         * regformats/regdat.sh: Create a feature.
12861         * target-descriptions.c (tdesc_type_kind): Move from here.
12862         (tdesc_type): Likewise.
12863         (tdesc_type_up): Likewise.
12864         (tdesc_feature): Likewise.
12865         (tdesc_create_reg): Likewise.
12866
12867 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12868
12869         * Makefile.in: Add arch/tdesc.c
12870         * common/tdesc.c: New file.
12871         * common/tdesc.h (tdesc_element_visitor): Move to here.
12872         (tdesc_element): Likewise.
12873         (tdesc_reg): Likewise.
12874         (tdesc_reg_up): Likewise.
12875         * regformats/regdef.h (reg): Add offset to constructors.
12876         * target-descriptions.c (tdesc_element_visitor): Move from here.
12877         (tdesc_element): Likewise.
12878         (tdesc_reg): Likewise.
12879         (tdesc_reg_up): Likewise.
12880
12881 2018-04-17  Tom Tromey  <tom@tromey.com>
12882
12883         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12884         discriminant field.
12885
12886 2018-04-17  Tom Tromey  <tom@tromey.com>
12887
12888         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12889
12890 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12891
12892         * symtab.c (print_symbol_info): Skip printing filename and line
12893         number when `last' is NULL.
12894         (symtab_symbol_info): Use empty string instead of NULL for first
12895         invocation of print_symbol_info.
12896         (rbreak_command): Pass NULL to `last' parameter of
12897         print_symbol_info.
12898
12899 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12900
12901         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12902         instead of nullptr.
12903
12904 2018-04-16  Pedro Alves  <palves@redhat.com>
12905
12906         * MAINTAINERS (sh): Remove.
12907         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12908         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12909         (ALLDEPFILES): Remove sh64-tdep.c.
12910         * NEWS: Mentions that support for SH-5/SH64 is removed.
12911         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12912         (sh*-*-openbsd*): Ditto.
12913         (sh64-*-elf*): Remove.
12914         (sh*): Remove.
12915         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12916         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12917         * sh-tdep.c: No longer include "sh64-tdep.h".
12918         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12919         * sh64-tdep.c, sh64-tdep.h: Remove files.
12920
12921 2018-04-16  Pedro Alves  <palves@redhat.com>
12922
12923         * MAINTAINERS: Remove m88k.
12924         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12925         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12926         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12927         * NEWS: Mention that support for m88k was removed.
12928         * configure.host (m88*-*-*): Remove support.
12929         * configure.nat (m88k-*-*): Remove support.
12930         * configure.tgt (m88*-*-openbsd*): Remove.
12931         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12932
12933 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12934
12935         * configure.tgt (x86_tobjs): New variable.
12936         (amd64_tobjs, i386_tobjs): Use it.
12937
12938 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12939
12940         * symtab.c (print_symbol_info): Precede the symbol definition by
12941         the line number when available.
12942         * NEWS: Advertise this enhancement.
12943
12944 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12945
12946         * NEWS (New options): announce set/show record btrace cpu.
12947         * btrace.c: Include record-btrace.h.
12948         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12949         the vendor is unknown.
12950         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12951         Maybe overwrite the btrace configuration's cpu.
12952         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12953         (btrace_fetch): Add cpu parameter.  Update callers.
12954         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12955         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12956         errata workarounds if the vendor is unknown.
12957         * python/py-record-btrace.c: Include record-btrace.h.
12958         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12959         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12960         * record-btrace.c (record_btrace_cpu_state_kind): New.
12961         (record_btrace_cpu): New.
12962         (set_record_btrace_cpu_cmdlist): New.
12963         (record_btrace_get_cpu): New.
12964         (require_btrace_thread, record_btrace_info)
12965         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12966         (cmd_set_record_btrace_cpu_none): New.
12967         (cmd_set_record_btrace_cpu_auto): New.
12968         (cmd_set_record_btrace_cpu): New.
12969         (cmd_show_record_btrace_cpu): New.
12970         (_initialize_record_btrace): Initialize set/show record btrace cpu
12971         commands.
12972         * record-btrace.h (record_btrace_get_cpu): New.
12973
12974 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12975
12976         * record.c (set_record_command): Fix typo in message.
12977
12978 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12979
12980         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12981
12982 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12983
12984         * infrun.c (process_event_stop_test): Call
12985         gdbarch_in_indirect_branch_thunk.
12986         * gdbarch.sh (in_indirect_branch_thunk): New.
12987         * gdbarch.c: Regenerated.
12988         * gdbarch.h: Regenerated.
12989         * x86-tdep.h: New.
12990         * x86-tdep.c: New.
12991         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12992         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12993         (ALLDEPFILES): Add x86-tdep.c.
12994         * arch-utils.h (default_in_indirect_branch_thunk): New.
12995         * arch-utils.c (default_in_indirect_branch_thunk): New.
12996         * i386-tdep: Include x86-tdep.h.
12997         (i386_in_indirect_branch_thunk): New.
12998         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12999         function.
13000         * amd64-tdep: Include x86-tdep.h.
13001         (amd64_in_indirect_branch_thunk): New.
13002         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
13003
13004 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
13005
13006         PR gdb/23053
13007         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
13008         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
13009         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
13010         regression.
13011
13012 2018-04-12  Tom Tromey  <tom@tromey.com>
13013
13014         * rust-lang.c (rust_print_struct_def): Remove univariant code.
13015         (rust_evaluate_subexp): Likewise.
13016
13017 2018-04-12  Pedro Alves  <palves@redhat.com>
13018
13019         * procfs.c (procfs_detach): Make forward declaration's prototype
13020         match definition's protototype.
13021         (proc_get_LDT_entry): Remove stale do_cleanups call.
13022
13023 2018-04-12  Pedro Alves  <palves@redhat.com>
13024
13025         * target.h (target_ops::to_has_exited): Delete.
13026         (target_has_exited): Delete.
13027         * target-delegates.c: Regenerate.
13028
13029 2018-04-11  Pedro Alves  <palves@redhat.com>
13030
13031         * target.c (fileio_fh_t::t): Add comment.
13032         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
13033         (target_fileio_close): Handle a NULL target.
13034         (invalidate_fileio_fh): New.
13035         (target_close): Call it.
13036         * remote.c (remote_hostio_send_command): No longer check whether
13037         remote_desc is open.
13038
13039 2018-04-11  Pedro Alves  <palves@redhat.com>
13040
13041         * target.c (fileio_fh_t): Make it a named struct instead of a
13042         typedef.
13043         (fileio_fh_t::is_closed): New method.
13044         (DEF_VEC_O (fileio_fh_t)): Remove.
13045         (fileio_fhandles): Now a std::vector.
13046         (is_closed_fileio_fh): Delete.
13047         (acquire_fileio_fd): Adjust.  Rename parameters.
13048         (release_fileio_fd): Adjust.
13049         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
13050         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
13051         (target_fileio_close): Adjust.
13052
13053 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
13054
13055         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
13056         index.
13057
13058 2018-04-10  Pedro Alves  <palves@redhat.com>
13059
13060         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
13061         (scoped_finish_thread_state): New class.
13062         * infcmd.c (run_command_1): Use it instead of finish_thread_state
13063         cleanup.
13064         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
13065         (fetch_inferior_event, normal_stop): Likewise.
13066         * thread.c (finish_thread_state_cleanup): Delete.
13067
13068 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13069             Pedro Alves  <palves@redhat.com>
13070
13071         * value.c: Include "selftest.h" and "common/array-view.h".
13072         (struct range) <operator ==>: New.
13073         (test_ranges_contain): New.
13074         (check_ranges_vector): New.
13075         (test_insert_into_bit_range_vector): New.
13076         (_initialize_values): Register selftests.
13077         * common/array-view.h (operator==, operator!=): New.
13078
13079 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13080
13081         * common/gdb_vecs.h (unordered_remove): Add overload that takes
13082         an iterator.
13083         * inline-frame.c: Include <algorithm>.
13084         (struct inline_state): Add constructor.
13085         (inline_state_s): Remove.
13086         (DEF_VEC_O(inline_state_s)): Remove.
13087         (inline_states): Change type to std::vector.
13088         (find_inline_frame_state): Adjust to std::vector.
13089         (allocate_inline_frame_state): Remove.
13090         (clear_inline_frame_state): Adjust to std::vector.
13091         (skip_inline_frames): Adjust to std::vector.
13092
13093 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13094
13095         * tracepoint.h (struct trace_state_variable): Add constructor.
13096         <name>: Change type to std::string.
13097         * tracepoint.c (tsv_s): Remove.
13098         (DEF_VEC_O(tsv_s)): Remove.
13099         (tvariables): Change to std::vector.
13100         (create_trace_state_variable): Adjust to std::vector.
13101         (find_trace_state_variable): Likewise.
13102         (find_trace_state_variable_by_number): Likewise.
13103         (delete_trace_state_variable): Likewise.
13104         (trace_variable_command): Adjust to std::string.
13105         (delete_trace_variable_command): Likewise.
13106         (tvariables_info_1): Adjust to std::vector.
13107         (save_trace_state_variables): Likewise.
13108         (start_tracing): Likewise.
13109         (merge_uploaded_trace_state_variables): Adjust to std::vector
13110         and std::string.
13111         * target.h (struct target_ops)
13112         <to_download_trace_state_variable>: Pass reference to
13113         trace_state_variable.
13114         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
13115         * target-delegates.c: Re-generate.
13116         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
13117         (mi_tsv_deleted): Likewise.
13118         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
13119         * remote.c (remote_download_trace_state_variable): Change
13120         pointer to reference and adjust.
13121         * make-target-delegates (parse_argtypes): Handle references.
13122         (write_function_header): Likewise.
13123         (munge_type): Likewise.
13124
13125 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13126
13127         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13128         string_view-selftests.c.
13129         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
13130         testsuite.
13131         * unittests/basic_string_view/cons/char/1.cc: Likewise.
13132         * unittests/basic_string_view/cons/char/2.cc: Likewise.
13133         * unittests/basic_string_view/cons/char/3.cc: Likewise.
13134         * unittests/basic_string_view/element_access/char/1.cc:
13135         Likewise.
13136         * unittests/basic_string_view/element_access/char/empty.cc:
13137         Likewise.
13138         * unittests/basic_string_view/element_access/char/front_back.cc:
13139         Likewise.
13140         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
13141         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
13142         Likewise.
13143         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
13144         Likewise.
13145         * unittests/basic_string_view/modifiers/swap/char/1.cc:
13146         Likewise.
13147         * unittests/basic_string_view/operations/compare/char/1.cc:
13148         Likewise.
13149         * unittests/basic_string_view/operations/compare/char/13650.cc:
13150         Likewise.
13151         * unittests/basic_string_view/operations/copy/char/1.cc:
13152         Likewise.
13153         * unittests/basic_string_view/operations/data/char/1.cc:
13154         Likewise.
13155         * unittests/basic_string_view/operations/find/char/1.cc:
13156         Likewise.
13157         * unittests/basic_string_view/operations/find/char/2.cc:
13158         Likewise.
13159         * unittests/basic_string_view/operations/find/char/3.cc:
13160         Likewise.
13161         * unittests/basic_string_view/operations/find/char/4.cc:
13162         Likewise.
13163         * unittests/basic_string_view/operations/rfind/char/1.cc:
13164         Likewise.
13165         * unittests/basic_string_view/operations/rfind/char/2.cc:
13166         Likewise.
13167         * unittests/basic_string_view/operations/rfind/char/3.cc:
13168         Likewise.
13169         * unittests/basic_string_view/operations/substr/char/1.cc:
13170         Likewise.
13171         * unittests/basic_string_view/operators/char/2.cc: Likewise.
13172         * unittests/string_view-selftests.c: New file.
13173
13174 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13175
13176         * unittests/basic_string_view/capacity/1.cc: New file.
13177         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
13178         * unittests/basic_string_view/cons/char/1.cc: New file.
13179         * unittests/basic_string_view/cons/char/2.cc: New file.
13180         * unittests/basic_string_view/cons/char/3.cc: New file.
13181         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
13182         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
13183         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
13184         * unittests/basic_string_view/element_access/char/1.cc: New file.
13185         * unittests/basic_string_view/element_access/char/2.cc: New file.
13186         * unittests/basic_string_view/element_access/char/empty.cc: New file.
13187         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
13188         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
13189         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
13190         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
13191         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
13192         * unittests/basic_string_view/include.cc: New file.
13193         * unittests/basic_string_view/inserters/char/1.cc: New file.
13194         * unittests/basic_string_view/inserters/char/2.cc: New file.
13195         * unittests/basic_string_view/inserters/char/3.cc: New file.
13196         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
13197         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
13198         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
13199         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
13200         * unittests/basic_string_view/literals/types.cc: New file.
13201         * unittests/basic_string_view/literals/values.cc: New file.
13202         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
13203         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
13204         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
13205         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
13206         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
13207         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
13208         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
13209         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
13210         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
13211         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
13212         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
13213         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
13214         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
13215         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
13216         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
13217         * unittests/basic_string_view/operations/data/char/1.cc: New file.
13218         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
13219         * unittests/basic_string_view/operations/find/char/1.cc: New file.
13220         * unittests/basic_string_view/operations/find/char/2.cc: New file.
13221         * unittests/basic_string_view/operations/find/char/3.cc: New file.
13222         * unittests/basic_string_view/operations/find/char/4.cc: New file.
13223         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
13224         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
13225         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
13226         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
13227         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
13228         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
13229         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
13230         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
13231         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
13232         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
13233         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
13234         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13235         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13236         * unittests/basic_string_view/operators/char/2.cc: New file.
13237         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13238         * unittests/basic_string_view/range_access/char/1.cc: New file.
13239         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13240         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13241         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13242         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13243         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13244         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13245         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13246         * unittests/basic_string_view/typedefs.cc: New file.
13247         * unittests/basic_string_view/types/1.cc: New file.
13248
13249 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13250
13251         * common/gdb_string_view.h: Remove libstdc++ implementation
13252         details, adjust to gdb reality.
13253         * common/gdb_string_view.tcc: Likewise.
13254         * cli/cli-script.c (struct string_view): Remove.
13255         (user_args) <m_args>: Change element type to gdb::string_view.
13256         (user_args::insert_args): Adjust.
13257
13258 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13259
13260         * common/gdb_string_view.h: New file.
13261         * common/gdb_string_view.tcc: New file.
13262
13263 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13264
13265         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13266         * configure: Re-generate.
13267
13268 2018-04-09  Pedro Alves  <palves@redhat.com>
13269
13270         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13271         (set_target_gdbarch): Call
13272         gdb::observers::architecture_changed.notify instead of
13273         observer_notify_architecture_changed.
13274
13275 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13276
13277         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13278         (do_restore_current_traceframe_cleanup): Remove.
13279         (restore_current_traceframe_cleanup_dtor): Remove.
13280         (make_cleanup_restore_current_traceframe): Remove.
13281         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13282         New.
13283         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13284         * infrun.c (fetch_inferior_event): Use
13285         scoped_restore_current_traceframe.
13286
13287 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13288
13289         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13290         Remove.
13291         <n_allocated_type_units>: Remove.
13292         <all_type_units>: Change to std::vector.
13293         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13294         to std::vector change.
13295         (dwarf2_per_objfile::get_cutu): Likewise.
13296         (dwarf2_per_objfile::get_tu): Likewise.
13297         (create_signatured_type_table_from_index): Likewise.
13298         (create_signatured_type_table_from_debug_names): Likewise.
13299         (dw2_symtab_iter_next): Likewise.
13300         (dw2_print_stats): Likewise.
13301         (dw2_expand_all_symtabs): Likewise.
13302         (dw2_expand_marked_cus): Likewise.
13303         (dw2_debug_names_iterator::next): Likewise.
13304         (dwarf2_initialize_objfile): Likewise.
13305         (add_signatured_type_cu_to_table): Likewise.
13306         (create_all_type_units): Likewise.
13307         (add_type_unit): Likewise.
13308         (struct tu_abbrev_offset): Add constructor.
13309         (build_type_psymtabs_1): Adjust to std::vector change.
13310         (print_tu_stats): Likewise.
13311         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13312         (write_debug_names): Likewise.
13313
13314 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13315
13316         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13317         Make an std::vector.
13318         <n_comp_units>: Remove.
13319         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13320         to std::vector change.
13321         (dwarf2_per_objfile::get_cutu): Likewise.
13322         (dwarf2_per_objfile::get_cu): Likewise.
13323         (create_cus_from_index): Likewise.
13324         (create_addrmap_from_index): Likewise.
13325         (create_addrmap_from_aranges): Likewise.
13326         (dwarf2_read_index): Likewise.
13327         (dw2_find_last_source_symtab): Likewise.
13328         (dw2_map_symtabs_matching_filename): Likewise.
13329         (dw2_symtab_iter_next): Likewise.
13330         (dw2_print_stats): Likewise.
13331         (dw2_expand_all_symtabs): Likewise.
13332         (dw2_expand_symtabs_with_fullname): Likewise.
13333         (dw2_expand_marked_cus): Likewise.
13334         (dw2_map_symbol_filenames): Likewise.
13335         (create_cus_from_debug_names): Likewise.
13336         (dwarf2_read_debug_names): Likewise.
13337         (dw2_debug_names_iterator::next): Likewise.
13338         (dwarf2_initialize_objfile): Likewise.
13339         (set_partial_user): Likewise.
13340         (dwarf2_build_psymtabs_hard): Likewise.
13341         (read_comp_units_from_section): Remove arguments, adjust to
13342         std::vector change.
13343         (create_all_comp_units): Adjust to std::vector and
13344         read_comp_units_from_section changes.
13345         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13346         change.
13347         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13348         (psyms_seen_size): Likewise.
13349         (write_gdbindex): Likewise.
13350         (write_debug_names): Likewise.
13351
13352 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13353
13354         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13355         with dwarf2_per_objfile.
13356         (create_cus_from_index): Likewise.
13357         (create_signatured_type_table_from_index): Likewise.
13358         (dwarf2_read_index): Likewise.
13359         (dwarf2_initialize_objfile): Likewise.
13360         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13361         per_cu rather than get_dwarf2_per_objfile.
13362
13363 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13364
13365         * dwarf2read.h (struct signatured_type): Forward declare.
13366         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13367         New methods.
13368         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13369         (dw2_get_cutu): ...this.
13370         (dwarf2_per_objfile::get_cu): Rename from...
13371         (dw2_get_cu): ...this.
13372         (dwarf2_per_objfile::get_tu): New.
13373         (create_addrmap_from_index): Adjust.
13374         (create_addrmap_from_aranges): Adjust.
13375         (dw2_find_last_source_symtab): Adjust.
13376         (dw2_map_symtabs_matching_filename): Adjust.
13377         (dw2_symtab_iter_next): Adjust.
13378         (dw2_print_stats): Adjust.
13379         (dw2_expand_all_symtabs): Adjust.
13380         (dw2_expand_symtabs_with_fullname): Adjust.
13381         (dw2_expand_marked_cus): Adjust.
13382         (dw_expand_symtabs_matching_file_matcher): Adjust.
13383         (dw2_map_symbol_filenames): Adjust.
13384         (dw2_debug_names_iterator::next): Adjust.
13385         (dwarf2_initialize_objfile): Adjust.
13386         (set_partial_user): Adjust.
13387         (dwarf2_build_psymtabs_hard): Adjust.
13388
13389 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13390
13391         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13392         Remove unused variables.
13393         (dw2_map_symtabs_matching_filename): Likewise.
13394         (dwarf2_record_block_ranges): Likewise.
13395         (dwarf2_read_addr_index): Likewise.
13396         (follow_die_offset): Likewise.
13397
13398 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13399
13400         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13401         to symbol_file_add_main.
13402
13403 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13404
13405         PR mi/22299
13406         * mi/mi-console.c (do_fputc_async_safe): New.
13407         (mi_console_file::write_async_safe): New.
13408         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13409         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13410         New.
13411         * ui-file.c (ui_file::putstrn): Adjust call to
13412         fputstrn_unfiltered.
13413         * utils.c (printchar): Replace do_fputs and do_fprintf
13414         parameters by do_fputc.
13415         (fputstr_filtered): Adjust call to printchar.
13416         (fputstr_unfiltered): Likewise.
13417         (fputstrn_filtered): Likewise.
13418         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13419         printchar.
13420         * utils.h (do_fputc_ftype): New typedef.
13421         (fputstrn_unfiltered): Add do_fputc parameter.
13422
13423 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13424
13425         * regformats/i386/i386-avx.dat: Remove.
13426
13427 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13428
13429         PR gdb/22979
13430         * amd64-tdep.c (amd64_none_init_abi): New function.
13431         (amd64_x32_none_init_abi): New function.
13432         (_initialize_amd64_tdep): Register handlers for x86-64 and
13433         x64_32 with GDB_OSABI_NONE.
13434         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13435         GDB_OSABI_NONE osabi.
13436
13437 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13438
13439         PR gdb/22980
13440         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13441         GDB_OSABI_NONE.
13442         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13443         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13444
13445 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13446
13447         * common/byte-vector.h (char_vector): New type.
13448         * target.h (target_read_alloc): Return
13449         gdb::optional<byte_vector>.
13450         (target_read_stralloc): Return gdb::optional<char_vector>.
13451         (target_get_osdata): Return gdb::optional<char_vector>.
13452         * target.c (target_read_alloc_1): Templatize.  Replacement
13453         manual memory management with vector.
13454         (target_read_alloc): Change return type, adjust.
13455         (target_read_stralloc): Change return type, adjust.
13456         (target_get_osdata): Change return type, adjust.
13457         * auxv.c (struct auxv_info) <length>: Remove.
13458         <data>: Change type to gdb::optional<byte_vector>.
13459         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13460         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13461         (target_auxv_search): Adjust.
13462         (fprint_target_auxv): Adjust.
13463         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13464         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13465         (linux_make_corefile_notes): Adjust.
13466         * osdata.c (get_osdata): Adjust.
13467         * remote.c (remote_get_threads_with_qxfer): Adjust.
13468         (remote_memory_map): Adjust.
13469         (remote_traceframe_info): Adjust.
13470         (btrace_read_config): Adjust.
13471         (remote_read_btrace): Adjust.
13472         (remote_pid_to_exec_file): Adjust.
13473         * solib-aix.c (solib_aix_get_library_list): Adjust.
13474         * solib-dsbt.c (decode_loadmap): Don't free buf.
13475         (dsbt_get_initial_loadmaps): Adjust.
13476         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13477         * solib-target.c (solib_target_current_sos): Adjust.
13478         * tracepoint.c (sdata_make_value): Adjust.
13479         * xml-support.c (xinclude_start_include): Adjust.
13480         (xml_fetch_content_from_file): Adjust.
13481         * xml-support.h (xml_fetch_another): Change return type.
13482         (xml_fetch_content_from_file): Change return type.
13483         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13484         * xml-tdesc.c (file_read_description_xml): Adjust.
13485         (fetch_available_features_from_target): Change return type.
13486         (target_fetch_description_xml): Adjust.
13487         (target_read_description_xml): Adjust.
13488
13489 2018-04-06  Tom Tromey  <tom@tromey.com>
13490
13491         * value.c (~value): Update.
13492         (struct value) <contents>: Now unique_xmalloc_ptr.
13493         (value_contents_bits_eq, allocate_value_contents)
13494         (value_contents_raw, value_contents_all_raw)
13495         (value_contents_for_printing, value_contents_for_printing_const)
13496         (set_value_enclosing_type): Update.
13497
13498 2018-04-06  Tom Tromey  <tom@tromey.com>
13499
13500         * value.c (range_s): Remove typedef, VEC.
13501         (struct range): Add operator<.
13502         (range_lessthan): Remove.
13503         (ranges_contain): Change type.
13504         (~value): Update.
13505         (struct value) <unavailable, optimized_out>: Now std::vector.
13506         (value_entirely_available)
13507         (value_entirely_covered_by_range_vector)
13508         (value_entirely_unavailable, value_entirely_optimized_out):
13509         Update.
13510         (insert_into_bit_range_vector): Change argument type.
13511         (find_first_range_overlap): Likewise.
13512         (struct ranges_and_idx, value_contents_bits_eq)
13513         (require_not_optimized_out, require_available): Update.
13514         (ranges_copy_adjusted): Change argument types.
13515         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13516
13517 2018-04-06  Tom Tromey  <tom@tromey.com>
13518
13519         * value.c (~value): Update.
13520         (struct value) <parent>: Now a value_ref_ptr.
13521         (value_parent, set_value_parent, value_address, value_copy):
13522         Update.
13523
13524 2018-04-06  Tom Tromey  <tom@tromey.com>
13525
13526         * value.c (struct value): Add constructor, destructor, and member
13527         initializers.
13528         (allocate_value_lazy, value_decref): Update.
13529
13530 2018-04-06  Tom Tromey  <tom@tromey.com>
13531
13532         * value.c (struct value) <released, next>: Remove.
13533         (all_values): Now a std::vector.
13534         (allocate_value_lazy): Update.
13535         (value_next): Remove.
13536         (value_mark, value_free_to_mark, release_value)
13537         (value_release_to_mark): Update.
13538
13539 2018-04-06  Tom Tromey  <tom@tromey.com>
13540
13541         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13542         (free_value_chain): Remove.
13543         * value.c (free_value_chain): Remove.
13544         (value_release_to_mark): Return a std::vector.
13545         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13546         std::vector.
13547         (check_condition): Update.
13548         * eval.c (fetch_subexp_value): Change "val_chain" to a
13549         std::vector.
13550         * breakpoint.c (update_watchpoint): Update.
13551         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13552
13553 2018-04-06  Tom Tromey  <tom@tromey.com>
13554
13555         * value.h (free_all_values): Remove.
13556         * value.c (free_all_values): Remove.
13557
13558 2018-04-06  Tom Tromey  <tom@tromey.com>
13559
13560         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13561         (value_history_chain, value_history_count): Remove.
13562         (value_history): New global.
13563         (record_latest_value, access_value_history, show_values)
13564         (preserve_values): Update.
13565
13566 2018-04-06  Tom Tromey  <tom@tromey.com>
13567
13568         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13569         * varobj.c (varobj_set_display_format, varobj_set_value)
13570         (install_default_visualizer, construct_visualizer)
13571         (install_new_value, ~varobj, varobj_get_value_type)
13572         (my_value_of_variable, varobj_editable_p): Update.
13573         * c-varobj.c (c_describe_child, c_value_of_variable)
13574         (cplus_number_of_children, cplus_describe_child): Update.
13575         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13576         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13577         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13578
13579 2018-04-06  Tom Tromey  <tom@tromey.com>
13580
13581         * printcmd.c (last_examine_address): Change type to
13582         value_ref_ptr.
13583         (do_examine, x_command): Update.
13584
13585 2018-04-06  Tom Tromey  <tom@tromey.com>
13586
13587         * value.c (release_value): Update.
13588         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13589         (struct bpstats) <val>: Now a value_ref_ptr.
13590         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13591         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13592         (~watchpoint, print_it_watchpoint, watch_command_1)
13593         (invalidate_bp_value_on_memory_change): Update.
13594
13595 2018-04-06  Tom Tromey  <tom@tromey.com>
13596
13597         * varobj.c (varobj_clear_saved_item)
13598         (update_dynamic_varobj_children, install_new_value, ~varobj):
13599         Update.
13600         * value.h (value_incref): Move declaration earlier.
13601         (value_decref): Rename from value_free.
13602         (struct value_ref_policy): New.
13603         (value_ref_ptr): New typedef.
13604         (struct value_deleter): Remove.
13605         (gdb_value_up): Remove typedef.
13606         (release_value): Change return type.
13607         (release_value_or_incref): Remove.
13608         * value.c (set_value_parent): Update.
13609         (value_incref): Change return type.
13610         (value_decref): Rename from value_free.
13611         (value_free_to_mark, free_all_values, free_value_chain): Update.
13612         (release_value): Return value_ref_ptr.
13613         (release_value_or_incref): Remove.
13614         (record_latest_value, set_internalvar, clear_internalvar):
13615         Update.
13616         * stack.c (info_frame_command): Don't call value_free.
13617         * python/py-value.c (valpy_dealloc, valpy_new)
13618         (value_to_value_object): Update.
13619         * printcmd.c (do_examine): Update.
13620         * opencl-lang.c (lval_func_free_closure): Update.
13621         * mi/mi-main.c (register_changed_p): Don't call value_free.
13622         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13623         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13624         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13625         value_free.
13626         * guile/scm-value.c (vlscm_free_value_smob)
13627         (vlscm_scm_from_value): Update.
13628         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13629         (frame_unwind_register_unsigned, get_frame_register_bytes)
13630         (put_frame_register_bytes): Don't call value_free.
13631         * findvar.c (address_from_register): Don't call value_free.
13632         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13633         * dwarf2loc.c (entry_data_value_free_closure)
13634         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13635         (dwarf2_evaluate_loc_desc_full): Update.
13636         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13637         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13638         (~watchpoint, watch_command_1)
13639         (invalidate_bp_value_on_memory_change): Update.
13640         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13641
13642 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13643
13644         PR gdb/23022
13645         * warning.m4: Add -Wno-error=deprecated-register.
13646         * configure: Re-generate.
13647
13648 2018-04-05  Tom Tromey  <tom@tromey.com>
13649
13650         * linespec.h: Remove include of "vec.h".
13651
13652 2018-04-05  Tom Tromey  <tom@tromey.com>
13653
13654         * linespec.c (typep): Remove typedef.
13655         (find_methods, find_superclass_methods): Take a std::vector.
13656         (find_method): Use std::vector.
13657
13658 2018-04-05  Tom Tromey  <tom@tromey.com>
13659
13660         * utils.c (compare_strings): Remove.
13661         * utils.h (compare_strings): Remove.
13662         * objc-lang.h (find_imps): Update.
13663         * objc-lang.c (find_methods): Take a std::vector.
13664         (uniquify_strings, find_imps): Likewise.
13665         * linespec.c (find_methods): Take a std::vector.
13666         (decode_objc): Use std::vector.
13667         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13668         a std::vector.
13669         (find_method, find_function_symbols): Use std::vector.
13670
13671 2018-04-05  Tom Tromey  <tom@tromey.com>
13672
13673         * completer.c (completion_tracker::completion_tracker): Remove
13674         cast.
13675         (completion_tracker::discard_completions): Likewise.
13676         * breakpoint.c (ambiguous_names_p): Remove cast.
13677         * ada-lang.c (_initialize_ada_language): Remove cast.
13678         * utils.h (streq): Update.
13679         (streq_hash): Add new declaration.
13680         * utils.c (streq): Return bool.
13681         (streq_hash): New function.
13682
13683 2018-04-05  Tom Tromey  <tom@tromey.com>
13684
13685         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13686         Remove a string copy.
13687
13688 2018-04-05  Tom Tromey  <tom@tromey.com>
13689
13690         * linespec.c (filter_results): Use std::vector.
13691         (decode_line_2, decode_line_full): Update.
13692
13693 2018-04-05  Tom Tromey  <tom@tromey.com>
13694
13695         * linespec.c (canonical_to_fullform): Return std::string.
13696         (filter_results): Update.
13697         (struct decode_line_2_item): Add constructor.
13698         <fullform, displayform>: Now std::string.
13699         (decode_line_2_compare_items): Now a std::sort comparator.
13700         (decode_line_2): Update.
13701
13702 2018-04-05  Tom Tromey  <tom@tromey.com>
13703
13704         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13705         (unexpected_linespec_error): Update.
13706         (linespec_parse_basic, parse_linespec): Update.
13707
13708 2018-04-05  Tom Tromey  <tom@tromey.com>
13709
13710         * linespec.c (linespec_parse_basic): Reindent.
13711
13712 2018-04-05  Tom Tromey  <tom@tromey.com>
13713
13714         * minsyms.h (iterate_over_minimal_symbols): Update.
13715         * minsyms.c (iterate_over_minimal_symbols): Take a
13716         gdb::function_view.
13717         * linespec.c (struct collect_minsyms): Remove.
13718         (compare_msyms): Now a std::sort comparator.
13719         (add_minsym): Add parameters.
13720         (search_minsyms_for_name): Update.  Use std::vector.
13721
13722 2018-04-03  Tom Tromey  <tom@tromey.com>
13723
13724         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13725         gdb::byte_vector.
13726
13727 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13728
13729         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13730
13731 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13732
13733         PR gdb/16959
13734         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13735         printing static type.
13736
13737 2018-04-01  Tom Tromey  <tom@tromey.com>
13738
13739         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13740         (rs6000_xfer_shared_libraries): Update.
13741
13742 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13743
13744         * common/gdb_vecs.h (char_ptr): Remove.
13745         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13746
13747 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13748
13749         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13750         with std::vector.
13751         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13752
13753 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13754
13755         * tracepoint.h (struct uploaded_tp): Initialize fields.
13756         <actions, step_actions, cmd_strings>: Change type to
13757         std::vector<char *>.
13758         * tracepoint.c (get_uploaded_tp): Allocate with new.
13759         (free_uploaded_tps): Free with delete.
13760         (parse_tracepoint_definition): Adjust to std::vector change.
13761         * breakpoint.c (read_uploaded_action): Likewise.
13762         (create_tracepoint_from_upload): Likewise.
13763         * ctf.c (ctf_write_uploaded_tp): Likewise.
13764         (SET_ARRAY_FIELD): Likewise.
13765         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13766
13767 2018-03-30  Tom Tromey  <tom@tromey.com>
13768
13769         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13770         std::unique_ptr.
13771         (svr4_keep_data_in_core): Update.
13772         (svr4_read_so_list): Update.
13773
13774 2018-03-30  Tom Tromey  <tom@tromey.com>
13775
13776         * windows-nat.c (handle_output_debug_string, handle_exception):
13777         Update.
13778         * target.h (target_read_string): Update.
13779         * target.c (target_read_string): Change "string" to
13780         unique_xmalloc_ptr.
13781         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13782         Update.
13783         * solib-frv.c (frv_current_sos): Update.
13784         * solib-dsbt.c (dsbt_current_sos): Update.
13785         * solib-darwin.c (darwin_current_sos): Update.
13786         * linux-thread-db.c (inferior_has_bug): Update.
13787         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13788         Update.  Remove alloca.
13789         * ada-lang.c (ada_main_name): Update.
13790
13791 2018-03-30  Tom Tromey  <tom@tromey.com>
13792
13793         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13794         (struct dwo_file_deleter): New.
13795         (dwo_file_up): New typedef.
13796         (open_and_init_dwo_file): Use dwo_file_up.
13797         (free_dwo_file_cleanup): Remove.
13798
13799 2018-03-30  Tom Tromey  <tom@tromey.com>
13800
13801         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13802         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13803
13804 2018-03-30  Tom Tromey  <tom@tromey.com>
13805
13806         * dwarf2read.c (class free_cached_comp_units): New class.
13807         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13808         (free_cached_comp_units): Remove function.
13809
13810 2018-03-30  Tom Tromey  <tom@tromey.com>
13811
13812         * utils.h (make_cleanup_unpush_target): Remove.
13813         * inf-ptrace.c (struct target_unpusher): New.
13814         (target_unpush_up) New typedef.
13815         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13816         target_unpush_up.
13817         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13818
13819 2018-03-27  Tom Tromey  <tom@tromey.com>
13820
13821         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13822
13823 2018-03-27  Pedro Alves  <palves@redhat.com>
13824             Tom Tromey  <tom@tromey.com>
13825
13826         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13827         destructor.  Now a class.
13828         (gdb_readline_wrapper_cleanup): Remove function.
13829         (gdb_readline_wrapper): Remove cleanups.
13830
13831 2018-03-27  Tom Tromey  <tom@tromey.com>
13832
13833         * typeprint.h (struct type_print_options) <local_typedefs,
13834         global_typedefs>: Remove "struct" keyword.
13835         (class typedef_hash_table): New class.
13836         (recursively_update_typedef_hash, add_template_parameters)
13837         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13838         (find_typedef_in_hash): Don't declare.
13839         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13840         (typedef_hash_table::recursively_update): Rename from
13841         recursively_update_typedef_hash.  Now a member.
13842         (typedef_hash_table::add_template_parameters): Rename from
13843         add_template_parameters.  Now a member.
13844         (typedef_hash_table::typedef_hash_table): Now a constructor;
13845         rename from create_typedef_hash.
13846         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13847         rename from free_typedef_hash.
13848         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13849         (do_free_global_table): Remove.
13850         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13851         from copy_type_recursive.
13852         (create_global_typedef_table): Remove.
13853         (typedef_hash_table::find_global_typedef): Now a member of
13854         typedef_hash_table.
13855         (typedef_hash_table::find_typedef): Rename from
13856         find_typedef_in_hash; now a member.
13857         (whatis_exp): Update.
13858         * extension.h (struct ext_lang_type_printers): Add constructor and
13859         destructor.
13860         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13861         declare.
13862         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13863         Now a constructor; rename from start_ext_lang_type_printers.
13864         (ext_lang_type_printers): Now a destructor; rename from
13865         free_ext_lang_type_printers.
13866         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13867         Update.
13868         (c_type_print_base_struct_union): Update.  Remove cleanups.
13869
13870 2018-03-27  Tom Tromey  <tom@tromey.com>
13871
13872         * dwarf-index-write.c: Include <cmath>.
13873
13874 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13875
13876         * NEWS: Add entry describing new "set|show varsize-limit" command.
13877         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13878         command.
13879         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13880         "set variable".
13881
13882 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13883
13884         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13885         dwarf-index-write.c
13886         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13887         * dwarf-index-common.c: New file.
13888         * dwarf-index-common.h: New file.
13889         * dwarf-index-write.c: New file.
13890         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13891         (struct dwarf2_section_info): Move from here.
13892         (dwarf2_section_info_def): Likewise.
13893         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13894         (offset_type): Likewise.
13895         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13896         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13897         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13898         (byte_swap): Likewise.
13899         (MAYBE_SWAP): Likewise.
13900         (dwarf2_per_cu_ptr): Likewise.
13901         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13902         (struct tu_stats): Likewise.
13903         (struct dwarf2_per_objfile): Likewise.
13904         (struct dwarf2_per_cu_data): Likewise.
13905         (struct signatured_type): Likewise.
13906         (sig_type_ptr): Likewise.
13907         (DEF_VEC_P (sig_type_ptr)): Likewise.
13908         (INDEX4_SUFFIX): Likewise.
13909         (INDEX5_SUFFIX): Likewise.
13910         (DEBUG_STR_SUFFIX): Likewise.
13911         (dwarf2_read_section): Make non-static.
13912         (mapped_index_string_hash): Move from here.
13913         (dwarf5_djb_hash): Likewise.
13914         (file_write): Likewise.
13915         (class data_buf): Likewise.
13916         (struct symtab_index_entry): Likewise.
13917         (struct mapped_symtab): Likewise.
13918         (find_slot): Likewise.
13919         (hash_expand): Likewise.
13920         (add_index_entry): Likewise.
13921         (uniquify_cu_indices): Likewise.
13922         (class c_str_view): Likewise.
13923         (class c_str_view_hasher): Likewise.
13924         (class vector_hasher): Likewise.
13925         (write_hash_table): Likewise.
13926         (psym_index_map): Likewise.
13927         (struct addrmap_index_data): Likewise.
13928         (add_address_entry): Likewise.
13929         (add_address_entry_worker): Likewise.
13930         (write_address_map): Likewise.
13931         (symbol_kind): Likewise.
13932         (write_psymbols): Likewise.
13933         (struct signatured_type_index_data): Likewise.
13934         (write_one_signatured_type): Likewise.
13935         (recursively_count_psymbols): Likewise.
13936         (recursively_write_psymbols): Likewise.
13937         (class debug_names): Likewise.
13938         (check_dwarf64_offsets): Likewise.
13939         (psyms_seen_size): Likewise.
13940         (write_gdbindex): Likewise.
13941         (write_debug_names): Likewise.
13942         (assert_file_size): Likewise.
13943         (write_psymtabs_to_index): Likewise.
13944         (save_gdb_index_command): Likewise.
13945         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13946         command.
13947         * dwarf2read.h: New file.
13948
13949 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13950
13951         PR gdb/22670
13952         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13953         symbol name if the CU's language stores symbol names in linkage
13954         format.
13955         * language.h (struct language_defn)
13956         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13957         all instances of this struct.
13958
13959 2018-03-26  Tom Tromey  <tom@tromey.com>
13960
13961         * stack.c (backtrace_command_1): Remove verbose code.
13962
13963 2018-03-26  Tom Tromey  <tom@tromey.com>
13964
13965         * python/py-framefilter.c (py_print_type): Don't catch
13966         exceptions.  Return void.
13967         (py_print_value): Likewise.
13968         (py_print_single_arg): Likewise.
13969         (enumerate_args): Don't catch exceptions.
13970         (py_print_args): Likewise.
13971         (py_print_frame): Likewise.
13972         (gdbpy_apply_frame_filter): Catch exceptions here.
13973
13974 2018-03-26  Tom Tromey  <tom@tromey.com>
13975
13976         * stack.c (_initialize_stack): Remove trailing newlines from help
13977         text.  Add "Usage" line to "backtrace" help.
13978
13979 2018-03-26  Tom Tromey  <tom@tromey.com>
13980
13981         PR python/16486:
13982         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13983
13984 2018-03-26  Tom Tromey  <tom@tromey.com>
13985
13986         * python/py-framefilter.c (py_print_single_arg): Return
13987         EXT_LANG_BT_ERROR from catch.
13988
13989 2018-03-26  Tom Tromey  <tom@tromey.com>
13990
13991         PR backtrace/15584:
13992         * stack.c (backtrace_command_1): Move some code into no-filters
13993         "if".
13994
13995 2018-03-26  Tom Tromey  <tom@tromey.com>
13996
13997         * python/py-framefilter.c (throw_quit_or_print_exception): New
13998         function.
13999         (gdbpy_apply_frame_filter): Use it.
14000
14001 2018-03-26  Tom Tromey  <tom@tromey.com>
14002
14003         PR cli/17716:
14004         * python/py-framefilter.c (py_print_type, py_print_value)
14005         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
14006         RETURN_MASK_ERROR.
14007
14008 2018-03-26  Tom Tromey  <tom@tromey.com>
14009
14010         * python/py-framefilter.c (enumerate_args): Use
14011         gdb::unique_xmalloc_ptr.
14012
14013 2018-03-26  Tom Tromey  <tom@tromey.com>
14014
14015         * python/py-framefilter.c (py_print_frame): Return
14016         EXT_LANG_BT_OK.
14017         (gdbpy_apply_frame_filter): Update comment.
14018         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
14019         Remove.
14020         <EXT_LANG_BT_NO_FILTERS>: Change value.
14021
14022 2018-03-26  Tom Tromey  <tom@tromey.com>
14023
14024         PR backtrace/15582:
14025         * stack.c (backtrace_command): Parse "hide" argument.
14026         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
14027         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
14028         constant.
14029
14030 2018-03-26  Tom Tromey  <tom@tromey.com>
14031
14032         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
14033         add "flags".
14034         (backtrace_command): Remove "fulltrace", add "flags".
14035
14036 2018-03-26  Tom Tromey  <tom@tromey.com>
14037
14038         * stack.c (backtrace_command): Rewrite command line parsing.
14039
14040 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
14041
14042         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
14043
14044 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
14045
14046         * filename-seen-cache.h: Add include guard.
14047
14048 2018-03-26  Keith Seitz  <keiths@redhat.com>
14049
14050         * symfile.c (place_section): Remove "struct" from section_addr_info
14051         in comment.
14052         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
14053         "struct" keyword from section_addr_info.
14054
14055 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
14056
14057         * regformats/regdef.h (reg): Add constructors.
14058
14059 2018-03-25  Pedro Alves  <palves@redhat.com>
14060
14061         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
14062         if then/else bodies in var_func_name extraction.
14063
14064 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
14065
14066         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
14067         lookup_minimal_symbol() to find symbol entry.
14068         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
14069
14070 2018-03-23  Keith Seitz  <keiths@redhat.com>
14071
14072         PR c++/22968
14073         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
14074         nested type definitions for C++, too.
14075
14076 2018-03-23  Tom Tromey  <tom@tromey.com>
14077
14078         * machoread.c (struct oso_el): Add a constructor.  Don't define as
14079         a typedef.
14080         (macho_register_oso): Remove.
14081         (macho_symtab_read): Take a std::vector.
14082         (oso_el_compare_name): Now a std::sort comparator.
14083         (macho_symfile_read_all_oso): Take a std::vector.
14084         (macho_symfile_read): Use std::vector.  Remove cleanups.
14085
14086 2018-03-22  Tom Tromey  <tom@tromey.com>
14087
14088         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
14089         (record_full_goto_bookmark): Use std::string.
14090
14091 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
14092
14093         PR tdep/18295
14094         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
14095         a single mask.
14096
14097 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
14098
14099         * rs6000-tdep.c (store_insn_p): New function.
14100         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
14101         and cr_reg to their unshifted values. Use store_insn_p to
14102         match LR saves using either R1 or fdata->alloca_reg. Use
14103         store_insn_p to match CR saves. Set alloca_reg_offset
14104         when alloca_reg and framep are set. Remove lr_reg shift
14105         when assigning to fdata->lr_register.
14106
14107 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14108
14109         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
14110         command line args instead of emitting a warning.
14111
14112 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
14113
14114         * tracepoint.h (struct static_tracepoint_marker): Initialize
14115         fields, define default constructor, move constructor and move
14116         assignment, disable the rest.
14117         <str_id, extra>: Make std::string.
14118         (release_static_tracepoint_marker): Remove.
14119         (free_current_marker): Remove.
14120         * tracepoint.c (free_current_marker): Remove.
14121         (parse_static_tracepoint_marker_definition): Adjust to
14122         std::string, use new hex2str overload.
14123         (release_static_tracepoint_marker): Remove.
14124         (print_one_static_tracepoint_marker): Get marker by reference
14125         and adjust to std::string.
14126         (info_static_tracepoint_markers_command): Adjust to std::vector
14127         changes
14128         * target.h (static_tracepoint_marker_p): Remove typedef.
14129         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
14130         (struct target_ops) <to_static_tracepoint_marker_at>: Return
14131         bool.
14132         <to_static_tracepoint_markers_by_strid>: Return std::vector.
14133         * target-debug.h
14134         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
14135         (target_debug_print_std_vector_static_tracepoint_marker): New.
14136         (target_debug_print_struct_static_tracepoint_marker_p): Rename
14137         to...
14138         (target_debug_print_static_tracepoint_marker_p): ... this.
14139         * target-delegates.c: Re-generate.
14140         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
14141         Make std::string.
14142         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
14143         (decode_static_tracepoint_spec): Adjust to std::vector.
14144         (tracepoint_print_one_detail): Adjust to std::string.
14145         (strace_marker_decode_location): Adjust to std::string.
14146         (update_static_tracepoint): Adjust to std::string, remove call
14147         to release_static_tracepoint_marker.
14148         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
14149         Adjust to std::vector.
14150         * remote.c (remote_static_tracepoint_marker_at): Return bool.
14151         (remote_static_tracepoint_markers_by_strid): Adjust to
14152         std::vector.
14153         * common/rsp-low.h (hex2str): New overload with explicit count
14154         of bytes.
14155         * common/rsp-low.c (hex2str): New overload with explicit count
14156         of bytes.
14157         * unittests/rsp-low-selftests.c (test_hex2str): New function.
14158         (_initialize_rsp_low_selftests): Add test_hex2str test.
14159         * unittests/tracepoint-selftests.c
14160         (test_parse_static_tracepoint_marker_definition): Adjust to
14161         std::string.
14162
14163 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
14164
14165         * tracepoint.c (parse_static_tracepoint_marker_definition):
14166         Consider case where the definition is followed by more
14167         definitions.
14168         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14169         tracepoint-selftests.c.
14170         * unittests/tracepoint-selftests.c: New.
14171
14172 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
14173
14174         * MAINTAINERS (Write After Approval): Add Pedro Franco de
14175         Carvalho.
14176
14177 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
14178
14179         * symtab.c (find_pc_sect_line): fixed indentation.
14180
14181 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
14182
14183         * symtab.c (find_pc_sect_line): now uses binary search.
14184
14185 2018-03-19  Tom Tromey  <tom@tromey.com>
14186
14187         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
14188         "IDENT" production.
14189
14190 2018-03-19  Pedro Alves  <palves@redhat.com>
14191             Tom Tromey  <tom@tromey.com>
14192
14193         * unittests/observable-selftests.c: New file.
14194         * common/observable.h: New file.
14195         * observable.h: New file.
14196         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
14197         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
14198         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
14199         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
14200         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
14201         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
14202         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
14203         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
14204         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
14205         python/py-breakpoint.c, python/py-finishbreakpoint.c,
14206         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
14207         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
14208         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
14209         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
14210         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
14211         tui/tui-interp.c, valops.c: Update all users.
14212         * tui/tui-hooks.c (tui_bp_created_observer)
14213         (tui_bp_deleted_observer, tui_bp_modified_observer)
14214         (tui_inferior_exit_observer, tui_before_prompt_observer)
14215         (tui_normal_stop_observer, tui_register_changed_observer):
14216         Remove.
14217         (tui_observers_token): New global.
14218         (attach_or_detach, tui_attach_detach_observers): New functions.
14219         (tui_install_hooks, tui_remove_hooks): Use
14220         tui_attach_detach_observers.
14221         * record-btrace.c (record_btrace_thread_observer): Remove.
14222         (record_btrace_thread_observer_token): New global.
14223         * observer.sh: Remove.
14224         * observer.c: Rename to observable.c.
14225         * observable.c (namespace gdb_observers): Define new objects.
14226         (observer_debug): Move into gdb_observers namespace.
14227         (struct observer, struct observer_list, xalloc_observer_list_node)
14228         (xfree_observer_list_node, generic_observer_attach)
14229         (generic_observer_detach, generic_observer_notify): Remove.
14230         (_initialize_observer): Update.
14231         Don't include observer.inc.
14232         * Makefile.in (generated_files): Remove observer.h, observer.inc.
14233         (clean mostlyclean): Likewise.
14234         (observer.h, observer.inc): Remove targets.
14235         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14236         (COMMON_SFILES): Use observable.c, not observer.c.
14237         * .gitignore: Remove observer.h.
14238
14239 2018-03-18  Tom Tromey  <tom@tromey.com>
14240
14241         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14242         gdb::def_vector.
14243         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14244
14245 2018-03-17  Tom Tromey  <tom@tromey.com>
14246
14247         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14248
14249 2018-03-17  Tom Tromey  <tom@tromey.com>
14250
14251         * target.c (class scoped_target_fd): New.
14252         (target_fileio_close_cleanup): Remove.
14253         (target_fileio_read_alloc_1): Use scoped_target_fd.
14254
14255 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14256
14257         * silent-rules.mk: New.
14258         * Makefile.in: Include silent-rules.mk
14259         (srcdir, VPATH, top_srcdir): Move up.
14260         (COMPILE): Add ECHO_CXX.
14261         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14262         (init.c): Add ECHO_INIT_C.
14263         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14264         (version.c): Add ECHO_GEN.
14265         (printcmd.o): Add ECHO_CXX.
14266         (target-float.o): Add ECHO_CXX.
14267         (ada-exp.o): Add ECHO_CXX.
14268         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14269         (insight$(EXEEXT)): Add ECHO_CXXLD.
14270         * gnulib/configure.ac: Add AM_SILENT_RULES.
14271         * gnulib/aclocal.m4: Re-generate.
14272         * gnulib/configure: Re-generate.
14273         * gnulib/import/Makefile.in: Re-generate.
14274
14275 2018-03-16  Tom Tromey  <tom@tromey.com>
14276
14277         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14278         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14279         * utils.c (do_free_section_addr_info)
14280         (make_cleanup_free_section_addr_info): Remove.
14281         * symfile.h (struct other_sections): Add constructor.
14282         (struct section_addr_info): Remove.
14283         (section_addr_info): New typedef.
14284         (struct sym_fns) <sym_offsets>: Change type of parameter.
14285         (build_section_addr_info_from_objfile)
14286         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14287         (default_symfile_offsets, symbol_file_add)
14288         (symbol_file_add_from_bfd)
14289         (build_section_addr_info_from_section_table): Update.
14290         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14291         * symfile.c (alloc_section_addr_info): Remove.
14292         (build_section_addr_info_from_section_table): Change return type.
14293         Update.
14294         (build_section_addr_info_from_bfd)
14295         (build_section_addr_info_from_objfile): Likewise.
14296         (free_section_addr_info): Remove.
14297         (relative_addr_info_to_section_offsets): Change type of "addrs".
14298         (addrs_section_compar): Now a std::sort comparator.
14299         (addrs_section_sort): Change return type.
14300         (addr_info_make_relative): Change type of "addrs".  Update.
14301         (default_symfile_offsets, syms_from_objfile_1)
14302         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14303         (symbol_file_add_separate): Update.
14304         (symbol_file_add): Change type of "addrs".  Update.
14305         (add_symbol_file_command): Update.  Remove cleanups.
14306         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14307         cleanups.
14308         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14309         * solib.c (solib_read_symbols): Update.
14310         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14311         * machoread.c (macho_symfile_offsets): Update.
14312         * jit.c (jit_bfd_try_read_symtab): Update.
14313
14314 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14315
14316         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14317         unittests/utils-selftests.c.
14318         * unittests/utils-selftests.c: New file.
14319
14320 2018-03-14  Tom Tromey  <tom@tromey.com>
14321
14322         PR cli/14977:
14323         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14324         for NULL.
14325
14326 2018-03-14  Tom Tromey  <tom@tromey.com>
14327
14328         PR cli/19918:
14329         * printcmd.c (printf_pointer): Allow "-" in format.
14330
14331 2018-03-14  Tom Tromey  <tom@tromey.com>
14332
14333         * printcmd.c (_initialize_printcmd): Add usage to printf.
14334
14335 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14336
14337         * MAINTAINERS: Update my email address.
14338
14339 2018-03-13  Tom Tromey  <tom@tromey.com>
14340
14341         * machoread.c (macho_check_dsym): Change filenamep to a
14342         std::string*.
14343         (macho_symfile_read): Update.
14344         * symfile.c (load_command): Use std::string.
14345
14346 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14347
14348         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14349         to error message string.
14350         (riscv_register_name): Use xsnprintf instead of sprintf.
14351         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14352         internal_error.
14353         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14354         error.
14355         (riscv_push_dummy_call): Likewise.
14356
14357 2018-03-12  Tom Tromey  <tom@tromey.com>
14358
14359         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14360         Use gdb::byte_vector.
14361         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14362
14363 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14364
14365         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14366         parameter type to readable_regcache.
14367         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14368         the declaration.
14369
14370 2018-03-11  Tom Tromey  <tom@tromey.com>
14371
14372         * dwarf2read.c (struct nextfield): Add initializers.
14373         (struct nextfnfield): Remove.
14374         (struct fnfieldlist): Add initializers.  Remove "length" and
14375         "head", use std::vector.
14376         (struct decl_field_list): Remove.
14377         (struct field_info): Add initializers.
14378         <fields, baseclasses>: Now std::vector.
14379         <nbaseclasses, nfnfields, typedef_field_list_count,
14380         nested_types_list_count>: Remove.
14381         (dwarf2_add_field, dwarf2_add_type_defn)
14382         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14383         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14384         (process_structure_scope): Update.
14385
14386 2018-03-11  Tom Tromey  <tom@tromey.com>
14387
14388         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14389         for use by std::sort.
14390         (build_type_psymtabs_1): Use std::vector.
14391
14392 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14393
14394         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14395         and LIBMPFR in the printed configuration.
14396
14397 2018-03-08  Tom Tromey  <tom@tromey.com>
14398
14399         * source.c (get_filename_and_charpos): Use scoped_fd.
14400         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14401         (procfs_pidlist): Likewise.
14402         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14403         (iterate_over_mappings): Likewise.
14404
14405 2018-03-08  Tom Tromey  <tom@tromey.com>
14406
14407         * infcall.c (struct call_return_meta_info)
14408         <stack_temporaries_enabled>: Remove.
14409         (get_call_return_value, call_function_by_hand_dummy): Update.
14410         * thread.c (disable_thread_stack_temporaries): Remove.
14411         (enable_thread_stack_temporaries): Remove.
14412         (thread_stack_temporaries_enabled_p): Return bool.
14413         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14414         (get_last_thread_stack_temporary): Update.
14415         * eval.c (evaluate_subexp): Update.
14416         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14417         class, not a function.
14418         (value_ptr, value_vec): Remove typedefs.
14419         (class thread_info) <stack_temporaries_enabled>: Now bool.
14420         <stack_temporaries>: Now a std::vector.
14421         (thread_stack_temporaries_enabled_p)
14422         (value_in_thread_stack_temporaries): Return bool.
14423
14424 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14425
14426         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14427         (getpkt_or_notif_sane_1): Likewise.
14428
14429 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14430
14431         * build-id.c (build_id_to_debug_bfd): Use std::string.
14432
14433 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14434
14435         * build-id.c (find_separate_debug_file_by_buildid): Return
14436         std::string.
14437         * build-id.h (find_separate_debug_file_by_buildid): Return
14438         std::string.
14439         * coffread.c (coff_symfile_read): Adjust to std::string.
14440         * elfread.c (elf_symfile_read): Adjust to std::string.
14441         * symfile.c (separate_debug_file_exists): Change parameter to
14442         std::string.
14443         (find_separate_debug_file): Return std::string.
14444         (find_separate_debug_file_by_debuglink): Return std::string.
14445         * symfile.h (find_separate_debug_file_by_debuglink): Return
14446         std::string.
14447
14448 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14449
14450         * common/xml-utils.c (xml_escape_text): Move code to...
14451         (xml_escape_text_append): ... this new function.
14452         * common/xml-utils.h (xml_escape_text_append): New declaration.
14453         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14454         New function.
14455         (_initialize_xml_utils): register test_xml_escape_text_append as
14456         a selftest.
14457
14458 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14459
14460         * defs.h: Remove MAX_REGISTER_SIZE.
14461         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14462         asserts.
14463         * python/py-unwind.c (pyuw_sniffer): Likewise.
14464
14465 2018-03-07  Tom Tromey  <tom@tromey.com>
14466
14467         * linux-tdep.c (linux_info_proc): Update.
14468         * target.h (struct target_ops) <to_fileio_readlink>: Return
14469         optional<string>.
14470         (target_fileio_readlink): Return optional<string>.
14471         * remote.c (remote_hostio_readlink): Return optional<string>.
14472         * inf-child.c (inf_child_fileio_readlink): Return
14473         optional<string>.
14474         * target.c (target_fileio_readlink): Return optional<string>.
14475
14476 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14477
14478         * regcache.c (cooked_read_test): Add riscv to the list of
14479         architectures that have a save_reggroup.
14480
14481 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14482
14483         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14484         value is not a dynamic class object.
14485
14486 2018-03-06  Tom Tromey  <tom@tromey.com>
14487
14488         * rust-exp.y: Formatting fixes.
14489
14490 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14491
14492         * riscv-tdep.c (riscv_register_name): Remove target description
14493         support.
14494         (riscv_gdbarch_init): Remove target description check.
14495
14496 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14497
14498         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14499         comment.
14500         * riscv-tdep.h: Likewise.
14501
14502 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14503
14504         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14505         (riscv_pseudo_register_write): Delete.
14506         (riscv_gdbarch_init): Remove all use of pseudo registers.
14507
14508 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14509
14510         * record-btrace.c (btrace_print_lines): Replace cleanup
14511         parameter with RAII equivalents.
14512         (btrace_insn_history): Replace cleanup with RAII equivalents.
14513         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14514         make_cleanup_ui_out_tuple_begin_end): Remove.
14515         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14516         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14517         make_cleanup_ui_out_list_begin_end): Remove.
14518
14519 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14520
14521         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14522         parameter types to std::vector.  Use bool.
14523         (record_btrace_wait): Replace VEC(tp_t) with
14524         std::vector<thread_info *>.
14525         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14526
14527 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14528
14529         * record-btrace.c (record_btrace_disable_callback): Remove.
14530         (struct scoped_btrace_disable): New.
14531         (record_btrace_open): Use scoped_btrace_disable.
14532
14533 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14534
14535         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14536         reading values from registers.
14537
14538 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14539
14540         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14541         where appropriate.
14542
14543 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14544
14545         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14546         change parameter type.  Use GDB's print functions, and use
14547         core_addr_to_string where appropriate.
14548         (riscv_push_dummy_call): Use core_addr_to_string where
14549         appropriate, update call to riscv_print_arg_location, and reindent
14550         a few lines.
14551         (riscv_return_value): Update call to riscv_print_arg_location.
14552
14553 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14554             Tim Newsome <tim@sifive.com>
14555             Albert Ou <a0u@eecs.berkeley.edu>
14556             Darius Rad <darius@bluespec.com>
14557
14558         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14559         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14560         (ALLDEPFILES): Add riscv-tdep.c
14561         * configure.tgt: Add riscv support.
14562         * riscv-tdep.c: New file.
14563         * riscv-tdep.h: New file.
14564         * NEWS: Mention new target.
14565         * MAINTAINERS: Add entry for riscv.
14566
14567 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14568
14569         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14570         fields within aggregates.
14571
14572 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14573
14574         * record-btrace.c (btrace_print_lines): Change type of flags to
14575         gdb_disassembly_flags.
14576
14577 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14578
14579         * fbsd-nat.c: Include "inf-ptrace.h".
14580         (USE_SIGTRAP_SIGINFO): Conditionally define.
14581         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14582         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14583         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14584         function.
14585         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14586         Likewise.
14587         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14588         Likewise.
14589         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14590         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14591         "supports_stopped_by_hw_breakpoint" target methods.
14592
14593 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14594
14595         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14596         * fbsd-nat.c (debug_fbsd_nat): New variable.
14597         (show_fbsd_nat_debug): New function.
14598         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14599         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14600
14601 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14602
14603         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14604         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14605         prototype.
14606         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14607         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14608         method.
14609
14610 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14611
14612         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14613         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14614
14615 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14616
14617         * charset.c (struct charset_vector): New.
14618         (charsets): Change type to charset_vector.
14619         (find_charset_names): Adjust.
14620         (add_one): Adjust.
14621         (_initialize_charset): Adjust.
14622
14623 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14624
14625         * progspace.h (struct program_space) <deleted_solibs>: Change
14626         type to std::vector<std::string>.
14627         * progspace.c (clear_program_space_solib_cache): Adjust.
14628         * breakpoint.c (print_solib_event): Adjust.
14629         (check_status_catch_solib): Adjust.
14630         * solib.c (update_solib_list): Adjust.
14631         * ui-out.h (class ui_out) <field_string>: New overload.
14632         * ui-out.c (ui_out::field_string): New overload.
14633
14634 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14635
14636         * progspace.h (struct program_space): Add constructor and
14637         destructor, initialize fields.
14638         (add_program_space): Remove.
14639         * progspace.c (add_program_space): Rename to...
14640         (program_space::program_space): ... this.
14641         (release_program_space): Rename to...
14642         (program_space::~program_space): ... this.
14643         (delete_program_space): Use delete to delete program_space.
14644         (initialize_progspace): Use new to allocate program_space.
14645         * inferior.c (add_inferior_with_spaces): Likewise.
14646         (clone_inferior_command): Likewise.
14647         * infrun.c (follow_fork_inferior): Likewise.
14648         (handle_vfork_child_exec_or_exit): Likewise.
14649
14650 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14651
14652         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14653         (delim_string_to_char_ptr_vec): Return std::vector of
14654         gdb::unique_xmalloc_ptr.
14655         (dirnames_to_char_ptr_vec_append): Take std::vector of
14656         gdb::unique_xmalloc_ptr.
14657         (dirnames_to_char_ptr_vec): Return std::vector of
14658         gdb::unique_xmalloc_ptr.
14659         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14660         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14661         (delim_string_to_char_ptr_vec): Return an std::vector of
14662         gdb::unique_xmalloc_ptr, adjust the code.
14663         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14664         gdb::unique_xmalloc_ptr, adjust the code.
14665         (dirnames_to_char_ptr_vec): Return an std::vector of
14666         gdb::unique_xmalloc_ptr, adjust the code.
14667         * auto-load.c (auto_load_safe_path_vec): Change type to
14668         std::vector of gdb::unique_xmalloc_ptr.
14669         (auto_load_expand_dir_vars): Return an std::vector of
14670         gdb::unique_xmalloc_ptr, adjust the code.
14671         (auto_load_safe_path_vec_update): Adjust.
14672         (filename_is_in_auto_load_safe_path_vec): Adjust.
14673         (auto_load_objfile_script_1): Adjust.
14674         * build-id.c (build_id_to_debug_bfd): Adjust.
14675         * linux-thread-db.c (thread_db_load_search): Adjust.
14676         * source.c (add_path): Adjust.
14677         (openp): Adjust.
14678         * symfile.c (find_separate_debug_file): Adjust.
14679         * utils.c (do_free_char_ptr_vec): Remove.
14680         (make_cleanup_free_char_ptr_vec): Remove.
14681
14682 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14683
14684         PR gdb/22907
14685         * common/pathstuff.c: Conditionally include "<windows.h>".
14686
14687 2018-03-01  Georg Sauthoff  <mail@georg.so>
14688
14689         PR gdb/22888
14690         * gcore.in: Quote variables and switch interpreter to bash.
14691
14692 2018-03-01  Tom Tromey  <tom@tromey.com>
14693
14694         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14695         assertion.  Add assertion for discriminant_index.
14696         (quirk_rust_enum): Use correct base type name in univariant case.
14697
14698 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14699
14700         * record.c (get_call_history_modifiers): Return a
14701         record_print_flags.
14702         (cmd_record_call_history): Adjust.
14703         * record-btrace.c (record_btrace_call_history): Adjust.
14704         (record_btrace_call_history_range): Adjust.
14705         (record_btrace_call_history_from): Adjust.
14706         * target-debug.h (target_debug_print_record_print_flags): New.
14707         * target-delegates.c: Re-generate.
14708         * target.c (target_call_history): Change flags type.
14709         (target_call_history_from): Likewise.
14710         (target_call_history_range): Likewise.
14711         * target.h (struct target_ops) <target_call_history>: Likewise.
14712         (target_call_history_from): Likewise.
14713         (target_call_history_range): Likewise.
14714
14715 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14716             Simon Marchi  <simon.marchi@polymtl.ca>
14717
14718         * common/common-utils.c: Include "sys/stat.h".
14719         (is_regular_file): Move here from "source.c"; change return
14720         type to "bool".
14721         * common/common-utils.h (is_regular_file): New prototype.
14722         * common/pathstuff.c (contains_dir_separator): New function.
14723         * common/pathstuff.h (contains_dir_separator): New prototype.
14724         * source.c: Don't include "sys/stat.h".
14725         (is_regular_file): Move to "common/common-utils.c".
14726
14727 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14728
14729         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14730         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14731         * auto-load.c: Include "common/pathstuff.h".
14732         * common/common-def.h (current_directory): Move here.
14733         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14734         function.
14735         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14736         prototype.
14737         * common/pathstuff.c: New file.
14738         * common/pathstuff.h: New file.
14739         * compile/compile.c: Include "common/pathstuff.h".
14740         * defs.h (current_directory): Move to "common/common-defs.h".
14741         * dwarf2read.c: Include "common/pathstuff.h".
14742         * exec.c: Likewise.
14743         * guile/scm-safe-call.c: Likewise.
14744         * linux-thread-db.c: Likewise.
14745         * main.c: Likewise.
14746         * nto-tdep.c: Likewise.
14747         * objfiles.c: Likewise.
14748         * source.c: Likewise.
14749         * symtab.c: Likewise.
14750         * utils.c: Include "common/pathstuff.h".
14751         (gdb_realpath): Move to "common/pathstuff.c".
14752         (gdb_realpath_keepfile): Likewise.
14753         (gdb_abspath): Likewise.
14754         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14755         (gdb_realpath_keepfile): Likewise.
14756         (gdb_abspath): Likewise.
14757
14758 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14759
14760         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14761         wildcard process pid for super_resume for kernels with a
14762         specific bug.
14763
14764 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14765
14766         * compile/compile.c (get_args): Add additional comments
14767         explaining function.
14768
14769 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14770             Tom Tromey  <tom@tromey.com>
14771
14772         * target.h (memory_write_request_s): Remove typedef.  Don't define
14773         VEC.
14774         (target_write_memory_blocks): Change argument to std::vector.
14775         (struct memory_write_request): Add constructor.
14776         * target-memory.c (compare_block_starting_address): Return bool.
14777         Change argument types.
14778         (claim_memory): Change arguments to use std::vector.
14779         (split_regular_and_flash_blocks, blocks_to_erase)
14780         (compute_garbled_blocks): Likewise.
14781         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14782         (target_write_memory_blocks): Change argument to std::vector.
14783         * symfile.c (struct load_section_data): Add constructor and
14784         destructor.  Use std::vector for "requests".
14785         (struct load_progress_data): Add initializers.
14786         (load_section_callback): Update.  Use "new".
14787         (clear_memory_write_data): Remove.
14788         (generic_load): Update.
14789
14790 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14791
14792         * arch/aarch64.h: Use common/tdesc.h.
14793
14794 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14795
14796         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14797         architecture with a 64-bit ABI.
14798
14799 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14800
14801         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14802         ahead of target description loading.
14803
14804 2018-02-26  Tom Tromey  <tom@tromey.com>
14805
14806         * stack.c (backtrace_command_1): Update.
14807         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14808         of "flags".
14809         * python/py-framefilter.c (py_print_frame)
14810         (gdbpy_apply_frame_filter): Change type of "flags".
14811         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14812         of "flags".
14813         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14814         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14815         * extension.h (enum frame_filter_flag): Rename from
14816         frame_filter_flags.
14817         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14818         (apply_ext_lang_frame_filter): Change type of "flags".
14819         * extension.c (apply_ext_lang_frame_filter): Change type of
14820         "flags".
14821         * extension-priv.h (struct extension_language_ops)
14822         <apply_frame_filter>: Change type of "flags".
14823
14824 2018-02-26  Tom Tromey  <tom@tromey.com>
14825
14826         PR python/16497:
14827         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14828         off-by-one in py_end computation.
14829         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14830         PRINT_MORE_FRAMES.
14831         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14832         constant.
14833
14834 2018-02-26  Tom Tromey  <tom@tromey.com>
14835
14836         * dwarf2read.c (struct variant_field): New.
14837         (struct nextfield) <variant>: New field.
14838         (dwarf2_add_field): Handle DW_TAG_variant_part.
14839         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14840         discriminated union.
14841         (read_structure_type): Handle DW_TAG_variant_part.
14842         (handle_struct_member_die): New function, extracted from
14843         process_structure_scope.  Handle DW_TAG_variant.
14844         (process_structure_scope): Handle discriminated unions.  Call
14845         handle_struct_member_die.
14846
14847 2018-02-26  Tom Tromey  <tom@tromey.com>
14848
14849         * rust-lang.h (rust_last_path_segment): Declare.
14850         * rust-lang.c (rust_last_path_segment): Now public.  Change
14851         contract.
14852         (struct disr_info): Remove.
14853         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14854         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14855         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14856         (rust_enum_p, rust_enum_variant): New function.
14857         (rust_underscore_fields): Remove "offset" parameter.
14858         (rust_print_enum): New function.
14859         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14860         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14861         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14862         enums.
14863         (rust_internal_print_type): New function, from rust_print_type.
14864         Remove enum code.
14865         (rust_print_type): Call rust_internal_print_type.
14866         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14867         Update enum handling.
14868         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14869         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14870         (rust_union_quirks): New functions.
14871         (process_full_comp_unit, process_full_type_unit): Call
14872         rust_union_quirks.
14873         (process_structure_scope): Update rust_unions if necessary.
14874
14875 2018-02-26  Tom Tromey  <tom@tromey.com>
14876
14877         * value.h (value_union_variant): Declare.
14878         * valops.c (value_union_variant): New function.
14879         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14880         (struct discriminant_info): New.
14881         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14882         enumerator.
14883         (struct main_type) <flag_discriminated_union>: New field.
14884
14885 2018-02-26  Tom Tromey  <tom@tromey.com>
14886
14887         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14888         unittests/unpack-selftests.c.
14889         * unittests/unpack-selftests.c: New file.
14890         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14891
14892 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14893
14894         * dwarf2read.c (struct partial_die_info) <read>: New method.
14895         (read_partial_die): Remove the declaration.
14896         (load_partial_dies): Update.
14897         (partial_die_info::partial_die_info):
14898         (read_partial_die): Change it to partial_die_info::read.
14899
14900 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14901
14902         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14903         (fixup_partial_die): Remove declaration.
14904         (scan_partial_symbols): Update.
14905         (partial_die_parent_scope): Likewise.
14906         (partial_die_full_name): Likewise.
14907         (fixup_partial_die): Change it to partial_die_info::fixup.
14908
14909 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14910
14911         * dwarf2read.c (read_partial_die): Update the declaration.
14912         (load_partial_dies): Caller update.
14913         (read_partial_die): Remove one argument abbrev_len.
14914
14915 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14916
14917         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14918         assignment operator.
14919         (load_partial_dies): Use ctor and copy ctor.
14920         (read_partial_die): Update.
14921         (dwarf2_cu::find_partial_die): Use ctor.
14922
14923 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14924
14925         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14926         (find_partial_die_in_comp_unit): Change it to
14927         dwarf2_cu::find_partial_die.
14928         (find_partial_die): Update.
14929
14930 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14931
14932         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14933         is NULL.
14934
14935 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14936
14937         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14938
14939 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14940
14941         * arch/amd64.h: Use common/tdesc.h.
14942         * arch/i386.c: Likewise.
14943         * arch/i386.h: Likewise.
14944         * arch/tic6x.c: Likewise.
14945         * arch/tdesc.h: Move file from here...
14946         * common/tdesc.h: ...to here.
14947         * features/aarch64-core.c: Regenerate.
14948         * features/aarch64-fpu.c: Regenerate.
14949         * features/i386/32bit-avx.c: Regenerate.
14950         * features/i386/32bit-avx512.c: Regenerate.
14951         * features/i386/32bit-core.c: Regenerate.
14952         * features/i386/32bit-linux.c: Regenerate.
14953         * features/i386/32bit-mpx.c: Regenerate.
14954         * features/i386/32bit-pkeys.c: Regenerate.
14955         * features/i386/32bit-sse.c: Regenerate.
14956         * features/i386/64bit-avx.c: Regenerate.
14957         * features/i386/64bit-avx512.c: Regenerate.
14958         * features/i386/64bit-core.c: Regenerate.
14959         * features/i386/64bit-linux.c: Regenerate.
14960         * features/i386/64bit-mpx.c: Regenerate.
14961         * features/i386/64bit-pkeys.c: Regenerate.
14962         * features/i386/64bit-segments.c: Regenerate.
14963         * features/i386/64bit-sse.c: Regenerate.
14964         * features/i386/x32-core.c: Regenerate.
14965         * features/tic6x-c6xp.c: Regenerate.
14966         * features/tic6x-core.c: Regenerate.
14967         * features/tic6x-gp.c: Regenerate.
14968         * target-descriptions.c: Use common/tdesc.h.
14969         * target-descriptions.h: Likewise.
14970
14971 2018-02-24  Tom Tromey  <tom@tromey.com>
14972
14973         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14974         (try_thread_db_load_from_dir, thread_db_load_search): Use
14975         std::string.
14976         (info_auto_load_libthread_db_compare): Return bool.  Change
14977         argument types.
14978         (info_auto_load_libthread_db): Use std::vector, std::string.
14979         Remove cleanups.
14980
14981 2018-02-24  Tom Tromey  <tom@tromey.com>
14982
14983         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14984         std::string.
14985         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14986         std::string*.
14987         * gdbarch.c: Rebuild.
14988         * gdbarch.h: Rebuild.
14989         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14990         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14991         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14992         std::string*.
14993
14994 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14995
14996         * gdbtypes.h (sect_offset): Change type to uint64_t.
14997         (sect_offset_str): New function.
14998         * dwarf2read.c (create_addrmap_from_aranges): Use
14999         sect_offset_str.
15000         (error_check_comp_unit_head): Likewise.
15001         (create_debug_type_hash_table): Likewise.
15002         (read_cutu_die_from_dwo): Likewise.
15003         (init_cutu_and_read_dies): Likewise.
15004         (init_cutu_and_read_dies_no_follow): Likewise.
15005         (process_psymtab_comp_unit_reader): Likewise.
15006         (partial_die_parent_scope): Likewise.
15007         (peek_die_abbrev): Likewise.
15008         (process_queue): Likewise.
15009         (dwarf2_physname): Likewise.
15010         (read_namespace_alias): Likewise.
15011         (read_import_statement): Likewise.
15012         (create_dwo_cu_reader): Likewise.
15013         (create_cus_hash_table): Likewise.
15014         (lookup_dwo_cutu): Likewise.
15015         (inherit_abstract_dies): Likewise.
15016         (read_func_scope): Likewise.
15017         (read_call_site_scope): Likewise.
15018         (dwarf2_add_member_fn): Likewise.
15019         (read_common_block): Likewise.
15020         (read_module_type): Likewise.
15021         (read_typedef): Likewise.
15022         (read_subrange_type): Likewise.
15023         (load_partial_dies): Likewise.
15024         (read_partial_die): Likewise.
15025         (find_partial_die): Likewise.
15026         (read_str_index): Likewise.
15027         (dwarf2_string_attr): Likewise.
15028         (build_error_marker_type): Likewise.
15029         (lookup_die_type): Likewise.
15030         (dump_die_shallow): Likewise.
15031         (follow_die_ref): Likewise.
15032         (dwarf2_fetch_die_loc_sect_off): Likewise.
15033         (dwarf2_fetch_constant_bytes): Likewise.
15034         (follow_die_sig): Likewise.
15035         (get_signatured_type): Likewise.
15036         (get_DW_AT_signature_type): Likewise.
15037         (dwarf2_find_containing_comp_unit): Likewise.
15038         (set_die_type): Likewise.
15039
15040 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
15041
15042         * arch/aarch64.c: Include "common-defs.h".
15043         * arch/amd64.c: Likewise.
15044         * arch/i386.c: Likewise.
15045
15046 2018-02-21  Tom Tromey  <tom@tromey.com>
15047
15048         * value.h: (extract_field_op): Update.
15049         * eval.c (extract_field_op): Return a const char *.
15050         * expression.h (parse_expression_for_completion): Update.
15051         * completer.c (complete_expression): Update.
15052         (add_struct_fields): Make fieldname const.
15053         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
15054         (mark_completion_tag, parse_exp_in_context_1): Update.
15055         (parse_expression_for_completion): Change "name" to
15056         unique_xmalloc_ptr*.
15057
15058 2018-02-21  Tom Tromey  <tom@tromey.com>
15059
15060         * infcall.c (call_function_by_hand_dummy): Use std::vector.
15061
15062 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15063
15064         * avr-tdep.c (avr_read_pc): Change parameter type to
15065         readable_regcache.
15066         * gdbarch.sh (read_pc): Likewise.
15067         * gdbarch.c: Re-generated.
15068         * gdbarch.h: Re-generated.
15069         * hppa-tdep.c (hppa_read_pc): Change parameter type to
15070         readable_regcache.
15071         * ia64-tdep.c (ia64_read_pc): Likewise.
15072         * mips-tdep.c (mips_read_pc): Likewise.
15073         * spu-tdep.c (spu_read_pc): Likewise.
15074
15075 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15076
15077         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
15078         * regcache-dump.c: New file.
15079         * regcache.c: Move register_dump to regcache-dump.c.
15080         (maintenance_print_registers): Likewise.
15081         (maintenance_print_raw_registers): Likewise.
15082         (maintenance_print_cooked_registers): Likewise.
15083         (maintenance_print_register_groups): Likewise.
15084         (maintenance_print_remote_registers): Likewise.
15085         (_initialize_regcache): Likewise.
15086         * regcache.h (register_dump): Moved from regcache.c.
15087
15088 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15089
15090         * regcache.c (regcache::regcache): Update.
15091         (regcache::invalidate): Move it to detached_regcache::invalidate.
15092         (get_thread_arch_aspace_regcache): Update.
15093         (regcache::raw_update): Update.
15094         (regcache::cooked_read): Remove some code.
15095         (regcache::cooked_read_value): Likewise.
15096         (regcache::raw_write): Remove assert on m_readonly_p.
15097         (regcache::raw_supply_integer): Move it to
15098         detached_regcache::raw_supply_integer.
15099         (regcache::raw_supply_zeroed): Likewise.
15100         * regcache.h (detached_regcache) <raw_supply_integer>: New
15101         declaration.
15102         <raw_supply_zeroed, invalidate>: Likewise.
15103         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
15104         <invalidate>: Likewise.
15105         <m_readonly_p>: Removed.
15106
15107 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15108
15109         * infcmd.c (get_return_value): Let stop_regs point to
15110         get_current_regcache.
15111         * regcache.c (regcache::regcache): Remove.
15112         (register_dump_reg_buffer): New class.
15113         (regcache_print): Adjust.
15114         * regcache.h (regcache): Remove constructors.
15115
15116 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15117
15118         * regcache.c (class register_dump): New class.
15119         (register_dump_regcache, register_dump_none): New class.
15120         (register_dump_remote, register_dump_groups): New class.
15121         (regcache_print): Update.
15122         * regcache.h (regcache_dump_what): Move it to regcache.c.
15123         (regcache) <dump>: Remove.
15124
15125 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15126
15127         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
15128          reg_buffer_rw *.
15129         (jit_unwind_reg_set_impl): Call raw_supply.
15130         (jit_frame_sniffer): Use reg_buffer_rw.
15131         * record-full.c (record_full_core_regbuf): Change its type.
15132         (record_full_core_open_1): Use reg_buffer_rw.
15133         (record_full_close): Likewise.
15134         (record_full_core_fetch_registers): Use regcache->raw_supply.
15135         (record_full_core_store_registers): Likewise.
15136         * regcache.c (regcache::get_register_status): Move it to
15137         reg_buffer.
15138         (regcache_raw_set_cached_value): Remove.
15139         (regcache::raw_set_cached_value): Remove.
15140         (regcache::raw_write): Call raw_supply.
15141         (regcache::raw_supply): Move it to reg_buffer_rw.
15142         * regcache.h (regcache_raw_set_cached_value): Remove.
15143         (reg_buffer_rw): New class.
15144
15145 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15146
15147         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
15148         readonly_detached_regcache.
15149         (dummy_frame_prev_register): Use regcache->cooked_read.
15150         * frame.c (frame_save_as_regcache): Change return type.
15151         (frame_pop): Update.
15152         * frame.h (frame_save_as_regcache): Update declaration.
15153         * inferior.h (get_infcall_suspend_state_regcache): Update
15154         declaration.
15155         * infrun.c (infcall_suspend_state) <registers>: use
15156         readonly_detached_regcache.
15157         (save_infcall_suspend_state): Don't use regcache_dup.
15158         (get_infcall_suspend_state_regcache): Change return type.
15159         * linux-fork.c (struct fork_info) <savedregs>: Change to
15160         readonly_detached_regcache.
15161         <pc>: New field.
15162         (fork_save_infrun_state): Don't use regcache_dup.
15163         (info_checkpoints_command): Adjust.
15164         * mi/mi-main.c (register_changed_p): Update declaration.
15165         (mi_cmd_data_list_changed_registers): Use
15166         readonly_detached_regcache.
15167         (register_changed_p): Change parameter type to
15168         readonly_detached_regcache.
15169         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
15170         readonly_detached_regcache.
15171         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
15172         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
15173         New.
15174         (regcache::save): Move it to reg_buffer.
15175         (regcache::restore): Change parameter type.
15176         (regcache_dup): Remove.
15177         * regcache.h (reg_buffer) <save>: New method.
15178         (readonly_detached_regcache): New class.
15179         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
15180         readonly_detached_regcache.
15181         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
15182
15183 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15184
15185         * frame.c (frame_save_as_regcache): Use regcache method save.
15186         (frame_pop): Use regcache method restore.
15187         * infrun.c (restore_infcall_suspend_state): Likewise.
15188         * linux-fork.c (fork_load_infrun_state): Likewise.
15189         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
15190         save.
15191         * regcache.c (regcache_save): Remove.
15192         (regcache::restore): More asserts.
15193         (regcache_cpy): Remove.
15194         * regcache.h (regcache_save): Remove the declaration.
15195         (regcache::restore): Move from private to public.
15196         Remove the friend declaration of regcache_cpy.
15197         (regcache_cpy): Remove declaration.
15198
15199 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15200
15201         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
15202         parameter type to 'readable_regcache *'.
15203         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15204         * arm-tdep.c (arm_neon_quad_read): Likewise.
15205         (arm_pseudo_read): Likewise.
15206         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15207         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15208         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15209         * gdbarch.c: Re-generated.
15210         * gdbarch.h: Re-generated.
15211         * gdbarch.sh (pseudo_register_read): Change parameter type to
15212         'readable_regcache *'.
15213         (pseudo_register_read_value): Likewise.
15214         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
15215         (h8300_pseudo_register_read): Likewise.
15216         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
15217         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15218         (i386_pseudo_register_read_into_value): Likewise.
15219         (i386_pseudo_register_read_value): Likewise.
15220         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
15221         declaration.
15222         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
15223         * m32c-tdep.c (m32c_raw_read): Likewise.
15224         (m32c_read_flg): Likewise.
15225         (m32c_banked_register): Likewise.
15226         (m32c_banked_read): Likewise.
15227         (m32c_sb_read): Likewise.
15228         (m32c_part_read): Likewise.
15229         (m32c_cat_read): Likewise.
15230         (m32c_r3r2r1r0_read): Likewise.
15231         (m32c_pseudo_register_read): Likewise.
15232         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15233         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15234         (mep_pseudo_cr64_read): Likewise.
15235         (mep_pseudo_register_read): Likewise.
15236         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15237         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15238         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15239         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15240         (regcache::cooked_read): Likewise.
15241         (regcache::cooked_read_value): Likewise.
15242         (regcache_cooked_read_signed):
15243         (regcache::cooked_read): Likewise.
15244         * regcache.h (readable_regcache): New class.
15245         (regcache): Inherit readable_regcache.  Move some methods to
15246         readable_regcache.
15247         * rl78-tdep.c (rl78_pseudo_register_read): Change
15248         parameter type to 'readable_regcache *'.
15249         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15250         (e500_pseudo_register_read): Change parameter type to
15251         'readable_regcache *'.
15252         (dfp_pseudo_register_read): Likewise.
15253         (vsx_pseudo_register_read): Likewise.
15254         (efpr_pseudo_register_read): Likewise.
15255         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15256         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15257         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15258         (sh64_pseudo_register_read): Likewise.
15259         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15260         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15261         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15262         (spu_pseudo_register_read): Likewise.
15263         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15264         (xtensa_pseudo_register_read): Likewise.
15265
15266 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15267
15268         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15269         (regcache::arch): Move it to reg_buffer::arch.
15270         (regcache::register_buffer): Likewise.
15271         (regcache::assert_regnum): Likewise.
15272         (regcache::num_raw_registers): Likewise.
15273         * regcache.h (reg_buffer): New class.
15274         (regcache): Inherit reg_buffer.
15275
15276 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15277
15278         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15279         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15280
15281 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15282
15283         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15284
15285 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15286
15287         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15288         (SFILES): Remove common/*.c files.
15289         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15290         * common/common.host: Add common reference.
15291         * configure.ac: Likewise.
15292         * configure: Regenerate.
15293
15294 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15295
15296         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15297         (block_initialize_namespace): Use new.
15298         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15299         (dwarf2_free_objfile): Use delete.
15300         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15301         (copy_type_recursive): Use new.
15302         * gdb_obstack.h (allocate_on_obstack): New.
15303
15304 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15305
15306         PR gdb/22849
15307         * inferior.c (exit_inferior_1): Reset inf->control.
15308
15309 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15310
15311         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15312         declaration.
15313
15314 2018-02-14  Pedro Alves  <palves@redhat.com>
15315
15316         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15317         frame_cleanup_after_sniffer on exception.
15318
15319 2018-02-14  Tom Tromey  <tom@tromey.com>
15320
15321         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15322         const.
15323         (solib_bfd_open): Make pathname const.
15324         * solib.c (solib_bfd_open): Make pathname const.
15325         * solib-spu.c (spu_bfd_fopen): Make name const.
15326         (spu_bfd_open): Make pathname const.
15327         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15328         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15329
15330 2018-02-14  Tom Tromey  <tom@tromey.com>
15331
15332         * symfile.c (symfile_bfd_open): Update.
15333         * source.h (openp, source_full_path_of, find_and_open_source):
15334         Change argument type to unique_xmalloc_ptr.
15335         * source.c (openp): Take a unique_xmalloc_ptr.
15336         (source_full_path_of, find_and_open_source): Likewise.
15337         (open_source_file, symtab_to_fullname): Update.
15338         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15339         unique_xmalloc_ptr.
15340         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15341         (exec_file_find): Update.
15342         * psymtab.c (psymtab_to_fullname): Update.
15343         * nto-tdep.h (nto_find_and_open_solib): Update.
15344         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15345         unique_xmalloc_ptr.
15346         * exec.c (exec_file_attach): Update.
15347         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15348         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15349
15350 2018-02-14  Tom Tromey  <tom@tromey.com>
15351
15352         * solib.c: Include source.h.
15353         * nto-tdep.c: Include source.h.
15354         * mi/mi-cmd-env.c: Include source.h.
15355         * infcmd.c: Include source.h.
15356         * exec.c: Include source.h.
15357         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15358         (add_path, directory_switch, source_path, init_source_path): Move
15359         declarations...
15360         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15361         (add_path, directory_switch, source_path, init_source_path):
15362         ...here.
15363
15364 2018-02-14  Tom Tromey  <tom@tromey.com>
15365
15366         * solist.h (exec_file_find, solib_find): Return
15367         unique_xmalloc_ptr.
15368         (solib_bfd_fopen): Take a const char *.
15369         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15370         (exec_file_find, solib_find): Likewise.
15371         (solib_bfd_fopen): Do not take ownership of "pathname".
15372         (solib_bfd_open): Use unique_xmalloc_ptr.
15373         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15374         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15375         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15376         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15377
15378 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15379
15380         * ada-lang.c (name_match_type_from_name): Remove reference to
15381         ada_name_for_lookup in function's documentation.
15382         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15383
15384 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15385
15386         * defs.h (enum openp_flags): New enum.
15387         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15388         Move to enum openp_flags.
15389         (openp_flags): New enum flags.
15390         (openp): Change parameter type to openp_flags.
15391         * source.c (openp): Change parameter type to openp_flags.
15392         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15393         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15394
15395 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15396
15397         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15398         per-command.
15399
15400 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15401
15402         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15403         into...
15404         (class dwarf2_queue_guard): ...the destructor of this new class.
15405         (dw2_do_instantiate_symtab): Create instance of the new class
15406         dwarf2_queue_guard, remove cleanup.
15407
15408 2018-02-09  Tom Tromey  <tom@tromey.com>
15409
15410         * source.c (find_source_lines): Don't reference past the end of
15411         the vector.
15412
15413 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15414
15415         * remote.c (remote_btrace_maybe_reopen): Change error message.
15416         * btrace.c (btrace_enable): Likewise.
15417         (parse_xml_btrace): Likewise.
15418         (parse_xml_btrace_conf): Likewise.
15419
15420 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15421
15422         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15423         (linux_enable_pt, linux_enable_bts): Call
15424         diagnose_perf_event_open_fail.
15425
15426 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15427
15428         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15429         Remove parameter and change return type.  Update callers.  Move it.
15430         (linux_enable_bts, linux_enable_pt): Improve error message.
15431         (linux_enable_pt): Remove zero buffer size check.
15432         (linux_enable_btrace): Improve error messages.  Remove NULL return
15433         check.
15434
15435 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15436
15437         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15438         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15439         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15440         (linux_supports_pt, linux_supports_btrace): Remove.
15441         (linux_enable_bts): Call cpu_supports_bts.
15442         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15443         * remote.c (remote_supports_btrace): Remove.
15444         (init_remote_ops): Remove remote_supports_btrace.
15445         * target-delegates.c: Regenerated.
15446         * target.c (target_supports_btrace): Remove.
15447         * target.h (target_ops) <to_supports_btrace>: Remove
15448         (target_supports_btrace): Remove.
15449         * x86-linux-nat.c (x86_linux_create_target): Remove
15450         linux_supports_btrace.
15451
15452 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15453
15454         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15455         btrace failed.
15456         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15457         exception and use message in own exception.
15458
15459 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15460
15461         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15462         (perf_event_pt_event_type): Use gdb_file_up.
15463         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15464         scoped_fd, and scoped_mmap.
15465
15466 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15467
15468         * common/scoped_mmap.h: New.
15469         * unittests/scoped_mmap-selftest.c: New.
15470         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15471         unittests/scoped_mmap-selftest.c.
15472
15473 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15474
15475         * common/scoped_fd.h: New.
15476         * unittests/scoped_fd-selftest.c: New.
15477         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15478         unittests/scoped_fd-selftest.c.
15479
15480 2018-02-09  Tom Tromey  <tom@tromey.com>
15481
15482         * auto-load.c (auto_load_section_scripts): Use
15483         gdb::unique_xmalloc_ptr.
15484
15485 2018-02-09  Tom Tromey  <tom@tromey.com>
15486
15487         * auto-load.c (execute_script_contents): Use std::string.
15488
15489 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15490
15491         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15492         Python function, rather than a new command.
15493
15494 2018-02-08  Tom Tromey  <tom@tromey.com>
15495
15496         * solib.c (solib_find_1): Use std::string.
15497         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15498
15499 2018-02-08  Tom Tromey  <tom@tromey.com>
15500
15501         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15502
15503 2018-02-08  Tom Tromey  <tom@tromey.com>
15504
15505         * source.c (find_source_lines): Use gdb::def_vector.
15506
15507 2018-02-08  Tom Tromey  <tom@tromey.com>
15508
15509         * macrocmd.c (struct temporary_macro_definition): New.
15510         (macro_define_command): Use temporary_macro_definition.  Remove
15511         cleanups.
15512         (free_macro_definition_ptr): Remove.
15513
15514 2018-02-08  Tom Tromey  <tom@tromey.com>
15515
15516         * macroexp.c (maybe_expand): Use std::string.
15517
15518 2018-02-08  Tom Tromey  <tom@tromey.com>
15519
15520         * macroexp.c (struct macro_buffer): Add initializers for some
15521         members.
15522         (init_buffer, init_shared_buffer, free_buffer)
15523         (free_buffer_return_text): Remove.
15524         (macro_buffer): New constructors.
15525         (~macro_buffer): New destructor.
15526         (macro_buffer::set_shared): New method.
15527         (macro_buffer::resize_buffer, macro_buffer::appendc)
15528         (macro_buffer::appendmem): Now methods, not free functions.
15529         (set_token, append_tokens_without_splicing, stringify)
15530         (macro_stringify): Update.
15531         (gather_arguments): Change return type.  Remove argc_p argument,
15532         add args_ptr argument.  Use std::vector.
15533         (substitute_args): Remove argc argument.  Accept std::vector.
15534         (expand): Update.  Use std::vector.
15535         (scan, macro_expand, macro_expand_next): Update.
15536
15537 2018-02-08  Tom Tromey  <tom@tromey.com>
15538
15539         * symtab.c (default_collect_symbol_completion_matches_break_on):
15540         Use unique_xmalloc_ptr.
15541         * macroscope.h: (sal_macro_scope, user_macro_scope)
15542         (default_macro_scope): Return unique_xmalloc_ptr.
15543         * macroscope.c (sal_macro_scope, user_macro_scope)
15544         (default_macro_scope): Return unique_xmalloc_ptr.
15545         * macroexp.h (macro_expand, macro_expand_once): Return
15546         unique_xmalloc_ptr.
15547         * macroexp.c (macro_expand, macro_expand_once): Return
15548         unique_xmalloc_ptr.
15549         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15550         (info_macro_command, info_macros_command): Use
15551         unique_xmalloc_ptr.
15552         * compile/compile-c-support.c (write_macro_definitions): Use
15553         unique_xmalloc_ptr.
15554         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15555
15556 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15557
15558         * value.c (value_static_field): Assign field type instead of
15559         containing type when returning an optimized out value.
15560
15561 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15562
15563         * ft32-tdep.c (ft32_read_pc): Remove.
15564         (ft32_write_pc): Remove.
15565         (ft32_gdbarch_init): Update.
15566         * m32r-tdep.c (m32r_read_pc): Remove.
15567         (m32r_gdbarch_init): Update.
15568         * mep-tdep.c (mep_read_pc): Remove.
15569         (mep_gdbarch_init): Update.
15570         * microblaze-tdep.c (microblaze_write_pc): Remove.
15571         (microblaze_gdbarch_init): Update.
15572         * mn10300-tdep.c (mn10300_read_pc): Remove.
15573         (mn10300_write_pc): Remove.
15574         (mn10300_gdbarch_init): Update.
15575         * moxie-tdep.c (moxie_read_pc): Remove.
15576         (moxie_write_pc): Remove.
15577         (moxie_gdbarch_init): Update.
15578
15579 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15580
15581         * expprint.c (print_subexp_standard): Handle
15582         OP_F77_UNDETERMINED_ARGLIST.
15583         (dump_subexp_body_standard): Likewise.
15584
15585 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15586
15587         * target-descriptions.c (tdesc_element_visitor) Add empty
15588         implementations.
15589         (tdesc_type): Move make_gdb_type from here.
15590         (tdesc_type_builtin): Likewise.
15591         (tdesc_type_vector): Likewise.
15592         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15593         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15594         (make_gdb_type_union): Likewise.
15595         (make_gdb_type_flags): Likewise.
15596         (make_gdb_type_enum): Likewise.
15597         (make_gdb_type): New function.
15598         (tdesc_register_type): Use static make_gdb_type.
15599
15600 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15601
15602         * infcmd.c (default_print_one_register_info): Align natural-format
15603         column values consistently one under another.
15604         (pad_to_column): New function.
15605
15606 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15607
15608         * dwarf2read.c (dwarf2_physname): Move commment.
15609
15610 2018-02-01  Leszek Swirski  <leszeks@google.com>
15611
15612         * varobj.c (varobj_formatted_print_options): Allow recursive
15613         pretty printing if pretty printing is enabled.
15614
15615 2018-02-01  Leszek Swirski  <leszeks@google.com>
15616
15617         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15618         names after a structop as a filename.
15619
15620 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15621
15622         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15623         (arm_record_coproc_data_proc): Likewise.
15624
15625 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15626
15627         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15628
15629 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15630
15631         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15632         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15633
15634 2018-01-31  Pedro Alves  <palves@redhat.com>
15635
15636         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15637         * inflow.c (child_terminal_save_inferior): Wrap reference to
15638         tcgetpgrp in HAVE_TERMIOS_H.
15639         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15640         _WIN32.
15641         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15642         always iterate over all inferiors.
15643         (gdbsim_cntrl_c): Adjust.
15644         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15645
15646 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15647
15648         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15649         index type is objfile-owned if the element type is as well.
15650
15651 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15652
15653         GDB 8.1 released.
15654
15655 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15656
15657         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15658         "features/s390x-linux64.c".
15659         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15660         s390_linux32 and s390x_linux64.
15661         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15662         default tdesc.
15663         * s390-tdep.c: Include "features/s390-linux32.c" and
15664         "features/s390x-linux64.c".
15665         (s390_tdesc_valid): Add check for tdesc_has_registers.
15666         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15667         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15668         tdesc_s390x_linux64.
15669         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15670         tdesc_s390x_linux64 to...
15671         * s390-tdep.h: ...here.
15672
15673 2018-01-30  Pedro Alves  <palves@redhat.com>
15674
15675         PR gdb/13211
15676         * config.in, configure: Regenerate.
15677         * configure.ac: Check for getpgid.
15678         * go32-nat.c (go32_pass_ctrlc): New.
15679         (go32_target): Install it.
15680         * inf-child.c (inf_child_target): Install
15681         child_terminal_save_inferior, child_pass_ctrlc and
15682         child_interrupt.
15683         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15684         (inf_ptrace_target): No longer install it.
15685         * infcmd.c (interrupt_target_1): Adjust.
15686         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15687         (child_interrupt): Declare.
15688         (inferior::terminal_state): New.
15689         * inflow.c (struct terminal_info): Update comments.
15690         (inferior_process_group): Delete.
15691         (terminal_is_ours): Delete.
15692         (gdb_tty_state): New.
15693         (child_terminal_init): Adjust.
15694         (is_gdb_terminal, sharing_input_terminal_1)
15695         (sharing_input_terminal): New functions.
15696         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15697         Set the process's actual process group in the foreground if
15698         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15699         mark terminal as the inferior's if not sharing GDB's terminal.
15700         Don't check attach_flag.
15701         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15702         pass down a target_terminal_state.
15703         (child_terminal_save_inferior): New, factored out from ...
15704         (child_terminal_ours_1): ... this.  Handle
15705         target_terminal_state::is_ours_for_output.
15706         (child_interrupt, child_pass_ctrlc): New.
15707         (inflow_inferior_exit): Clear the inferior's terminal_state.
15708         (copy_terminal_info): Copy the inferior's terminal state.
15709         (_initialize_inflow): Remove reference to terminal_is_ours.
15710         * inflow.h (inferior_process_group): Delete.
15711         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15712         * procfs.c (procfs_target): Don't install procfs_interrupt.
15713         (procfs_interrupt): Delete.
15714         * remote.c (remote_serial_quit_handler): Adjust.
15715         (remote_interrupt): Remove ptid parameter.  Adjust.
15716         * target-delegates.c: Regenerate.
15717         * target.c: Include "terminal.h".
15718         (target_terminal::terminal_state): Rename to ...
15719         (target_terminal::m_terminal_state): ... this.
15720         (target_terminal::init): Adjust.
15721         (target_terminal::inferior): Adjust to per-inferior
15722         terminal_state.
15723         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15724         (target_terminal::ours, target_terminal::ours_for_output): Use
15725         target_terminal_is_ours_kind.
15726         (target_interrupt): Remove ptid parameter.  Adjust.
15727         (default_target_pass_ctrlc): Adjust.
15728         * target.h (target_ops::to_terminal_save_inferior): New field.
15729         (target_ops::to_interrupt): Remove ptid_t parameter.
15730         (target_interrupt): Remove ptid_t parameter.  Update comment.
15731         (target_pass_ctrlc): Update comment.
15732         * target/target.h (target_terminal_state): New scoped enum,
15733         factored out of ...
15734         (target_terminal::terminal_state): ... here.
15735         (target_terminal::inferior): Update comments.
15736         (target_terminal::restore_inferior): New.
15737         (target_terminal::is_inferior, target_terminal::is_ours)
15738         (target_terminal::is_ours_for_output): Adjust.
15739         (target_terminal::scoped_restore_terminal_state): Adjust to
15740         rename, and call restore_inferior() instead of inferior().
15741         (target_terminal::scoped_restore_terminal_state::m_state): Change
15742         type.
15743         (target_terminal::terminal_state): Rename to ...
15744         (target_terminal::m_terminal_state): ... this and change type.
15745
15746 2018-01-30  Pedro Alves  <palves@redhat.com>
15747
15748         * linux-nat.c (wait_for_signal): New function.
15749         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15750         directly.
15751         (async_terminal_is_ours)
15752         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15753         (linux_nat_add_target): Don't override
15754         to_terminal_inferior/to_terminal_ours.
15755
15756 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15757
15758         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15759
15760 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15761
15762         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15763         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15764         dwarf2_per_objfile_free here.
15765         (dwarf2_per_objfile_free): Remove.
15766         (_initialize_dwarf2_read): Don't register
15767         dwarf2_per_objfile_free as a registry cleanup.
15768
15769 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15770
15771         Avoid compilation errors in MinGW native builds
15772
15773         The error is triggered by including python-internal.h, and the
15774         error message is:
15775
15776              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15777                       from build-gnulib/import/math.h:27,
15778                       from d:/usr/Python26/include/pyport.h:235,
15779                       from d:/usr/Python26/include/Python.h:58,
15780                       from python/python-internal.h:94,
15781                       from python/py-arch.c:24:
15782              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15783         using ::hypot;
15784                 ^~~~~
15785
15786         This happens because Python headers define 'hypot' to expand t
15787         '_hypot' in the Windows builds.
15788         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15789         'hypoth'.  This avoids a compilation error.
15790
15791 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15792
15793         * MAINTAINERS (Write After Approval): Fix ordering.
15794
15795 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15796
15797         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15798
15799 2018-01-26  Alan Modra  <amodra@gmail.com>
15800
15801         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15802         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15803         Remove nop.  Make const.  Comment.
15804         (powerpc32_plt_stub_so_2): New.
15805         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15806         Correct count.  Update uses.
15807         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15808         Move common code reading PLT entry word.  Correct
15809         powerpc32_plt_stub PLT address calculation.
15810         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15811         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15812         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15813         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15814         (ppc64_standard_linkage8): Likewise.
15815         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15816         Correct insns description.
15817         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15818
15819 2018-01-24  Pedro Alves  <palves@redhat.com>
15820
15821         GCC PR libstdc++/83906
15822         * gdbtypes.c (operator==(const dynamic_prop &,
15823         const dynamic_prop &)): New.
15824         (operator==(const range_bounds &, const range_bounds &)): New.
15825         (check_types_equal): Use them instead of memcmp.
15826         * gdbtypes.h (operator==(const dynamic_prop &,
15827         const dynamic_prop &)): Declare.
15828         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15829         (operator==(const range_bounds &, const range_bounds &)): Declare.
15830         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15831
15832 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15833
15834         * s390-linux-tdep.c (s390_record_address_mask)
15835         (s390_record_calc_disp_common, s390_record_calc_disp)
15836         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15837         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15838         (s390_process_record): Move to s390-tdep.c.
15839         (s390_linux_init_abi_any): Adjust.
15840         * s390-tdep.c (s390_record_address_mask)
15841         (s390_record_calc_disp_common, s390_record_calc_disp)
15842         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15843         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15844         (s390_process_record): Moved from s390-linux-tdep.c
15845         (s390_gdbarch_init): Adjust.
15846
15847 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15848
15849         * s390-linux-nat.c (s390-tdep.h): New include.
15850         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15851         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15852         (ALLDEPFILES): Add s390-tdep.c.
15853         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15854         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15855         * s390-tdep.h: ...this.  New file.
15856         * s390-linux-tdep.c (s390-tdep.h): New include.
15857         (_initialize_s390_tdep): Rename to...
15858         (_initialize_s390_linux_tdep): ...this and adjust.
15859         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15860         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15861         s390-tdep.h.
15862         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15863         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15864         (s390_is_partial_instruction, s390_software_single_step)
15865         (is_non_branch_ril, s390_displaced_step_copy_insn)
15866         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15867         (s390_prologue_data, s390_addr, s390_store, s390_load)
15868         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15869         (s390_register_call_saved, s390_guess_tracepoint_registers)
15870         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15871         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15872         (s390_pseudo_register_name, s390_pseudo_register_type)
15873         (s390_pseudo_register_read, s390_pseudo_register_write)
15874         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15875         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15876         (s390_addr_bits_remove, s390_address_class_type_flags)
15877         (s390_address_class_type_flags_to_name)
15878         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15879         (s390_function_arg_float, s390_function_arg_vector)
15880         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15881         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15882         (s390_frame_align, s390_register_return_value, s390_return_value)
15883         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15884         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15885         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15886         (s390_trad_frame_prev_register, s390_unwind_cache)
15887         (s390_prologue_frame_unwind_cache)
15888         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15889         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15890         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15891         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15892         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15893         (s390_frame_base_address, s390_local_base_address)
15894         (s390_frame_base, s390_gcc_target_options)
15895         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15896         (s390_validate_reg_range, s390_tdesc_valid)
15897         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15898         * s390-tdep.c: ...this.  New file.
15899
15900 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15901
15902         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15903         (s390_process_record, s390_gdbarch_tdep_alloc)
15904         (s390_linux_init_abi_any): Use/set new hook.
15905
15906 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15907
15908         * s390-linux-tdep.c (osabi.h): New include.
15909         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15910         (s390_linux_init_abi_any): New functions.
15911         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15912
15913 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15914
15915         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15916         tdesc_has_registers check
15917
15918 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15919
15920         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15921         (s390_validate_reg_range): New macro.
15922         (s390_gdbarch_init): Adjust.
15923
15924 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15925
15926         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15927         (s390_gdbarch_tdep_alloc): Adjust.
15928         (s390_gdbarch_init): Adjust.
15929
15930 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15931
15932         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15933         <have_tdb>: Change type to bool.
15934         (s390_gdbarch_tdep_alloc): Adjust.
15935         (s390_gdbarch_init): Adjust.
15936
15937 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15938
15939         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15940         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15941         (s390_gdbarch_tdep_alloc): New function.
15942         (s390_gdbarch_init): Allocate tdep at start and use its fields
15943         instead of separate variables.
15944
15945 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15946
15947         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15948         when looking for cached gdbarch and add comment for remaining.
15949
15950 2018-01-22  Pedro Alves  <palves@redhat.com>
15951             Sergio Durigan Junior  <sergiodj@redhat.com>
15952
15953         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15954         case.
15955
15956 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15957
15958         * MAINTAINERS: Update my company e-mail address.
15959
15960 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15961
15962         * regcache.c (cooked_write_test): New function.
15963         (_initialize_regcache): Register the test.
15964
15965 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15966
15967         * ia64-tdep.c (ia64_pseudo_register_read): Call
15968         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15969         * m32c-tdep.c (m32c_cat_read): Likewise.
15970         (m32c_r3r2r1r0_read): Likewise.
15971         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15972         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15973
15974 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15975
15976         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15977         method raw_read instead of regcache_raw_read.
15978         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15979         * arm-tdep.c (arm_neon_quad_read): Likewise.
15980         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15981         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15982         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15983         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15984         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15985         (i386_pseudo_register_read_into_value): Likewise.
15986         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15987         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15988         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15989         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15990         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15991         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15992         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15993         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15994         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15995
15996 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15997
15998         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15999         * configure.tgt: Remove target mt.
16000         * mt-tdep.c: Remove.
16001         * regcache.c (cooked_read_test): Remove the check for mt.
16002
16003 2018-01-22  Yao Qi  <yao.qi@linaro.org>
16004
16005         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
16006         instead of gdbarch_pseudo_register_read_value.
16007
16008 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
16009
16010         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
16011         language is Ada.
16012
16013 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
16014
16015         * linespec.c (create_sals_line_offset): Remove code that preserved
16016         the symtab_and_line's line number.
16017
16018 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16019
16020         * varobj.c (varobj_create): Don't set valid_block when creating a
16021         floating varobj.
16022
16023 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16024
16025         * varobj.c (varobj_create): Remove out of date comment.
16026
16027 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16028
16029         PR mi/20395
16030         * ada-exp.y (write_var_from_sym): Pass extra parameter when
16031         updating innermost block.
16032         * parse.c (innermost_block_tracker::update): Take extra type
16033         parameter, and check types match before updating innermost block.
16034         (write_dollar_variable): Update innermost block for registers.
16035         * parser-defs.h (enum innermost_block_tracker_type): New enum.
16036         (innermost_block_tracker::innermost_block_tracker): Initialise
16037         m_types member.
16038         (innermost_block_tracker::reset): Take type parameter.
16039         (innermost_block_tracker::update): Take type parameter, and pass
16040         type through as needed.
16041         (innermost_block_tracker::m_types): New member.
16042         * varobj.c (varobj_create): Pass type when reseting innermost
16043         block.
16044
16045 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16046
16047         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
16048         * ada-lang.c (resolve_subexp): Likewise.
16049         * breakpoint.c (set_breakpoint_condition) Likewise.
16050         (watch_command_1) Likewise.
16051         * c-exp.y (variable): Likewise.
16052         * d-exp.y (PrimaryExpression): Likewise.
16053         * f-exp.y (variable): Likewise.
16054         * go-exp.y (variable): Likewise.
16055         * m2-exp.y (variable): Likewise.
16056         * objfiles.c (objfile::~objfile): Likewise.
16057         * p-exp.y (variable): Likewise.
16058         * parse.c (innermost_block): Change type.
16059         * parser-defs.h (class innermost_block_tracker): New.
16060         (innermost_block): Change to innermost_block_tracker.
16061         * printcmd.c (display_command): Switch to innermost_block API.
16062         (do_one_display): Likewise.
16063         * rust-exp.y (do_one_display): Likewise.
16064         * symfile.c (clear_symtab_users): Likewise.
16065         * varobj.c (varobj_create): Switch to innermost_block API, replace
16066         use of innermost_block with block stored on varobj object.
16067
16068 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
16069
16070         * expression.h (innermost_block): Remove declaration.
16071         * varobj.c: Add 'parser-defs.h' include.
16072
16073 2018-01-19  Tom Tromey  <tom@tromey.com>
16074
16075         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
16076         symbols in the static and global blocks.
16077
16078 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
16079
16080         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
16081         gdb_ptrace.h, and move including gdb_wait.h ...
16082         * nat/linux-ptrace.h: ... to here.
16083
16084 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
16085
16086         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
16087         inf_ptrace_detach_success.
16088         (inf_ptrace_detach_success): Add inferior parameter, use it
16089         instead of inferior_ptid, pass it to detach_inferior.
16090         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
16091         parameter.
16092         * inferior.c (detach_inferior): Add overload that takes an
16093         inferior object.
16094         * inferior.h (detach_inferior): Likewise.
16095         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
16096         use inferior_ptid, adjust call to inf_ptrace_detach_success.
16097         * linux-thread-db.c (thread_db_detach): Use inf parameter.
16098
16099 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
16100
16101         * target.h (struct target_ops) <to_detach>: Add inferior
16102         parameter.
16103         (target_detach): Likewise.
16104         * target.c (dispose_inferior): Pass inferior down.
16105         (target_detach): Pass inferior down.  Assert that it is equal to
16106         the current inferior.
16107         * aix-thread.c (aix_thread_detach): Pass inferior down.
16108         * corefile.c (core_file_command): Pass current_inferior() down.
16109         * corelow.c (core_detach): Add inferior parameter.
16110         * darwin-nat.c (darwin_detach): Likewise.
16111         * gnu-nat.c (gnu_detach): Likewise.
16112         * inf-ptrace.c (inf_ptrace_detach): Likewise.
16113         * infcmd.c (detach_command): Pass current_inferior() down to
16114         target_detach.
16115         * infrun.c (follow_fork_inferior): Pass parent_inf to
16116         target_detach.
16117         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
16118         target_detach.
16119         * linux-nat.c (linux_nat_detach): Add inferior parameter.
16120         * linux-thread-db.c (thread_db_detach): Likewise.
16121         * nto-procfs.c (procfs_detach): Likewise.
16122         * procfs.c (procfs_detach): Likewise.
16123         * record.c (record_detach): Likewise.
16124         * record.h (struct inferior): Forward-declare.
16125         (record_detach): Add inferior parameter.
16126         * remote-sim.c (gdbsim_detach): Likewise.
16127         * remote.c (remote_detach_1): Likewise.
16128         (remote_detach): Likewise.
16129         (extended_remote_detach): Likewise.
16130         * sol-thread.c (sol_thread_detach): Likewise.
16131         * target-debug.h (target_debug_print_inferior_p): New macro.
16132         * target-delegates.c: Re-generate.
16133         * top.c (kill_or_detach): Pass inferior down to target_detach.
16134         * windows-nat.c (windows_detach): Add inferior parameter.
16135
16136 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
16137
16138         * target.h (struct target_ops) <to_detach>: Remove args
16139         parameter.
16140         (target_detach): Likewise.
16141         * target.c (dispose_inferior): Adjust.
16142         (target_detach): Remove args parameter, adjust.
16143         * aix-thread.c (aix_thread_detach): Adjust.
16144         * corefile.c (core_file_command): Adjust.
16145         * corelow.c (core_detach): Adjust.
16146         * darwin-nat.c (darwin_detach): Adjust.
16147         * gnu-nat.c (gnu_detach): Adjust.
16148         * inf-ptrace.c (inf_ptrace_detach): Adjust.
16149         * infcmd.c (detach_command): Adjust
16150         * infrun.c (follow_fork_inferior): Adjust.
16151         (handle_vfork_child_exec_or_exit): Adjust.
16152         * linux-fork.c (linux_fork_detach): Remove args parameter.
16153         * linux-fork.h (linux_fork_detach): Likewise.
16154         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
16155         * linux-thread-db.c (thread_db_detach): Likewise.
16156         * nto-procfs.c (procfs_detach): Likewise.
16157         * procfs.c (procfs_detach): Likewise.
16158         (do_detach): Remove signo parameter.
16159         * record.c (record_detach): Remove args parameter.
16160         * record.h (record_detach): Likewise.
16161         * remote-sim.c (gdbsim_detach): Likewise.
16162         * remote.c (remote_detach_1): Likewise.
16163         (remote_detach): Likewise.
16164         (extended_remote_detach): Likewise.
16165         * sol-thread.c (sol_thread_detach): Likewise.
16166         * target-delegates.c: Re-generate.
16167         * top.c (struct qt_args) <args>: Remove field.
16168         (kill_or_detach): Don't pass args.
16169         (quit_force): Don't set args.
16170         * windows-nat.c (windows_detach): Remove args parameter.
16171
16172 2018-01-19  Yao Qi  <yao.qi@linaro.org>
16173
16174         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
16175         (arm_linux_init_abi): Install it.
16176
16177 2018-01-19  Yao Qi  <yao.qi@linaro.org>
16178
16179         * osabi.c (gdb_osabi_names): Extend the regexp for
16180         arm-linux-gnueabihf.
16181
16182 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16183
16184         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
16185         m_abbrevs.
16186         (abbrev_table::add_abbrev): Update.
16187         (abbrev_table::lookup_abbrev): Update.
16188
16189 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16190
16191         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
16192
16193 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
16194
16195         * compile/compile.c (compile_to_object): Convert "triplet_rx"
16196         to "std::string".
16197
16198 2018-01-17  Tom Tromey  <tom@tromey.com>
16199
16200         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
16201
16202 2018-01-17  Tom Tromey  <tom@tromey.com>
16203
16204         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
16205         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
16206         (create_array_type_with_stride): Update.
16207         * dwarf2read.c (set_die_type): Update.
16208
16209 2018-01-17  Tom Tromey  <tom@tromey.com>
16210
16211         * dwarf2read.c (delayed_method_info): Remove typedef.
16212         (dwarf2_cu::method_info): Now a std::vector.
16213         (add_to_method_list): Update.
16214         (free_delayed_list): Remove.
16215         (compute_delayed_physnames): Update.
16216         (process_full_comp_unit, process_full_type_unit): Clear the method
16217         list.  Remove cleanups.
16218         (psymtab_include_file_name): Add name_holder parameter.  Use
16219         unique_xmalloc_ptr.
16220         (dwarf_decode_lines): Update.
16221
16222 2018-01-17  Tom Tromey  <tom@tromey.com>
16223             Simon Marchi  <simon.marchi@ericsson.com>
16224
16225         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
16226         (dwarf2_per_objfile::free_cached_comp_units)
16227         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16228         (init_cutu_and_read_dies_no_follow): Update.
16229         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
16230         (dwarf2_cu::~dwarf2_cu): New.
16231         (free_heap_comp_unit, free_stack_comp_unit): Remove.
16232         (age_cached_comp_units, free_one_cached_comp_unit): Update.
16233
16234 2018-01-17  Tom Tromey  <tom@tromey.com>
16235             Simon Marchi  <simon.marchi@ericsson.com>
16236
16237         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16238         (struct die_reader_specs) <abbrev_table>: New member.
16239         (struct abbrev_table): Add constructor.
16240         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16241         <abbrev_obstack>: Now an auto_obstack.
16242         (abbrev_table_up): New typedef.
16243         (init_cu_die_reader): Add abbrev_table parameter.
16244         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16245         Add result_dwo_abbrev_table.
16246         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16247         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16248         Update.
16249         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16250         parameter.
16251         (skip_children): Update.
16252         (abbrev_table::alloc_abbrev): Rename from
16253         abbrev_table_alloc_abbrev.
16254         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16255         (abbrev_table::lookup_abbrev): Rename from
16256         abbrev_table_lookup_abbrev.
16257         (abbrev_table_read_table): Return abbrev_table_up.
16258         (abbrev_table_free, abbrev_table_free_cleanup)
16259         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16260         (load_partial_dies): Update.
16261
16262 2018-01-17  Tom Tromey  <tom@tromey.com>
16263
16264         * dwarf2read.c (dwarf2_compute_name): Update comment.
16265         (read_func_scope, read_variable): Update.
16266         (new_symbol): Remove.
16267         (new_symbol_full): Rename to new_symbol.
16268
16269 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16270
16271         PR gdb/16577
16272         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16273         a warning instead of throwing an error, set section size to 0 and return
16274         NULL.
16275         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16276
16277 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16278
16279         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16280         std::string.
16281         (linux_ptrace_attach_fail_reason_string): Likewise.
16282         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16283         Likewise.
16284         (linux_ptrace_attach_fail_reason_string): Likewise.
16285         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16286
16287 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16288
16289         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16290
16291 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16292
16293         PR gdb/21559
16294         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16295         checking for fs_base/gs_base fields in struct user_regs_struct.
16296         * configure: Regenerate.
16297
16298 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16299
16300         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16301         function.
16302         (aarch64_linux_init_abi): Install it to gdbarch hook
16303         gcc_target_options.
16304
16305 2018-01-15  Pedro Alves  <palves@redhat.com>
16306
16307         * common/signals-state-save-restore.c
16308         (save_original_signals_state): Fix typos.
16309
16310 2017-01-12  Tom Tromey  <tom@tromey.com>
16311             Sergio Durigan Junior  <sergiodj@redhat.com>
16312
16313         * Makefile.in (install-only): Install gdb-add-index.
16314
16315 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16316
16317         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16318
16319 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16320
16321         * infrun.c (keep_going_pass_signal): Clear step-over info when
16322         insert_breakpoints fails.
16323
16324 2018-01-11  Pedro Alves  <palves@redhat.com>
16325
16326         PR gdb/22583
16327         * infrun.c (resume): Rename to ...
16328         (resume_1): ... this.
16329         (resume): Reimplement as wrapper around resume_1.
16330
16331 2018-01-11  Pedro Alves  <palves@redhat.com>
16332
16333         PR remote/22597
16334         * remote.c (remote_parse_stop_reply): Default to the last-set
16335         general thread instead of to 'magic_null_ptid'.
16336
16337 2018-01-10  Pedro Alves  <palves@redhat.com>
16338
16339         * language.h (language_get_symbol_name_matcher): Rename ...
16340         (get_symbol_name_matcher): ... this.
16341         * language.c (language_get_symbol_name_matcher): Ditto.
16342         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16343         callers adjusted.
16344
16345 2018-01-10  Pedro Alves  <palves@redhat.com>
16346
16347         PR gdb/22670
16348         * dwarf2read.c
16349         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16350         Adjust to use language_get_symbol_name_matcher instead of
16351         language_defn::la_get_symbol_name_matcher.
16352         * language.c (language_get_symbol_name_matcher): If in Ada mode
16353         and the lookup name is a verbatim match, return Ada's matcher.
16354         * language.h (language_get_symbol_name_matcher): Adjust comment.
16355         (ada_lookup_name_info::verbatim_p):: New method.
16356
16357 2018-01-10  Pedro Alves  <palves@redhat.com>
16358
16359         PR gdb/22670
16360         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16361         minsym's language is language_auto or language_cplus, pass down
16362         language_ada instead.
16363         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16364
16365 2018-01-10  Pedro Alves  <palves@redhat.com>
16366
16367         PR gdb/22670
16368         * minsyms.c (linkage_name_str): New function.
16369         (iterate_over_minimal_symbols): Use it.
16370
16371 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16372
16373         * NEWS: Document that 'info proc' now works on FreeBSD.
16374
16375 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16376
16377         * configure.ac: Check for kinfo_getfile in libutil.
16378         * configure: Regenerate.
16379         * config.in: Regenerate.
16380         * fbsd-nat.c: Include "fbsd-tdep.h".
16381         (fbsd_fetch_cmdline): New.
16382         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16383         rather than calling error.
16384         (fbsd_info_proc): New.
16385         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16386         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16387         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16388
16389 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16390
16391         * fbsd-nat.c (struct free_deleter): Remove.
16392         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16393
16394 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16395
16396         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16397         NULL for an empty pathname.
16398
16399 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16400
16401         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16402         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16403         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16404         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16405         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16406         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16407         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16408         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16409         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16410         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16411         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16412         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16413         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16414         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16415         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16416
16417 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16418
16419         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16420         (gnu_xfer_auxv): New function.
16421         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16422         TARGET_OBJECT_AUXV.
16423
16424 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16425             Simon Marchi  <simon.marchi@ericsson.com>
16426
16427         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16428         common/selftest.c.
16429         (COMMON_OBS): Remove selftest.o.
16430         * configure.ac: Append selftest-arch.c and common/selftest.c to
16431         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16432         * configure: Re-generated.
16433         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16434         GDB_SELF_TEST.
16435         (maintenance_info_selftests): Likewise.
16436
16437 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16438
16439         * ada-valprint.c (val_print_packed_array_elements): Use
16440         proper number of elements when printing an array indexed
16441         by an enumeration type.
16442
16443 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16444
16445         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16446         (dw2_get_file_names_reader): Adjust.
16447         (lookup_dwo_signatured_type): Adjust.
16448         (lookup_dwp_signatured_type): Adjust.
16449         (lookup_signatured_type): Adjust.
16450         (create_type_unit_group): Adjust.
16451         (get_type_unit_group): Adjust.
16452         (process_psymtab_comp_unit_reader): Adjust.
16453         (build_type_psymtabs_reader): Adjust.
16454         (scan_partial_symbols): Adjust.
16455         (add_partial_symbol): Adjust.
16456         (add_partial_subprogram): Adjust.
16457         (peek_die_abbrev): Adjust.
16458         (fixup_go_packaging): Adjust.
16459         (process_imported_unit_die): Adjust.
16460         (dwarf2_compute_name): Adjust.
16461         (dwarf2_physname): Adjust.
16462         (read_import_statement): Adjust.
16463         (handle_DW_AT_stmt_list): Adjust.
16464         (read_file_scope): Adjust.
16465         (read_func_scope): Adjust.
16466         (read_lexical_block_scope): Adjust.
16467         (read_call_site_scope): Adjust.
16468         (read_variable): Adjust.
16469         (dwarf2_rnglists_process): Adjust.
16470         (dwarf2_ranges_process): Adjust.
16471         (dwarf2_ranges_read): Adjust.
16472         (dwarf2_get_pc_bounds): Adjust.
16473         (dwarf2_record_block_ranges): Adjust.
16474         (dwarf2_add_field): Adjust.
16475         (dwarf2_add_member_fn): Adjust.
16476         (read_structure_type): Adjust.
16477         (process_structure_scope): Adjust.
16478         (read_enumeration_type): Adjust.
16479         (read_array_type): Adjust.
16480         (mark_common_block_symbol_computed): Adjust.
16481         (read_common_block): Adjust.
16482         (read_namespace_type): Adjust.
16483         (read_namespace): Adjust.
16484         (read_module_type): Adjust.
16485         (read_tag_pointer_type): Adjust.
16486         (read_tag_ptr_to_member_type): Adjust.
16487         (read_tag_string_type): Adjust.
16488         (read_subroutine_type): Adjust.
16489         (read_typedef): Adjust.
16490         (read_base_type): Adjust.
16491         (attr_to_dynamic_prop): Adjust.
16492         (read_subrange_type): Adjust.
16493         (read_unspecified_type): Adjust.
16494         (dwarf2_read_abbrevs): Adjust.
16495         (load_partial_dies): Adjust.
16496         (read_partial_die): Adjust.
16497         (find_partial_die): Adjust.
16498         (guess_partial_die_structure_name): Adjust.
16499         (fixup_partial_die): Adjust.
16500         (read_attribute_value): Adjust.
16501         (read_addr_index): Adjust.
16502         (read_addr_index_from_leb128): Adjust.
16503         (read_str_index): Adjust.
16504         (dwarf2_string_attr): Adjust.
16505         (get_debug_line_section): Adjust.
16506         (dwarf_decode_line_header): Adjust.
16507         (lnp_state_machine::check_line_address): Adjust.
16508         (dwarf_decode_lines_1): Adjust.
16509         (dwarf_decode_lines): Adjust.
16510         (dwarf2_start_symtab): Adjust.
16511         (var_decode_location): Adjust.
16512         (new_symbol_full): Adjust.
16513         (dwarf2_const_value_data): Adjust.
16514         (dwarf2_const_value_attr): Adjust.
16515         (dwarf2_const_value): Adjust.
16516         (die_type): Adjust.
16517         (die_containing_type): Adjust.
16518         (build_error_marker_type): Adjust.
16519         (lookup_die_type): Adjust.
16520         (guess_full_die_structure_name): Adjust.
16521         (anonymous_struct_prefix): Adjust.
16522         (determine_prefix): Adjust.
16523         (dwarf2_name): Adjust.
16524         (follow_die_ref_or_sig): Adjust.
16525         (follow_die_offset): Adjust.
16526         (follow_die_ref): Adjust.
16527         (follow_die_sig_1): Adjust.
16528         (follow_die_sig): Adjust.
16529         (get_signatured_type): Adjust.
16530         (get_DW_AT_signature_type): Adjust.
16531         (decode_locdesc): Adjust.
16532         (dwarf_decode_macros): Adjust.
16533         (cu_debug_loc_section): Adjust.
16534         (fill_in_loclist_baton): Adjust.
16535         (dwarf2_symbol_mark_computed): Adjust.
16536         (init_one_comp_unit): Don't assign
16537         dwarf2_cu::dwarf2_per_objfile.
16538         (set_die_type): Adjust.
16539
16540 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16541
16542         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16543         <dwarf2_per_objfile>: New field.
16544         (dwarf2_per_objfile): Remove global.
16545         (get_dwarf2_per_objfile): New function.
16546         (set_dwarf2_per_objfile): New function.
16547         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16548         dwarf2_per_objfile.
16549         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16550         (read_abbrev_offset): Likewise.
16551         (read_indirect_string): Likewise.
16552         (read_indirect_line_string): Likewise.
16553         (read_indirect_string_at_offset): Likewise.
16554         (read_indirect_string_from_dwz): Likewise.
16555         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16556         dwarf2_per_objfile.
16557         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16558         (create_all_comp_units): Change objfile parameter to
16559         dwarf2_per_objfile.
16560         (create_all_type_units): Likewise.
16561         (process_queue): Add dwarf2_per_objfile parameter.
16562         (read_and_check_comp_unit_head): Likewise.
16563         (lookup_dwo_unit_in_dwp): Likewise.
16564         (get_dwp_file): Likewise.
16565         (process_cu_includes): Likewise.
16566         (struct free_dwo_file_cleanup_data): New struct.
16567         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16568         set_dwarf2_per_objfile.
16569         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16570         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16571         context, adjust calls.
16572         (dw2_instantiate_symtab): Likewise.
16573         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16574         (dw2_get_cu): Likewise.
16575         (create_cu_from_index_list): Change objfile parameter to
16576         dwarf2_per_objfile.
16577         (create_cus_from_index_list): Get dwarf2_per_objfile from
16578         context, adjust calls.
16579         (create_cus_from_index): Likewise.
16580         (create_signatured_type_table_from_index): Change objfile
16581         parameter to dwarf2_per_objfile.
16582         (create_signatured_type_table_from_debug_names): Change objfile
16583         parameter to dwarf2_per_objfile.
16584         (create_addrmap_from_index): Likewise.
16585         (create_addrmap_from_aranges): Likewise.
16586         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16587         (dw2_setup): Remove.
16588         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16589         context.
16590         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16591         get_dwarf2_per_objfile.
16592         (dw2_forget_cached_source_info): Likewise.
16593         (dw2_map_symtabs_matching_filename): Likewise.
16594         (struct dw2_symtab_iterator) <index>: Remove.
16595         <dwarf2_per_objfile>: New field.
16596         (dw2_symtab_iter_init): Replace index parameter with
16597         dwarf2_per_objfile.
16598         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16599         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16600         (dw2_print_stats): Likewise.
16601         (dw2_dump): Likewise.
16602         (dw2_expand_symtabs_for_function): Likewise.
16603         (dw2_expand_all_symtabs): Likewise.
16604         (dw2_expand_symtabs_with_fullname): Likewise.
16605         (dw2_expand_marked_cus): Replace index and objfile parameters
16606         with dwarf2_per_objfile.
16607         (dw_expand_symtabs_matching_file_matcher): Add
16608         dwarf2_per_objfile parameter and adjust calls.
16609         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16610         adjust calls.
16611         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16612         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16613         adjust calls.
16614         (create_cus_from_debug_names_list): Replace objfile parameter
16615         with dwarf2_per_objfile and adjust calls.
16616         (create_cus_from_debug_names): Likewise.
16617         (dwarf2_read_debug_names): Likewise.
16618         (mapped_debug_names::namei_to_name): Adjust call.
16619         (dw2_debug_names_iterator::next): Likewise.
16620         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16621         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16622         (dw2_debug_names_dump): Likewise.
16623         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16624         (dw2_debug_names_expand_symtabs_matching): Likewise.
16625         (dwarf2_initialize_objfile): Likewise.
16626         (dwarf2_build_psymtabs): Likewise.
16627         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16628         this_cu.
16629         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16630         (read_and_check_comp_unit_head): Likewise.
16631         (read_abbrev_offset): Likewise.
16632         (create_debug_type_hash_table): Likewise.
16633         (create_debug_types_hash_table): Likewise.
16634         (create_all_type_units): Replace objfile parameter with
16635         dwarf2_per_objfile.
16636         (add_type_unit): Add dwarf2_per_objfile parameter.
16637         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16638         with dwarf2_per_objfile.
16639         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16640         (lookup_dwp_signatured_type): Likewise.
16641         (lookup_signatured_type): Likewise.
16642         (read_cutu_die_from_dwo): Likewise.
16643         (init_tu_and_read_dwo_dies): Likewise.
16644         (init_cutu_and_read_dies): Likewise.
16645         (init_cutu_and_read_dies_no_follow): Likewise.
16646         (allocate_type_unit_groups_table): Add objfile parameter.
16647         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16648         (get_type_unit_group): Likewise.
16649         (process_psymtab_comp_unit): Update call.
16650         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16651         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16652         (print_tu_stats): Likewise.
16653         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16654         in void* parameter.
16655         (build_type_psymtabs): Change objfile parameter to
16656         dwarf2_per_objfile.
16657         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16658         passed in void* parameter.
16659         (process_skeletonless_type_units): Change objfile parameter to
16660         dwarf2_per_objfile.
16661         (set_partial_user): Likewise.
16662         (dwarf2_build_psymtabs_hard): Likewise.
16663         (read_comp_units_from_section): Likewise.
16664         (create_all_comp_units): Likewise.
16665         (scan_partial_symbols): Update calls.
16666         (add_partial_symbol): Likewise.
16667         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16668         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16669         (process_queue): Add dwarf2_per_objfile parameter.
16670         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16671         (compute_compunit_symtab_includes): Likewise.
16672         (process_cu_includes): Add dwarf2_per_objfile parameter.
16673         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16674         (process_full_type_unit): Likewise.
16675         (process_imported_unit_die): Update call.
16676         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16677         (read_file_scope): Likewise.
16678         (allocate_dwo_file_hash_table): Add objfile parameter.
16679         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16680         (create_cus_hash_table): Likewise.
16681         (create_dwp_hash_table): Likewise.
16682         (create_dwo_unit_in_dwp_v1): Likewise.
16683         (create_dwp_v2_section): Likewise.
16684         (create_dwo_unit_in_dwp_v2): Likewise.
16685         (lookup_dwo_unit_in_dwp): Likewise.
16686         (try_open_dwop_file): Likewise.
16687         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16688         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16689         cleanup to include a reference to dwarf2_per_objfile.
16690         (open_dwp_file): Add dwarf2_per_objfile parameter.
16691         (open_and_init_dwp_file): Likewise.
16692         (get_dwp_file): Likewise.
16693         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16694         (queue_and_load_all_dwo_tus): Update call.
16695         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16696         data.
16697         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16698         (dwarf2_ranges_process): Likewise.
16699         (dwarf2_get_pc_bounds): Likewise.
16700         (mark_common_block_symbol_computed): Likewise.
16701         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16702         (dwarf2_read_abbrevs): Update call.
16703         (read_partial_die): Use dwarf2_per_objfile from cu.
16704         (find_partial_die): Likewise.
16705         (fixup_partial_die): Likewise.
16706         (read_attribute_value): Likewise.
16707         (read_indirect_string_at_offset_from): Add objfile parameter.
16708         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16709         parameter.
16710         (read_indirect_string_from_dwz): Add objfile parameter.
16711         (read_indirect_string): Add objfile parameter.
16712         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16713         (read_addr_index): Use dwarf2_per_objfile from cu.
16714         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16715         call dw2_setup.
16716         (read_str_index): Use dwarf2_per_objfile from cu.
16717         (get_debug_line_section): Likewise.
16718         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16719         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16720         (new_symbol_full): Use dwarf2_per_objfile from cu.
16721         (build_error_marker_type): Likewise.
16722         (lookup_die_type): Likewise.
16723         (determine_prefix): Likewise.
16724         (follow_die_offset): Likewise.
16725         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16726         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16727         (dwarf2_fetch_die_type_sect_off): Likewise.
16728         (dwarf2_get_die_type): Likewise.
16729         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16730         (get_signatured_type): Likewise.
16731         (get_DW_AT_signature_type): Likewise.
16732         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16733         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16734         (cu_debug_loc_section): Likewise.
16735         (fill_in_loclist_baton): Likewise.
16736         (dwarf2_symbol_mark_computed): Likewise.
16737         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16738         dwarf2_per_objfile.
16739         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16740         parameter.
16741         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16742         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16743         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16744         (set_die_type): Use dwarf2_free_objfile from cu.
16745         (get_die_type_at_offset): Likewise.
16746         (dwarf2_per_objfile_free): Don't assign global variable.
16747         (debug_names) <constructor>: Add dwarf2_per_objfile
16748         parameter, update m_debugstrlookup construction.
16749         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16750         parameter.
16751         <m_dwarf2_per_objfile>: New field.
16752         <lookup>: Use m_dwarf2_per_objfile.
16753         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16754         (psyms_seen_size): Likewise.
16755         (write_gdbindex): Replace objfile parameter with
16756         dwarf2_per_objfile.
16757         (write_debug_names): Likewise.
16758         (write_psymtabs_to_index): Likewise.
16759         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16760         calls.
16761
16762 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16763
16764         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16765         <dwarf2_per_objfile>: New field.
16766         (struct dwarf2_per_cu_data) <objfile>: Remove.
16767         <dwarf2_per_objfile>: New field.
16768         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16769         of objfile.
16770         (create_signatured_type_table_from_index): Likewise.
16771         (create_debug_type_hash_table): Likewise.
16772         (fill_in_sig_entry_from_dwo_entry): Likewise.
16773         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16774         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16775         objfile.
16776         (create_partial_symtab): Access objfile through
16777         dwarf2_per_objfile.
16778         (process_psymtab_comp_unit_reader): Likewise.
16779         (read_comp_units_from_section): Likewise.
16780         (scan_partial_symbols): Likewise.
16781         (add_partial_symbol): Likewise.
16782         (add_partial_subprogram): Likewise.
16783         (peek_die_abbrev): Likewise.
16784         (fixup_go_packaging): Likewise.
16785         (process_full_comp_unit): Likewise.
16786         (process_full_type_unit): Likewise.
16787         (process_imported_unit_die): Likewise.
16788         (dwarf2_compute_name): Likewise.
16789         (dwarf2_physname): Likewise.
16790         (read_import_statement): Likewise.
16791         (create_cus_hash_table): Assign dwarf2_physname instead of
16792         objfile.
16793         (read_func_scope): Access objfile through dwarf2_per_objfile.
16794         (read_lexical_block_scope): Likewise.
16795         (read_call_site_scope): Likewise.
16796         (read_variable): Likewise.
16797         (dwarf2_rnglists_process): Likewise.
16798         (dwarf2_ranges_process): Likewise.
16799         (dwarf2_ranges_read): Likewise.
16800         (dwarf2_record_block_ranges): Likewise.
16801         (dwarf2_add_field): Likewise.
16802         (dwarf2_add_member_fn): Likewise.
16803         (read_structure_type): Likewise.
16804         (process_structure_scope): Likewise.
16805         (read_enumeration_type): Likewise.
16806         (read_array_type): Likewise.
16807         (read_common_block): Likewise.
16808         (read_namespace_type): Likewise.
16809         (read_namespace): Likewise.
16810         (read_module_type): Likewise.
16811         (read_tag_pointer_type): Likewise.
16812         (read_tag_ptr_to_member_type): Likewise.
16813         (read_tag_string_type): Likewise.
16814         (read_subroutine_type): Likewise.
16815         (read_typedef): Likewise.
16816         (read_base_type): Likewise.
16817         (attr_to_dynamic_prop): Likewise.
16818         (read_subrange_type): Likewise.
16819         (read_unspecified_type): Likewise.
16820         (load_partial_dies): Likewise.
16821         (read_partial_die): Likewise.
16822         (find_partial_die): Likewise.
16823         (guess_partial_die_structure_name): Likewise.
16824         (fixup_partial_die): Likewise.
16825         (read_attribute_value): Likewise.
16826         (read_addr_index_from_leb128): Likewise.
16827         (dwarf2_read_addr_index): Likewise.
16828         (dwarf2_string_attr): Likewise.
16829         (lnp_state_machine::check_line_address): Likewise.
16830         (dwarf_decode_lines_1): Likewise.
16831         (dwarf_decode_lines): Likewise.
16832         (dwarf2_start_symtab): Likewise.
16833         (var_decode_location): Likewise.
16834         (new_symbol_full): Likewise.
16835         (dwarf2_const_value_data): Likewise.
16836         (dwarf2_const_value_attr): Likewise.
16837         (dwarf2_const_value): Likewise.
16838         (die_type): Likewise.
16839         (die_containing_type): Likewise.
16840         (lookup_die_type): Likewise.
16841         (guess_full_die_structure_name): Likewise.
16842         (anonymous_struct_prefix): Likewise.
16843         (dwarf2_name): Likewise.
16844         (follow_die_ref_or_sig): Likewise.
16845         (follow_die_offset): Likewise.
16846         (follow_die_ref): Likewise.
16847         (dwarf2_fetch_die_loc_sect_off): Likewise.
16848         (dwarf2_fetch_constant_bytes): Likewise.
16849         (dwarf2_fetch_die_type_sect_off): Likewise.
16850         (dwarf2_get_die_type): Likewise.
16851         (follow_die_sig): Likewise.
16852         (decode_locdesc): Likewise.
16853         (dwarf2_per_cu_objfile): Likewise.
16854         (dwarf2_per_cu_text_offset): Likewise.
16855         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16856         objfile.
16857         (set_die_type): Access objfile through
16858         dwarf2_per_objfile.
16859
16860 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16861
16862         * valprint.c (converted_character_d): Remove typedef.
16863         (DEF_VEC_O (converted_character_d)): Remove.
16864         (count_next_character): Use std::vector.
16865         (print_converted_chars_to_obstack): Likewise.
16866         (generic_printstr): Likewise.
16867
16868 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16869
16870         * xml-support.h (struct gdb_xml_value): Add constructor.
16871         <value>: Change type to unique_xmalloc_ptr.
16872         (gdb_xml_value_s): Remove typedef.
16873         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16874         (gdb_xml_element_start_handler): Change parameter type to
16875         std::vector.
16876         (xml_find_attribute): Likewise.
16877         * xml-support.c (xml_find_attribute): Change parameter type to
16878         std::vector and adjust.
16879         (gdb_xml_values_cleanup): Remove.
16880         (gdb_xml_parser::start_element): Adjust to std::vector.
16881         (xinclude_start_include): Change paraeter type to std::vector
16882         and adjust.
16883         * btrace.c (check_xml_btrace_version): Likewise.
16884         (parse_xml_btrace_block): Likewise.
16885         (parse_xml_btrace_pt_config_cpu): Likewise.
16886         (parse_xml_btrace_pt): Likewise.
16887         (parse_xml_btrace_conf_bts): Likewise.
16888         (parse_xml_btrace_conf_pt): Likewise.
16889         * memory-map.c (memory_map_start_memory): Likewise.
16890         (memory_map_start_property): Likewise.
16891         * osdata.c (osdata_start_osdata): Likewise.
16892         (osdata_start_item): Likewise.
16893         (osdata_start_column): Likewise.
16894         * remote.c (start_thread): Likewise.
16895         * solib-aix.c (library_list_start_library): Likewise.
16896         (library_list_start_list): Likewise.
16897         * solib-svr4.c (library_list_start_library): Likewise.
16898         (svr4_library_list_start_list): Likewise.
16899         * solib-target.c (library_list_start_segment): Likewise.
16900         (library_list_start_section): Likewise.
16901         (library_list_start_library): Likewise.
16902         (library_list_start_list): Likewise.
16903         * tracepoint.c (traceframe_info_start_memory): Likewise.
16904         (traceframe_info_start_tvar): Likewise.
16905         * xml-syscall.c (syscall_start_syscall): Likewise.
16906         * xml-tdesc.c (tdesc_start_target): Likewise.
16907         (tdesc_start_feature): Likewise.
16908         (tdesc_start_reg): Likewise.
16909         (tdesc_start_union): Likewise.
16910         (tdesc_start_struct): Likewise.
16911         (tdesc_start_flags): Likewise.
16912         (tdesc_start_enum): Likewise.
16913         (tdesc_start_field): Likewise.
16914         (tdesc_start_enum_value): Likewise.
16915         (tdesc_start_vector): Likewise.
16916
16917 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16918
16919         * extension.h (struct xmethod_worker) <clone>: Remove.
16920         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16921         Remove.
16922         (python_xmethod_worker::clone): Remove.
16923         * valops.c (find_overload_match): Use std::move instead of
16924         clone.
16925
16926 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16927
16928         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16929         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16930         <free_xmethod_worker_data>: Remove.
16931         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16932         <get_xmethod_arg_types>: Remove.
16933         <get_xmethod_result_type>: Remove.
16934         <invoke_xmethod>: Remove.
16935         * extension.c (new_xmethod_worker): Remove.
16936         (clone_xmethod_worker): Remove.
16937         (get_matching_xmethod_workers): Return void, pass std::vector by
16938         pointer.
16939         (get_xmethod_arg_types): Rename to...
16940         (xmethod_worker::get_arg_types): ... this, and adjust.
16941         (get_xmethod_result_type): Rename to...
16942         (xmethod_worker::get_result_type): ... this, and adjust.
16943         (invoke_xmethod): Remove.
16944         (free_xmethod_worker): Remove.
16945         (free_xmethod_worker_vec): Remove.
16946         * extension.h (enum ext_lang_rc): Move here from
16947         extension-priv.h.
16948         (struct xmethod_worker): Add constructor and destructor.
16949         <data>: Remove.
16950         <value>: Remove.
16951         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16952         virtual pure methods.
16953         <get_arg_types, get_result_type>: New methods.
16954         (xmethod_worker_ptr): Remove typedef.
16955         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16956         (xmethod_worker_vec): Remove typedef.
16957         (xmethod_worker_up): New typedef.
16958         (invoke_xmethod): Remove.
16959         (clone_xmethod_worker): Remove.
16960         (free_xmethod_worker): Remove.
16961         (free_xmethod_worker_vec): Remove.
16962         (get_xmethod_arg_types): Remove.
16963         (get_xmethod_result_type): Remove.
16964         * valops.c (find_method_list): Use std::vector, don't use
16965         intermediate vector.
16966         (value_find_oload_method_list): Use std::vector.
16967         (find_overload_match): Use std::vector.
16968         (find_oload_champ): Use std::vector.
16969         * value.c (value_free): Use operator delete.
16970         (value_of_xmethod): Rename to...
16971         (value_from_xmethod): ... this.  Don't assign
16972         xmethod_worker::value, take rvalue-reference.
16973         (result_type_of_xmethod): Adjust.
16974         (call_xmethod): Adjust.
16975         * value.h: Include extension.h.
16976         (struct xmethod_worker): Don't forward-declare.
16977         (value_of_xmethod): Rename to...
16978         (value_from_xmethod): ... this, take rvalue-reference.
16979         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16980         (struct python_xmethod_worker): ... this, add constructor and
16981         destructor.
16982         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16983         (gdbpy_free_xmethod_worker_data): Rename to...
16984         (python_xmethod_worker::~python_xmethod_worker): ... this and
16985         adjust.
16986         (gdbpy_clone_xmethod_worker_data): Rename to...
16987         (python_xmethod_worker::clone): ... this and adjust.
16988         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16989         temporary vector.
16990         (gdbpy_get_xmethod_arg_types): Rename to...
16991         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16992         (gdbpy_get_xmethod_result_type): Rename to...
16993         (python_xmethod_worker::do_get_result_type): ... this and
16994         adjust.
16995         (gdbpy_invoke_xmethod): Rename to...
16996         (python_xmethod_worker::invoke): ... this and adjust.
16997         (new_python_xmethod_worker): Rename to...
16998         (python_xmethod_worker::python_xmethod_worker): ... this and
16999         adjust.
17000         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
17001         Remove.
17002         (gdbpy_free_xmethod_worker_data): Remove.
17003         (gdbpy_get_matching_xmethod_workers): Use std::vector.
17004         (gdbpy_get_xmethod_arg_types): Remove.
17005         (gdbpy_get_xmethod_result_type): Remove.
17006         (gdbpy_invoke_xmethod): Remove.
17007         * python/python.c (python_extension_ops): Remove obsolete
17008         callbacks.
17009
17010 2018-01-05  Pedro Alves  <palves@redhat.com>
17011
17012         PR gdb/18653
17013         * common/signals-state-save-restore.c
17014         (save_original_signals_state): New parameter 'quiet'.  Warn if we
17015         find a custom handler preinstalled, instead of internal erroring.
17016         But only warn if !quiet.
17017         * common/signals-state-save-restore.h
17018         (save_original_signals_state): New parameter 'quiet'.
17019         * main.c (captured_main_1): Move save_original_signals_state call
17020         after option handling, and pass QUIET.
17021
17022 2018-01-05  Pedro Alves  <palves@redhat.com>
17023
17024         * spu-tdep.c (spu_catch_start): Pass
17025         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
17026
17027 2018-01-05  Pedro Alves  <palves@redhat.com>
17028
17029         PR gdb/22670
17030         * ada-lang.c (literal_symbol_name_matcher): New function.
17031         (ada_get_symbol_name_matcher): Use it for
17032         symbol_name_match_type::SEARCH_NAME.
17033         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
17034         it down instead of assuming symbol_name_match_type::FULL.
17035         * block.h (block_lookup_symbol): New parameter 'match_type'.
17036         * c-valprint.c (print_unpacked_pointer): Use
17037         lookup_symbol_search_name instead of lookup_symbol.
17038         * compile/compile-object-load.c (get_out_value_type): Pass down
17039         symbol_name_match_type::SEARCH_NAME.
17040         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
17041         symbol_name_match_type::FULL.
17042         * cp-support.c (cp_get_symbol_name_matcher): Handle
17043         symbol_name_match_type::SEARCH_NAME.
17044         * infrun.c (insert_exception_resume_breakpoint): Use
17045         lookup_symbol_search_name.
17046         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
17047         * psymtab.c (maintenance_check_psymtabs): Use
17048         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
17049         * stack.c (print_frame_args): Use lookup_symbol_search_name and
17050         SYMBOL_SEARCH_NAME.
17051         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
17052         if symbol_name_match_type::SEARCH_NAME.
17053         (lookup_symbol_in_language): Pass down
17054         symbol_name_match_type::FULL.
17055         (lookup_symbol_search_name): New.
17056         (lookup_language_this): Pass down
17057         symbol_name_match_type::SEARCH_NAME.
17058         (lookup_symbol_aux, lookup_local_symbol): New parameter
17059         'match_type'.  Pass it down.
17060         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
17061         (lookup_symbol_search_name): New declaration.
17062         (lookup_symbol_in_block): New 'match_type' parameter.
17063
17064 2018-01-05  Pedro Alves  <palves@redhat.com>
17065
17066         PR gdb/22670
17067         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
17068         ada_lookup_symbol.
17069         (ada_lookup_symbol): Reimplement in terms of
17070         ada_lookup_symbol_list, bits factored out from
17071         ada_lookup_encoded_symbol.
17072
17073 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17074
17075         * ada-exp.y (write_object_renaming): When subscripting an array
17076         using a symbol as the index, pass the block in call to
17077         ada_lookup_encoded_symbol when looking that symbol up.
17078
17079 2018-01-05  Jerome Guitton  <guitton@adacore.com>
17080
17081         * ada-lang.c (ada_array_length): Use ada_index_type instead of
17082         TYPE_INDEX_TYPE.
17083
17084 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17085
17086         * ada-lang.c (ada_to_fixed_value_create): Add handling of
17087         the case where VALUE_LVAL (val0) is not lval_memory.
17088
17089 2018-01-05  Xavier Roirand  <roirand@adacore.com>
17090
17091         * ada-valprint.c (print_optional_low_bound): Handle
17092         character-indexed array printing like boolean-indexed array
17093         printing.
17094
17095 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17096
17097         * NEWS: Create a new section for the next release branch.
17098         Rename the section of the current branch, now that it has
17099         been cut.
17100
17101 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
17102
17103         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
17104         * version.in: Bump version to 8.1.50.DATE-git.
17105
17106 2018-01-03  Xavier Roirand  <roirand@adacore.com>
17107
17108         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
17109         Add field.
17110         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
17111         Add field.
17112         (default_exception_support_info) <catch_handlers_sym>: Add field.
17113         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
17114         (ada_exception_name_addr_1): Add "catch handlers" handling.
17115         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
17116         Update all callers.
17117         (create_excep_cond_exprs) <ex>: Add parameter.
17118         (re_set_exception): Update create_excep_cond_exprs call.
17119         (print_it_exception, print_one_exception, print_mention_exception)
17120         (print_recreate_exception): Add "catch handler" handling.
17121         (allocate_location_catch_handlers, re_set_catch_handlers)
17122         (check_status_catch_handlers, print_it_catch_handlers)
17123         (print_one_catch_handlers, print_mention_catch_handlers)
17124         (print_recreate_catch_handlers): New function.
17125         (catch_handlers_breakpoint_ops): New variable.
17126         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
17127         Add parameter.  Add "catch handler" handling.
17128         (ada_exception_sym_name, ada_exception_breakpoint_ops):
17129         Add "catch handler" handling.
17130         (ada_exception_catchpoint_cond_string): Add "catch handler"
17131         handling.
17132         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
17133         call.
17134         (catch_ada_handlers_command): New function.
17135         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
17136         operations structure.
17137         (_initialize_ada_language): Add "catch handlers" command entry.
17138         * NEWS: Document "catch handlers" feature.
17139
17140 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
17141
17142         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
17143         account when creating the array type of the slice.
17144         (ada_value_slice): Likewise.
17145
17146 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
17147
17148         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
17149         New enum value.
17150         (create_array_type_with_stride): Add byte_stride_prop parameter.
17151         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
17152         New parameter.  Update all callers in this file.
17153         (array_type_has_dynamic_stride): New function.
17154         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
17155         of arrays with dynamic byte strides.
17156         * dwarf2read.c (read_array_type): Add support for dynamic
17157         DW_AT_byte_stride attributes.
17158
17159 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
17160
17161         * dwarf2read.c (read_unspecified_type): Treat
17162         DW_TAG_enumeration_type DIEs from Ada units as stubs.
17163
17164 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17165
17166         Update copyright year range in all GDB files.
17167
17168 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
17169
17170         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
17171         and gdb/testsuite/gdb.base/step-line.c.
17172
17173 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17174
17175         * copyright.py (main): Dump the contents of
17176         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
17177         even if BY_HAND is empty.
17178
17179 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17180
17181         * top.c (print_gdb_version): Update Copyright year in version
17182         message.
17183
17184 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
17185
17186         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
17187
17188 For older changes see ChangeLog-2017.
17189 \f
17190 Local Variables:
17191 mode: change-log
17192 left-margin: 8
17193 fill-column: 74
17194 version-control: never
17195 coding: utf-8
17196 End: