From 7be8330a59e4c55791360237af8cf2b070d0f45c Mon Sep 17 00:00:00 2001 From: Chris Demetriou Date: Fri, 12 Sep 2008 05:42:29 +0000 Subject: 2008-09-11 Chris Demetriou * options.h (origin): New -z option. * layout.cc (Layout:finish_dynamic_section): If "-z origin" is specified, set DF_ORIGIN in DT_FLAGS and set DF_1_ORIGIN in DT_FLAGS_1. --- gold/layout.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gold/layout.cc') diff --git a/gold/layout.cc b/gold/layout.cc index 99819d6..ec9654e 100644 --- a/gold/layout.cc +++ b/gold/layout.cc @@ -2753,6 +2753,8 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, } if (parameters->options().shared() && this->has_static_tls()) flags |= elfcpp::DF_STATIC_TLS; + if (parameters->options().origin()) + flags |= elfcpp::DF_ORIGIN; odyn->add_constant(elfcpp::DT_FLAGS, flags); flags = 0; @@ -2774,6 +2776,8 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, flags &= ~(elfcpp::DF_1_INITFIRST | elfcpp::DF_1_NODELETE | elfcpp::DF_1_NOOPEN); + if (parameters->options().origin()) + flags |= elfcpp::DF_1_ORIGIN; if (flags) odyn->add_constant(elfcpp::DT_FLAGS_1, flags); } -- cgit v1.1