X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2FChangeLog;h=2b9e55409931323d313242e34fb83caf745f5e32;hb=6873858b7e464e114f9a877e216949ad8350b4cf;hp=a5cb3bbd82523cb9dc7f0fe95a312dab95a67cab;hpb=249b57335279b1051456884f1a908cdec907f43a;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a5cb3bbd82..2b9e554099 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,173 @@ +2018-04-27 Tom Tromey + + PR rust/22545: + * rust-lang.c (rust_inclusive_range_type_p): New function. + (rust_range): Handle inclusive ranges. + (rust_compute_range): Likewise. + * rust-exp.y (struct rust_op) : New field. + (DOTDOTEQ): New constant. + (range_expr): Add "..=" productions. + (operator_tokens): Add "..=" token. + (ast_range): Add "inclusive" parameter. + (convert_ast_to_expression) : Handle inclusive + ranges. + * parse.c (operator_length_standard) : Handle new + bounds values. + * expression.h (enum range_type) : New constants. + Update comments. + * expprint.c (print_subexp_standard): Handle new bounds values. + (dump_subexp_body_standard): Likewise. + +2018-04-27 Tom Tromey + + * configure: Rebuild. + * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override. + * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not + "OVERRIDE". + (class symbol_needs_eval_context): Likewise. + * dwarf2read.c (mock_mapped_index::symbol_name_count) + (mock_mapped_index::symbol_name_at): Use "override". Remove + "virtual". + * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use + "override". + (class dwarf_expr_executor): Use "override", not "OVERRIDE". + * aarch64-tdep.c (instruction_reader::read): Use "override". + (instruction_reader_test::read): Likewise. + * arm-tdep.c (instruction_reader::read): Use "override". + (instruction_reader_thumb::read): Likewise. + +2018-04-26 Andrzej Kaczmarek + + PR remote/9665 + * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result + instead of remote_send. + (remote_send): Remove. + +2018-04-26 Pedro Alves + + * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use + find_function_start_sal instead of find_pc_line. + +2018-04-26 Pedro Alves + + * breakpoint.c (set_breakpoint_location_function): Handle + mst_data_gnu_ifunc. + * c-exp.y (variable production): Handle mst_data_gnu_ifunc. + * elfread.c (elf_symtab_read): Give data symbols with + BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type. + (elf_rel_plt_read): Update comment. + * linespec.c (convert_linespec_to_sals): Handle + mst_data_gnu_ifunc. + (minsym_found): Handle mst_data_gnu_ifunc. + * minsyms.c (msymbol_is_function, minimal_symbol_reader::record) + (find_solib_trampoline_target): Handle mst_data_gnu_ifunc. + * parse.c (find_minsym_type_and_address): Handle + mst_data_gnu_ifunc. + * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc. + * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc. + * symtab.h (minimal_symbol_type) : Update + comment. + : New enumerator. + +2018-04-26 Pedro Alves + + * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ... + (lookup_minimal_symbol_by_pc_section): ... this. Replace + 'want_trampoline' parameter by a lookup_msym_prefer parameter. + Handle it. + (lookup_minimal_symbol_by_pc_section): Delete old implementation. + (lookup_minimal_symbol_by_pc): Adjust. + (in_gnu_ifunc_stub): Prefer GNU ifunc symbols. + (lookup_solib_trampoline_symbol_by_pc): Adjust. + * minsyms.h (lookup_msym_prefer): New enum. + (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline' + parameter by a lookup_msym_prefer parameter. + +2018-04-26 Pedro Alves + + * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name + ends in "@plt" instead of looking at the symbol's section. + +2018-04-26 Pedro Alves + + * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete. Remove + all references. + (find_pc_partial_function_gnu_ifunc): Rename to ... + (find_pc_partial_function): ... this, and remove references to + 'is_gnu_ifunc_p'. + (find_pc_partial_function): Delete old implementation. + * symtab.h (find_pc_partial_function_gnu_ifunc): Delete. + +2018-04-26 Pedro Alves + + * linespec.c (struct bound_minimal_symbol_search_key): New. + (convert_linespec_to_sals): Sort minimal symbols earlier. Don't + skip first line if we found a GNU ifunc minimal symbol by name. + (compare_msymbols): Change parameters to work with a destructured + lhs minsym. + (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New + functions. + +2018-04-26 Pedro Alves + + * breakpoint.c (set_breakpoint_location_function): Don't resolve + ifunc targets here. Instead, if we have an ifunc minsym, use its + address/name. + (add_location_to_breakpoint): Store the minsym and the objfile in + the breakpoint location. + * breakpoint.h (bp_location) : New fields. + * linespec.c (minsym_found): Resolve GNU ifunc targets here. + Record the minsym in the sal. + * symtab.h (symtab_and_line) : New field. + +2018-04-26 Pedro Alves + + * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P + unless we actually resolved the ifunc. + +2018-04-26 Pedro Alves + + * c-exp.y (variable production): Prefer ifunc minsyms over + regular function symbols. + * symtab.c (find_gnu_ifunc): New function. + * minsyms.h (lookup_msym_prefer): New enum. + (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline' + parameter by a lookup_msym_prefer parameter. + * symtab.h (find_gnu_ifunc): New declaration. + +2018-04-26 Pedro Alves + + * blockframe.c (find_gnu_ifunc_target_type): New function. + (find_function_type): New. + * eval.c (evaluate_var_msym_value): For GNU ifunc types, always + return a value with a memory address. + (eval_call): For calls to GNU ifunc functions, try to find the + type of the target function from the type that the resolver + returns. + * gdbtypes.c (objfile_type): Don't install a return type for ifunc + symbols. + * infcall.c (find_function_return_type): Delete. + (find_function_addr): Add 'function_type' parameter. For calls to + GNU ifunc functions, try to find the type of the target function + from the type that the resolver returns, and return it via + FUNCTION_TYPE. + (call_function_by_hand_dummy): Adjust to use the function type + returned by find_function_addr. + (find_function_addr): Add 'function_type' parameter and move + description here. + * symtab.h (find_function_type, find_gnu_ifunc_target_type): New + declarations. + +2018-04-26 Pedro Alves + + * c-exp.y (variable production): Skip finding an alias for ifunc + symbols. + +2018-04-26 Pedro Alves + + * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too. + 2018-04-25 Pedro Alves * infcmd.c (kill_command): Print the pid as string, not the whole