aboutsummaryrefslogtreecommitdiff
path: root/gold/layout.cc
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2013-03-21 04:52:55 +0000
committerAlan Modra <amodra@gmail.com>2013-03-21 04:52:55 +0000
commitebacd51e16144e7e88e8c010b571d94a9d7ea232 (patch)
treebd709cefa8bf2781135021d92405d3de432a8e71 /gold/layout.cc
parent117be58fad705e4df95c2e0bb2f3d46aa132eb20 (diff)
downloadfsf-binutils-gdb-ebacd51e16144e7e88e8c010b571d94a9d7ea232.zip
fsf-binutils-gdb-ebacd51e16144e7e88e8c010b571d94a9d7ea232.tar.gz
fsf-binutils-gdb-ebacd51e16144e7e88e8c010b571d94a9d7ea232.tar.bz2
* layout.cc (Layout::set_segment_offsets): Accept writable .text
segment when omagic.
Diffstat (limited to 'gold/layout.cc')
-rw-r--r--gold/layout.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gold/layout.cc b/gold/layout.cc
index 4c48c3c..8b88dea 100644
--- a/gold/layout.cc
+++ b/gold/layout.cc
@@ -3353,7 +3353,8 @@ Layout::set_segment_offsets(const Target* target, Output_segment* load_seg,
addr = (*p)->paddr();
}
else if (parameters->options().user_set_Ttext()
- && ((*p)->flags() & elfcpp::PF_W) == 0)
+ && (parameters->options().omagic()
+ || ((*p)->flags() & elfcpp::PF_W) == 0))
{
are_addresses_set = true;
}