diff options
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/arm.cc | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 0b17438..bcb534c 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,8 @@ +2011-11-11 Doug Kwan <dougkwan@google.com> + + * arm.cc (Target_arm::do_make_elf_object): Allow executable also + if --just-symbols is given. + 2011-11-10 Doug Kwan <dougkwan@google.com> PR gold/13362 diff --git a/gold/arm.cc b/gold/arm.cc index 3ee2224..72c3670 100644 --- a/gold/arm.cc +++ b/gold/arm.cc @@ -10008,7 +10008,10 @@ Target_arm<big_endian>::do_make_elf_object( off_t offset, const elfcpp::Ehdr<32, big_endian>& ehdr) { int et = ehdr.get_e_type(); - if (et == elfcpp::ET_REL) + // ET_EXEC files are valid input for --just-symbols/-R, + // and we treat them as relocatable objects. + if (et == elfcpp::ET_REL + || (et == elfcpp::ET_EXEC && input_file->just_symbols())) { Arm_relobj<big_endian>* obj = new Arm_relobj<big_endian>(name, input_file, offset, ehdr); |