2011-11-11 Doug Kwan <dougkwan@google.com>
authorDoug Kwan <dougkwan@google.com>
Fri, 11 Nov 2011 21:49:36 +0000 (21:49 +0000)
committerDoug Kwan <dougkwan@google.com>
Fri, 11 Nov 2011 21:49:36 +0000 (21:49 +0000)
* arm.cc (Target_arm::do_make_elf_object): Allow executable also
if --just-symbols is given.

gold/ChangeLog
gold/arm.cc

index 0b17438..bcb534c 100644 (file)
@@ -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
index 3ee2224..72c3670 100644 (file)
@@ -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);