From 3ee173de46efe0473d4aa2f63b16fe5943599e2b Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 23 Jun 2009 06:07:50 +0000 Subject: [PATCH] * script-sections.cc (Script_sections::create_segments): Don't put program headers in a PT_LOAD segment if -n or -N. --- gold/ChangeLog | 7 ++++++- gold/script-sections.cc | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gold/ChangeLog b/gold/ChangeLog index fea0a34d2c4..ed774ac7006 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,4 +1,9 @@ -2009-06-22 Ian Lance Taylor +2009-06-22 Ian Lance Taylor + + * script-sections.cc (Script_sections::create_segments): Don't put + program headers in a PT_LOAD segment if -n or -N. + +2009-06-22 Ian Lance Taylor PR 10141 * options.h (class General_options): Add -z lazy and -z now. Sort diff --git a/gold/script-sections.cc b/gold/script-sections.cc index 9daf9ece1da..23610aced42 100644 --- a/gold/script-sections.cc +++ b/gold/script-sections.cc @@ -2981,6 +2981,11 @@ Script_sections::create_segments(Layout* layout) if (first_seg == NULL) return NULL; + // -n or -N mean that the program is not demand paged and there is + // no need to put the program headers in a PT_LOAD segment. + if (parameters->options().nmagic() || parameters->options().omagic()) + return NULL; + size_t sizeof_headers = this->total_header_size(layout); uint64_t vma = first_seg->vaddr(); -- 2.30.2