X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gold%2Fincremental-dump.cc;h=8ef16cfaa9b508ee1f5fb3c929137255599f031b;hb=9ec85a27138aefcd3fc35ddbd7727f384fe299b1;hp=e7e838aaaf8466a7949676bfc52298539d14caf6;hpb=26d3c67de1d0e6434dabb908e5a6fa002f5b1db8;p=platform%2Fupstream%2Fbinutils.git diff --git a/gold/incremental-dump.cc b/gold/incremental-dump.cc index e7e838a..8ef16cf 100644 --- a/gold/incremental-dump.cc +++ b/gold/incremental-dump.cc @@ -1,6 +1,6 @@ // incremental.cc -- incremental linking test/debug tool -// Copyright 2009, 2010 Free Software Foundation, Inc. +// Copyright (C) 2009-2014 Free Software Foundation, Inc. // Written by Rafael Avila de Espindola // This file is part of gold. @@ -52,6 +52,9 @@ find_input_containing_global( unsigned int* symndx) { typedef Incremental_inputs_reader Inputs_reader; + static const unsigned int global_sym_entry_size = + Incremental_inputs_reader::global_sym_entry_size; + for (unsigned int i = 0; i < incremental_inputs.input_file_count(); ++i) { typename Inputs_reader::Incremental_input_entry_reader input_file = @@ -63,7 +66,8 @@ find_input_containing_global( if (offset >= input_file.get_symbol_offset(0) && offset < input_file.get_symbol_offset(nsyms)) { - *symndx = (offset - input_file.get_symbol_offset(0)) / 20; + *symndx = ((offset - input_file.get_symbol_offset(0)) + / global_sym_entry_size); return input_file; } } @@ -92,7 +96,7 @@ dump_incremental_inputs(const char* argv0, const char* filename, Incremental_inputs_reader incremental_inputs(inc->inputs_reader()); - if (incremental_inputs.version() != 1) + if (incremental_inputs.version() != 2) { fprintf(stderr, "%s: %s: unknown incremental version %d\n", argv0, filename, incremental_inputs.version()); @@ -322,12 +326,14 @@ dump_incremental_inputs(const char* argv0, const char* filename, symname = ""; printf(" %6d %6d %8d %8d %8d %8d %-5s %s\n", output_symndx, - info.shndx(), + info.shndx() == -1U ? -1 : info.shndx(), input_file.get_symbol_offset(symndx), info.next_offset(), info.reloc_count(), info.reloc_offset(), - info.shndx() != elfcpp::SHN_UNDEF ? "DEF" : "UNDEF", + (info.shndx() == -1U + ? "BASE" + : info.shndx() == 0 ? "UNDEF" : "DEF"), symname); } }