Use standard_testfile in i386-bp_permanent.exp
[deliverable/binutils-gdb.git] / gold / plugin.h
index 4c9445a8c4315fc60d99b8e289724a851a7e5c15..f27f98dbdd2eeba0367cf696778ae403e1542e5f 100644 (file)
@@ -1,6 +1,6 @@
 // plugin.h -- plugin manager for gold      -*- C++ -*-
 
-// Copyright 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+// Copyright (C) 2008-2014 Free Software Foundation, Inc.
 // Written by Cary Coutant <ccoutant@google.com>.
 
 // This file is part of gold.
@@ -134,7 +134,8 @@ class Plugin_manager
       in_claim_file_handler_(false),
       options_(options), workqueue_(NULL), task_(NULL), input_objects_(NULL),
       symtab_(NULL), layout_(NULL), dirpath_(NULL), mapfile_(NULL),
-      this_blocker_(NULL), extra_search_path_()
+      this_blocker_(NULL), extra_search_path_(), lock_(NULL),
+      initialize_lock_(&lock_)
   { this->current_ = plugins_.end(); }
 
   ~Plugin_manager();
@@ -376,6 +377,8 @@ class Plugin_manager
   // An extra directory to seach for the libraries passed by
   // add_input_library.
   std::string extra_search_path_;
+  Lock* lock_;
+  Initialize_lock initialize_lock_;
 };
 
 
@@ -393,7 +396,9 @@ class Pluginobj : public Object
 
   // Fill in the symbol resolution status for the given plugin symbols.
   ld_plugin_status
-  get_symbol_resolution_info(int nsyms, ld_plugin_symbol* syms) const;
+  get_symbol_resolution_info(int nsyms,
+                            ld_plugin_symbol* syms,
+                            int version) const;
 
   // Store the incoming symbols from the plugin for later processing.
   void
@@ -431,7 +436,7 @@ class Pluginobj : public Object
 
   // The number of symbols provided by the plugin.
   int nsyms_;
-  
+
   // The symbols provided by the plugin.
   const struct ld_plugin_symbol* syms_;
 
@@ -488,11 +493,12 @@ class Sized_pluginobj : public Pluginobj
 
   // Get the name of a section.
   std::string
-  do_section_name(unsigned int shndx);
+  do_section_name(unsigned int shndx) const;
 
   // Return a view of the contents of a section.
-  Object::Location
-  do_section_contents(unsigned int shndx);
+  const unsigned char*
+  do_section_contents(unsigned int shndx, section_size_type* plen,
+                     bool cache);
 
   // Return section flags.
   uint64_t
@@ -551,11 +557,11 @@ class Plugin_hook : public Task
 {
  public:
   Plugin_hook(const General_options& options, Input_objects* input_objects,
-             Symbol_table* symtab, Layout* layout, Dirsearch* dirpath,
+             Symbol_table* symtab, Layout* /*layout*/, Dirsearch* dirpath,
              Mapfile* mapfile, Task_token* this_blocker,
              Task_token* next_blocker)
     : options_(options), input_objects_(input_objects), symtab_(symtab),
-      layout_(layout), dirpath_(dirpath), mapfile_(mapfile),
+      dirpath_(dirpath), mapfile_(mapfile),
       this_blocker_(this_blocker), next_blocker_(next_blocker)
   { }
 
@@ -580,7 +586,6 @@ class Plugin_hook : public Task
   const General_options& options_;
   Input_objects* input_objects_;
   Symbol_table* symtab_;
-  Layout* layout_;
   Dirsearch* dirpath_;
   Mapfile* mapfile_;
   Task_token* this_blocker_;
This page took 0.024262 seconds and 4 git commands to generate.