elfcpp/
[binutils-gdb.git] / gold / target.cc
index 4a7af83c161735db77b20a63378387c2fab5daf4..091f9d34cd5521ee08ef1e17722570deba5122b3 100644 (file)
@@ -72,7 +72,10 @@ Target::do_make_elf_object_implementation(
     const elfcpp::Ehdr<size, 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()))
     {
       Sized_relobj_file<size, big_endian>* obj =
        new Sized_relobj_file<size, big_endian>(name, input_file, offset, ehdr);