• R/O
  • HTTP
  • SSH
  • HTTPS

提交列表

标签
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

GNU Binutils with patches for OS216


users/keiths/c++compile-submit
RSS
Rev. 时间 作者
b34c454 users/keiths/c++compile-submit 2017-02-22 06:33:46 Keith Seitz

Compile C++ feature.

882b3a0 2017-02-22 06:33:45 Keith Seitz

Introduce template arguments and default values.

8e4430c 2017-02-22 06:32:58 Keith Seitz

C++-ify compile/.

c292163 2017-02-22 06:32:57 Keith Seitz

Introduce libcc1 version 1.

60118de 2017-02-22 06:32:57 Keith Seitz

Do not canonicalize base type names.

gdb/ChangeLog

* dwarf2read.c (dwarf2_name): Do not canonicalize names
for DW_TAG_base_type.

c877005 2017-02-22 06:32:57 Keith Seitz

Add a new function production.

Can this be tested in any way?

c726c52 2017-02-22 06:32:56 Phil Muldoon

Add argument compilation documentation.

This expands on the already existing comments and gives a more thorough explanation of the source of the arguments used in the final argument string.

d246674 2017-02-22 06:32:56 Keith Seitz

compile: Add 'set compile-gcc'

gdb/ChangeLog
2015-05-24 Jan Kratochvil <jan.kratochvil@redhat.com>

* NEWS (Changes since GDB 7.9): Add set compile-gcc and show
compile-gcc.
* compile/compile.c (compile_gcc, show_compile_gcc): New.
(compile_to_object): Implement compile_gcc.
(_initialize_compile): Install "set compile-gcc". Initialize
compile_gcc.

gdb/doc/ChangeLog
2015-05-24 Jan Kratochvil <jan.kratochvil@redhat.com>

* gdb.texinfo (Compiling and Injecting Code): Add to subsection
"Compiler search for the compile command" descriptions of set
compile-gcc and show compile-gcc.

include/ChangeLog
2015-05-24 Jan Kratochvil <jan.kratochvil@redhat.com>

* gcc-interface.h (enum gcc_base_api_version): Update comment for
GCC_FE_VERSION_1.
(struct gcc_base_vtable): Rename set_arguments to set_arguments_v0.
Add set_arguments, set_triplet_regexp and set_driver_filename.

062ea48 2017-02-22 06:32:55 Keith Seitz

compile: set debug compile: Display GCC driver filename

gdb/ChangeLog
2015-05-24 Jan Kratochvil <jan.kratochvil@redhat.com>

* compile/compile.c (compile_to_object): Conditionally call set_verbose.
Conditionally call compile or compile_v0.

include/ChangeLog
2015-05-24 Jan Kratochvil <jan.kratochvil@redhat.com>

* gcc-interface.h (enum gcc_base_api_version): Add GCC_FE_VERSION_1.
(struct gcc_base_vtable): Rename compile to compile_v0. Update comment
for compile. New methods set_verbose and compile.

dbd6781 2017-02-22 06:32:55 Keith Seitz

Add search_symbols_multiple.

NOTE: All this symbol stuff should be checked against Pedro's cp-linespec
branch, which might clean-up a LOT of this. [Actually, I think Pedro's work
might simplify gcc_cplus_convert_symbol and eliminate regexp_search_symbols
and related nastiness.]

76e2b17 2017-02-22 06:32:54 Keith Seitz

Add domain_enum to linespec API.

9812e70 2017-02-22 06:32:54 Keith Seitz

Record aliased constructors and destructors.

e691088 2017-02-22 06:32:53 Keith Seitz

DWARF and C++ ABI constructor/destructor enhancements.

This patch primarily adds support for recording constructor and destructor
kinds for the relevant types.

gdb/ChangeLog

eaed9d3 2017-02-22 06:32:53 Keith Seitz

Add a language method to hash symbol names for dictionary lookups.

This patch does *not* address minsyms or gdb_index symbols. Pedro
was looking into some of that on his cp-linespec branch.

66a4533 2017-02-22 06:32:52 Keith Seitz

Record nested types in ...

e787e80 2017-02-22 06:32:51 Keith Seitz

new_fn_field refactor.

88d34f9 2017-02-22 06:32:51 Keith Seitz

Improved handling for conversion operators.

3cb92de 2017-02-22 06:32:50 Keith Seitz

Use struct block_symbol in linespec APIs.

This patch changes linespec's internal API functions to use `block_symbol's
everywhere it currently uses `struct symbol's.

gdb/ChangeLog

a156e82 2017-02-22 06:32:50 Keith Seitz

Introduce dw2_linkage_name.

The DWARF reader is littered with the following idiom to read a linkage name
from the debug info:

mangled = dwarf2_string_attr (die, DW_AT_linkage_name, cu);
if (mangled == NULL)
mangled = dwarf2_string_attr (die, DW_AT_MIPS_linkage_name, cu);

This patch introduces a new function to simplify this to:

mangled = dw2_linkage_name (die, cu);

gdb/ChangeLog

0ae60b6 2017-02-21 05:02:51 Jan Kratochvil

DWARF-5: NEWS

a NEWS entry.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* NEWS (Changes since GDB 7.12): Add DWARF-5.

0224619 2017-02-21 05:02:20 Jan Kratochvil

DWARF-5: DW_FORM_data16

DWARF-5 has new form DW_FORM_data16. The problem is that GDB cannot pass
16-byte constant as a constant value as that would require GDB to use GCC
extension __int128.

Formerly such data was coded as DW_FORM_block* so GDB still decodes
DW_FORM_data16 like DW_FORM_block*.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* dwarf2read.c (skip_one_die, read_attribute_value)
(dwarf2_const_value_attr, dump_die_shallow)
(dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
(skip_form_bytes, attr_form_is_constant): Handle DW_FORM_data16.

gdb/testsuite/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* gdb.dwarf2/formdata16.c: New file.
* gdb.dwarf2/formdata16.exp: New file.
* lib/dwarf.exp (Dwarf): Add DW_FORM_data16.

0af92d6 2017-02-21 05:01:49 Jan Kratochvil

DWARF-5: Macros

DWARF-5 renamed DW_MACRO_GNU_* to DW_MACRO_*.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* dwarf2read.c (read_file_scope): Rename DW_MACRO_GNU_*.
(dwarf_parse_macro_header): Accept DWARF version 5.
(dwarf_decode_macro_bytes, dwarf_decode_macros): Rename DW_MACRO_GNU_*.

216f72a 2017-02-21 05:00:55 Jan Kratochvil

DWARF-5: call sites

this patch updates all call sites related DWARF-5 renames.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* block.c (call_site_for_pc): Rename DW_OP_GNU_*, DW_TAG_GNU_* and
DW_AT_GNU_*.
* common/common-exceptions.h (enum errors): Likewise.
* dwarf2-frame.c (class dwarf_expr_executor): Likewise.
* dwarf2expr.c (dwarf_block_to_dwarf_reg)
(dwarf_expr_context::execute_stack_op): Likewise.
* dwarf2expr.h (struct dwarf_expr_context, struct dwarf_expr_piece):
Likewise.
* dwarf2loc.c (dwarf_evaluate_loc_desc::get_base_type)
(dwarf_evaluate_loc_desc::push_dwarf_reg_entry_value)
(show_entry_values_debug, call_site_to_target_addr)
(func_addr_to_tail_call_list, func_verify_no_selftailcall)
(dwarf_expr_reg_to_entry_parameter, dwarf_entry_parameter_to_value)
(entry_data_value_free_closure, value_of_dwarf_reg_entry)
(value_of_dwarf_block_entry, indirect_pieced_value)
(symbol_needs_eval_context::push_dwarf_reg_entry_value):
(disassemble_dwarf_expression): Likewise.
* dwarf2read.c (process_die, inherit_abstract_dies)
(read_call_site_scope): Likewise.
* gdbtypes.h (struct func_type, struct call_site_parameter)
(struct call_site): Likewise.
* stack.c (read_frame_arg): Likewise.
* std-operator.def (OP_VAR_ENTRY_VALUE): Likewise.

gdb/doc/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* gdb.texinfo (Print Settings, Tail Call Frames): Rename DW_OP_GNU_*,
DW_TAG_GNU_* and DW_AT_GNU_*.

gdb/testsuite/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* gdb.arch/amd64-entry-value-param-dwarf5.S: New file.
* gdb.arch/amd64-entry-value-param-dwarf5.c: New file.
* gdb.arch/amd64-entry-value-param-dwarf5.exp: New file.
* gdb.arch/amd64-entry-value.exp: Rename DW_OP_GNU_*, DW_TAG_GNU_* and
DW_AT_GNU_*.

4398809 2017-02-21 04:59:56 Jan Kratochvil

DWARF-5 basic functionality

this is a kitchen-sink patch for everything that did not fit into its own
patch.

DWO is not yet implemented.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* defs.h (read_unsigned_leb128): New declaration.
* dwarf2loc.c (decode_debug_loclists_addresses): New function.
(decode_debug_loc_dwo_addresses): Update DEBUG_LOC_* to DW_LLE_*.
(dwarf2_find_location_expression): Call also
decode_debug_loclists_addresses. Handle DWARF-5 ULEB128 length.
* dwarf2loc.h (dwarf2_version): New declaration.
* dwarf2read.c (struct dwarf2_per_objfile): Add loclists, line_str,
rnglists.
(dwarf2_elf_names): Add .debug_loclists, .debug_line_str,
.debug_rnglists.
(struct dwop_section_names): Add loclists_dwo.
(dwop_section_names): Add .debug_loclists.dwo.
(struct comp_unit_head): Add unit_type, signature, type_offset_in_tu.
(struct dwarf2_per_cu_data): Add dwarf_version.
(struct dwo_sections): Add loclists.
(struct attr_abbrev): Add implicit_const.
(read_indirect_line_string): New declaration.
(read_unsigned_leb128): Delete declaration.
(rcuh_kind): New definition.
(read_and_check_comp_unit_head): Change parameter
is_debug_types_section to section_kind.
(dwarf2_locate_sections): Handle loclists, line_str and rnglists.
(read_comp_unit_head): Change parameter abfd to section, add parameter
section_kind. Handle DWARF-5.
(error_check_comp_unit_head): Accept also DWARF version 5.
(read_and_check_comp_unit_head): Change parameter
is_debug_types_section to section_kind.
(read_and_check_type_unit_head): Delete function.
(read_abbrev_offset): Handle DWARF-5.
(create_debug_type_hash_table): Add parameter section_kind. Process
only DW_UT_type. Use signature and type_offset_in_tu from struct
comp_unit_head.
(create_debug_types_hash_table): Update create_debug_type_hash_table
caller.
(create_all_type_units): Call create_debug_type_hash_table.
(read_cutu_die_from_dwo, init_cutu_and_read_dies): Change
read_and_check_type_unit_head caller to read_and_check_comp_unit_head
caller.
(skip_one_die): Handle DW_FORM_implicit_const.
(dwarf2_rnglists_process): New function.
(dwarf2_ranges_process): Call dwarf2_rnglists_process for DWARF-5.
(abbrev_table_read_table): Handle DW_FORM_implicit_const.
(read_attribute_value): Handle DW_FORM_implicit_const,
DW_FORM_line_strp.
(read_attribute): Handle DW_FORM_implicit_const.
(read_indirect_string_at_offset_from): New function from
read_indirect_string_at_offset.
(read_indirect_string_at_offset): Call
read_indirect_string_at_offset_from.
(read_indirect_line_string_at_offset): New function.
(read_indirect_string): New function comment.
(read_indirect_line_string): New function.
(read_unsigned_leb128): Make it global.
(dwarf2_string_attr): Handle DWARF-5.
(add_include_dir_stub, read_formatted_entries): New functions.
(dwarf_decode_line_header, dump_die_shallow, cu_debug_loc_section):
Handle DWARF-5.
(per_cu_header_read_in): Update read_comp_unit_head caller.
(dwarf2_version): New function.
* symfile.h (struct dwarf2_debug_sections): Add loclists, line_str and
rnglists.
* xcoffread.c (dwarf2_xcoff_names): Update struct dwarf2_debug_sections
fields.

gdb/testsuite/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* gdb.dwarf2/dw2-error.exp (file $testfile): Update expected string.

22d2f3a 2017-02-21 04:59:40 Jan Kratochvil

Code cleanup: Refactor abbrev_table_read_table cycle

I find it as an improvement on its own, it prevents more code duplication in
a future patch.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* dwarf2read.c (abbrev_table_read_table): Read the data only once.

5f46c5a 2017-02-21 04:59:14 Jan Kratochvil

Code cleanup: Split dwarf2_ranges_read to a callback

DWARF-5 has .debug_rnglists which is somehow similar to .debug_ranges.

This patch converts dwarf2_ranges_read to dwarf2_ranges_process which can work
with both DWARF kinds of range lists through a callback.

It also simplifies dwarf2_record_block_ranges which can benefit from it.

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* dwarf2read.c (dwarf2_ranges_process): New function from
dwarf2_ranges_read.
(dwarf2_ranges_read, dwarf2_record_block_ranges): Use
dwarf2_ranges_process.

78d4d2c 2017-02-21 04:53:19 Jan Kratochvil

Code cleanup: Split create_debug_types_hash_table

DWARF-5 moved .debug_types into .debug_info and so the types reading code needs
to be reused more (in a future patch).

gdb/ChangeLog
2017-02-20 Jan Kratochvil <jan.kratochvil@redhat.com>

* dwarf2read.c (create_debug_type_hash_table): New function from
create_debug_types_hash_table.
(create_debug_types_hash_table): Call create_debug_type_hash_table.
(create_all_type_units, open_and_init_dwo_file): Update
create_debug_types_hash_table callers.

43a444f 2017-02-20 23:40:39 Nick Clifton

Fix another memory access error in readelf when parsing a corrupt binary.

PR binutils/21156
* dwarf.c (cu_tu_indexes_read): Move into...
(load_cu_tu_indexes): ... here. Change the variable into
tri-state. Change the function into boolean, returning
false if the indicies could not be loaded.
(find_cu_tu_set): Return NULL if the indicies could not be
loaded.

c48cfed 2017-02-20 22:44:03 Alan Modra

PE ld -r script fixes

PR 15041
* scripttempl/pe.sc: Don't combine sections for ld -r.
* scripttempl/pep.sc: Likewise.

1b076f2 2017-02-20 22:03:13 Sergio Durigan Junior

Fix thinko on last commit

On fork-child.c:trace_start_error, va_end should refer to 'ap', not
'args. This fixes it.

Sorry about the breakage.

gdb/ChangeLog:
2017-02-20 Sergio Durigan Junior <sergiodj@redhat.com>

PR gdb/16188
* fork-child.c (trace_start_error): Fix thinko. va_end should
refer to 'ap', not 'args'.