summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Improve ODR checking.users/ccoutant/two-level-line-150331Cary Coutant2015-03-312-11/+34
| | | | | | | | | | | | 2015-02-09 Cary Coutant <ccoutant@google.com> gold/ * dwarf_reader.cc (Sized_dwarf_line_info::read_lines): Fix debug output to print correct context. (Sized_dwarf_line_info::do_addr2line): Add debug output. Return up to 4 more locations at the beginning of the function. * symtab.cc (Symbol_table::detect_odr_violations): Get canonical result before sorting list of line numbers.
* Add gold support for two-level line tables.Cary Coutant2015-03-314-56/+477
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2015-01-30 Cary Coutant <ccoutant@google.com> elfcpp/ * dwarf.h (enum DW_LNS): Add experimental two-level line table opcodes. (enum DW_LNCT): New enum for DWARF-5. gold/ * debug.h (DEBUG_LOCATION): New constant. (debug_string_to_enum): Add DEBUG_LOCATION. * dwarf_reader.cc (struct LineStateMachine): Add context field. (ResetLineStateMachine): Likewise. (Sized_dwarf_line_info::Sized_dwarf_line_info): Add support for two-level line tables. (Sized_dwarf_line_info::read_header_prolog): Likewise. Also add support for DWARF-3+ line tables. (Sized_dwarf_line_info::read_header_tables_v5): New method. (Sized_dwarf_line_info::process_one_opcode): Add support for two-level line tables. (Sized_dwarf_line_info::read_lines): Likewise. (Sized_dwarf_line_info::read_line_mappings): Likewise. (Sized_dwarf_line_info::do_addr2line): Add debug output. * dwarf_reader.h (Sized_dwarf_line_info::~Sized_dwarf_line_info): Delete str_buffer_start_. (DWARF5_EXPERIMENTAL_LINE_TABLE): New constant. (Sized_dwarf_line_info::read_header_tables_v5): New method. (Sized_dwarf_line_info::read_lines): Update prototype. (Sized_dwarf_line_info::process_one_opcode): Likewise. (Sized_dwarf_line_info::max_ops_per_insn): New data member. (Sized_dwarf_line_info::str_buffer_): New data member. (Sized_dwarf_line_info::str_buffer_end_): New data member. (Sized_dwarf_line_info::str_buffer_start_): New data member. (Sized_dwarf_line_info::end_of_header_length_): New data member. (Sized_dwarf_line_info::logicals_start_): New data member. (Sized_dwarf_line_info::actuals_start_): New data member. (Sized_dwarf_line_info::end_of_unit_): New data member.
* Add support for DWARF-5 and experimental two-level line number tables.Cary Coutant2015-03-313-254/+680
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://wiki.dwarfstd.org/index.php?title=TwoLevelLineTables 2015-01-06 Cary Coutant <ccoutant@google.com> binutils/ * dwarf.h (struct DWARF2_Internal_LineInfo): Add li_address_size and li_segment_size. * dwarf.c (struct State_Machine_Registers): Add discriminator, context, and subprogram. (reset_state_machine): Likewise. (logicals_table, logicals_allocated, logicals_count): New variables. (free_logicals): New function. (append_logical): New function. (process_extended_line_op): Add is_logical parameter; track discriminator. (fetch_indirect_string): Correct boundary check. (fetch_indirect_line_string): New function. (fetch_indexed_string): Corrrect boundary check. (DWARF2_LINE_EXPERIMENTAL_VERSION): New macro. (read_debug_line_header): Add pinitial_length_size, poffset_size parameters. Update all callers. Check for new line table versions. Read li_address_size and li_segment_size. (display_directory_table_v4): New function, factored out from display_debug_lines_raw. (display_file_name_table_v4): Likewise. (display_dir_file_table_v5): New function. (display_line_program): New function, factored out from display_debug_lines_raw. (display_debug_lines_raw): Support new line table versions. (display_debug_lines_decoded): Add missing newline to warning. (display_debug_lines): Load .debug_line_str section. (debug_displays): Add .debug_line_str section. * dwarf.h (dwarf_section_display_enum): Add line_str. * readelf.c (process_section_headers): Add .debug_line_str.
* Add support for DWARF-5 and experimental two-level line number tables.Cary Coutant2015-03-313-81/+758
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2014-12-23 Cary Coutant <ccoutant@google.com> gas/ * config/obj-elf.c (elf_pseudo_table): Add .lloc and .subprog directives. * dwarf2dbg.h (struct dwarf2_line_info): Add logical field. (dwarf2_directive_subprog): New function. (dwarf2_directive_loc): Add is_lloc parameter. * dwarf2dbg.c: Include "hash.h". (line_base): New variable. (line_range): New variable. (DWARF2_EXPERIMENTAL_LINE_OPCODE_BASE): Rename. (DWARF2_LINE_BASE): Restore to original value. (DWARF2_LINE_RANGE): Likewise. (DWARF5_EXPERIMENTAL_LINE_BASE): New macro. (DWARF5_EXPERIMENTAL_LINE_RANGE): New macro. (SPECIAL_LINE): Use line_base, line_range. (DWARF2_LINE_EXPERIMENTAL_VERSION): New macro. (DWARF2_EXPERIMENTAL_LINE_OPCODE_BASE): New macro. (opcode_base): New static variable. (DWARF2_LINE_BASE, DWARF2_LINE_RANGE): Adjust parameters. (DWARF2_LINE_MAX_OPS_PER_INSN): New macro. (SPECIAL_LINE, SPECIAL_ADDR): Use opcode_base. (struct subprog_entry): New struct. (subprogs, subprogs_in_use, subprogs_allocated): New variables. (struct logicals_entry): New struct. (logicals, logicals_in_use, logicals_allocated, logicals_with_labels): New variables. (struct string_table): New struct. (debug_line_str_table): New variable. (current): Add logical field. (dwarf2_gen_line_info): Fill in symbol and segment for recent logicals. (dwarf2_where): Add logical field. (make_subprog_entry): New function. (make_logical): New function. (dwarf2_directive_subprog): New function. (dwarf2_directive_loc): Add is_lloc parameter; add support for .lloc directive. (out_set_addr_from_logical): New function. (size_inc_line_addr): Fix signed/unsigned warnings. Use opcode_base, line_base, line_range. (emit_inc_line_addr): Likewise. (emit_logicals): New function. (process_entries): Add support for two-level line tables. (add_to_string_table): New function. (out_string_table): New function. (out_dwarf5_file_list): New function. (out_subprog_list): New function. (out_debug_line): Add support for DWARF-5 line tables and for experimental two-level line number tables. (dwarf2_finish): Likewise.
* Add experimental DWARF-5 values for two-level line number tables.Cary Coutant2015-03-312-1/+25
| | | | | | | | | | | | | http://wiki.dwarfstd.org/index.php?title=TwoLevelLineTables 2014-12-23 Cary Coutant <ccoutant@google.com> include/ * dwarf2.def (DW_FORM_line_strp): New constant. * dwarf2.h (enum dwarf_line_number_ops): Add DW_LNS_inlined_call, DW_LNS_pop_context, DW_LNS_set_context, DW_LNS_set_address_from_logical. (enum dwarf_line_number_content_type): Add new DW_LNCT_ codes.
* Add --with-system-zlib in gdbH.J. Lu2015-03-317-101/+39
| | | | | | | | | | | | | | | | This patch adds --with-system-zlib and removes --with-zlib in gdb. * Makefile.in (ZLIB): New. (ZLIBINC): Likewise. (INTERNAL_CFLAGS_BASE): Add $(ZLIBINC). (CLIBS): Add $(ZLIB). * acinclude.m4: (GDB_AC_CHECK_BFD): Add $zlibdir to LDFLAGS. Add -lz to LIBS. * gdb_bfd.c: Don't check HAVE_ZLIB_H to include <zlib.h>. * top.c (print_gdb_configuration): Remove --with-zlib and --without-zlib. * config.in: Regenerated. * configure: Likewise.
* Remove the last change on dw2-compress-1.dH.J. Lu2015-03-312-5/+1
| | | | The compressed .debug_info section is bigger than the original in 32-bit.
* Add support for Nuxi CloudABI on x86-64Ed Schouten2015-03-3113-0/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | bfd/ * config.bfd (targ_defvec): Set to x86_64_elf64_cloudabi_vec for x86_64-*-cloudabi*. * configure.ac: Handle x86_64_elf64_cloudabi_vec. * configure: Regenerated. * elf64-x86-64.c (TARGET_LITTLE_SYM): Support x86_64-*-cloudabi*. (TARGET_LITTLE_NAME): Likewise. (ELF_OSABI): Likewise. (elf64_bed): Likewise. * targets.c (x86_64_elf64_cloudabi_vec): New. (_bfd_target_vector): Add x86_64_elf64_cloudabi_vec. gas/ * configure.tgt (fmt): Set to elf for *-*-cloudabi*. ld/ * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf_x86_64_cloudabi.c. (eelf_x86_64_cloudabi.c): New. * configure.tgt (targ_emul): Set to elf_x86_64_cloudabi for x86_64-*-cloudabi*. * Makefile.in: Regenerated. * emulparams/elf_x86_64_cloudabi.sh: New file.
* dwarf.exp: Allow generating a stub .debug_line sectionPetr Machata2015-03-312-1/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Example of use: Dwarf::assemble "foo.s" { build_id 0102030405060708 declare_labels L; cu {is_64 0 version 4 addr_size 8} { DW_TAG_compile_unit { {DW_AT_stmt_list $L DW_FORM_sec_offset} } { DW_TAG_subprogram { # We can now reference the source file. {DW_AT_decl_file 1 DW_FORM_data1} } } } lines {is_64 0 version 2 addr_size 8} L { include_dir "foo" include_dir "bar" file_name "foo.c" 1 file_name "bar.c" 1 file_name "baz.c" 2 } } Signed-off-by: Petr Machata <pmachata@redhat.com>
* Revert the AM_ZLIB change in gasH.J. Lu2015-03-316-20/+34
| | | | | | | * configure.ac: Revert the AM_ZLIB change. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise.
* Revert the AM_ZLIB change in binutilsH.J. Lu2015-03-315-17/+24
| | | | | | | * configure.ac: Revert the AM_ZLIB change. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise.
* Revert the AM_ZLIB change in bfdH.J. Lu2015-03-316-16/+24
| | | | | | | | * configure.ac: Revert the AM_ZLIB change. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * doc/Makefile.in: Likewise.
* Replace --with-zlib with --with-system-zlibH.J. Lu2015-03-312-14/+17
| | | | * zlib.m4 (AM_ZLIB): Replace --with-zlib with --with-system-zlib.
* Add cpu information to the info os command on linux.Antoine Tremblay2015-03-315-73/+199
| | | | | | | | | | | | | | | | | | | | This patch adds cpu information on linux based on /proc/cpuinfo as : cpus Listing of all cpus/cores on the system This patch also reorders the info os commands so that they are listed in alphabetical order. gdb/ChangeLog: * NEWS: Mention info os cpus support. * gdb/nat/linux-osdata.c (linux_xfer_osdata_cpus): New function. (struct osdata_type): Add cpus entry, reorder the entries in alphabetical order. gdb/doc/ChangeLog: * gdb.texinfo (Operating System Auxiliary Information): Add info os cpus documentation, reorder the info os entries in alphabetical order.
* Fix the triplet regexp to recognize triplets, not only quadrupletsMatthias Klose2015-03-312-1/+8
| | | | | | | | | This allows triplets where the vendor is not set. gdb/ChangeLog: 2015-03-31 Matthias Klose <doko@ubuntu.com> * compile/compile.c (compile_to_object): Allow triplets with or without vendor set.
* Remove --with-zlib from ldH.J. Lu2015-03-317-99/+20
| | | | | | | | | | | | | | | This patch removes --with-zlib from ld. ld/ * configure.ac (AM_ZLIB): Removed. * Makefile.in: Regenerated. * config.in: Likewise. * configure: Likewise. ld/testsuite/ * ld-bootstrap/bootstrap.exp (extralibs): Add -lz.
* Add --with-system-zlib in gasH.J. Lu2015-03-3111-125/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds --with-system-zlib and remove --with-zlib in gas. gas/ * Makefile.am (ZLIBINC): New. (AM_CFLAGS): Add $(ZLIBINC). * as.c: (show_usage): Don't check HAVE_ZLIB_H. (parse_args): Likewise. * compress-debug.c: Don't check HAVE_ZLIB_H to include <zlib.h>. (compress_init): Don't check HAVE_ZLIB_H. (compress_data): Likewise. (compress_finish): Likewise. * configure.ac (AM_ZLIB): Removed. (zlibinc): New. AC_SUBST. Add --with-system-zlib. * Makefile.in: Regenerated. * config.in: Likewise. * configure: Likewise. * doc/Makefile.in: Likewise. gas/testsuite/ * gas/i386/dw2-compress-1.d: Expect .zdebug_info.
* Add --with-system-zlib in binutilsH.J. Lu2015-03-318-106/+59
| | | | | | | | | | | | | | | | | | This patch adds --with-system-zlib and remove --with-zlib in binutils. * Makefile.am (ZLIB): New. (ZLIBINC): Likewise. (AM_CFLAGS): Add $(ZLIBINC). (readelf_LDADD): Add $(ZLIB). * configure.ac (AM_ZLIB): Removed. (zlibdir): New. AC_SUBST. (zlibinc): Likewise. Add --with-system-zlib. * readelf.c: Don't check HAVE_ZLIB_H to include <zlib.h>. (uncompress_section_contents): Don't check HAVE_ZLIB_H. * Makefile.in: Regenerated. * config.in: Likewise. * configure: Likewise.
* sim: cr16/d10v: restore generated headers depMike Frysinger2015-03-314-0/+12
| | | | | While cleaning up stale make rules, one too many were deleted. The build system autogenerates static rules, but not generated files.
* common: cgen-mem/cgen-ops: fix extern inline handlingMike Frysinger2015-03-313-2/+9
| | | | | | With newer versions of gcc (5.x), the extern inline we're using with the cgen-{mem,ops} modules no longer work. Since this code really wants the gnu inline semantics, use that attribute explicitly.
* sim: m68hc11: fix gcc-5 build error w/restrict keywordMike Frysinger2015-03-313-8/+15
|
* Automatic date update in version.inGDB Administrator2015-03-311-1/+1
|
* PR c++/18141Doug Evans2015-03-302-2/+11
| | | | | | | | gdb/ChangeLog: PR c++/18141 * cp-namespace.c (cp_search_static_and_baseclasses): Always look for klass in VAR_DOMAIN.
* Support AARCH64_TLSLD_ADD_DTPREL_* relocations.Jing Yu2015-03-303-9/+34
| | | | | | | | | | | | | | | | | | | | | Also Change _TLS_MODULE_BASE_. Always let it point to the start of TLS segment. 2015-03-28 Jing Yu <jingyu@google.com> * aarch64-reloc.def: New TLSLD_ADD_DTPREL_HI12, TLSLD_ADD_DTPREL_LO12_NC. * aarch64.cc (Target_aarch64::define_tls_base_symbol): Always let _TLS_MODULE_BASE_ point to the start of tls segment. (Target_aarch64::optimize_tls_reloc): Add cases for R_AARCH64_TLSLD_ADD_DTPREL_HI12 and R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC. (Target_aarch64::Scan::local): Likewise. (Target_aarch64::Scan::global): Likewise. (Target_aarch64::Relocate::relocate): Likewise. (Target_aarch64::Relocate::relocate_tls): Likewise. And remove subtracting tls segment size from symbol value for TLSLD_*_DTPREL relocations.
* Update config.guess and config.sub to the latest upstream versionEd Schouten2015-03-303-10/+35
| | | | | This version adds support for a platform I'd like to add support for, namely CloudABI.
* Make all-bfd depend on all-zlibH.J. Lu2015-03-303-0/+14
| | | | | * Makefile.def (dependencies): Add all-zlib to all-bfd. * Makefile.in: Regenerated.
* sim: arm: convert to nrunMike Frysinger2015-03-304-153/+160
| | | | | | A lot of cpu state is stored in global variables, as is memory handling. The sim_size support needs unwinding at some point. But at least this is an improvement on the status quo.
* sim: arm: delete NEED_UI_LOOP_HOOK handlingMike Frysinger2015-03-303-20/+8
|
* sim: arm: clean up misc warningsMike Frysinger2015-03-307-97/+54
| | | | Also delete a few unused funcs.
* sim: arm: use common configure optionsMike Frysinger2015-03-304-2/+555
| | | | | | In preparation for converting to nrun, call the common functions that are needed. This doesn't produce any new warnings, and the generated code should be the same.
* Remove three redundant wrapper functions in remote.cGary Benson2015-03-302-27/+15
| | | | | | | | | | | gdb/ChangeLog: * remote.c (remote_mourn_1): Remove function. Update all callers to use remote_mourn. (extended_remote_mourn_1): Remove function. Update all callers to use extended_remote_mourn. (extended_remote_attach_1): Remove function. Update all callers to use extended_remote_attach.
* Properly set sh_info for .rela.plt/rel.plt sectionH.J. Lu2015-03-307-10/+69
| | | | | | | | | | | | | | | | | | | | | | | | Since .rela.plt/rel.plt section may contain relocations against .got.plt section, we set sh_info for .rela.plt/rel.plt section to .got.plt section index if target has .got.plt section. bfd/ PR ld/18169 * elf-bfd.h (elf_backend_data): Add get_reloc_section. (_bfd_elf_get_reloc_section): New. * elf.c (_bfd_elf_get_reloc_section): Likewise. (assign_section_numbers): Call get_reloc_section to look up the section the relocs apply. * elfxx-target.h (elf_backend_get_reloc_section): Likewise. (elfNN_bed): Initialize get_reloc_section with elf_backend_get_reloc_section. ld/testsuite/ PR ld/18169 * ld-elf/linkinfo1a.d: Updated. * ld-elf/linkinfo1b.d: Likewise.
* sim: arm: move COPRO settings to the makefileMike Frysinger2015-03-304-29/+12
| | | | | These values are the same all the time, so just list them directly in the Makefile.
* sim: d10v: add missing sim-main.hMike Frysinger2015-03-301-0/+55
|
* sim: d10v: convert to nrunMike Frysinger2015-03-307-130/+121
| | | | | | A lot of cpu state is stored in global variables, as is memory handling. The sim_size support needs unwinding at some point. But at least this is an improvement on the status quo.
* sim: d10v: delete NEED_UI_LOOP_HOOK handlingMike Frysinger2015-03-303-21/+8
| | | | | This hook is used only when linked into gdb, and d10v doesn't have a gdb port anymore. Punt it.
* sim: d10v: clean up misc warningsMike Frysinger2015-03-306-285/+240
|
* sim: d10v: use common configure optionsMike Frysinger2015-03-306-7/+452
| | | | | | In preparation for converting to nrun, call the common functions that are needed. This doesn't produce any new warnings, and the generated code should be the same.
* opcodes: d10v: fix old style prototypeMike Frysinger2015-03-302-1/+5
|
* sim: d10v: link in missing testsuiteMike Frysinger2015-03-303-3/+16
| | | | | | | Looks like historical restructuring in this dir lost the d10v-elf subdir and no one noticed in the meantime. Re-add it to the testsuite. There are some failures, but better some tests get run than none at all.
* sim: cr16: convert to nrunMike Frysinger2015-03-306-147/+188
| | | | | | A lot of cpu state is stored in global variables, as is memory handling. The sim_size support needs unwinding at some point. But at least this is an improvement on the status quo.
* sim: cr16: delete NEED_UI_LOOP_HOOK handlingMike Frysinger2015-03-303-20/+8
| | | | | This hook is used only when linked into gdb, and cr16 doesn't have a gdb port anymore. Punt it.
* sim: cr16: delete dead codeMike Frysinger2015-03-302-238/+10
| | | | | This code is getting in the way of porting to nrun, so just drop it. If anyone actually cares about this cpu, they can revive it.
* sim: cr16: clean up misc warningsMike Frysinger2015-03-296-488/+509
|
* sim: cr16: use common configure optionsMike Frysinger2015-03-296-9/+454
| | | | | | In preparation for converting to nrun, call the common functions that are needed. This doesn't produce any new warnings, and the generated code should be the same.
* sim: cr16: add _start symbol to tests [BZ #12385]Mike Frysinger2015-03-292-0/+7
| | | | | The current cr16 testsuite sets up _START, but the linker looks for the _start symbol. Add the latter as an alias to the former.
* Automatic date update in version.inGDB Administrator2015-03-301-1/+1
|
* sim: microblaze: convert to nrunMike Frysinger2015-03-295-193/+176
| | | | | | This port already was storing its cpu state in the sim_cpu structure, so converting it over was pretty easy. It is allocating memory itself still, but we'll fix that up in the future at some point.
* sim: mcore/microblaze: delete dead codeMike Frysinger2015-03-294-115/+15
| | | | | | | | The mcore port had a few structs/defines that were never used. Similarly, the microblaze port, because it was copied from mcore, has that same dead code, and more. The watchpoint logic was never actually used. Punt it all.
* sim: microblaze: start a testsuiteMike Frysinger2015-03-296-1/+60
| | | | | | | | Since the sim doesn't have any debug support in it, we can only exit cleanly. But this is still better than nothing. Change the default microblaze sim to not dump the debug load output when running. No other does this, and it breaks the testsuite.