diff options
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/arm.cc | 8 |
2 files changed, 8 insertions, 5 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 0977b37..b5ba411 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,8 @@ +2010-10-17 Doug Kwan <dougkwan@google.com> + + * gold/arm.cc (Target_arm::got_section): Use correct order and set + GOT output section to be writable. + 2010-10-14 Cary Coutant <ccoutant@google.com> * debug.h (DEBUG_INCREMENTAL): New flag. diff --git a/gold/arm.cc b/gold/arm.cc index 269fe69..f13ef23 100644 --- a/gold/arm.cc +++ b/gold/arm.cc @@ -4183,9 +4183,8 @@ Target_arm<big_endian>::got_section(Symbol_table* symtab, Layout* layout) this->got_ = new Arm_output_data_got<big_endian>(symtab, layout); layout->add_output_section_data(".got", elfcpp::SHT_PROGBITS, - (elfcpp::SHF_ALLOC - | elfcpp::SHF_WRITE), - this->got_, ORDER_RELRO, true); + (elfcpp::SHF_ALLOC | elfcpp::SHF_WRITE), + this->got_, ORDER_DATA, false); // The old GNU linker creates a .got.plt section. We just // create another set of data in the .got section. Note that we @@ -4193,8 +4192,7 @@ Target_arm<big_endian>::got_section(Symbol_table* symtab, Layout* layout) // might be empty. this->got_plt_ = new Output_data_space(4, "** GOT PLT"); layout->add_output_section_data(".got", elfcpp::SHT_PROGBITS, - (elfcpp::SHF_ALLOC - | elfcpp::SHF_WRITE), + (elfcpp::SHF_ALLOC | elfcpp::SHF_WRITE), this->got_plt_, ORDER_DATA, false); // The first three entries are reserved. |