diff options
author | Ian Lance Taylor <iant@google.com> | 2008-02-04 22:54:31 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2008-02-04 22:54:31 +0000 |
commit | 1c4f3631bde4d056e02555d72009693de26da4bf (patch) | |
tree | f2ecece1db200a3681dfd01d6f6f429fc00789a2 /gold/output.h | |
parent | 15893b88b0e64f14a08e952a07d3e517c7926c8e (diff) | |
download | gdb-1c4f3631bde4d056e02555d72009693de26da4bf.zip gdb-1c4f3631bde4d056e02555d72009693de26da4bf.tar.gz gdb-1c4f3631bde4d056e02555d72009693de26da4bf.tar.bz2 |
Implement PHDRS.
Diffstat (limited to 'gold/output.h')
-rw-r--r-- | gold/output.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gold/output.h b/gold/output.h index 1354551..032a2bb 100644 --- a/gold/output.h +++ b/gold/output.h @@ -2342,6 +2342,12 @@ class Output_segment this->are_addresses_set_ = true; } + // Set the segment flags. This is only used if we have a PHDRS + // clause which explicitly specifies the flags. + void + set_flags(elfcpp::Elf_Word flags) + { this->flags_ = flags; } + // Set the address of the segment to ADDR and the offset to *POFF // and set the addresses and offsets of all contained output // sections accordingly. Set the section indexes of all contained @@ -2372,6 +2378,12 @@ class Output_segment unsigned int output_section_count() const; + // Return the section attached to the list segment with the lowest + // load address. This is used when handling a PHDRS clause in a + // linker script. + Output_section* + section_with_lowest_load_address() const; + // Write the segment header into *OPHDR. template<int size, bool big_endian> void @@ -2411,6 +2423,13 @@ class Output_segment unsigned int dynamic_reloc_count_list(const Output_data_list*) const; + // Find the section with the lowest load address in an + // Output_data_list. + void + lowest_load_address_in_list(const Output_data_list* pdl, + Output_section** found, + uint64_t* found_lma) const; + // Write the section headers in the list into V. template<int size, bool big_endian> unsigned char* |