diff options
author | Ian Lance Taylor <ian@airs.com> | 2011-06-18 22:34:24 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2011-06-18 22:34:24 +0000 |
commit | 0d212c3a03ea54828ee620dcdb74294af2f43504 (patch) | |
tree | 546bd4352b056299068ce8751075f2af3c741ced | |
parent | 911a5072375a58fb7fd1394dc913a9b315db22a6 (diff) | |
download | gdb-0d212c3a03ea54828ee620dcdb74294af2f43504.zip gdb-0d212c3a03ea54828ee620dcdb74294af2f43504.tar.gz gdb-0d212c3a03ea54828ee620dcdb74294af2f43504.tar.bz2 |
* layout.cc (Layout::finish_dynamic_section): Don't create
DT_FLAGS entry if not needed.
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/layout.cc | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index e4c6287..3b79d95 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,10 @@ 2011-06-18 Ian Lance Taylor <iant@google.com> + * layout.cc (Layout::finish_dynamic_section): Don't create + DT_FLAGS entry if not needed. + +2011-06-18 Ian Lance Taylor <iant@google.com> + PR gold/12745 * layout.cc (Layout::layout_eh_frame): Correct handling of writable .eh_frame section. diff --git a/gold/layout.cc b/gold/layout.cc index a3e60d5..f74c626 100644 --- a/gold/layout.cc +++ b/gold/layout.cc @@ -4162,7 +4162,8 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, } if (parameters->options().now()) flags |= elfcpp::DF_BIND_NOW; - odyn->add_constant(elfcpp::DT_FLAGS, flags); + if (flags != 0) + odyn->add_constant(elfcpp::DT_FLAGS, flags); flags = 0; if (parameters->options().initfirst()) @@ -4187,7 +4188,7 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, flags |= elfcpp::DF_1_ORIGIN; if (parameters->options().now()) flags |= elfcpp::DF_1_NOW; - if (flags) + if (flags != 0) odyn->add_constant(elfcpp::DT_FLAGS_1, flags); } |