* layout.cc (Layout::relaxation_loop_body): Only clear load_seg if
[deliverable/binutils-gdb.git] / gold / incremental-dump.cc
index a727eb5038437072e1618fe0c02df8750ff8b66c..fb3d25f2813b7d6c66c03ff30c3a04f960f95191 100644 (file)
@@ -153,6 +153,8 @@ dump_incremental_inputs(const char* argv0, const char* filename,
                 input_file.get_first_dyn_reloc());
          printf("    Dynamic reloc count: %d\n",
                 input_file.get_dyn_reloc_count());
+         printf("    COMDAT group count: %d\n",
+                input_file.get_comdat_group_count());
          break;
        case INCREMENTAL_INPUT_ARCHIVE:
          printf("Archive\n");
@@ -212,6 +214,11 @@ dump_incremental_inputs(const char* argv0, const char* filename,
                 static_cast<long long>(info.sh_size),
                 info.name);
        }
+
+      unsigned int ncomdat = input_file.get_comdat_group_count();
+      for (unsigned int i = 0; i < ncomdat; ++i)
+       printf("    Comdat group: %s\n",
+              input_file.get_comdat_group_signature(i));
     }
 
   // Get a view of the .symtab section.
@@ -286,8 +293,9 @@ dump_incremental_inputs(const char* argv0, const char* filename,
          for (unsigned int symndx = 0; symndx < nsyms; ++symndx)
            {
              bool is_def;
+             bool is_copy;
              unsigned int output_symndx =
-                 input_file.get_output_symbol_index(symndx, &is_def);
+                 input_file.get_output_symbol_index(symndx, &is_def, &is_copy);
              sym_p = symtab_view.data() + output_symndx * sym_size;
              elfcpp::Sym<size, big_endian> sym(sym_p);
              const char* symname;
@@ -296,7 +304,7 @@ dump_incremental_inputs(const char* argv0, const char* filename,
              printf("    %6d  %6s  %8s  %8s  %8s  %8s  %-5s  %s\n",
                     output_symndx,
                     "", "", "", "", "",
-                    is_def ? "DEF" : "UNDEF",
+                    is_copy ? "COPY" : (is_def ? "DEF" : "UNDEF"),
                     symname);
            }
        }
@@ -314,12 +322,14 @@ dump_incremental_inputs(const char* argv0, const char* filename,
                symname = "<unknown>";
              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);
            }
        }
This page took 0.023674 seconds and 4 git commands to generate.