X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gold%2Fparameters.h;h=0c20ff455651abcb07c65042dca430106f1655cf;hb=5430098f1807e084fe4ff5057040d68435f3d8a2;hp=f9022ae1a9661092abba97ca51fc945d094da643;hpb=8c21d9d382512278b484e29aa85053d9378c8b63;p=deliverable%2Fbinutils-gdb.git diff --git a/gold/parameters.h b/gold/parameters.h index f9022ae1a9..0c20ff4556 100644 --- a/gold/parameters.h +++ b/gold/parameters.h @@ -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-2017 Free Software Foundation, Inc. // Written by Ian Lance Taylor . // This file is part of gold. @@ -28,6 +28,7 @@ namespace gold class General_options; class Errors; +class Timer; class Target; template class Sized_target; @@ -56,6 +57,9 @@ class Parameters void set_errors(Errors* errors); + void + set_timer(Timer* timer); + void set_options(const General_options* options); @@ -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 @@ -134,6 +143,10 @@ class Parameters return debug_; } + // Return the name of the entry symbol. + const char* + entry() const; + // A convenience routine for combining size and endianness. It also // checks the HAVE_TARGET_FOO configure options and dies if the // current target's size/endianness is not supported according to @@ -155,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; @@ -166,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_; @@ -187,6 +208,9 @@ extern const Parameters* parameters; extern void set_parameters_errors(Errors* errors); +extern void +set_parameters_timer(Timer* timer); + extern void set_parameters_options(const General_options* options);