-// Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2006-2019 Free Software Foundation, Inc.
bool is_dot_available, uint64_t dot_value,
Output_section* dot_section,
Output_section** result_section, uint64_t* result_alignment,
bool is_dot_available, uint64_t dot_value,
Output_section* dot_section,
Output_section** result_section, uint64_t* result_alignment,
- bool is_section_dot_assignment);
+ elfcpp::STT* type, elfcpp::STV* vis, unsigned char* nonvis,
+ bool is_section_dot_assignment, bool* is_valid_pointer);
// Version_script_info stores information parsed from the version
// script, either provided by --version-script or as part of a linker
// script. A single Version_script_info object per target is owned by
// Version_script_info stores information parsed from the version
// script, either provided by --version-script or as part of a linker
// script. A single Version_script_info object per target is owned by
// Finalize the symbol value when it can refer to the dot symbol.
void
finalize_with_dot(Symbol_table*, const Layout*, uint64_t dot_value,
// Finalize the symbol value when it can refer to the dot symbol.
void
finalize_with_dot(Symbol_table*, const Layout*, uint64_t dot_value,
+ // Populates the set with symbol names used in LHS of defsym.
+ void
+ find_defsym_defs(Unordered_set<std::string>&);
+
+ // Set symbols used in defsym expressions as seen in a real ELF object.
+ void set_defsym_uses_in_real_elf(Symbol_table*) const;
+