PowerPC gold, fix 32-bit branch address arithmetic
[platform/upstream/binutils.git] / gold / parameters.h
index 7867503..fe5db15 100644 (file)
@@ -1,6 +1,6 @@
 // parameters.h -- general parameters for a link using gold  -*- C++ -*-
 
-// Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2006-2014 Free Software Foundation, Inc.
 // Written by Ian Lance Taylor <iant@google.com>.
 
 // This file is part of gold.
@@ -28,6 +28,7 @@ namespace gold
 
 class General_options;
 class Errors;
+class Timer;
 class Target;
 template<int size, bool big_endian>
 class Sized_target;
@@ -57,6 +58,9 @@ class Parameters
   set_errors(Errors* errors);
 
   void
+  set_timer(Timer* timer);
+
+  void
   set_options(const General_options* options);
 
   void
@@ -70,6 +74,11 @@ class Parameters
   errors() const
   { return this->errors_; }
 
+  // Return the timer object.
+  Timer*
+  timer() const
+  { return this->timer_; }
+
   // Whether the options are valid.  This should not normally be
   // called, but it is needed by gold_exit.
   bool
@@ -159,6 +168,10 @@ class Parameters
   bool
   incremental() const;
 
+  // Return true if we are doing a full incremental link.
+  bool
+  incremental_full() const;
+
   // Return true if we are doing an incremental update.
   bool
   incremental_update() const;
@@ -170,9 +183,13 @@ class Parameters
   void
   check_target_endianness();
 
+  void
+  check_rodata_segment();
+
   friend class Set_parameters_target_once;
 
   Errors* errors_;
+  Timer* timer_;
   const General_options* options_;
   Target* target_;
   bool doing_static_link_valid_;
@@ -192,6 +209,9 @@ extern void
 set_parameters_errors(Errors* errors);
 
 extern void
+set_parameters_timer(Timer* timer);
+
+extern void
 set_parameters_options(const General_options* options);
 
 extern void