OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [gold/] [script.h] - Diff between revs 27 and 163

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 27 Rev 163
Line 88... Line 88...
  // be NULL.  Note that the returned value is still an absolute
  // be NULL.  Note that the returned value is still an absolute
  // value; to get a section relative value the caller must subtract
  // value; to get a section relative value the caller must subtract
  // the section address.  If RESULT_ALIGNMENT is not NULL, this sets
  // the section address.  If RESULT_ALIGNMENT is not NULL, this sets
  // *RESULT_ALIGNMENT to the alignment of the value of that alignment
  // *RESULT_ALIGNMENT to the alignment of the value of that alignment
  // is larger than *RESULT_ALIGNMENT; this will only be non-zero if
  // is larger than *RESULT_ALIGNMENT; this will only be non-zero if
  // this is an ALIGN expression.
  // this is an ALIGN expression.  If IS_SECTION_DOT_ASSIGMENT is true,
 
  // we are evaluating an assignment to dot within an output section,
 
  // and an absolute value should be interpreted as an offset within
 
  // the section.
  uint64_t
  uint64_t
  eval_with_dot(const Symbol_table*, const Layout*, bool check_assertions,
  eval_with_dot(const Symbol_table*, const Layout*, bool check_assertions,
                uint64_t dot_value, Output_section* dot_section,
                uint64_t dot_value, Output_section* dot_section,
                Output_section** result_section, uint64_t* result_alignment);
                Output_section** result_section, uint64_t* result_alignment,
 
                bool is_section_dot_assignment);
 
 
  // Return the value of an expression which may or may not be
  // Return the value of an expression which may or may not be
  // permitted to refer to the dot symbol, depending on
  // permitted to refer to the dot symbol, depending on
  // is_dot_available.
  // is_dot_available.  If IS_SECTION_DOT_ASSIGMENT is true,
 
  // we are evaluating an assignment to dot within an output section,
 
  // and an absolute value should be interpreted as an offset within
 
  // the section.
  uint64_t
  uint64_t
  eval_maybe_dot(const Symbol_table*, const Layout*, bool check_assertions,
  eval_maybe_dot(const Symbol_table*, const Layout*, bool check_assertions,
                 bool is_dot_available, uint64_t dot_value,
                 bool is_dot_available, uint64_t dot_value,
                 Output_section* dot_section,
                 Output_section* dot_section,
                 Output_section** result_section, uint64_t* result_alignment);
                 Output_section** result_section, uint64_t* result_alignment,
 
                 bool is_section_dot_assignment);
 
 
  // Print the expression to the FILE.  This is for debugging.
  // Print the expression to the FILE.  This is for debugging.
  virtual void
  virtual void
  print(FILE*) const = 0;
  print(FILE*) const = 0;
 
 
Line 337... Line 345...
  // Finalize the symbol value when it can refer to the dot symbol.
  // Finalize the symbol value when it can refer to the dot symbol.
  void
  void
  finalize_with_dot(Symbol_table*, const Layout*, uint64_t dot_value,
  finalize_with_dot(Symbol_table*, const Layout*, uint64_t dot_value,
                    Output_section* dot_section);
                    Output_section* dot_section);
 
 
  // Set the symbol value, but only if the value is absolute.  This is
  // Set the symbol value, but only if the value is absolute or relative to
  // used while processing a SECTIONS clause.  We assume that dot is
  // DOT_SECTION.  This is used while processing a SECTIONS clause.
  // an absolute value here.  We do not check assertions.
  // We assume that dot is an absolute value here.  We do not check assertions.
  void
  void
  set_if_absolute(Symbol_table*, const Layout*, bool is_dot_available,
  set_if_absolute(Symbol_table*, const Layout*, bool is_dot_available,
                  uint64_t dot_value);
                  uint64_t dot_value, Output_section* dot_section);
 
 
  const std::string&
  const std::string&
  name() const
  name() const
  { return this->name_; }
  { return this->name_; }
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.