1 2021-03-08 Tom Tromey <tom@tromey.com>
3 * std-operator.def (BINOP_END): Remove.
4 * p-exp.y (tokentab3, tokentab2): Use OP_NULL, not BINOP_END.
5 * go-exp.y (tokentab2): Use OP_NULL, not BINOP_END.
6 * f-exp.y (dot_ops, f77_keywords): Use OP_NULL, not BINOP_END.
7 * d-exp.y (tokentab2, ident_tokens): Use OP_NULL, not BINOP_END.
8 * c-exp.y (tokentab3, tokentab2, ident_tokens): Use OP_NULL, not
11 2021-03-08 Tom Tromey <tom@tromey.com>
13 * expression.h (enum exp_opcode) <OP_UNUSED_LAST>: Remove.
15 2021-03-08 Tom Tromey <tom@tromey.com>
17 * std-operator.def (OP_EXTENDED0): Remove.
19 2021-03-08 Tom Tromey <tom@tromey.com>
21 * std-operator.def (OP_NAME, OP_ATR_IMAGE, OP_ATR_MODULUS)
22 (OP_OTHERS, OP_CHOICES, OP_POSITIONAL, OP_DISCRETE_RANGE):
25 2021-03-08 Tom Tromey <tom@tromey.com>
27 * std-operator.def (UNOP_CAP, UNOP_CHR, UNOP_ORD, UNOP_FLOAT)
28 (UNOP_MAX, UNOP_MIN, UNOP_ODD, UNOP_TRUNC, OP_M2_STRING): Remove.
30 2021-03-08 Tom Tromey <tom@tromey.com>
32 * std-operator.def (OP_ATR_MIN, OP_ATR_MAX): Remove.
33 * ada-lang.c (ada_binop_minmax): Update.
34 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
35 Use BINOP_MIN and BINOP_MAX.
37 2021-03-08 Tom Tromey <tom@tromey.com>
39 * value.h (evaluate_subexp_with_coercion): Don't declare.
40 * parse.c (exp_descriptor_standard): Remove.
41 (expr_builder::expr_builder, expr_builder::release): Update.
42 (expression::expression): Remove size_t parameter.
43 (expression::~expression): Simplify.
44 (expression::resize): Remove.
45 (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
46 (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
47 (write_exp_elt_longcst, write_exp_elt_floatcst)
48 (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
49 (write_exp_string_vector, write_exp_bitstring): Remove.
50 * p-lang.h (class pascal_language) <opcode_print_table,
51 op_print_tab>: Remove.
52 * p-lang.c (pascal_language::op_print_tab): Remove.
53 * opencl-lang.c (class opencl_language) <opcode_print_table>:
55 * objc-lang.c (objc_op_print_tab): Remove.
56 (class objc_language) <opcode_print_table>: Remove.
57 * m2-lang.h (class m2_language) <opcode_print_table,
58 op_print_tab>: Remove.
59 * m2-lang.c (m2_language::op_print_tab): Remove.
60 * language.h (struct language_defn) <post_parser, expression_ops,
61 opcode_print_table>: Remove.
62 * language.c (language_defn::expression_ops)
63 (auto_or_unknown_language::opcode_print_table): Remove.
64 * go-lang.h (class go_language) <opcode_print_table,
65 op_print_tab>: Remove.
66 * go-lang.c (go_language::op_print_tab): Remove.
67 * f-lang.h (class f_language) <opcode_print_table>: Remove
68 <op_print_tab>: Remove.
69 * f-lang.c (f_language::op_print_tab): Remove.
70 * expression.h (union exp_element): Remove.
71 (struct expression): Remove size_t parameter from constructor.
73 <first_opcode>: Update.
74 <nelts, elts>: Remove.
75 (EXP_ELEM_TO_BYTES, BYTES_TO_EXP_ELEM): Remove.
76 (evaluate_subexp_standard, print_expression, op_string)
77 (dump_raw_expression): Don't declare.
78 * expprint.c (print_expression, print_subexp)
79 (print_subexp_funcall, print_subexp_standard, op_string)
80 (dump_raw_expression, dump_subexp, dump_subexp_body)
81 (dump_subexp_body_funcall, dump_subexp_body_standard): Remove.
82 (dump_prefix_expression): Update.
83 * eval.c (evaluate_subexp): Remove.
84 (evaluate_expression, evaluate_type): Update.
85 (evaluate_subexpression_type): Remove.
86 (fetch_subexp_value): Remove "pc" parameter. Update.
87 (extract_field_op, evaluate_struct_tuple, evaluate_funcall)
88 (evaluate_subexp_standard, evaluate_subexp_for_address)
89 (evaluate_subexp_with_coercion, evaluate_subexp_for_sizeof)
90 (evaluate_subexp_for_cast): Remove.
91 (parse_and_eval_type): Update.
92 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
93 * d-lang.c (d_op_print_tab): Remove.
94 (class d_language) <opcode_print_table>: Remove.
95 * c-lang.h (c_op_print_tab): Don't declare.
96 * c-lang.c (c_op_print_tab): Remove.
97 (class c_language, class cplus_language, class asm_language, class
98 minimal_language) <opcode_print_table>: Remove.
99 * breakpoint.c (update_watchpoint, watchpoint_check)
100 (watchpoint_exp_is_const, watch_command_1): Update.
101 * ax-gdb.h (union exp_element): Don't declare.
102 * ax-gdb.c (const_var_ref, const_expr, maybe_const_expr)
103 (gen_repeat, gen_sizeof, gen_expr_for_cast, gen_expr)
104 (gen_expr_binop_rest): Remove.
105 (gen_trace_for_expr, gen_eval_for_expr, gen_printf): Update.
106 * ada-lang.c (ada_op_print_tab): Remove.
107 (class ada_language) <post_parser, opcode_print_table>: Remove.
109 2021-03-08 Tom Tromey <tom@tromey.com>
111 * go-lang.c (go_language::expression_ops): Don't declare.
112 * go-lang.h (class go_language) <expression_ops>: Remove.
113 * opencl-lang.c (evaluate_subexp_opencl, exp_descriptor_opencl):
115 (class opencl_language) <expression_ops>: Remove.
116 * d-lang.c (class d_language) <expression_ops>: Remove.
117 * c-lang.h (evaluate_subexp_c, exp_descriptor_c): Don't declare.
118 * c-lang.c (evaluate_subexp_c, exp_descriptor_c): Remove.
119 (class c_language, class cplus_language, class asm_language)
120 (class minimal_language) <expression_ops>: Remove.
122 2021-03-08 Tom Tromey <tom@tromey.com>
124 * ada-lang.c (resolve_subexp, replace_operator_with_call)
125 (evaluate_subexp_type, assign_aggregate)
126 (aggregate_assign_positional, aggregate_assign_from_choices)
127 (aggregate_assign_others, ada_evaluate_subexp_for_cast)
128 (ada_evaluate_subexp, ADA_OPERATORS, ada_operator_length)
129 (ada_operator_check, ada_forward_operator_length)
130 (ada_dump_subexp_body, ada_print_subexp, ada_exp_descriptor):
132 (post_parser): Update.
133 (class ada_language) <expresssion_ops>: Remove.
135 2021-03-08 Tom Tromey <tom@tromey.com>
137 * m2-lang.h (class m2_language) <expresssion_ops,
138 exp_descriptor_modula2>: Remove.
139 * m2-lang.c (evaluate_subexp_modula2)
140 (m2_language::exp_descriptor_modula2): Remove.
142 2021-03-08 Tom Tromey <tom@tromey.com>
144 * f-lang.h (class f_language) <expresssion_ops>: Remove.
145 <exp_descriptor_tab>: Remove.
146 * f-lang.c (fortran_value_subarray, evaluate_subexp_f)
147 (operator_length_f, print_unop_subexp_f, print_binop_subexp_f)
148 (print_subexp_f, dump_subexp_body_f, operator_check_f)
149 (f_language::exp_descriptor_tab, fortran_prepare_argument):
152 2021-03-08 Tom Tromey <tom@tromey.com>
154 * rust-lang.h (class rust_language) <expression_ops,
155 exp_descriptor_tab>: Remove.
156 * rust-lang.c (rust_evaluate_funcall): Remove.
157 (rust_range, rust_subscript, eval_op_rust_complement): Don't use
159 (rust_evaluate_subexp): Remove.
160 (rust_aggregate_operation::evaluate): Don't use EVAL_SKIP.
161 (rust_operator_length, rust_dump_subexp_body, rust_print_subexp)
162 (rust_operator_check, rust_language::exp_descriptor_tab): Remove.
164 2021-03-08 Tom Tromey <tom@tromey.com>
166 * ada-exp.y: Create operations.
167 (empty_stoken): Remove.
168 (ada_pop, ada_wrap, ada_addrof, ada_un_wrap2, ada_wrap2)
169 (ada_wrap_op, ada_wrap3, ada_funcall): New functions.
170 (components): New global.
171 (push_component, choice_component, pop_component, pop_components):
173 (associations): New global
174 (push_association, pop_association, pop_associations): New
177 (write_var_from_sym, write_int): Create operations.
178 (write_exp_op_with_string): Remove.
179 (write_object_renaming, write_selectors, write_ambiguous_var)
180 (write_var_or_type, write_name_assoc): Create operations.
181 * ada-lang.h (ada_index_type): Declare.
182 * ada-lang.c (ada_index_type): No longer static.
184 2021-03-08 Tom Tromey <tom@tromey.com>
186 * f-exp.y: Create operations.
187 (f_language::parser): Update.
189 2021-03-08 Tom Tromey <tom@tromey.com>
191 * m2-exp.y: Create operations.
192 (m2_language::parser): Update.
194 2021-03-08 Tom Tromey <tom@tromey.com>
196 * p-exp.y: Create operations.
197 (pascal_language::parser): Update.
199 2021-03-08 Tom Tromey <tom@tromey.com>
201 * d-exp.y: Create operations.
204 2021-03-08 Tom Tromey <tom@tromey.com>
206 * go-exp.y: Create operations.
207 (go_language::parser): Update.
209 2021-03-08 Tom Tromey <tom@tromey.com>
211 * objc-lang.c (end_msglist): Create operations.
212 * c-exp.y: Change parser to create operations.
213 (write_destructor_name): Remove.
216 2021-03-08 Tom Tromey <tom@tromey.com>
218 * rust-exp.y: Create operations.
219 (rust_parser::convert_params_to_expression): Change return type.
220 (binop_maker_ftype): New typedef.
221 (maker_map): New global.
222 (rust_parser::convert_ast_to_expression): Change return type.
223 (rust_language::parser): Update.
224 (_initialize_rust_exp): Initialize maker_map.
226 2021-03-08 Tom Tromey <tom@tromey.com>
228 * stap-probe.c (binop_maker_ftype): New typedef.
229 (stap_maker_map): New global.
230 (stap_make_binop): New function.
231 (stap_parse_register_operand): Return operation_up.
232 (stap_parse_single_operand, stap_parse_argument_conditionally)
233 (stap_parse_argument_1): Likewise.
234 (stap_parse_argument): Create operations.
235 (stap_probe::parse_arguments): Update.
236 (_initialize_stap_probe): Initialize stap_maker_map.
237 * ppc-linux-tdep.c (ppc_stap_parse_special_token): Change return
239 * i386-tdep.h (i386_stap_parse_special_token): Change return
241 * i386-tdep.c (i386_stap_parse_special_token_triplet)
242 (i386_stap_parse_special_token_three_arg_disp)
243 (i386_stap_parse_special_token): Change return type.
244 * gdbarch.sh (stap_parse_special_token): Change return type.
245 * gdbarch.c: Rebuild.
246 * gdbarch.h: Rebuild.
247 * arm-linux-tdep.c (arm_stap_parse_special_token): Change return
249 * aarch64-linux-tdep.c (aarch64_stap_parse_special_token): Change
252 2021-03-08 Tom Tromey <tom@tromey.com>
254 * gdbarch.sh (dtrace_parse_probe_argument): Change return type.
255 * gdbarch.h: Rebuild.
256 * gdbarch.c: Rebuild.
257 * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
258 * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Change
260 (amd64_dtrace_parse_probe_argument): Update.
262 2021-03-08 Tom Tromey <tom@tromey.com>
264 * parser-defs.h (struct parser_state) <push, push_new,
265 push_c_string, push_symbol, push_dollar, pop, pop_vector, wrap,
267 <m_operations>: New member.
268 * parse.c (parser_state::push_c_string)
269 (parser_state::push_symbol, parser_state::push_dollar): New
272 2021-03-08 Tom Tromey <tom@tromey.com>
274 * parser-defs.h (struct expr_completion_state) <expout_last_op>:
276 (struct parser_state) <mark_struct_expression>: New method.
277 * parse.c (parser_state::mark_struct_expression): Update assert.
278 (parser_state::mark_struct_expression): New method.
279 (parser_state::mark_completion_tag): Update assert.
280 (parse_expression_for_completion): Handle expout_last_op.
282 2021-03-08 Tom Tromey <tom@tromey.com>
284 * ada-exp.h (class ada_var_value_operation) <get_symbol>: Remove;
286 * value.h (fetch_subexp_value): Add "op" parameter.
287 * value.c (init_if_undefined_command): Update.
288 * tracepoint.c (validate_actionline, encode_actions_1): Update.
289 * stap-probe.c (stap_probe::compile_to_ax): Update.
290 * printcmd.c (set_command): Update.
291 * ppc-linux-nat.c (ppc_linux_nat_target::check_condition):
293 * parser-defs.h (struct expr_builder) <set_operation>: New
295 * parse.c (parse_exp_in_context, exp_uses_objfile): Update.
296 * expression.h (struct expression) <first_opcode>: Update.
298 * expprint.c (dump_raw_expression, dump_prefix_expression):
300 * expop.h (class var_value_operation) <get_symbol>: New method.
301 (class register_operation) <get_name>: New method.
302 (class equal_operation): No longer a typedef, now a subclass.
303 (class unop_memval_operation) <get_type>: New method.
304 (class assign_operation) <get_lhs>: New method.
305 (class unop_cast_operation) <get_type>: New method.
306 * eval.c (evaluate_expression, evaluate_type)
307 (evaluate_subexpression_type): Update.
308 (fetch_subexp_value): Add "op" parameter.
309 (parse_and_eval_type): Update.
310 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
311 * breakpoint.c (update_watchpoint, watchpoint_check)
312 (watchpoint_exp_is_const, watch_command_1): Update.
313 * ax-gdb.c (gen_trace_for_expr, gen_eval_for_expr, gen_printf):
316 2021-03-08 Tom Tromey <tom@tromey.com>
318 * ada-lang.c (ada_value_binop): Do not use op_string.
320 2021-03-08 Tom Tromey <tom@tromey.com>
322 * expprint.c (dump_for_expression): New overload.
323 * expop.h (check_objfile, dump_for_expression): Declare new
325 * ada-lang.c (check_objfile): New overload.
326 (assign_component, ada_aggregate_component::uses_objfile)
327 (ada_aggregate_component::dump, ada_aggregate_component::assign)
328 (ada_aggregate_component::assign_aggregate)
329 (ada_positional_component::uses_objfile)
330 (ada_positional_component::dump, ada_positional_component::assign)
331 (ada_discrete_range_association::uses_objfile)
332 (ada_discrete_range_association::dump)
333 (ada_discrete_range_association::assign)
334 (ada_name_association::uses_objfile, ada_name_association::dump)
335 (ada_name_association::assign)
336 (ada_choices_component::uses_objfile, ada_choices_component::dump)
337 (ada_choices_component::assign)
338 (ada_others_component::uses_objfile, ada_others_component::dump)
339 (ada_others_component::assign, ada_assign_operation::evaluate):
341 * ada-exp.h (ada_string_operation) <get_name>: New method.
342 (class ada_assign_operation): New.
343 (class ada_component): New.
344 (ada_component_up): New typedef.
345 (class ada_aggregate_operation, class ada_aggregate_component)
346 (class ada_positional_component, class ada_others_component)
347 (class ada_association): New.
348 (ada_association_up): New typedef.
349 (class ada_choices_component)
350 (class ada_discrete_range_association)
351 (class ada_name_association): New.
353 2021-03-08 Tom Tromey <tom@tromey.com>
355 * ada-lang.c (ada_var_value_operation::resolve)
356 (ada_funcall_operation::resolve)
357 (ada_ternop_slice_operation::resolve): New methods.
358 * ada-exp.h (struct ada_resolvable): New.
359 (class ada_var_value_operation): Derive from ada_resolvable.
360 <get_block, resolve>: New methods.
361 (class ada_funcall_operation): Derive from ada_resolvable.
362 <resolve>: New method.
363 (class ada_ternop_slice_operation): Derive from ada_resolvable.
364 <resolve>: New method.
366 2021-03-08 Tom Tromey <tom@tromey.com>
368 * ada-lang.c (ada_funcall_operation::evaluate): New method.
369 * ada-exp.h (class ada_var_msym_value_operation) <get_symbol>: New
371 (class ada_funcall_operation): New.
373 2021-03-08 Tom Tromey <tom@tromey.com>
375 * ada-lang.c (ada_structop_operation::evaluate): New method.
376 * ada-exp.h (class ada_structop_operation): New.
378 2021-03-08 Tom Tromey <tom@tromey.com>
380 * ada-lang.c (ada_unop_ind_operation::evaluate): New method.
381 * ada-exp.h (class ada_unop_ind_operation): New.
383 2021-03-08 Tom Tromey <tom@tromey.com>
385 * ada-lang.c (ada_binop_exp): No longer static.
386 * ada-exp.h (ada_binop_exp_operation): New typedef.
388 2021-03-08 Tom Tromey <tom@tromey.com>
390 * ada-lang.c (ada_val_atr): No longer static.
391 (ada_atr_val_operation::evaluate): New method.
392 * ada-exp.h (class ada_atr_val_operation): New.
394 2021-03-08 Tom Tromey <tom@tromey.com>
396 * ada-lang.c (ada_pos_atr): No longer static.
397 * ada-exp.h (ada_pos_operation): New typedef.
399 2021-03-08 Tom Tromey <tom@tromey.com>
401 * ada-lang.c (ada_pos_atr): Rename from value_pos_atr. Change
403 (ada_evaluate_subexp): Use it.
405 2021-03-08 Tom Tromey <tom@tromey.com>
407 * ada-lang.c (ada_binop_minmax): No longer static.
408 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
411 2021-03-08 Tom Tromey <tom@tromey.com>
413 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
415 * ada-exp.h (class ada_var_msym_value_operation): New.
417 2021-03-08 Tom Tromey <tom@tromey.com>
419 * ada-lang.c (ada_var_value_operation::evaluate_for_cast)
420 (ada_var_value_operation::evaluate): New methods.
421 * ada-exp.h (class ada_var_value_operation): New.
423 2021-03-08 Tom Tromey <tom@tromey.com>
425 * ada-lang.c (ada_unop_atr_operation::evaluate): New method.
426 * ada-exp.h (class ada_unop_atr_operation): New.
428 2021-03-08 Tom Tromey <tom@tromey.com>
430 * ada-lang.c (ada_binop_in_bounds): No longer static.
431 * ada-exp.h (class ada_binop_in_bounds_operation): New.
433 2021-03-08 Tom Tromey <tom@tromey.com>
435 * ada-lang.c (ada_ternop_slice): No longer static.
436 * ada-exp.h (class ada_ternop_slice_operation): New.
438 2021-03-08 Tom Tromey <tom@tromey.com>
440 * ada-exp.h (ada_bitwise_operation): New template class.
441 (ada_bitwise_and_operation, ada_bitwise_ior_operation)
442 (ada_bitwise_xor_operation): New typedefs.
444 2021-03-08 Tom Tromey <tom@tromey.com>
446 * ada-lang.c (ada_equal_binop): No longer static.
447 * ada-exp.h (class ada_binop_equal_operation): New.
449 2021-03-08 Tom Tromey <tom@tromey.com>
451 * ada-lang.c (ada_mult_binop): No longer static.
452 * ada-exp.h (ada_binop_mul_operation ada_binop_div_operation)
453 (ada_binop_rem_operation, ada_binop_mod_operation): New typedefs.
455 2021-03-08 Tom Tromey <tom@tromey.com>
457 * ada-lang.c (ada_binop_addsub_operation::evaluate): New method.
458 * ada-exp.h (class ada_binop_addsub_operation): New.
460 2021-03-08 Tom Tromey <tom@tromey.com>
462 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
463 (ada_resolve_variable): Declare.
464 * ada-lang.c (ada_find_operator_symbol, ada_resolve_funcall)
465 (ada_resolve_variable): New functions.
466 (resolve_subexp): Update.
468 2021-03-08 Tom Tromey <tom@tromey.com>
470 * opencl-lang.c (opencl_ternop_cond_operation::evaluate): New
472 * c-exp.h (class opencl_ternop_cond_operation): New.
474 2021-03-08 Tom Tromey <tom@tromey.com>
476 * opencl-lang.c (opencl_logical_binop_operation::evaluate): New
478 * c-exp.h (class opencl_logical_binop_operation): New.
480 2021-03-08 Tom Tromey <tom@tromey.com>
482 * opencl-lang.c (opencl_structop_operation::evaluate): New
484 * c-exp.h (class opencl_structop_operation): New.
486 2021-03-08 Tom Tromey <tom@tromey.com>
488 * opencl-lang.c (opencl_logical_not): No longer static. Change
490 (evaluate_subexp_opencl): Update.
491 * c-exp.h (opencl_notequal_operation): New typedef.
493 2021-03-08 Tom Tromey <tom@tromey.com>
495 * opencl-lang.c (opencl_relop, eval_opencl_assign): No longer
496 static. Change parameters.
497 (eval_opencl_assign): No longer static. Add "op" parameter.
498 (evaluate_subexp_opencl): Update.
499 * c-exp.h (opencl_binop_operation): New template class.
500 (opencl_assign_operation, opencl_equal_operation)
501 (opencl_notequal_operation, opencl_less_operation)
502 (opencl_gtr_operation, opencl_geq_operation)
503 (opencl_leq_operation): New typedefs.
505 2021-03-08 Tom Tromey <tom@tromey.com>
507 * opencl-lang.c (opencl_value_cast): No longer static.
508 * c-exp.h (opencl_cast_type_operation): New typedef.
510 2021-03-08 Tom Tromey <tom@tromey.com>
512 * f-exp.h (eval_op_f_allocated): Declare.
513 (fortran_allocated_operation): New typedef.
514 * f-lang.c (eval_op_f_allocated): No longer static.
516 2021-03-08 Tom Tromey <tom@tromey.com>
518 * f-lang.c (eval_op_f_associated): New functions.
519 * f-exp.h (fortran_associated_1arg, fortran_associated_2arg): New
522 2021-03-08 Tom Tromey <tom@tromey.com>
524 * f-lang.c (fortran_bound_1arg::evaluate)
525 (fortran_bound_2arg::evaluate): New methods.
526 * f-exp.h (class fortran_bound_1arg, class fortran_bound_2arg):
529 2021-03-08 Tom Tromey <tom@tromey.com>
531 * expop.h (class unop_addr_operation) <get_expression>: New
533 * f-lang.c (fortran_undetermined::value_subarray)
534 (fortran_undetermined::evaluate): New methods.
535 (fortran_prepare_argument): New overload.
536 * f-exp.h (class fortran_range_operation)
537 (class fortran_undetermined): New classes.
539 2021-03-08 Tom Tromey <tom@tromey.com>
541 * rust-lang.c (rust_structop::evaluate_funcall): New method.
542 * rust-exp.h (class rust_structop) <evaluate_funcall>: Declare
545 2021-03-08 Tom Tromey <tom@tromey.com>
547 * expression.h (class operation) <evaluate_funcall>: New methods.
548 * expop.h (class scope_operation) <evaluate_funcall>: New method.
549 (class var_value_operation) <evaluate_funcall>: New method.
550 (class structop_base_operation) <evaluate_funcall>: New method.
551 (class var_msym_value_operation) <evaluate_funcall>: New method.
552 (class structop_member_base): New class.
553 (class structop_member_operation): Derive from
554 structop_member_base.
555 (class structop_mptr_operation): Derive from
556 structop_member_base.
557 (class funcall_operation): New class.
558 * eval.c (operation::evaluate_funcall)
559 (var_value_operation::evaluate_funcall)
560 (scope_operation::evaluate_funcall)
561 (structop_member_base::evaluate_funcall)
562 (structop_base_operation::evaluate_funcall): New methods.
564 2021-03-08 Tom Tromey <tom@tromey.com>
566 * expop.h (class array_operation): New.
567 * eval.c (array_operation::evaluate_struct_tuple)
568 (array_operation::evaluate): New methods.
570 2021-03-08 Tom Tromey <tom@tromey.com>
572 * expop.h (class adl_func_operation): New.
573 * eval.c (adl_func_operation::evaluate): New method.
575 2021-03-08 Tom Tromey <tom@tromey.com>
577 * ada-lang.c (ada_unop_in_range): No longer static.
578 * ada-exp.h (class ada_unop_range_operation): New.
580 2021-03-08 Tom Tromey <tom@tromey.com>
582 * ada-lang.c (ada_unop_neg, ada_atr_tag, ada_atr_size, ada_abs):
584 * ada-exp.h (ada_neg_operation, ada_atr_tag_operation)
585 (ada_atr_size_operation, ada_abs_operation): New typedefs.
587 2021-03-08 Tom Tromey <tom@tromey.com>
589 * expop.h (class logical_and_operation)
590 (class logical_or_operation): New.
591 * eval.c (logical_and_operation::evaluate)
592 (logical_or_operation::evaluate): New methods.
593 * ax-gdb.c (logical_and_operation::do_generate_ax)
594 (logical_or_operation::do_generate_ax): New methods.
596 2021-03-08 Tom Tromey <tom@tromey.com>
598 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): No longer
600 * m2-exp.h: New file.
602 2021-03-08 Tom Tromey <tom@tromey.com>
604 * rust-lang.c (rust_aggregate_operation::evaluate): New method.
605 * rust-exp.h (class rust_aggregate_operation): New.
607 2021-03-08 Tom Tromey <tom@tromey.com>
609 * rust-lang.c (eval_op_rust_struct_anon, eval_op_rust_structop):
611 * rust-exp.h (class rust_struct_anon): New.
612 (class rust_structop): New.
614 2021-03-08 Tom Tromey <tom@tromey.com>
616 * rust-lang.c (rust_range): No longer static.
617 * rust-exp.h (class rust_range_operation): New.
619 2021-03-08 Tom Tromey <tom@tromey.com>
621 * rust-lang.c (rust_subscript): No longer static.
622 * rust-exp.h (class rust_subscript_operation): New.
624 2021-03-08 Tom Tromey <tom@tromey.com>
626 * rust-lang.c (eval_op_rust_ind): No longer static. Add "opcode"
628 (rust_evaluate_subexp): Update.
629 * rust-exp.h (class rust_unop_ind_operation): New.
631 2021-03-08 Tom Tromey <tom@tromey.com>
633 * rust-lang.c (eval_op_rust_complement, eval_op_rust_array): No
634 longer static. Add "opcode" parameter.
635 (rust_evaluate_subexp): Update.
636 * rust-exp.h: New file.
638 2021-03-08 Tom Tromey <tom@tromey.com>
640 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
641 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx)
642 (eval_op_f_kind): No longer static. Add "opcode" parameter.
643 (evaluate_subexp_f): Update.
646 2021-03-08 Tom Tromey <tom@tromey.com>
648 * ada-lang.c (ada_ternop_range_operation::evaluate): New method.
649 * ada-exp.h (class ada_ternop_range_operation): New.
651 2021-03-08 Tom Tromey <tom@tromey.com>
653 * ada-lang.c (ada_qual_operation::evaluate): New method.
654 * ada-exp.h (class ada_qual_operation): New.
656 2021-03-08 Tom Tromey <tom@tromey.com>
658 * ada-lang.c (ada_string_operation::evaluate): New method.
659 * ada-exp.h (class ada_string_operation): New.
661 2021-03-08 Tom Tromey <tom@tromey.com>
663 * ada-lang.c (ada_wrapped_operation::evaluate): New method.
664 * ada-exp.h: New file.
666 2021-03-08 Tom Tromey <tom@tromey.com>
668 * expop.h (class multi_subscript_operation): New.
669 * eval.c (multi_subscript_operation::evaluate): New method.
671 2021-03-08 Tom Tromey <tom@tromey.com>
673 * eval.c (objc_msgcall_operation::evaluate): New method.
674 * c-exp.h (class objc_msgcall_operation): New.
676 2021-03-08 Tom Tromey <tom@tromey.com>
678 * expop.h (class var_value_operation): New.
679 * eval.c (var_value_operation::evaluate)
680 (var_value_operation::evaluate_for_address)
681 (var_value_operation::evaluate_with_coercion)
682 (var_value_operation::evaluate_for_sizeof)
683 (var_value_operation::evaluate_for_cast): New methods.
684 * ax-gdb.c (var_value_operation::do_generate_ax): New method.
686 2021-03-08 Tom Tromey <tom@tromey.com>
688 * expop.h (cxx_cast_ftype): New typedef.
689 (cxx_cast_operation): New template.
690 (dynamic_cast_operation, reinterpret_cast_operation): New
693 2021-03-08 Tom Tromey <tom@tromey.com>
695 * expop.h (class unop_cast_type_operation): New.
696 * ax-gdb.c (unop_cast_type_operation::do_generate_ax): New
699 2021-03-08 Tom Tromey <tom@tromey.com>
701 * expop.h (class unop_cast_operation): New.
702 * ax-gdb.c (unop_cast_operation::do_generate_ax): New method.
704 2021-03-08 Tom Tromey <tom@tromey.com>
706 * expop.h (class assign_modify_operation): New.
707 * eval.c (eval_binop_assign_modify): No longer static.
708 * ax-gdb.c (assign_modify_operation::do_generate_ax): New method.
710 2021-03-08 Tom Tromey <tom@tromey.com>
712 * expop.h (class assign_operation): New.
713 * ax-gdb.c (assign_operation::do_generate_ax): New method.
715 2021-03-08 Tom Tromey <tom@tromey.com>
717 * expop.h (class type_instance_operation): New.
718 * eval.c (type_instance_operation::evaluate): New method.
720 2021-03-08 Tom Tromey <tom@tromey.com>
722 * expop.h (class op_this_operation): New.
723 * ax-gdb.c (op_this_operation::do_generate_ax): New method.
725 2021-03-08 Tom Tromey <tom@tromey.com>
727 * expop.h (class unop_memval_operation)
728 (class unop_memval_type_operation): New.
729 * eval.c (eval_op_memval): No longer static.
730 (unop_memval_operation::evaluate_for_address)
731 (unop_memval_type_operation::evaluate_for_address)
732 (unop_memval_operation::evaluate_for_sizeof)
733 (unop_memval_type_operation::evaluate_for_sizeof): New methods.
734 * ax-gdb.c (unop_memval_operation::do_generate_ax)
735 (unop_memval_type_operation::do_generate_ax): New methods.
737 2021-03-08 Tom Tromey <tom@tromey.com>
739 * expop.h (class unop_alignof_operation): New.
740 * eval.c (eval_op_alignof): No longer static.
742 2021-03-08 Tom Tromey <tom@tromey.com>
744 * expop.h (class unop_sizeof_operation): New.
745 * ax-gdb.c (unop_sizeof_operation::do_generate_ax): New method.
747 2021-03-08 Tom Tromey <tom@tromey.com>
749 * expop.h (class unop_addr_operation): New.
750 * ax-gdb.c (gen_expr_unop) <case UNOP_ADDR>: New.
752 2021-03-08 Tom Tromey <tom@tromey.com>
754 * expop.h (class typeid_operation): New.
756 2021-03-08 Tom Tromey <tom@tromey.com>
758 * expop.h (class decltype_operation): New.
760 2021-03-08 Tom Tromey <tom@tromey.com>
762 * expop.h (class typeof_operation): New.
764 2021-03-08 Tom Tromey <tom@tromey.com>
766 * expop.h (class type_operation): New.
767 * eval.c (eval_op_type): No longer static.
769 2021-03-08 Tom Tromey <tom@tromey.com>
771 * expop.h (class unop_ind_base_operation)
772 (class unop_ind_operation): New.
773 * eval.c (eval_op_ind): No longer static. Remove "op" parameter.
774 (unop_ind_base_operation::evaluate_for_address)
775 (unop_ind_base_operation::evaluate_for_sizeof): New method.
776 * ax-gdb.c (gen_expr_unop) <case UNOP_IND>: New.
778 2021-03-08 Tom Tromey <tom@tromey.com>
780 * expop.h (unop_incr_operation): New template.
781 (preinc_operation, predec_operation, postinc_operation)
782 (postdec_operation): New typedefs.
783 * eval.c (eval_op_preinc, eval_op_predec, eval_op_postinc)
784 (eval_op_postdec): No longer static.
786 2021-03-08 Tom Tromey <tom@tromey.com>
788 * expop.h (unary_ftype): New typedef.
789 (unop_operation, usual_ax_binop_operation): New templates.
790 (unary_plus_operation, unary_neg_operation)
791 (unary_complement_operation, unary_logical_not_operation): New
793 * eval.c (eval_op_plus, eval_op_neg, eval_op_complement)
794 (eval_op_lognot): No longer static.
795 * ax-gdb.c (gen_expr_unop): New function.
797 2021-03-08 Tom Tromey <tom@tromey.com>
799 * ax-gdb.c (comma_operation::do_generate_ax): New method.
801 2021-03-08 Tom Tromey <tom@tromey.com>
803 * expop.h (class repeat_operation): New.
804 * eval.c (eval_op_repeat): No longer static. Remove "op"
806 (evaluate_subexp_standard): Update.
807 * ax-gdb.c (repeat_operation::do_generate_ax): New method.
809 2021-03-08 Tom Tromey <tom@tromey.com>
811 * expop.h (class comparison_operation): New.
812 (equal_operation, notequal_operation, less_operation)
813 (gtr_operation, geq_operation, leq_operation): New typedefs.
814 * eval.c (eval_op_equal, eval_op_notequal, eval_op_less)
815 (eval_op_gtr, eval_op_geq, eval_op_leq): No longer static.
817 2021-03-08 Tom Tromey <tom@tromey.com>
819 * expop.h (class subscript_operation): New.
820 * eval.c (eval_op_subscript): No longer static.
822 2021-03-08 Tom Tromey <tom@tromey.com>
824 * expop.h (class binop_operation, class usual_ax_binop_operation):
826 (exp_operation, intdiv_operation, mod_operation, mul_operation)
827 (div_operation, rem_operation, lsh_operation, rsh_operation)
828 (bitwise_and_operation, bitwise_ior_operation)
829 (bitwise_xor_operation): New typedefs.
830 * eval.c (eval_op_binary): No longer static.
832 2021-03-08 Tom Tromey <tom@tromey.com>
834 * expop.h (class sub_operation): New.
835 * eval.c (eval_op_sub): No longer static. Remove "op" parameter.
836 (evaluate_subexp_standard): Update.
838 2021-03-08 Tom Tromey <tom@tromey.com>
840 * expop.h (class add_operation): New.
841 * eval.c (eval_op_add): No longer static. Remove "op" parameter.
842 (evaluate_subexp_standard): Update.
844 2021-03-08 Tom Tromey <tom@tromey.com>
846 * expop.h (class concat_operation): New.
847 * eval.c (eval_op_concat): No longer static. Remove "op"
849 (evaluate_subexp_standard): Update.
851 2021-03-08 Tom Tromey <tom@tromey.com>
853 * expop.h (class structop_member_operation)
854 (class structop_mptr_operation): New.
855 * eval.c (eval_op_member): No longer static.
857 2021-03-08 Tom Tromey <tom@tromey.com>
859 * expop.h (class structop_ptr_operation): New.
860 * eval.c (eval_op_structop_ptr): No longer static. Remove "op"
863 2021-03-08 Tom Tromey <tom@tromey.com>
865 * expop.h (class structop_base_operation)
866 (class structop_operation): New.
867 * eval.c (eval_op_structop_struct): No longer static.
869 2021-03-08 Tom Tromey <tom@tromey.com>
871 * expop.h (class complex_operation): New.
873 2021-03-08 Tom Tromey <tom@tromey.com>
875 * eval.c (eval_op_objc_selector): No longer static.
876 * c-exp.h (class objc_selector_operation): New.
878 2021-03-08 Tom Tromey <tom@tromey.com>
880 * eval.c: Include c-exp.h.
881 * c-exp.h (class objc_nsstring_operation): New.
883 2021-03-08 Tom Tromey <tom@tromey.com>
885 * c-lang.c (c_string_operation::evaluate): New method.
888 2021-03-08 Tom Tromey <tom@tromey.com>
890 * expop.h (class ternop_cond_operation): New.
891 * ax-gdb.c (ternop_cond_operation::do_generate_ax): New method.
893 2021-03-08 Tom Tromey <tom@tromey.com>
895 * expop.h (class ternop_slice_operation): New.
896 * eval.c (eval_op_ternop): No longer static.
898 2021-03-08 Tom Tromey <tom@tromey.com>
900 * expop.h (class string_operation): New.
901 * eval.c (eval_op_string): No longer static.
903 2021-03-08 Tom Tromey <tom@tromey.com>
905 * expop.h (class internalvar_operation): New.
906 * ax-gdb.c (internalvar_operation::do_generate_ax): New method.
908 2021-03-08 Tom Tromey <tom@tromey.com>
910 * expop.h (class bool_operation): New.
912 2021-03-08 Tom Tromey <tom@tromey.com>
914 * expop.h (class register_operation): New.
915 * eval.c (eval_op_register): No longer static.
916 * ax-gdb.c (register_operation::do_generate_ax): New method.
918 2021-03-08 Tom Tromey <tom@tromey.com>
920 * expop.h (class last_operation): New.
922 2021-03-08 Tom Tromey <tom@tromey.com>
924 * expop.h (class func_static_var_operation): New.
925 * eval.c (eval_op_func_static_var): No longer static.
927 2021-03-08 Tom Tromey <tom@tromey.com>
929 * expop.h (class var_entry_value_operation): New.
930 * eval.c (eval_op_var_entry_value): No longer static.
932 2021-03-08 Tom Tromey <tom@tromey.com>
934 * expression.h (class operation) <set_outermost>: New method.
935 * expop.h (class var_msym_value_operation): New.
936 * eval.c (eval_op_var_msym_value): No longer static.
937 (var_msym_value_operation::evaluate_for_address)
938 (var_msym_value_operation::evaluate_for_sizeof)
939 (var_msym_value_operation::evaluate_for_cast): New methods.
940 * ax-gdb.c (var_msym_value_operation::do_generate_ax): New
943 2021-03-08 Tom Tromey <tom@tromey.com>
945 * expop.h (class long_const_operation): New.
946 * ax-gdb.c (long_const_operation::do_generate_ax): New method.
948 2021-03-08 Tom Tromey <tom@tromey.com>
950 * expop.h (class scope_operation): New.
951 * eval.c (eval_op_scope): No longer static.
952 (scope_operation::evaluate_for_address): New method.
953 * ax-gdb.c (scope_operation::do_generate_ax): New method.
955 2021-03-08 Tom Tromey <tom@tromey.com>
957 * expprint.c (float_const_operation::dump): New method.
958 * expop.h (float_data): New typedef.
959 (class float_const_operation): New.
961 2021-03-08 Tom Tromey <tom@tromey.com>
963 * expop.h (gen_expr_binop, gen_expr_structop): Declare.
964 * ax-gdb.c (gen_expr_binop): New function.
965 (gen_expr_structop): Likewise.
967 2021-03-08 Tom Tromey <tom@tromey.com>
969 * expprint.c (expr::dump_for_expression): New functions.
970 * expop.h (dump_for_expression): New overloads.
971 (tuple_holding_operation::dump, tuple_holding_operation::do_dump):
974 2021-03-08 Tom Tromey <tom@tromey.com>
976 * expression.h (expr::operation): New class.
977 (expr::make_operation): New function.
978 (expr::operation_up): New typedef.
980 * eval.c (operation::evaluate_for_cast)
981 (operation::evaluate_for_address, operation::evaluate_for_sizeof):
983 * ax-gdb.c (operation::generate_ax): New method.
985 2021-03-08 Tom Tromey <tom@tromey.com>
987 * ax-gdb.c (gen_expr_binop_rest): Remove "pc" parameter.
988 (gen_expr_binop_rest): New overload.
990 2021-03-08 Tom Tromey <tom@tromey.com>
992 * eval.c (eval_multi_subscript): New function.
993 (evaluate_subexp_standard): Use it.
995 2021-03-08 Tom Tromey <tom@tromey.com>
997 * ada-lang.c (ada_binop_exp): New function.
998 (ada_evaluate_subexp): Use it.
1000 2021-03-08 Tom Tromey <tom@tromey.com>
1002 * ada-lang.c (ada_val_atr): Rename from value_val_atr. Change
1004 (ada_evaluate_subexp): Use it.
1006 2021-03-08 Tom Tromey <tom@tromey.com>
1008 * ada-lang.c (ada_binop_minmax): New function.
1009 (ada_evaluate_subexp): Use it.
1011 2021-03-08 Tom Tromey <tom@tromey.com>
1013 * ada-lang.c (ada_unop_atr): New function.
1014 (ada_evaluate_subexp): Use it.
1016 2021-03-08 Tom Tromey <tom@tromey.com>
1018 * ada-lang.c (ada_binop_in_bounds): New function.
1019 (ada_evaluate_subexp): Use it.
1021 2021-03-08 Tom Tromey <tom@tromey.com>
1023 * ada-lang.c (ada_ternop_slice): New function.
1024 (ada_evaluate_subexp): Use it.
1026 2021-03-08 Tom Tromey <tom@tromey.com>
1028 * ada-lang.c (ada_equal_binop): New function.
1029 (ada_evaluate_subexp): Use it.
1031 2021-03-08 Tom Tromey <tom@tromey.com>
1033 * ada-lang.c (ada_mult_binop): New function.
1034 (ada_evaluate_subexp): Use it.
1036 2021-03-08 Tom Tromey <tom@tromey.com>
1038 * ada-lang.c (ada_abs): New function.
1039 (ada_evaluate_subexp): Use it.
1041 2021-03-08 Tom Tromey <tom@tromey.com>
1043 * ada-lang.c (ada_atr_size): New function.
1044 (ada_evaluate_subexp): Use it.
1046 2021-03-08 Tom Tromey <tom@tromey.com>
1048 * ada-lang.c (ada_atr_tag): New function.
1049 (ada_evaluate_subexp): Use it.
1051 2021-03-08 Tom Tromey <tom@tromey.com>
1053 * ada-lang.c (ada_unop_in_range): New function.
1054 (ada_evaluate_subexp): Use it.
1056 2021-03-08 Tom Tromey <tom@tromey.com>
1058 * ada-lang.c (ada_unop_neg): New function.
1059 (ada_evaluate_subexp): Use it.
1061 2021-03-08 Tom Tromey <tom@tromey.com>
1063 * ada-lang.c (eval_ternop_in_range): New function.
1064 (ada_evaluate_subexp): Use it.
1066 2021-03-08 Tom Tromey <tom@tromey.com>
1068 * opencl-lang.c (eval_opencl_assign): New function.
1069 (evaluate_subexp_opencl): Use it.
1071 2021-03-08 Tom Tromey <tom@tromey.com>
1073 * eval.c (eval_op_objc_msgcall): New function.
1074 (evaluate_subexp_standard): Use it.
1076 2021-03-08 Tom Tromey <tom@tromey.com>
1078 * eval.c (eval_binop_assign_modify): New function.
1079 (evaluate_subexp_standard): Use it.
1081 2021-03-08 Tom Tromey <tom@tromey.com>
1083 * m2-lang.c (eval_op_m2_subscript): New function.
1084 (evaluate_subexp_modula2): Use it.
1086 2021-03-08 Tom Tromey <tom@tromey.com>
1088 * m2-lang.c (eval_op_m2_high): New function.
1089 (evaluate_subexp_modula2): Use it.
1091 2021-03-08 Tom Tromey <tom@tromey.com>
1093 * eval.c (evaluate_subexp_for_address_base): New function.
1094 (evaluate_subexp_for_address): Use it.
1095 (evaluate_subexp_for_sizeof_base): New function.
1096 (evaluate_subexp_for_sizeof): Use it.
1098 2021-03-08 Tom Tromey <tom@tromey.com>
1100 * rust-lang.c (eval_op_rust_structop): New function.
1101 (rust_evaluate_subexp): Use it.
1103 2021-03-08 Tom Tromey <tom@tromey.com>
1105 * rust-lang.c (eval_op_rust_struct_anon): New function.
1106 (rust_evaluate_subexp): Use it.
1108 2021-03-08 Tom Tromey <tom@tromey.com>
1110 * rust-lang.c (eval_op_rust_array): New function.
1111 (rust_evaluate_subexp): Use it.
1113 2021-03-08 Tom Tromey <tom@tromey.com>
1115 * rust-lang.c (eval_op_rust_complement): New function.
1116 (rust_evaluate_subexp): Use it.
1118 2021-03-08 Tom Tromey <tom@tromey.com>
1120 * rust-lang.c (eval_op_rust_ind): New function.
1121 (rust_evaluate_subexp): Use it.
1123 2021-03-08 Tom Tromey <tom@tromey.com>
1125 * rust-lang.c (rust_subscript): Change parameters.
1126 (rust_evaluate_subexp): Update.
1128 2021-03-08 Tom Tromey <tom@tromey.com>
1130 * rust-lang.c (rust_range): Change parameters.
1131 (rust_evaluate_subexp): Update.
1133 2021-03-08 Tom Tromey <tom@tromey.com>
1135 * f-lang.c (eval_op_f_allocated): New function.
1136 (evaluate_subexp_f): Use it.
1138 2021-03-08 Tom Tromey <tom@tromey.com>
1140 * f-lang.c (fortran_require_array): New function.
1141 (evaluate_subexp_f): Use it.
1143 2021-03-08 Tom Tromey <tom@tromey.com>
1145 * f-lang.c (eval_op_f_kind): New function.
1146 (evaluate_subexp_f): Use it.
1148 2021-03-08 Tom Tromey <tom@tromey.com>
1150 * f-lang.c (eval_op_f_cmplx): New function.
1151 (evaluate_subexp_f): Use it.
1153 2021-03-08 Tom Tromey <tom@tromey.com>
1155 * f-lang.c (eval_op_f_modulo): New function.
1156 (evaluate_subexp_f): Use it.
1158 2021-03-08 Tom Tromey <tom@tromey.com>
1160 * f-lang.c (eval_op_f_floor): New function.
1161 (evaluate_subexp_f): Use it.
1163 2021-03-08 Tom Tromey <tom@tromey.com>
1165 * f-lang.c (eval_op_f_ceil): New function.
1166 (evaluate_subexp_f): Use it.
1168 2021-03-08 Tom Tromey <tom@tromey.com>
1170 * f-lang.c (eval_op_f_mod): New function.
1171 (evaluate_subexp_f): Use it.
1173 2021-03-08 Tom Tromey <tom@tromey.com>
1175 * f-lang.c (eval_op_f_abs): New function.
1176 (evaluate_subexp_f): Use it.
1178 2021-03-08 Tom Tromey <tom@tromey.com>
1180 * eval.c (eval_op_type): New function.
1181 (evaluate_subexp_standard): Use it.
1183 2021-03-08 Tom Tromey <tom@tromey.com>
1185 * eval.c (eval_op_postdec): New function.
1186 (evaluate_subexp_standard): Use it.
1188 2021-03-08 Tom Tromey <tom@tromey.com>
1190 * eval.c (eval_op_postinc): New function.
1191 (evaluate_subexp_standard): Use it.
1193 2021-03-08 Tom Tromey <tom@tromey.com>
1195 * eval.c (eval_op_predec): New file.
1196 (evaluate_subexp_standard): Use it.
1198 2021-03-08 Tom Tromey <tom@tromey.com>
1200 * eval.c (eval_op_preinc): New function.
1201 (evaluate_subexp_standard): Use it.
1203 2021-03-08 Tom Tromey <tom@tromey.com>
1205 * eval.c (eval_op_memval): New function.
1206 (evaluate_subexp_standard): Use it.
1208 2021-03-08 Tom Tromey <tom@tromey.com>
1210 * eval.c (eval_op_alignof): New function.
1211 (evaluate_subexp_standard): Use it.
1213 2021-03-08 Tom Tromey <tom@tromey.com>
1215 * eval.c (eval_op_ind): New function.
1216 (evaluate_subexp_standard): Use it.
1218 2021-03-08 Tom Tromey <tom@tromey.com>
1220 * eval.c (eval_op_lognot): New function.
1221 (evaluate_subexp_standard): Use it.
1223 2021-03-08 Tom Tromey <tom@tromey.com>
1225 * eval.c (eval_op_complement): New function.
1226 (evaluate_subexp_standard): Use it.
1228 2021-03-08 Tom Tromey <tom@tromey.com>
1230 * eval.c (eval_op_neg): New function.
1231 (evaluate_subexp_standard): Use it.
1233 2021-03-08 Tom Tromey <tom@tromey.com>
1235 * eval.c (eval_op_plus): New function.
1236 (evaluate_subexp_standard): Use it.
1238 2021-03-08 Tom Tromey <tom@tromey.com>
1240 * eval.c (eval_op_repeat): New function.
1241 (evaluate_subexp_standard): Use it.
1243 2021-03-08 Tom Tromey <tom@tromey.com>
1245 * eval.c (eval_op_leq): New function.
1246 (evaluate_subexp_standard): Use it.
1248 2021-03-08 Tom Tromey <tom@tromey.com>
1250 * eval.c (eval_op_geq): New function.
1251 (evaluate_subexp_standard): Use it.
1253 2021-03-08 Tom Tromey <tom@tromey.com>
1255 * eval.c (eval_op_gtr): New function.
1256 (evaluate_subexp_standard): Use it.
1258 2021-03-08 Tom Tromey <tom@tromey.com>
1260 * eval.c (eval_op_less): New function.
1261 (evaluate_subexp_standard): Use it.
1263 2021-03-08 Tom Tromey <tom@tromey.com>
1265 * eval.c (eval_op_notequal): New function.
1266 (evaluate_subexp_standard): Use it.
1268 2021-03-08 Tom Tromey <tom@tromey.com>
1270 * eval.c (eval_op_equal): New function.
1271 (evaluate_subexp_standard): Use it.
1273 2021-03-08 Tom Tromey <tom@tromey.com>
1275 * eval.c (eval_op_subscript): New function.
1276 (evaluate_subexp_standard): Use it.
1278 2021-03-08 Tom Tromey <tom@tromey.com>
1280 * eval.c (eval_op_binary): New function.
1281 (evaluate_subexp_standard): Use it.
1283 2021-03-08 Tom Tromey <tom@tromey.com>
1285 * eval.c (eval_op_sub): New function.
1286 (evaluate_subexp_standard): Use it.
1288 2021-03-08 Tom Tromey <tom@tromey.com>
1290 * eval.c (eval_op_add): New function.
1291 (evaluate_subexp_standard): Use it.
1293 2021-03-08 Tom Tromey <tom@tromey.com>
1295 * eval.c (eval_op_member): New function.
1296 (evaluate_subexp_standard): Use it.
1298 2021-03-08 Tom Tromey <tom@tromey.com>
1300 * eval.c (eval_op_structop_ptr): New function.
1301 (evaluate_subexp_standard): Use it.
1303 2021-03-08 Tom Tromey <tom@tromey.com>
1305 * eval.c (eval_op_structop_struct): New function.
1306 (evaluate_subexp_standard): Use it.
1308 2021-03-08 Tom Tromey <tom@tromey.com>
1310 * eval.c (eval_op_ternop): New function.
1311 (evaluate_subexp_standard): Use it.
1313 2021-03-08 Tom Tromey <tom@tromey.com>
1315 * eval.c (eval_op_concat): New function.
1316 (evaluate_subexp_standard): Use it.
1318 2021-03-08 Tom Tromey <tom@tromey.com>
1320 * eval.c (eval_op_objc_selector): New function.
1321 (evaluate_subexp_standard): Use it.
1323 2021-03-08 Tom Tromey <tom@tromey.com>
1325 * eval.c (eval_op_string): New function.
1326 (evaluate_subexp_standard): Use it.
1328 2021-03-08 Tom Tromey <tom@tromey.com>
1330 * eval.c (eval_op_register): New function.
1331 (evaluate_subexp_standard): Use it.
1333 2021-03-08 Tom Tromey <tom@tromey.com>
1335 * eval.c (eval_op_func_static_var): New function.
1336 (evaluate_subexp_standard): Use it.
1338 2021-03-08 Tom Tromey <tom@tromey.com>
1340 * eval.c (eval_op_var_msym_value): New function.
1341 (evaluate_subexp_standard): Use it.
1343 2021-03-08 Tom Tromey <tom@tromey.com>
1345 * eval.c (eval_op_var_entry_value): New function.
1346 (evaluate_subexp_standard): Use it.
1348 2021-03-08 Tom Tromey <tom@tromey.com>
1350 * eval.c (eval_op_scope): New function.
1351 (evaluate_subexp_standard): Use it.
1353 2021-03-06 Chernov Sergey <klen_s@mail.ru>
1356 * ada-lang.c (ada_fold_name): Use gdb::to_string.
1358 2021-03-06 Tom Tromey <tom@tromey.com>
1360 * dwarf2/sect-names.h (dwarf2_elf_names): Declare.
1361 * dwarf2/read.h (dwarf2_get_dwz_file): Move to dwz.h.
1362 * dwarf2/read.c (dwarf2_elf_names): No longer static.
1363 (locate_dwz_sections, dwz_search_other_debugdirs)
1364 (dwarf2_get_dwz_file): Move to dwz.c.
1365 * dwarf2/dwz.h (dwarf2_get_dwz_file): Move declaration from
1367 * dwarf2/dwz.c (locate_dwz_sections, dwz_search_other_debugdirs)
1368 (dwarf2_get_dwz_file): Move from read.c.
1370 2021-03-06 Tom Tromey <tom@tromey.com>
1372 * debuginfod-support.h: Include scoped_fd.h.
1374 2021-03-06 Tom Tromey <tom@tromey.com>
1376 * dwarf2/read.h (dwarf2_get_dwz_file): Add 'require' parameter.
1377 * dwarf2/read.c (dwarf2_get_dwz_file): Add 'require' parameter.
1378 (get_abbrev_section_for_cu, read_attribute_value)
1379 (get_debug_line_section): Update.
1380 * dwarf2/macro.c (dwarf_decode_macro_bytes): Update.
1382 2021-03-06 Tom Tromey <tom@tromey.com>
1384 * dwarf2/sect-names.h (struct dwarf2_section_names) <matches>: New
1386 * dwarf2/read.c (section_is_p): Remove.
1387 (dwarf2_per_bfd::locate_sections)
1388 (dwarf2_per_bfd::locate_sections, locate_dwz_sections)
1389 (locate_v1_virtual_dwo_sections, dwarf2_locate_dwo_sections)
1390 (dwarf2_locate_common_dwp_sections)
1391 (dwarf2_locate_v2_dwp_sections, dwarf2_locate_v5_dwp_sections):
1394 2021-03-06 Tom Tromey <tom@tromey.com>
1396 * xcoffread.c: Include sect-names.h.
1397 * symfile.h (struct dwarf2_section_names, struct
1398 dwarf2_debug_sections): Move to dwarf2/sect-names.h.
1399 * dwarf2/sect-names.h: New file, from symfile.h.
1400 * dwarf2/read.c: Include sect-names.h.
1402 2021-03-06 Tom Tromey <tom@tromey.com>
1404 * dwarf2/read.c (read_attribute): Make 'abbrev' const.
1405 * dwarf2/abbrev.c (abbrev_table::alloc_abbrev): Remove.
1406 (abbrev_table::read): Update.
1407 * dwarf2/abbrev.h (struct attr_abbrev): Move earlier.
1408 (struct abbrev_info): Reformat.
1409 <attrs>: Now an array.
1410 (struct abbrev_table) <alloc_abbrev>: Remove.
1412 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
1414 * ctfread.c (ctf_psymtab_add_enums): New function.
1415 (ctf_psymtab_type_cb): call ctf_psymtab_add_enums.
1417 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
1419 * ctfread.c (read_func_kind_type): Set up function arguments.
1421 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1422 Andrew Burgess <andrew.burgess@embecosm.com>
1424 * riscv-none-tdep.c: Add 'user-regs.h' and 'target-description.h'
1426 (riscv_csrset): New static global.
1427 (riscv_update_csrmap): New function.
1428 (riscv_iterate_over_regset_sections): Process CSRs.
1430 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
1432 * riscv-tdep.c (riscv_feature_name_csr): Define.
1433 (riscv_feature_name_cpu): Define.
1434 (riscv_feature_name_fpu): Define.
1435 (riscv_feature_name_virtual): Define.
1436 (riscv_xreg_feature): Use riscv_feature_name_cpu.
1437 (riscv_freg_feature): Use riscv_feature_name_fpu.
1438 (riscv_virtual_feature): Use riscv_feature_name_virtual.
1439 (riscv_csr_feature): Use riscv_feature_name_csr.
1440 * riscv-tdep.h (riscv_feature_name_csr): Declare.
1442 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
1443 Craig Blackmore <craig.blackmore@embecosm.com>
1445 * Makefile.in (ALL_TARGET_OBS): Add riscv-none-tdep.o.
1446 (ALLDEPFILES): Add riscv-none-tdep.c.
1447 * configure: Regenerate.
1448 * configure.ac (CONFIG_OBS): Add elf-none-tdep.o when BFD has ELF
1450 * configure.tgt (riscv*-*-*): Include riscv-none-tdep.c.
1451 * elf-none-tdep.c: New file.
1452 * elf-none-tdep.h: New file.
1453 * riscv-none-tdep.c: New file.
1455 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1456 Andrew Burgess <andrew.burgess@embecosm.com>
1458 * corelow.c: Add 'xml-tdesc.h' include.
1459 (core_target::read_description): Load the target description from
1460 the core file when possible.
1461 * fbsd-tdep.c (fbsd_make_corefile_notes): Add target description
1463 * gcore-elf.c: Add 'gdbsupport/tdesc.h' include.
1464 (gcore_elf_make_tdesc_note): New function.
1465 * gcore-elf.h (gcore_elf_make_tdesc_note): Declare.
1466 * linux-tdep.c (linux_make_corefile_notes): Add target description
1469 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
1471 * Makefile.in (SFILES): Add gcore-elf.c.
1472 (HFILES_NO_SRCDIR): Add gcore-elf.h
1473 * configure: Regenerate.
1474 * configure.ac: Add gcore-elf.o to CONFIG_OBS if we have ELF
1476 * fbsd-tdep.c: Add 'gcore-elf.h' include.
1477 (struct fbsd_collect_regset_section_cb_data): Delete.
1478 (fbsd_collect_regset_section_cb): Delete.
1479 (fbsd_collect_thread_registers): Delete.
1480 (struct fbsd_corefile_thread_data): Delete.
1481 (fbsd_corefile_thread): Delete.
1482 (fbsd_make_corefile_notes): Call
1483 gcore_elf_build_thread_register_notes instead of the now deleted
1485 * gcore-elf.c: New file, the content was moved here from
1486 linux-tdep.c, functions were renamed and given minor cleanup.
1487 * gcore-elf.h: New file.
1488 * gcore.c (gcore_find_signalled_thread): Moved here from
1489 linux-tdep.c and given a new name. Minor cleanups.
1490 * gcore.h (gcore_find_signalled_thread): Declare.
1491 * linux-tdep.c: Add 'gcore.h' and 'gcore-elf.h' includes.
1492 (struct linux_collect_regset_section_cb_data): Delete.
1493 (linux_collect_regset_section_cb): Delete.
1494 (linux_collect_thread_registers): Delete.
1495 (linux_corefile_thread): Call
1496 gcore_elf_build_thread_register_notes.
1497 (find_signalled_thread): Delete.
1498 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
1500 2021-03-04 Simon Marchi <simon.marchi@polymtl.ca>
1503 * sparc-nat.h (sparc_fetch_inferior_registers): Add
1504 process_stratum_target parameter,
1505 sparc_store_inferior_registers): update callers.
1506 * sparc-nat.c (sparc_fetch_inferior_registers,
1507 sparc_store_inferior_registers): Add process_stratum_target
1508 parameter. Switch current thread before calling
1509 sparc_supply_gregset / sparc_collect_rwindow.
1510 (sparc_store_inferior_registers): Likewise.
1511 * sparc-obsd-tdep.c (sparc32obsd_supply_uthread): Add assertion.
1512 (sparc32obsd_collect_uthread): Likewise.
1513 * sparc-tdep.c (sparc_supply_rwindow, sparc_collect_rwindow):
1515 * sparc64-obsd-tdep.c (sparc64obsd_collect_uthread,
1516 sparc64obsd_supply_uthread): Add assertion.
1518 2021-03-04 Tom Tromey <tromey@adacore.com>
1520 * ada-lang.c (struct match_data) <found_sym>: Now bool.
1521 (aux_add_nonlocal_symbols): Update.
1522 (ada_add_block_symbols): Change "found_sym" to bool.
1524 2021-03-03 Tom Tromey <tromey@adacore.com>
1526 * ada-lang.c (ada_resolve_function): Update comment.
1527 (is_nonfunction, add_symbols_from_enclosing_procs)
1528 (remove_extra_symbols): Likewise.
1529 (struct match_data): Add constructor, initializers.
1530 (add_nonlocal_symbols): Remove memset.
1531 (aux_add_nonlocal_symbols): Update comment.
1532 (ada_add_block_renamings, add_nonlocal_symbols)
1533 (ada_add_all_symbols): Likewise.
1534 * ada-exp.y (write_var_or_type): Clean up trailing whitespace.
1536 2021-03-02 Tom Tromey <tromey@adacore.com>
1538 * ada-lang.c (cast_from_gnat_encoded_fixed_point_type)
1539 (cast_to_gnat_encoded_fixed_point_type): Remove.
1540 (ada_value_cast, ada_evaluate_subexp): Update.
1541 (gnat_encoded_fixed_point_type_info)
1542 (ada_is_gnat_encoded_fixed_point_type)
1543 (gnat_encoded_fixed_point_delta)
1544 (gnat_encoded_fixed_point_scaling_factor): Remove.
1545 * ada-lang.h (ada_is_gnat_encoded_fixed_point_type)
1546 (gnat_encoded_fixed_point_delta)
1547 (gnat_encoded_fixed_point_scaling_factor): Don't declare.
1548 * ada-typeprint.c (print_gnat_encoded_fixed_point_type): Remove.
1549 (ada_print_type): Update.
1550 * ada-valprint.c (ada_value_print_num): Update.
1551 * dwarf2/read.c (ada_get_gnat_encoded_number)
1552 (ada_get_gnat_encoded_ratio): New functions.
1553 (finish_fixed_point_type): Use them. Add parameters.
1554 (GNAT_FIXED_POINT_SUFFIX): New define.
1555 (gnat_encoded_fixed_point_type_info): New function.
1556 (read_base_type): Handle gnat encodings.
1558 2021-03-02 Tom Tromey <tromey@adacore.com>
1560 * ada-lang.c (ada_fold_name, ada_variant_discrim_name)
1561 (ada_enum_name, scan_discrim_bound, to_fixed_range_type): Use
1563 (GROW_VECT): Remove.
1564 (grow_vect): Remove.
1566 2021-03-02 Tom Tromey <tromey@adacore.com>
1568 * ada-lang.h (ada_lookup_symbol_list): Return a vector.
1569 * ada-lang.c (resolve_subexp): Update.
1570 (ada_resolve_function): Accept a vector.
1571 (is_nonfunction, add_defn_to_vec)
1572 (add_symbols_from_enclosing_procs): Likewise.
1573 (num_defns_collected, defns_collected): Remove.
1574 (remove_extra_symbols): Return a vector.
1575 (remove_irrelevant_renamings): Return void.
1576 (ada_add_local_symbols): Accept a vector.
1577 (struct match_data) <obstackp>: Remove.
1578 <resultp>: New member.
1579 (aux_add_nonlocal_symbols): Update.
1580 (ada_add_block_renamings, add_nonlocal_symbols)
1581 (ada_add_all_symbols): Accept a vector.
1582 (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Return a
1584 (ada_lookup_symbol): Update.
1585 (ada_add_block_symbols): Accept a vector.
1586 (get_var_value, iterate_over_symbols): Update.
1587 * ada-exp.y (block_lookup, write_var_or_type, write_name_assoc):
1590 2021-03-02 Tom Tromey <tromey@adacore.com>
1592 * ada-lang.c (resolve_subexp): Use any_of and erase-remove idiom.
1594 2021-03-02 Tom Tromey <tromey@adacore.com>
1596 * ada-lang.c (struct ada_symbol_cache) <cache_space>: Now an
1599 (ada_pspace_data): Remove destructor.
1600 <sym_cache>: Now a unique_ptr.
1601 (ada_init_symbol_cache, ada_free_symbol_cache): Remove.
1602 (ada_get_symbol_cache): Use 'new'.
1603 (ada_clear_symbol_cache): Rewrite.
1605 2021-03-02 Tom Tromey <tromey@adacore.com>
1607 * ada-lang.c (add_nonlocal_symbols): Handle case where objfile->sf
1610 2021-02-27 Lancelot Six <lsix@lancelotsix.com>
1613 * source.c (add_path): Skip empty dirnames.
1615 2021-02-25 Kevin Buettner <kevinb@redhat.com>
1617 * nat/aarch64-sve-linux-ptrace.h: Add comment regarding
1618 include order for <sys/ptrace.h> and <asm/ptrace.h>.
1620 2021-02-25 Simon Marchi <simon.marchi@polymtl.ca>
1623 * target.c (target_mourn_inferior): Only compare pids in
1624 target_mourn_inferior.
1626 2021-02-25 Jan Matyas <jmatyas@codasip.com>
1629 * remote.c (remote_target::start_remote): Ensure the single
1630 thread, automatically added for remote targets without the
1631 concept of threading, is initially in set to the "resumed"
1633 * remote.c (remote_target::add_current_inferior_and_thread):
1634 Add return value - return the main thread.
1636 2021-02-25 Jan Vrany <jan.vrany@labware.com>
1638 * gdb/mi/mi-interp.c (mi_traceframe_changed): Remove trailing \n from output.
1639 (mi_tsv_created): Likewise.
1640 (mi_tsv_deleted): Likewise.
1642 2021-02-25 Tom de Vries <tdevries@suse.de>
1645 * dwarf2/read.c (open_and_init_dwo_file): Use rcuh_kind::COMPILE as
1646 section_kind for &dwo_file->sections.info.
1648 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
1651 * f-lang.c (fortran_argument_convert): Delete declaration.
1652 (fortran_prepare_argument): New function.
1653 (evaluate_subexp_f): Move logic to new function
1654 fortran_prepare_argument.
1656 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
1658 * f-exp.y (f77_keywords): Add 'associated'.
1659 * f-lang.c (fortran_associated): New function.
1660 (evaluate_subexp_f): Handle FORTRAN_ASSOCIATED.
1661 (operator_length_f): Likewise.
1662 (print_unop_or_binop_subexp_f): New function.
1663 (print_subexp_f): Make use of print_unop_or_binop_subexp_f for
1664 FORTRAN_ASSOCIATED, FORTRAN_LBOUND, and FORTRAN_UBOUND.
1665 (dump_subexp_body_f): Handle FORTRAN_ASSOCIATED.
1666 (operator_check_f): Likewise.
1667 * std-operator.def: Add FORTRAN_ASSOCIATED.
1669 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
1671 * f-exp.y (fortran_operators): Add ".xor.".
1673 2021-02-24 Tom de Vries <tdevries@suse.de>
1676 * dwarf2/attribute.c (attribute::form_is_signed): New function
1678 * dwarf2/attribute.h (attribute::as_signed): ... here.
1679 (attribute::is_nonnegative, attribute::as_nonnegative): New function.
1680 (attribute::form_is_signed): Declare.
1681 * dwarf2/read.c (new_symbol): Use is_nonnegative and as_nonnegative
1682 for DW_AT_decl_file.
1684 2021-02-24 Kevin Buettner <kevinb@redhat.com>
1686 * nat/aarch64-linux-hw-point.c: Add comment regarding include
1687 order for <sys/ptrace.h> and <asm/ptrace.h>.
1689 2021-02-24 Kevin Buettner <kevinb@redhat.com>
1691 * nat/aarch64-linux-hw-point.c: Include <asm/ptrace.h> after
1694 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1696 * exec.c (set_section_command): Move variable declarations into
1697 the function body, and use std::string instead of a fixed size
1700 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1702 * exec.c (exec_target::get_section_table): Delete member function.
1703 (section_table_read_available_memory): Use current_top_target, not
1704 just the exec_ops target.
1705 * target-delegates.c: Regenerate.
1706 * target.c (default_get_section_table): New function.
1707 * target.h (target_ops::get_section_table): Change default
1708 behaviour to call default_get_section_table.
1709 (default_get_section_table): Declare.
1711 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1713 * exec.c (exec_target::close): Call new clear_target_sections
1715 (program_space::add_target_sections): Update name of member
1717 (program_space::add_target_sections): Update name of member
1719 (program_space::remove_target_sections): Likewise.
1720 (exec_one_fork): Use new target_sections member function.
1721 (exec_target::get_section_table): Likewise.
1722 (exec_target::files_info): Likewise.
1723 (set_section_command): Likewise.
1724 (exec_set_section_address): Likewise.
1725 (exec_target::has_memory): Use new target_sections member
1727 * progspace.h (program_space::clear_target_sections): New member
1729 (program_space::target_sections): Rename member variable to
1730 m_target_sections, replace with a new member function.
1731 (program_space::m_target_sections): New member variable.
1732 * solib-dsbt.c (scan_dyntag): Use new member function.
1733 * solib-svr4.c (scan_dyntag): Likewise.
1735 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1737 * gdb/bfd-target.c (class target_bfd) <get_section_table>: Make
1739 * gdb/exec.c (struct exec_target) <get_section_table>: Likewise.
1740 (section_table_read_available_memory): Make local const.
1741 (exec_target::xfer_partial): Make local const.
1742 (print_section_info): Make parameter const.
1743 * gdb/exec.h (print_section_info): Likewise.
1744 * gdb/ppc64-tdep.c (ppc64_convert_from_func_ptr_addr): Make local
1746 * gdb/record-btrace.c (record_btrace_target::xfer_partial):
1748 * gdb/remote.c (remote_target::remote_xfer_live_readonly_partial):
1750 * gdb/s390-tdep.c (s390_load): Likewise.
1751 * gdb/solib-dsbt.c (scan_dyntag): Likewise.
1752 * gdb/solib-svr4.c (scan_dyntag): Likewise.
1753 * gdb/target-debug.h (target_debug_print_target_section_table_p):
1755 (target_debug_print_const_target_section_table_p): ...this.
1756 * gdb/target-delegates.c: Regenerate.
1757 * gdb/target.c (target_get_section_table): Make return type const.
1758 (target_section_by_addr): Likewise. Also make some locals const.
1759 (memory_xfer_partial_1): Make some locals const.
1760 * gdb/target.h (struct target_ops) <get_section_table>: Make
1762 (target_section_by_addr): Likewise.
1763 (target_get_section_table): Likewise.
1765 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1767 * NEWS: Mention new 'maint info target-sections' command.
1768 * maint.c (maintenance_info_target_sections): New function.
1769 (_initialize_maint_cmds): Register new command.
1771 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1773 * riscv-tdep.c (riscv_features_from_gdbarch_info): Rename to...
1774 (riscv_features_from_bfd): ...this. Change parameter type to
1775 'bfd*', and update as required.
1776 (riscv_find_default_target_description): Update call to
1777 riscv_features_from_bfd. Select a default xlen based on
1779 (riscv_gdbarch_init): Update call to riscv_features_from_bfd.
1781 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
1783 * eval.c (evaluate_subexp_standard): Call value_ind for points to
1784 dynamic types in UNOP_IND.
1786 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
1789 * dwarf2/read.c (dwarf2_queue_guard) <dwarf2_queue_guard>:
1791 (~dwarf2_queue_guard): Clear queue.
1792 (queue_comp_unit): Assert that queue is
1794 (process_queue): Adjust.
1795 * dwarf2/read.h (struct dwarf2_per_bfd) <queue>: Make optional.
1797 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
1800 * dwarf2/read.c (maybe_queue_comp_unit): Check if CU is expanded
1801 to decide whether or not to enqueue it for expansion.
1802 (follow_die_offset, follow_die_sig_1): Ensure we load the DIEs
1803 after calling maybe_queue_comp_unit.
1805 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
1807 * linux-nat.c (linux_nat_filter_event): Return void.
1809 2021-02-22 Tom Tromey <tromey@adacore.com>
1811 * solib-svr4.c (enable_break): Update.
1812 * bfd-target.c (class target_bfd) <target_bfd>: Change parameter
1814 (target_bfd_reopen): Change parameter type.
1815 * bfd-target.h (target_bfd_reopen): Change parameter type.
1817 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
1819 * thread.c (add_thread_silent): Add assert.
1820 (find_thread_ptid): Add assert.
1822 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
1825 * inf-ptrace.c (struct target_unpusher): Move to target.h.
1826 (target_unpush_up): Likewise.
1827 * procfs.c (procfs_target::attach): Push target early. Use
1828 target_unpush_up to unpush target in case of error.
1829 * target.h (struct target_unpusher): Move here.
1830 (target_unpush_up): Likewise.
1832 2021-02-19 Kevin Buettner <kevinb@redhat.com>
1834 * nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
1835 (which in turn includes <gnulib/config.h>) before include
1838 2021-02-19 Nelson Chu <nelson.chu@sifive.com>
1841 * riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
1842 (decode_j_type_insn): Likewise.
1843 (decode_cj_type_insn): Likewise.
1844 (decode_b_type_insn): Likewise.
1847 2021-02-18 Tom Tromey <tom@tromey.com>
1849 * expression.h (struct expression) <evaluate>: Declare method.
1850 * eval.c (evaluate_subexp): Simplify.
1851 (expression::evaluate): New method.
1852 (evaluate_expression, evaluate_type): Use expression::evaluate.
1854 2021-02-17 Kevin Buettner <kevinb@redhat.com>
1856 * ada-lang.c (ada_fold_name): Check for non-empty string prior
1858 (ada_lookup_name_info): Likewise.
1860 2021-02-13 Mike Frysinger <vapier@gentoo.org>
1862 * aclocal.m4: Regenerate.
1864 2021-02-12 Tom de Vries <tdevries@suse.de>
1867 * linux-nat.c (lin_thread_get_thread_signals): Remove.
1868 (lin_thread_signals): New static var.
1869 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
1871 * linux-nat.h (lin_thread_get_thread_signals): Remove.
1872 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
1874 * linux-thread-db.c (check_thread_signals): Use
1875 lin_thread_get_thread_signal_num and lin_thread_get_thread_signal.
1877 2021-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
1879 * f-exp.y (f77_keywords): Add allocated.
1880 * f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED.
1881 (operator_length_f): Likewise.
1882 (print_subexp_f): Likewise.
1883 (dump_subexp_body_f): Likewise.
1884 (operator_check_f): Likewise.
1885 * std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator.
1887 2021-02-11 Tom de Vries <tdevries@suse.de>
1890 * dwarf2/attribute.c (attribute::form_requires_reprocessing):
1891 Return true for DW_FORM_strx.
1893 2021-02-11 Tom Tromey <tromey@adacore.com>
1896 * parse.c (write_exp_symbol_reference): Write sym.block.
1898 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
1900 * NEWS: Mention changes to 'maint info sections'.
1901 * maint.c (match_substring): Return a bool, fix whitespace issue.
1902 (struct single_bfd_flag_info): New struct.
1903 (bfd_flag_info): New static global.
1904 (match_bfd_flags): Return a bool, use bfd_flag_info.
1905 (print_bfd_flags): Use bfd_flag_info.
1906 (maint_print_section_info): Delete trailing whitespace.
1907 (struct maint_info_sections_opts): New struct.
1908 (maint_info_sections_option_defs): New static global.
1909 (maint_info_sections_completer): New function.
1910 (maintenance_info_sections): Use option parsing mechanism.
1911 (_initialize_maint_cmds): Update command help text for 'maint info
1912 sections' and register a command completer.
1914 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
1916 * maint.c (print_bfd_section_info_maybe_relocated): Delete,
1917 functionality merged into...
1918 (maint_print_all_sections): ...this new function.
1919 (maintenance_info_sections): Make use of maint_print_all_sections,
1920 allow all objects to be printed even where there's no executable.
1922 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
1924 * breakpoint.c (resolve_sal_pc): Make use of
1925 bound_minimal_symbol::obj_section.
1926 * maint.c (maintenance_translate_address): Likewise.
1927 * minsyms.c (minimal_symbol_upper_bound): Likewise.
1928 * minsyms.h (struct bound_minimal_symbol) <obj_section>: New
1930 * printcmd.c (info_address_command): Make use of
1931 bound_minimal_symbol::obj_section.
1933 2021-02-11 Alan Modra <amodra@gmail.com>
1935 * arm-symbian-tdep.c: Delete.
1936 * NEWS: Mention arm-symbian removal.
1937 * Makefile.in: Remove arm-symbian-tdep entries.
1938 * configure.tgt: Remove arm*-*-symbianelf*.
1939 * doc/gdb.texinfo: Remove mention of SymbianOS.
1940 * osabi.c (gdb_osabi_names): Remove "Symbian".
1941 * osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
1942 * testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
1943 * testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
1945 * testsuite/gdb.base/dup-sect.exp: Likewise.
1946 * testsuite/gdb.base/long_long.exp: Likewise.
1947 * testsuite/gdb.base/solib-weak.exp: Likewise.
1948 * testsuite/gdb.guile/scm-section-script.exp: Likewise.
1949 * testsuite/gdb.python/py-section-script.exp: Likewise.
1950 * testsuite/lib/dwarf.exp: Likewise.
1951 * testsuite/lib/gdb.exp: Likewise.
1953 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
1955 * f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
1956 (exp): New pattern using UNOP_OR_BINOP_INTRINSIC.
1957 (one_or_two_args): New pattern.
1958 (f77_keywords): Add lbound and ubound.
1959 * f-lang.c (fortran_bounds_all_dims): New function.
1960 (fortran_bounds_for_dimension): New function.
1961 (evaluate_subexp_f): Handle FORTRAN_LBOUND and FORTRAN_UBOUND.
1962 (operator_length_f): Likewise.
1963 (print_subexp_f): Likewise.
1964 (dump_subexp_body_f): Likewise.
1965 (operator_check_f): Likewise.
1966 * std-operator.def (FORTRAN_LBOUND): Define.
1967 (FORTRAN_UBOUND): Define.
1969 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
1971 * coff-pe-read.c (add_pe_forwarded_sym): Make use of section_index
1972 and set_section_index member functions where appropriate.
1973 * coffread.c (coff_symtab_read): Likewise.
1974 (process_coff_symbol): Likewise.
1975 * ctfread.c (set_symbol_address): Likewise.
1976 * dwarf2/read.c (add_partial_symbol): Likewise.
1977 (var_decode_location): Likewise.
1978 * language.c: Likewise.
1979 * minsyms.c (minimal_symbol_reader::record_full): Likewise.
1980 (compact_minimal_symbols): Likewise.
1981 (minimal_symbol_upper_bound): Likewise.
1982 * objfiles.c (relocate_one_symbol): Likewise.
1983 * psympriv.h (partial_symbol::obj_section): Likewise.
1984 (partial_symbol::address): Likewise.
1985 * psymtab.c (partial_symtab::add_psymbol): Likewise.
1986 * stabsread.c (scan_file_globals): Likewise.
1987 * symmisc.c (dump_msymbols): Likewise.
1988 * symtab.c (general_symbol_info::obj_section): Likewise.
1989 (fixup_section): Likewise.
1990 (get_msymbol_address): Likewise.
1991 * symtab.h (general_symbol_info::section): Rename to...
1992 (general_symbol_info::m_section): ...this.
1993 (general_symbol_info::set_section_index): New member function.
1994 (general_symbol_info::section_index): Likewise.
1995 (SYMBOL_SECTION): Delete.
1996 (MSYMBOL_VALUE_ADDRESS): Make use of section_index and
1997 set_section_index member functions where appropriate.
1998 (MSYMBOL_SECTION): Delete.
1999 (symbol::symbol): Update to initialize 'm_section'.
2000 * xcoffread.c (read_xcoff_symtab): Make use of set_section_index.
2001 (process_xcoff_symbol): Likewise.
2003 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
2005 * breakpoint.c (resolve_sal_pc): Replace SYMBOL_OBJ_SECTION and
2006 MSYMBOL_OBJ_SECTION.
2007 * findvar.c (language_defn::read_var_value): Likewise.
2008 * infcmd.c (jump_command): Likewise.
2009 * linespec.c (minsym_found): Likewise.
2010 * maint.c (maintenance_translate_address): Likewise.
2011 * minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
2012 (minimal_symbol_upper_bound): Likewise.
2013 * parse.c (find_minsym_type_and_address): Likewise.
2014 (operator_check_standard): Likewise.
2015 * printcmd.c (info_address_command): Likewise.
2016 * symmisc.c (dump_msymbols): Likewise.
2017 (print_symbol): Likewise.
2018 * symtab.c (general_symbol_info::obj_section): Define new
2020 (fixup_symbol_section): Replace SYMBOL_OBJ_SECTION.
2021 (find_pc_sect_compunit_symtab): Likewise.
2022 (find_function_start_sal): Likewise.
2023 (skip_prologue_sal): Replace SYMBOL_OBJ_SECTION and
2024 MSYMBOL_OBJ_SECTION.
2025 * symtab.h (struct general_symbol_info) <obj_section>: Declare new
2027 (SYMBOL_OBJ_SECTION): Delete.
2028 (MSYMBOL_OBJ_SECTION): Delete.
2030 2021-02-09 Tom Tromey <tom@tromey.com>
2032 * stap-probe.c (stap_parse_argument_conditionally): Fix typo.
2034 2021-02-09 Tom de Vries <tdevries@suse.de>
2037 * dwarf2/read.c (read_array_type): Return NULL when not being able to
2038 construct an array type. Add assert to ensure that element_type is
2041 2021-02-09 Andrew Burgess <andrew.burgess@embecosm.com>
2043 * gcore.c (struct gcore_collect_regset_section_cb_data): Delete.
2044 (gcore_collect_regset_section_cb): Delete.
2045 (gcore_collect_thread_registers): Delete.
2046 (gcore_build_thread_register_notes): Delete.
2047 (gcore_find_signalled_thread): Delete.
2048 * gcore.h: Remove 'gdbsupport/gdb_signals.h' include and delete
2049 'gdbarch' and 'thread_info' declarations.
2050 (gcore_build_thread_register_notes): Delete declaration.
2051 (gcore_find_signalled_thread): Likewise.
2052 * fbsd-tdep.c: Remove 'gcore.h' include.
2053 (struct fbsd_collect_regset_section_cb_data): New struct.
2054 (fbsd_collect_regset_section_cb): New function.
2055 (fbsd_collect_thread_registers): New function.
2056 (struct fbsd_corefile_thread_data): New struct.
2057 (fbsd_corefile_thread): New function.
2058 (fbsd_make_corefile_notes): Call FreeBSD specific code.
2059 * linux-tdep.c: Remove 'gcore.h' include.
2060 (struct linux_collect_regset_section_cb_data): New struct.
2061 (linux_collect_regset_section_cb): New function.
2062 (linux_collect_thread_registers): New function.
2063 (linux_corefile_thread): Call Linux specific code.
2064 (find_signalled_thread): New function.
2065 (linux_make_corefile_notes): Call find_signalled_thread.
2067 2021-02-09 Tom Tromey <tromey@adacore.com>
2069 * ada-lang.c (coerce_unspec_val_to_type): Avoid making lazy
2071 * value.c (value_contents_copy_raw): Now static.
2072 * value.h (value_contents_copy_raw): Don't declare.
2074 2021-02-09 Tom Tromey <tromey@adacore.com>
2076 * gdbtypes.c (resolve_dynamic_struct): Handle structure with no
2079 2021-02-08 Shahab Vahedi <shahab@synopsys.com>
2082 * arc-linux-tdep.c (handle_atomic_sequence): New.
2083 (arc_linux_software_single_step): Call handle_atomic_sequence().
2085 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
2087 * python/py-tui.c (gdbpy_tui_window) <is_valid>: New member
2089 (REQUIRE_WINDOW): Call is_valid member function.
2090 (REQUIRE_WINDOW_FOR_SETTER): New define.
2091 (gdbpy_tui_is_valid): Call is_valid member function.
2092 (gdbpy_tui_set_title): Call REQUIRE_WINDOW_FOR_SETTER instead.
2093 * tui/tui-data.h (struct tui_win_info) <is_visible>: Check
2095 * tui/tui-layout.c (tui_apply_current_layout): Add an assert.
2096 * tui/tui.c (tui_enable): Move setting of tui_active earlier in
2099 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
2101 * python/py-tui.c (gdbpy_tui_set_title): Check that the new value
2102 for the title is not nullptr.
2104 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
2106 * tui-layout.c (saved_tui_windows): Delete.
2107 (tui_apply_current_layout): Don't make use of saved_tui_windows,
2108 call new get_windows member function instead.
2109 (tui_get_window_by_name): Check in tui_windows.
2110 (tui_layout_window::apply): Don't add to tui_windows.
2111 * tui-layout.h (tui_layout_base::get_windows): New member function.
2112 (tui_layout_window::get_windows): Likewise.
2113 (tui_layout_split::get_windows): Likewise.
2115 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
2117 * tui/tui-layout.c (tui_apply_current_layout): Restore the delete
2118 of the window objects.
2120 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
2122 * python/python.c (gdbpy_print_stack): Reformat an error message.
2124 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
2126 * tui/tui-interp.c (tui_command_line_handler): New function.
2127 (tui_interp::resume): Register tui_command_line_handler as the
2129 * tui/tui-io.c (tui_inject_newline_into_command_window): New
2131 (tui_getc_1): Delete handling of '\n' and '\r'.
2132 * tui-io.h (tui_inject_newline_into_command_window): Declare.
2134 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
2136 * tui/tui-regs.c (tui_data_window::display_registers_from):
2137 Mark invisible register sub windows.
2138 (tui_data_window::check_register_values): Ignore invisible
2139 register sub windows.
2141 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
2143 * tui/tui-regs.c (tui_data_item_window::rerender): Don't call
2144 n_spaces with a negative value.
2146 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
2148 * tui/tui-regs.c (tui_data_window::display_registers_from):
2149 Add refresh_window call.
2151 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
2153 * python/py-frame.c (frapy_richcompare): Compare frame_id_is_next.
2155 2021-02-05 Simon Marchi <simon.marchi@polymtl.ca>
2157 * symmisc.c (std_in, std_out, std_err): Remove.
2158 (_initialize_symmisc): Don't set std_in, std_out and std_err.
2160 2021-02-05 Tom de Vries <tdevries@suse.de>
2162 PR breakpoints/27330
2163 * breakpoint.c (create_exception_master_breakpoint): Handle case that
2164 glibc object file has debug info.
2166 2021-02-05 Tom de Vries <tdevries@suse.de>
2169 * dwarf2/read.c (process_psymtab_comp_unit): Handle DW_TAG_type_unit.
2171 2021-02-05 Tom de Vries <tdevries@suse.de>
2173 PR breakpoints/27313
2174 * break-catch-syscall.c (catch_syscall_split_args): Reject negative
2177 2021-02-05 Tom Tromey <tom@tromey.com>
2179 * compile/compile-c-support.c (get_compile_context)
2180 (c_get_compile_context, cplus_get_compile_context): Change return
2182 * language.c (language_defn::get_compile_instance): New method.
2183 * language.h (language_defn::get_compile_instance): Change return
2184 type. No longer inline.
2185 * c-lang.c (c_language::get_compile_instance): Change return type.
2186 (cplus_language::get_compile_instance): Change return type.
2187 * c-lang.h (c_get_compile_context, cplus_get_compile_context):
2189 * compile/compile.c (compile_to_object): Update.
2191 2021-02-05 Tom Tromey <tom@tromey.com>
2193 * parser-defs.h (write_exp_symbol_reference): Declare.
2194 * parse.c (write_exp_symbol_reference): New function.
2195 * p-exp.y (variable): Use write_exp_symbol_reference.
2196 * m2-exp.y (variable): Use write_exp_symbol_reference.
2197 * f-exp.y (variable): Use write_exp_symbol_reference.
2198 * d-exp.y (PrimaryExpression): Use write_exp_symbol_reference.
2199 * c-exp.y (variable): Use write_exp_symbol_reference.
2201 2021-02-05 Tom de Vries <tdevries@suse.de>
2204 * valarith.c (complex_binop): Throw an error if complex type can't
2207 2021-02-05 Tom de Vries <tdevries@suse.de>
2210 * dwarf2/read.c (create_cus_from_debug_names_list): Add missing
2213 2021-02-05 Tom de Vries <tdevries@suse.de>
2215 * dwarf2/read.c (create_cus_from_debug_names_list): Fix indentation.
2217 2021-02-04 Mike Frysinger <vapier@gentoo.org>
2219 * configure.tgt (riscv*-*-*): Set gdb_sim.
2221 2021-02-04 Simon Marchi <simon.marchi@polymtl.ca>
2223 * target.c (target_is_non_stop_p): Return bool.
2224 * target.h (target_is_non_stop_p): Return bool.
2226 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
2228 * record-full.c (record_full_async_inferior_event_handler):
2229 Don't clear async event handler.
2230 (record_full_base_target::wait): Clear async event handler at
2233 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
2235 * record-btrace.c (record_btrace_handle_async_inferior_event):
2236 Don't clear async event handler.
2237 (record_btrace_target::wait): Clear async event handler at
2240 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
2242 * remote.c (remote_target::wait): Clear async event handler at
2243 beginning, mark if needed at the end.
2244 (remote_async_inferior_event_handler): Don't set or clear async
2247 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
2249 * async-event.h (async_event_handler_func): Add documentation.
2250 * async-event.c (check_async_event_handlers): Don't clear
2251 async_event_handler ready flag.
2252 * infrun.c (infrun_async_inferior_event_handler): Clear ready
2254 * record-btrace.c (record_btrace_handle_async_inferior_event):
2256 * record-full.c (record_full_async_inferior_event_handler):
2258 * remote-notif.c (remote_async_get_pending_events_handler):
2260 * remote.c (remote_async_inferior_event_handler): Likewise.
2262 2021-02-03 Simon Marchi <simon.marchi@polymtl.ca>
2264 * infrun.c (handle_inferior_event): Move stop_soon variable to
2267 2021-02-03 Pedro Alves <pedro@palves.net>
2269 * infcmd.c (detach_command): Hold strong reference to target, and
2270 if all-stop on entry, restart threads on exit.
2271 * infrun.c (switch_back_to_stepped_thread): Factor out bits to ...
2272 (restart_stepped_thread): ... this new function. Also handle
2274 (restart_after_all_stop_detach): New function.
2275 * infrun.h (restart_after_all_stop_detach): Declare.
2277 2021-02-03 Pedro Alves <pedro@palves.net>
2279 * infrun.c (struct step_over_info): Initialize fields.
2280 (prepare_for_detach): Handle ongoing in-line step over.
2282 2021-02-03 Pedro Alves <pedro@palves.net>
2284 * linux-nat.c (linux_nat_target::detach): Remove breakpoints
2286 * remote.c (remote_target::remote_detach_1): ... and here ...
2287 * target.c (target_detach): ... instead of here.
2288 * target.h (target_ops::detach): Add comment.
2290 2021-02-03 Pedro Alves <pedro@palves.net>
2292 * infrun.c (struct wait_one_event): Move higher up.
2293 (prepare_for_detach): Abort in-progress displaced steps instead of
2294 letting them complete.
2295 (handle_one): If the inferior is detaching, don't add the thread
2296 back to the global step-over chain.
2297 (restart_threads): Don't restart threads if detaching.
2298 (handle_signal_stop): Remove inferior::detaching reference.
2300 2021-02-03 Pedro Alves <pedro@palves.net>
2302 * infrun.c (prepare_for_detach): Don't release scoped_restore
2305 2021-02-03 Pedro Alves <pedro@palves.net>
2307 * infrun.c (handle_one): New function, factored out from ...
2308 (stop_all_threads): ... here.
2310 2021-02-03 Pedro Alves <pedro@palves.net>
2312 * remote.c (remote_notif_stop_ack): Don't error out on
2313 TARGET_WAITKIND_IGNORE; instead, just ignore the notification.
2314 (remote_target::discard_pending_stop_replies): Don't delete
2315 in-flight notification; instead, clear its contents.
2317 2021-02-03 Pedro Alves <pedro@palves.net>
2319 * remote.c (extended_remote_target::attach): Set target async in
2320 the target-non-stop path too.
2322 2021-02-03 Pedro Alves <pedro@palves.net>
2325 * infrun.c (handle_signal_stop): Move main context_switch call
2326 earlier, before STOP_QUIETLY_NO_SIGSTOP.
2328 2021-02-02 Lancelot SIX <lsix@lancelotsix.com>
2330 * NEWS (Changed commands): Add entry for the behavior change of
2331 the inferior command.
2332 * inferior.c (inferior_command): When no argument is given to the
2333 inferior command, display info about the currently selected
2336 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2338 * dwarf2/read.c (read_loclist_index, read_rnglist_index): Return
2340 (read_attribute_reprocess): Adjust.
2342 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2344 * dwarf2/die.h (struct die_info) <ranges_base>: Split in...
2345 <gnu_ranges_base>: ... this...
2346 <rnglists_base>: ... and this.
2347 * dwarf2/read.c (struct dwarf2_cu) <ranges_base>: Split in...
2348 <gnu_ranges_base>: ... this...
2349 <rnglists_base>: ... and this.
2350 (read_cutu_die_from_dwo): Adjust
2351 (dwarf2_get_pc_bounds): Adjust
2352 (dwarf2_record_block_ranges): Adjust.
2353 (read_full_die_1): Adjust
2354 (partial_die_info::read): Adjust.
2355 (read_rnglist_index): Adjust.
2357 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2360 * dwarf2/read.c (read_loclists_rnglists_header): Add
2361 header_offset parameter and use it.
2362 (read_loclist_index): Read header of the current contribution,
2363 not the one at the beginning of the section.
2364 (read_rnglist_index): Likewise.
2366 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2369 * dwarf2/attribute.h (struct attribute) <set_unsigned>: Clear
2370 requires_reprocessing flag.
2371 * dwarf2/attribute.c (attribute::form_is_unsigned): Handle
2373 (attribute::form_requires_reprocessing): Handle DW_FORM_rnglistx
2374 and DW_FORM_loclistx.
2375 * dwarf2/read.c (read_attribute_reprocess): Use set_unsigned
2376 instead of set_address for DW_FORM_loclistx and
2379 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2381 * dwarf2/read.c (read_loclist_index): Remove bound check for
2383 (read_rnglist_index): Likewise.
2385 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2387 * dwarf2/read.c (read_loclist_index): Add bound check for the end
2390 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2392 * dwarf2/read.c (read_rnglist_index): Fix bound check.
2394 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
2396 * dwarf2/read.c (read_loclist_index): Change complaints into
2399 2021-02-02 Tom de Vries <tdevries@suse.de>
2402 * dwarf2/index-write.c (write_one_signatured_type): Skip if
2405 2021-02-01 Andrew Burgess <andrew.burgess@embecosm.com>
2407 * Makefile.in (HFILES_NO_SRCDIR): Add corefile.h.
2408 * gcore.c (struct gcore_collect_regset_section_cb_data): Moved
2409 here from linux-tdep.c and given a new name. Minor cleanups.
2410 (gcore_collect_regset_section_cb): Likewise.
2411 (gcore_collect_thread_registers): Likewise.
2412 (gcore_build_thread_register_notes): Likewise.
2413 (gcore_find_signalled_thread): Likewise.
2414 * gcore.h (gcore_build_thread_register_notes): Declare.
2415 (gcore_find_signalled_thread): Declare.
2416 * fbsd-tdep.c: Add 'gcore.h' include.
2417 (struct fbsd_collect_regset_section_cb_data): Delete.
2418 (fbsd_collect_regset_section_cb): Delete.
2419 (fbsd_collect_thread_registers): Delete.
2420 (struct fbsd_corefile_thread_data): Delete.
2421 (fbsd_corefile_thread): Delete.
2422 (fbsd_make_corefile_notes): Call
2423 gcore_build_thread_register_notes instead of the now deleted
2425 * linux-tdep.c: Add 'gcore.h' include.
2426 (struct linux_collect_regset_section_cb_data): Delete.
2427 (linux_collect_regset_section_cb): Delete.
2428 (linux_collect_thread_registers): Delete.
2429 (linux_corefile_thread): Call
2430 gcore_build_thread_register_notes.
2431 (find_signalled_thread): Delete.
2432 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
2434 2021-01-29 Tom de Vries <tdevries@suse.de>
2436 PR breakpoints/26063
2437 * infrun.c (process_event_stop_test): Reset
2438 ecs->event_thread->current_line to 0 if is-stmt=n and frame has
2441 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
2443 * thread.c (thr_try_catch_cmd): Replace swith_to_thread with an
2444 assert. Extend the header comment.
2446 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
2448 * Makefile.in (SUBDIR_TUI_SRCS): Add tui/tui-location.c.
2449 (HFILES_NO_SRCDIR): Add tui/tui-location.h.
2450 * tui/tui-data.h (TUI_STATUS_WIN): Define.
2451 (tui_locator_win_info_ptr): Delete declaration.
2452 * tui/tui-disasm.c: Add 'tui/tui-location.h' include.
2453 (tui_disasm_window::set_contents): Fetch state from tui_location
2455 (tui_get_begin_asm_address): Likewise.
2456 * tui/tui-layout.c (tui_apply_current_layout): Remove special case
2458 (get_locator_window): Delete.
2459 (initialize_known_windows): Treat locator window just like all the
2461 * tui/tui-source.c: Add 'tui/tui-location.h' include.
2462 (tui_source_window::set_contents): Fetch state from tui_location
2464 (tui_source_window::showing_source_p): Likewise.
2465 * tui/tui-stack.c: Add 'tui/tui-location.h' include.
2467 (tui_locator_win_info_ptr): Delete.
2468 (tui_locator_window::make_status_line): Fetch state from
2469 tui_location global.
2470 (tui_locator_window::rerender): Remove check of 'handle',
2471 reindent function body.
2472 (tui_locator_window::set_locator_fullname): Delete.
2473 (tui_locator_window::set_locator_info): Delete.
2474 (tui_update_locator_fullname): Delete.
2475 (tui_show_frame_info): Likewise.
2476 (tui_show_locator_content): Access window through TUI_STATUS_WIN.
2477 * tui/tui-stack.h (tui_locator_window::set_locator_info): Moved to
2478 tui/tui-location.h and renamed to
2479 tui_location_tracker::set_location.
2480 (tui_locator_window::set_locator_fullname): Moved to
2481 tui/tui-location.h and renamed to
2482 tui_location_tracker::set_fullname.
2483 (tui_locator_window::full_name): Delete.
2484 (tui_locator_window::proc_name): Delete.
2485 (tui_locator_window::line_no): Delete.
2486 (tui_locator_window::addr): Delete.
2487 (tui_locator_window::gdbarch): Delete.
2488 (tui_update_locator_fullname): Delete declaration.
2489 * tui/tui-wingeneral.c (tui_refresh_all): Removed special handling
2491 * tui/tui-winsource.c: Add 'tui/tui-location.h' include.
2492 (tui_display_main): Call function on tui_location directly.
2493 * tui/tui.h (enum tui_win_type): Add STATUS_WIN.
2494 * tui/tui-location.c: New file.
2495 * tui/tui-location.h: New file.
2497 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
2499 * gdbtypes.h (get_type_arch): Rename to...
2500 (struct type) <arch>: ... this, update all users.
2502 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
2504 * gdbtypes.h (struct type) <arch>: Rename to...
2505 <arch_owner>: ... this, update all users.
2506 <objfile>: Rename to...
2507 <objfile_owner>: ... this, update all users.
2509 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
2511 * gdbcmd.h (execute_command_to_string): Update comment.
2512 * top.c (execute_command_to_string): Update header comment.
2514 2021-01-28 Tom de Vries <tdevries@suse.de>
2516 PR breakpoints/27205
2517 * breakpoint.c (create_longjmp_master_breakpoint_probe)
2518 (create_longjmp_master_breakpoint_names): New function, factored out
2520 (create_longjmp_master_breakpoint): ... here. Only try to install
2521 longjmp_names breakpoints in libc.so/libc.so.debug if installing probe
2522 breakpoint in libc.so failed.
2524 2021-01-27 Lancelot SIX <lsix@lancelotsix.com>
2527 * cli/cli-interp.c (cli_interp_base::set_logging): Ensure the
2528 unique_ptr is released when the wrapped pointer is kept for later
2531 2021-01-27 Matthew Malcomson <matthew.malcomson@arm.com>
2533 * aarch64-tdep.c (aarch64_displaced_step_others): Account for
2534 BLR and BR instructions.
2535 * arch/aarch64-insn.h (enum aarch64_opcodes): Add BR opcode.
2536 (enum aarch64_masks): New.
2538 2021-01-26 Tom Tromey <tromey@adacore.com>
2540 * windows-nat.c (DEBUG_EXEC, DEBUG_EVENTS, DEBUG_MEM)
2541 (DEBUG_EXCEPT): Use debug_prefixed_printf_cond.
2542 (windows_init_thread_list, windows_nat::handle_load_dll)
2543 (windows_nat::handle_unload_dll, windows_nat_target::resume)
2544 (windows_nat_target::resume)
2545 (windows_nat_target::get_windows_debug_event)
2546 (windows_nat_target::interrupt, windows_xfer_memory)
2547 (windows_nat_target::close): Update.
2548 * nat/windows-nat.c (DEBUG_EVENTS): Use
2549 debug_prefixed_printf_cond.
2550 (matching_pending_stop, fetch_pending_stop)
2551 (continue_last_debug_event): Update.
2553 2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
2555 * linux-tdep.c (linux_make_mappings_corefile_notes): Start using
2556 elfcore_write_file_note.
2558 2021-01-26 Shahab Vahedi <shahab@synopsys.com>
2560 * arc-tdep.c (arc_add_reggroups): New function.
2561 (arc_gdbarch_init): Call arc_add_reggroups.
2563 2021-01-26 Anton Kolesov <anton.kolesov@synopsys.com>
2565 * arc-tdep.c (arc_skip_prologue): Log "pc" address.
2567 2021-01-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
2568 Simon Marchi <simon.marchi@polymtl.ca>
2569 Tom de Vries <tdevries@suse.de>
2571 * dwarf2/read.c (partial_die_info::read): Use as_unsigned () for
2574 2021-01-25 Tom Tromey <tromey@adacore.com>
2576 * dwarf2/read.c (get_mpz): New function.
2577 (get_dwarf2_rational_constant): Use it.
2579 2021-01-25 Tom Tromey <tromey@adacore.com>
2581 * ada-lang.c (resolve_subexp): Handle array context.
2583 2021-01-23 Tom Tromey <tom@tromey.com>
2586 * compile/compile-loc2c.c (note_register): New function.
2587 (pushf_register_address, pushf_register): Use it.
2589 2021-01-23 Tom Tromey <tom@tromey.com>
2591 * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2592 Change type of "registers_used".
2593 * dwarf2/loc.h (dwarf2_compile_property_to_c): Update.
2594 * dwarf2/loc.c (dwarf2_compile_property_to_c)
2595 (locexpr_generate_c_location, loclist_generate_c_location): Change
2596 type of "registers_used".
2597 * compile/compile.h (compile_dwarf_expr_to_c)
2598 (compile_dwarf_bounds_to_c): Update.
2599 * compile/compile-loc2c.c (pushf_register_address)
2600 (pushf_register, do_compile_dwarf_expr_to_c)
2601 (compile_dwarf_expr_to_c, compile_dwarf_bounds_to_c): Change type
2602 of "registers_used".
2603 * compile/compile-c.h (generate_c_for_variable_locations):
2605 * compile/compile-c-symbols.c (generate_vla_size)
2606 (generate_c_for_for_one_variable): Change type of
2608 (generate_c_for_variable_locations): Return std::vector.
2609 * compile/compile-c-support.c (generate_register_struct): Change
2610 type of "registers_used".
2613 2021-01-23 Tom Tromey <tom@tromey.com>
2615 * compile/compile-internal.h (class compile_instance)
2616 <set_arguments>: Change return type.
2617 * compile/compile.c (compile_to_object): Remove call to reset.
2618 (compile_instance::set_arguments): Change return type.
2620 2021-01-23 Simon Marchi <simon.marchi@polymtl.ca>
2622 * gdbtypes.c (copy_type_recursive): Use get_type_arch.
2623 * gdbtypes.h (struct type) <set_owner>: Add asserts.
2625 2021-01-23 Lancelot SIX <lsix@lancelotsix.com>
2627 * Makefile.in (SELFTESTS_SRCS): Add
2628 unittests/gdb_tilde_expand-selftests.c.
2629 * unittests/gdb_tilde_expand-selftests.c: New file.
2631 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
2634 * NEWS: Mention new command.
2635 * cli/cli-style.c: Add 'cli/cli-setshow.h' include.
2636 (version_style): Define.
2637 (cli_style_option::cli_style_option): Add intensity parameter, and
2639 (_initialize_cli_style): Register version style set/show commands.
2640 * cli/cli-style.h (cli_style_option): Add intensity parameter.
2641 (version_style): Declare.
2642 * top.c (print_gdb_version): Use version_stype, and styled_string
2643 to print the GDB version string.
2645 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
2647 * utils.c (emit_style_escape): Only emit an escape sequence if the
2648 requested style is different than the current applied style.
2649 (fputs_maybe_filtered): Adjust the juggling of the wrap_style, and
2650 current applied_style.
2651 (fputs_styled): Remove is_default check.
2652 (fputs_styled_unfiltered): Likewise.
2653 (vfprintf_styled_no_gdbfmt): Likewise.
2655 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
2657 * remote.h (remote_debug_printf): New.
2658 (remote_debug_printf_nofunc): New.
2659 (REMOTE_SCOPED_DEBUG_ENTER_EXIT): New.
2660 * remote.c: Use above macros throughout file.
2662 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
2664 * remote.h (remote_debug): Change to bool.
2665 * remote.c (remote_debug): Change to bool.
2666 (_initialize_remote): Adjust.
2668 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
2670 * target.h (remote_debug): Move to...
2671 * remote.h (remote_debug): ... here.
2672 * top.c (remote_debug): Move to...
2673 * remote.c (remote_debug): ... here.
2674 * remote-sim.c: Include remote.h.
2676 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
2678 * cli/cli-cmds.c (show_remote_debug): Remove.
2679 (show_remote_timeout): Remove.
2680 (_initialize_cli_cmds): Don't register commands.
2681 * remote.c (show_remote_debug): Move here.
2682 (show_remote_timeout): Move here.
2683 (_initialize_remote): Register commands.
2685 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
2687 * gdbtypes.h (TYPE_OBJFILE): Remove, change all users to use the
2688 type::objfile method instead.
2690 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
2692 * gdbtypes.h (TYPE_OBJFILE_OWNED): Remove, update all users to
2693 use the type::is_objfile_owned method.
2695 2021-01-22 Simon Marchi <simon.marchi@efficios.com>
2697 * gdbtypes.h (TYPE_OBJFILE_OWNED): Adjust.
2698 (TYPE_OWNER): Remove.
2699 (TYPE_OBJFILE): Adjust.
2700 (struct main_type) <flag_objfile_owned>: Rename to...
2701 <m_flag_objfile_owned>: ... this.
2702 <owner>: Rename to...
2703 <m_owner>: ... this.
2704 (struct type) <is_objfile_owned, set_owner, objfile, arch>: New
2706 (TYPE_ALLOC): Adjust.
2707 * gdbtypes.c (alloc_type): Adjust.
2708 (alloc_type_arch): Adjust.
2709 (alloc_type_copy): Adjust.
2710 (get_type_arch): Adjust.
2711 (smash_type): Adjust.
2712 (lookup_array_range_type): Adjust.
2713 (recursive_dump_type): Adjust.
2714 (copy_type_recursive): Adjust.
2715 * compile/compile-c-types.c (convert_func): Adjust.
2716 (convert_type_basic): Adjust.
2717 * compile/compile-cplus-types.c (compile_cplus_convert_func):
2720 (language_arch_info::type_and_symbol::alloc_type_symbol):
2723 2021-01-21 Luis Machado <luis.machado@linaro.org>
2725 * coffread.c (enter_linenos): Passing string to complaint.
2726 * valops.c (value_assign): Make array view.
2728 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
2730 * auto-load.h (debug_auto_load): Move here.
2731 (auto_load_debug_printf): New.
2732 * auto-load.c: Use auto_load_debug_printf.
2733 (debug_auto_load): Move to header.
2734 * linux-thread-db.c (try_thread_db_load): Use
2735 auto_load_debug_printf.
2736 * main.c (captured_main_1): Likewise.
2738 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
2740 * f-valprint.c (f77_array_offset_tbl): Remove.
2742 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
2744 * gdb_bfd.c (bfd_cache_debug_printf): New, use throughout file.
2746 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
2748 * ser-tcp.c (wait_for_connect): Use interruptible_select instead
2751 2021-01-21 Hannes Domani <ssbssa@yahoo.de>
2754 * python/py-breakpoint.c (bppy_get_location): Handle
2755 bp_hardware_breakpoint.
2756 (bppy_init): Likewise.
2757 (gdbpy_breakpoint_created): Likewise.
2759 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
2761 * arm-tdep.c (arm_debug_printf): Add and use throughout file.
2763 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
2765 * gdb_bfd.c (debug_bfd_cache): Change type to bool.
2766 (_initialize_gdb_bfd): Adjust.
2768 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
2771 * dwarf2/read.c (maybe_queue_comp_unit): Add assertion.
2773 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
2775 * dwarf2/read.c (follow_die_offset): Add logging.
2776 (dwarf2_per_objfile::age_comp_units): Add logging.
2778 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
2780 * aarch64-linux-tdep.c (aarch64_linux_record_tdep): Make static.
2781 * aarch64-tdep.c (tdesc_aarch64_list, aarch64_prologue_unwind,
2782 aarch64_stub_unwind, aarch64_normal_base, ): Make static.
2783 * arm-linux-tdep.c (arm_prologue_unwind): Make static.
2784 * arm-tdep.c (struct frame_unwind): Make static.
2785 * auto-load.c (auto_load_safe_path_vec): Make static.
2786 * csky-tdep.c (csky_stub_unwind): Make static.
2787 * gdbarch.c (gdbarch_data_registry): Make static.
2788 * gnu-v2-abi.c (gnu_v2_abi_ops): Make static.
2789 * i386-netbsd-tdep.c (i386nbsd_mc_reg_offset): Make static.
2790 * i386-tdep.c (i386_frame_setup_skip_insns,
2791 i386_tramp_chain_in_reg_insns, i386_tramp_chain_on_stack_insns):
2793 * infrun.c (observer_mode): Make static.
2794 * linux-nat.c (sigchld_action): Make static.
2795 * linux-thread-db.c (thread_db_list): Make static.
2796 * maint-test-options.c (maintenance_test_options_list):
2797 * mep-tdep.c (mep_csr_registers): Make static.
2798 * mi/mi-cmds.c (struct mi_cmd_stats): Remove struct type name.
2799 (stats): Make static.
2800 * nat/linux-osdata.c (struct osdata_type): Make static.
2801 * ppc-netbsd-tdep.c (ppcnbsd_reg_offsets): Make static.
2802 * progspace.c (last_program_space_num): Make static.
2803 * python/py-param.c (struct parm_constant): Remove struct type
2805 (parm_constants): Make static.
2806 * python/py-record-btrace.c (btpy_list_methods): Make static.
2807 * python/py-record.c (recpy_gap_type): Make static.
2808 * record.c (record_goto_cmdlist): Make static.
2809 * regcache.c (regcache_descr_handle): Make static.
2810 * registry.h (DEFINE_REGISTRY): Make definition static.
2811 * symmisc.c (std_in, std_out, std_err): Make static.
2812 * top.c (previous_saved_command_line): Make static.
2813 * tracepoint.c (trace_user, trace_notes, trace_stop_notes): Make
2815 * unittests/command-def-selftests.c (nr_duplicates,
2816 nr_invalid_prefixcmd, lists): Make static.
2817 * unittests/observable-selftests.c (test_notification): Make
2819 * unittests/optional/assignment/1.cc (counter): Make static.
2820 * unittests/optional/assignment/2.cc (counter): Make static.
2821 * unittests/optional/assignment/3.cc (counter): Make static.
2822 * unittests/optional/assignment/4.cc (counter): Make static.
2823 * unittests/optional/assignment/5.cc (counter): Make static.
2824 * unittests/optional/assignment/6.cc (counter): Make static.
2826 2021-01-20 Joel Sherrill <joel@rtems.org>
2829 * remote.c (struct remote_thread_info) <resume_state>: Rename
2831 <get_resume_state>: ... this.
2832 (remote_target::resume): Adjust.
2833 (remote_target::commit_resume): Adjust.
2834 (remote_target::select_thread_for_ambiguous_stop_reply): Adjust.
2836 2021-01-20 Sergio Durigan Junior <sergiodj@sergiodj.net>
2837 Tom Tromey <tom@tromey.com>
2839 * stap-probe.c (stap_parse_single_operand): Handle '!'
2841 (stap_parse_argument_conditionally): Likewise.
2842 Skip spaces after processing open-parenthesis sub-expression.
2843 (stap_parse_argument_1): Skip spaces after call to
2844 stap_parse_argument_conditionally.
2845 Handle case when right-side expression is a parenthesized
2847 Skip spaces after call to stap_parse_argument_1.
2849 2021-01-19 Lancelot SIX <lsix@lancelotsix.com>
2851 * top.h (switch_thru_all_uis): Use DISABLE_COPY_AND_ASSIGN.
2853 2021-01-19 Luis Machado <luis.machado@linaro.org>
2855 * trad-frame.h (trad_frame_saved_reg) <set_value_bytes>: Allocate
2856 memory and save data.
2857 (trad_frame_set_value, trad_frame_set_realreg, trad_frame_set_addr)
2858 (trad_frame_set_unknown, trad_frame_set_value_bytes)
2859 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
2860 (trad_frame_value_bytes_p): Remove.
2861 (trad_frame_reset_saved_regs): Adjust documentation.
2862 * trad-frame.c (trad_frame_alloc_saved_regs): Initialize via a
2863 constructor and reset the state of the registers.
2864 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
2865 (trad_frame_value_bytes_p, trad_frame_set_value)
2866 (trad_frame_set_realreg, trad_frame_set_addr)
2867 (trad_frame_set_unknown, trad_frame_set_value_bytes): Remove.
2868 (trad_frame_set_reg_realreg): Update to call member function.
2869 (trad_frame_set_reg_addr, trad_frame_set_reg_value_bytes): Likewise.
2870 (trad_frame_get_prev_register): Likewise.
2872 * aarch64-tdep.c (aarch64_analyze_prologue)
2873 (aarch64_analyze_prologue_test, aarch64_make_prologue_cache_1)
2874 (aarch64_prologue_prev_register): Update to use member functions.
2875 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Likewise.
2876 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Likewise.
2877 * arc-tdep.c (arc_print_frame_cache, arc_make_frame_cache): Likewise.
2878 * arm-tdep.c (arm_make_prologue_cache, arm_exidx_fill_cache)
2879 (arm_make_epilogue_frame_cache): Likewise.
2880 * avr-tdep.c (avr_frame_unwind_cache)
2881 (avr_frame_prev_register): Likewise.
2882 * cris-tdep.c (cris_scan_prologue): Likewise.
2883 * csky-tdep.c (csky_frame_unwind_cache): Likewise.
2884 * frv-tdep.c (frv_analyze_prologue): Likewise.
2885 * hppa-tdep.c (hppa_frame_cache, hppa_fallback_frame_cache): Likewise.
2886 * lm32-tdep.c (lm32_frame_cache): Likewise.
2887 * m32r-tdep.c (m32r_frame_unwind_cache): Likewise.
2888 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2889 * mips-tdep.c (set_reg_offset, mips_insn16_frame_cache)
2890 (mips_micro_frame_cache, mips_insn32_frame_cache): Likewise.
2891 (reset_saved_regs): Adjust to set realreg.
2892 * riscv-tdep.c (riscv_scan_prologue, riscv_frame_cache): Adjust to
2893 call member functions.
2894 * rs6000-tdep.c (rs6000_frame_cache, rs6000_epilogue_frame_cache)
2895 * s390-tdep.c (s390_prologue_frame_unwind_cache)
2896 (s390_backchain_frame_unwind_cache): Likewise.
2897 * score-tdep.c (score7_analyze_prologue)
2898 (score3_analyze_prologue, score_make_prologue_cache): Likewise.
2899 * sparc-netbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
2900 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
2901 * sparc64-netbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
2902 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
2903 * tilegx-tdep.c (tilegx_analyze_prologue)
2904 (tilegx_frame_cache): Likewise.
2905 * v850-tdep.c (v850_frame_cache): Likewise.
2906 * vax-tdep.c (vax_frame_cache): Likewise.
2908 2021-01-19 Luis Machado <luis.machado@linaro.org>
2910 * frame.h (get_frame_register_bytes): Pass a gdb::array_view instead
2912 (put_frame_register_bytes): Likewise.
2913 Adjust documentation.
2914 (get_frame_memory): Pass a gdb::array_view instead of buffer + length.
2915 (safe_frame_unwind_memory): Likewise.
2916 * frame.c (get_frame_register_bytes, put_frame_register_bytes)
2917 (get_frame_memory, safe_frame_unwind_memory): Adjust to use
2919 * amd64-fbsd-tdep.c (amd64fbsd_sigtramp_p): Likewise.
2920 * amd64-linux-tdep.c (amd64_linux_sigtramp_start): Likewise.
2921 * amd64-obsd-tdep.c (amd64obsd_sigtramp_p): Likewise.
2922 * arc-linux-tdep.c (arc_linux_is_sigtramp): Likewise.
2923 * cris-tdep.c (cris_sigtramp_start, cris_rt_sigtramp_start): Likewise.
2924 * dwarf2/loc.c (rw_pieced_value): Likewise.
2925 * hppa-tdep.c (hppa_frame_cache): Likewise.
2926 * i386-fbsd-tdep.c (i386fbsd_sigtramp_p): Likewise.
2927 * i386-gnu-tdep.c (i386_gnu_sigtramp_start): Likewise.
2928 * i386-linux-tdep.c (i386_linux_sigtramp_start)
2929 (i386_linux_rt_sigtramp_start): Likewise.
2930 * i386-obsd-tdep.c (i386obsd_sigtramp_p): Likewise.
2931 * i386-tdep.c (i386_register_to_value): Likewise.
2932 * i387-tdep.c (i387_register_to_value): Likewise.
2933 * ia64-tdep.c (ia64_register_to_value): Likewise.
2934 * m32r-linux-tdep.c (m32r_linux_sigtramp_start)
2935 (m32r_linux_rt_sigtramp_start): Likewise.
2936 * m68k-linux-tdep.c (m68k_linux_pc_in_sigtramp): Likewise.
2937 * m68k-tdep.c (m68k_register_to_value): Likewise.
2938 * mips-tdep.c (mips_register_to_value)
2939 (mips_value_to_register): Likewise.
2940 * ppc-fbsd-tdep.c (ppcfbsd_sigtramp_frame_sniffer)
2941 (ppcfbsd_sigtramp_frame_cache): Likewise.
2942 * ppc-obsd-tdep.c (ppcobsd_sigtramp_frame_sniffer)
2943 (ppcobsd_sigtramp_frame_cache): Likewise.
2944 * rs6000-tdep.c (rs6000_in_function_epilogue_frame_p)
2945 (rs6000_register_to_value): Likewise.
2946 * tilegx-tdep.c (tilegx_analyze_prologue): Likewise.
2947 * tramp-frame.c (tramp_frame_start): Likewise.
2948 * valops.c (value_assign): Likewise.
2950 2021-01-19 Luis Machado <luis.machado@linaro.org>
2952 * aarch64-linux-tdep.c (aarch64_linux_restore_vreg): Pass in an
2954 * trad-frame.c (trad_frame_set_value_bytes): Use gdb::array_view
2955 instead of buffer and size.
2956 (trad_frame_set_reg_value_bytes): Likewise.
2957 * trad-frame.h (trad_frame_set_reg_value_bytes): Likewise.
2958 (trad_frame_set_value_bytes): Likewise.
2960 2021-01-18 Mike Frysinger <vapier@gentoo.org>
2962 * copyright.py (NOT_FSF_LIST): Delete sim/testsuite/sim/bfin/s21.s.
2964 2021-01-18 Andrew Burgess <andrew.burgess@embecosm.com>
2966 * riscv-fbsd-tdep.c (riscv_fbsd_supply_gregset): Delete.
2967 (riscv_fbsd_gregset): Use riscv_supply_regset.
2968 (riscv_fbsd_fpregset): Likewise.
2969 * riscv-linux-tdep.c (riscv_linux_gregset): Likewise.
2970 (riscv_linux_fregset): Likewise.
2971 * riscv-tdep.c (riscv_supply_regset): Define new function.
2972 * riscv-tdep.h (riscv_supply_regset): Declare new function.
2974 2021-01-18 Tom de Vries <tdevries@suse.de>
2977 * nat/amd64-linux-siginfo.c (cpt_si_lower, cpt_si_upper, SEGV_BNDERR):
2979 (compat_siginfo_from_siginfo): Copy cpt_si_lower and cpt_si_upper
2982 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
2984 * remote.c (class remote_target) <remote_hostio_send_command,
2985 remote_hostio_parse_result>: Constify parameter.
2986 (remote_hostio_parse_result): Likewise.
2987 (remote_target::remote_hostio_send_command): Adjust.
2988 (remote_target::remote_hostio_pread_vFile): Adjust.
2989 (remote_target::fileio_readlink): Adjust.
2990 (remote_target::fileio_fstat): Adjust.
2992 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
2994 * remote.c (remote_target::start_remote): Move wait_status to
2997 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
2999 * remote.c (class remote_target):
3000 <add_current_inferior_and_thread>: Constify parameter.
3001 (stop_reply_extract_thread): Likewise.
3002 (remote_target::get_current_thread): Likewise.
3003 (remote_target::add_current_inferior_and_thread): Likewise.
3005 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
3007 * remote.c (class remote_target)
3008 <remote_unpack_thread_info_response,
3009 parse_threadlist_response>: Constify parameter and/or return
3010 value and or local variable.
3011 (stub_unpack_int): Likewise.
3012 (unpack_nibble): Likewise.
3013 (unpack_byte): Likewise.
3014 (unpack_int): Likewise.
3015 (unpack_string): Likewise.
3016 (unpack_threadid): Likewise.
3017 (remote_target::remote_unpack_thread_info_response): Likewise.
3018 (remote_target::parse_threadlist_response): Likewise.
3020 2021-01-15 Andrew Burgess <andrew.burgess@embecosm.com>
3022 * tui/tui.c (tui_is_window_visible): Compare to nullptr, not 0.
3024 2021-01-14 Lancelot Six <lsix@lancelotsix.com>
3026 * MAINTAINERS (Write After Approval): Add myself.
3028 2021-01-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
3030 * trad-frame.c (trad_frame_alloc_saved_regs): Avoid compile-error
3031 because is_trivially_default_constructible was first implemented with
3034 2021-01-14 Tom de Vries <tdevries@suse.de>
3036 PR breakpoints/27151
3037 * objfiles.h (in_plt_section): Handle .plt.sec.
3039 2021-01-13 Andrew Burgess <andrew.burgess@embecosm.com>
3043 (remote_target::select_thread_for_ambiguous_stop_reply): New
3045 (remote_target::process_stop_reply): Call
3046 select_thread_for_ambiguous_stop_reply.
3048 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
3050 * record-btrace.c (class record_btrace_target): Remove.
3051 (record_btrace_target::commit_resume): Remove.
3052 * record-full.c (class record_full_target): Remove.
3053 (record_full_target::commit_resume): Remove.
3055 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
3057 * remote.c (enum class resume_state): New.
3058 (struct resumed_pending_vcont_info): New.
3059 (struct remote_thread_info) <resume_state, set_not_resumed,
3060 set_resumed_pending_vcont, resumed_pending_vcont_info,
3061 set_resumed, m_resume_state, m_resumed_pending_vcont_info>:
3063 <last_resume_step, last_resume_sig, vcont_resumed>: Remove.
3064 (remote_target::remote_add_thread): Adjust.
3065 (remote_target::process_initial_stop_replies): Adjust.
3066 (remote_target::resume): Adjust.
3067 (remote_target::commit_resume): Rely on state in
3068 remote_thread_info and not on tp->executing.
3069 (remote_target::process_stop_reply): Adjust.
3071 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
3073 * arc-tdep.h (arc_debug_printf): New.
3074 * arc-tdep.c: Use arc_debug_printf.
3075 * arc-linux-nat.c (arc_linux_nat_debug_printf): Add and use.
3076 * arc-linux-tdep.c (arc_linux_debug_printf): Add and use.
3077 * arc-newlib-tdep.c (arc_newlib_debug_printf): Add and use.
3079 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
3081 * arc-tdep.h (arc_debug): Change type to bool.
3082 * arc-tdep.c (arc_debug): Change type to bool.
3083 (arc_analyze_prologue): Adjust.
3084 (_initialize_arc_tdep): Use add_setshow_boolean_cmd.
3085 * arc-linux-nat.c (ps_get_thread_area): Adjust.
3087 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
3089 * auto-load.c (auto_load_objfile_script_1): Use bool.
3090 (execute_script_contents): Use bool.
3092 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
3094 * auto-load.h (auto_load_gdb_scripts_enabled): Return bool, move
3096 * auto-load.c (auto_load_gdb_scripts_enabled): Return bool, move
3098 * extension-priv.h (struct extension_language_script_ops)
3099 <auto_load_enabled>: Return bool.
3100 * extension.h (ext_lang_auto_load_enabled): Return bool, move
3102 * extension.c (ext_lang_auto_load_enabled): Return bool, move
3104 * guile/guile-header.h (gdbscm_auto_load_enabled): Return bool,
3106 * guile/scm-auto-load.c (gdbscm_auto_load_enabled): Return bool,
3107 move comment to header.
3108 * python/python-header.h (gdbpy_auto_load_enabled): Return bool,
3110 * python/py-auto-load.c (gdbpy_auto_load_enabled): Return bool,
3111 move comment to header.
3113 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
3115 * auto-load.h (file_is_auto_load_safe): Change return type to
3116 bool, move comment here.
3117 * auto-load.c (file_is_auto_load_safe): Change return type and
3118 advice_printed to bool. Move comment to header.
3120 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
3122 * jit.c (jit_debug_printf): New, use throughout file.
3124 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
3126 * infrun.c (normal_stop): Fix indentation.
3128 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
3130 * top.h (readnow_symbol_files, readnever_symbol_files): Move
3132 * symfile.h: ... here.
3133 * symfile.c: Update doc.
3135 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
3137 * target.h (baud_rate, serial_parity): Move declarations...
3138 * serial.h: ... here.
3139 * main.c: Include serial.h.
3140 * serial.c (baud_rate, serial_parity): Update doc.
3142 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
3144 * top.c (pre_init_ui_hook): Remove.
3146 2021-01-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
3148 * aarch64-tdep.c (aarch64_vnh_type): Add "bf" field in h registers.
3149 (aarch64_vnv_type): Add "bf" type in h field of v registers.
3150 * features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerated.
3151 * features/aarch64-fpu.xml: Add bfloat16 type.
3153 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
3155 * expprint.c (dump_subexp_body_standard): Handle OP_BOOL.
3157 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
3159 * f-exp.y (dot_ops): Rename to...
3160 (fortran_operators): ...this. Add a header comment. Add symbol
3162 (yylex): Update to use fortran_operators not dot_ops. Remove
3163 special handling for '**', this is now included in
3166 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
3168 * arch/aarch64-insn.h (aarch64_debug_printf): New.
3169 * arch/aarch64-insn.c: Use aarch64_debug_printf.
3170 * aarch64-tdep.c: Use aarch64_debug_printf.
3172 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
3174 * solib-aix.c (solib_aix_debug_printf): New, use throughout
3177 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
3179 * jit.c (jit_debug): Change type to bool.
3180 (_initialize_jit): Adjust.
3182 2021-01-09 Tom Tromey <tom@tromey.com>
3185 * compile/compile.c (compile_to_object): Avoid crash when
3186 osabi_triplet_regexp returns NULL.
3188 2021-01-09 Tom Tromey <tom@tromey.com>
3190 * tracepoint.h (class collection_list) <append_exp>: Take a
3192 * tracepoint.c (collection_list::append_exp): Take a std::string.
3193 (encode_actions_1): Update.
3195 2021-01-08 Tom Tromey <tromey@adacore.com>
3197 * parse.c (parse_expression): Add void_context_p parameter. Use
3198 parse_exp_in_context.
3199 * printcmd.c (print_command_1): Change voidprint to bool. Pass to
3201 (print_command, call_command): Update.
3202 * expression.h (parse_expression): Add void_context_p parameter.
3204 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
3206 * value.c (set_value_component_location): Adjust the VALUE_LVAL
3207 for internalvar components that have a dynamic location.
3209 2021-01-08 Tom de Vries <tdevries@suse.de>
3212 * breakpoint.c (create_exception_master_breakpoint_probe)
3213 (create_exception_master_breakpoint_hook): Factor out
3215 (create_exception_master_breakpoint): ... here. Only try to install
3216 the master exception breakpoint in objfile.debug using the
3217 _Unwind_DebugHook method, if the install using probes in objfile
3220 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
3222 * f-lang.c (fortran_value_subarray): Call value_from_component.
3224 2021-01-07 Mike Frysinger <vapier@gentoo.org>
3226 * remote-sim.c: Include memory-map.h.
3227 (gdbsim_target): Define memory_map override.
3228 (gdbsim_target::memory_map): Define.
3230 2021-01-07 Tom Tromey <tromey@adacore.com>
3232 * ada-lang.c (do_full_match): Conditionally skip "_ada_" prefix.
3234 2021-01-07 Tom Tromey <tromey@adacore.com>
3236 * ada-lang.c (add_component_interval): Start loop using vector's
3239 2021-01-06 Tom Tromey <tromey@adacore.com>
3241 * ada-lang.c (ada_evaluate_subexp) <BINOP_ADD, BINOP_SUB>:
3243 * valarith.c (fixed_point_binop): Handle multiplication
3244 and division specially.
3245 * valops.c (value_to_gdb_mpq): New function.
3246 (value_cast_to_fixed_point): Use it.
3248 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
3250 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
3251 Call wnoutrefresh instead of tui_win_info::refresh_window.
3253 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
3255 * tui/tui-source.c (tui_source_window::show_line_number):
3256 Redraw second space after line number.
3258 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
3261 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
3262 Fix source pad size in prefresh.
3263 (tui_source_window_base::show_source_content): Grow source pad
3266 2021-01-04 Mike Frysinger <vapier@gentoo.org>
3268 * bfin-tdep.c (bfin_push_dummy_call): Use align_up.
3269 (bfin_frame_align): Use align_down.
3271 2021-01-04 Tom de Vries <tdevries@suse.de>
3273 * buildsym.c (buildsym_compunit::record_line): Filter out end-of-seq
3274 terminators that do not terminate anything.
3276 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
3278 * debug.c (debug_print_depth): New.
3279 * infrun.h (INFRUN_SCOPED_DEBUG_START_END): New.
3280 (INFRUN_SCOPED_DEBUG_ENTER_EXIT): New.
3281 * infrun.c (start_step_over): Use
3282 INFRUN_SCOPED_DEBUG_ENTER_EXIT.
3283 (proceed): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT and
3284 INFRUN_SCOPED_DEBUG_START_END.
3285 (fetch_inferior_event): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT.
3287 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
3289 * infrun.c (print_target_wait_results): Use infrun_debug_printf.
3291 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
3293 * utils.c (vfprintf_unfiltered): Print timestamp only when
3294 previous debug output ended with a newline.
3296 2021-01-04 Luis Machado <luis.machado@linaro.org>
3298 Update all users of trad_frame_saved_reg to use the new member
3301 Remote all struct keywords from declarations of trad_frame_saved_reg
3302 types, except on forward declarations.
3304 * aarch64-tdep.c: Update.
3305 * alpha-mdebug-tdep.c: Update.
3306 * alpha-tdep.c: Update.
3307 * arc-tdep.c: Update.
3308 * arm-tdep.c: Update.
3309 * avr-tdep.c: Update.
3310 * cris-tdep.c: Update.
3311 * csky-tdep.c: Update.
3312 * frv-tdep.c: Update.
3313 * hppa-linux-tdep.c: Update.
3314 * hppa-tdep.c: Update.
3315 * hppa-tdep.h: Update.
3316 * lm32-tdep.c: Update.
3317 * m32r-linux-tdep.c: Update.
3318 * m32r-tdep.c: Update.
3319 * m68hc11-tdep.c: Update.
3320 * mips-tdep.c: Update.
3321 * moxie-tdep.c: Update.
3322 * riscv-tdep.c: Update.
3323 * rs6000-tdep.c: Update.
3324 * s390-linux-tdep.c: Update.
3325 * s390-tdep.c: Update.
3326 * score-tdep.c: Update.
3327 * sparc-netbsd-tdep.c: Update.
3328 * sparc-sol2-tdep.c: Update.
3329 * sparc64-fbsd-tdep.c: Update.
3330 * sparc64-netbsd-tdep.c: Update.
3331 * sparc64-obsd-tdep.c: Update.
3332 * sparc64-sol2-tdep.c: Update.
3333 * tilegx-tdep.c: Update.
3334 * v850-tdep.c: Update.
3335 * vax-tdep.c: Update.
3337 * frame-unwind.c (frame_unwind_got_bytes): Make parameter const.
3338 * frame-unwind.h (frame_unwind_got_bytes): Likewise.
3340 * trad-frame.c: Update.
3341 Remove TF_REG_* enum.
3342 (trad_frame_alloc_saved_regs): Add a static assertion to check for
3343 a trivially-constructible struct.
3344 (trad_frame_reset_saved_regs): Adjust to use member function.
3345 (trad_frame_value_p): Likewise.
3346 (trad_frame_addr_p): Likewise.
3347 (trad_frame_realreg_p): Likewise.
3348 (trad_frame_value_bytes_p): Likewise.
3349 (trad_frame_set_value): Likewise.
3350 (trad_frame_set_realreg): Likewise.
3351 (trad_frame_set_addr): Likewise.
3352 (trad_frame_set_unknown): Likewise.
3353 (trad_frame_set_value_bytes): Likewise.
3354 (trad_frame_get_prev_register): Likewise.
3355 * trad-frame.h: Update.
3356 (trad_frame_saved_reg_kind): New enum.
3357 (struct trad_frame_saved_reg) <addr, realreg, data>: Remove.
3358 <m_kind, m_reg>: New member fields.
3359 <set_value, set_realreg, set_addr, set_unknown, set_value_bytes>
3360 <kind, value, realreg, addr, value_bytes, is_value, is_realreg>
3361 <is_addr, is_unknown, is_value_bytes>: New member functions.
3363 2021-01-02 Simon Marchi <simon.marchi@polymtl.ca>
3365 * target-float.c: Fix typos.
3367 2021-01-02 Hannes Domani <ssbssa@yahoo.de>
3369 * gdb-gdb.py.in: Fix main_type.flds_bnds.bounds pretty printer.
3371 2021-01-01 Joel Brobecker <brobecker@adacore.com>
3373 * gdbarch.sh: Update copyright year range.
3375 2021-01-01 Joel Brobecker <brobecker@adacore.com>
3377 Update copyright year range in copyright header of all GDB files.
3379 2021-01-01 Joel Brobecker <brobecker@adacore.com>
3381 * copyright.py (get_update_list): Add "gdbserver" and "gdbsupport"
3382 to the list of directories to update.
3384 2021-01-01 Joel Brobecker <brobecker@adacore.com>
3386 * top.c (print_gdb_version): Update copyright year.
3388 2021-01-01 Joel Brobecker <brobecker@adacore.com>
3390 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2020.
3392 For older changes see ChangeLog-2020.
3398 version-control: never