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