diff options
author | Ian Lance Taylor <ian@airs.com> | 2008-07-22 23:01:20 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2008-07-22 23:01:20 +0000 |
commit | af6156ef8ded31c7b8e19fa7995e4de14a5b9639 (patch) | |
tree | b6f76e21579975faa46d823307fa81ae589c5b0d /gold/script-sections.cc | |
parent | 92de84a60cbdb80b808c8571e709c1384c6ee6fc (diff) | |
download | gdb-af6156ef8ded31c7b8e19fa7995e4de14a5b9639.zip gdb-af6156ef8ded31c7b8e19fa7995e4de14a5b9639.tar.gz gdb-af6156ef8ded31c7b8e19fa7995e4de14a5b9639.tar.bz2 |
* options.h (class General_options): Define -n/--nmagic and
-N/--omagic.
* options.cc (General_options::finalize): For -n/--nmagic or
-N/--omagic, set -static.
* layout.cc (Layout::attach_allocated_section_to_segment): If
-N/--omagic, don't put read-only and read-write sections in
different segments.
(Layout::find_first_load_seg): If -N/--omagic, don't insist on
finding a read-only segment.
(Layout::set_segment_offsets): If -N/--omagic or -n/--nmagic,
don't set the minimum segment alignment to the common page size,
and don't set the file offset to the address modulo the page size.
* script-sections.cc (Script_sections::create_segments): If
-n/--omagic, don't put read-only and read-write sections in
different segments.
Diffstat (limited to 'gold/script-sections.cc')
-rw-r--r-- | gold/script-sections.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gold/script-sections.cc b/gold/script-sections.cc index 4891ac7..13c9771 100644 --- a/gold/script-sections.cc +++ b/gold/script-sections.cc @@ -2657,7 +2657,8 @@ Script_sections::create_segments(Layout* layout) need_new_segment = true; } else if (is_current_seg_readonly - && ((*p)->flags() & elfcpp::SHF_WRITE) != 0) + && ((*p)->flags() & elfcpp::SHF_WRITE) != 0 + && !parameters->options().omagic()) { // Don't put a writable section in the same segment as a // non-writable section. |