diff options
Diffstat (limited to 'ELF/Writer.h')
-rw-r--r-- | ELF/Writer.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ELF/Writer.h b/ELF/Writer.h index 784fba9c75a6..3698544d977b 100644 --- a/ELF/Writer.h +++ b/ELF/Writer.h @@ -9,6 +9,7 @@ #ifndef LLD_ELF_WRITER_H #define LLD_ELF_WRITER_H +#include "Config.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/StringRef.h" #include <cstdint> @@ -19,13 +20,18 @@ namespace elf { class InputFile; class OutputSection; class InputSectionBase; +void copySectionsIntoPartitions(); +template <class ELFT> void createSyntheticSections(); +void combineEhSections(); template <class ELFT> void writeResult(); // This describes a program header entry. // Each contains type, access flags and range of output sections that will be // placed in it. struct PhdrEntry { - PhdrEntry(unsigned type, unsigned flags) : p_type(type), p_flags(flags) {} + PhdrEntry(unsigned type, unsigned flags) + : p_align(type == llvm::ELF::PT_LOAD ? config->maxPageSize : 0), + p_type(type), p_flags(flags) {} void add(OutputSection *sec); uint64_t p_paddr = 0; |