diff options
Diffstat (limited to 'gold/powerpc.cc')
-rw-r--r-- | gold/powerpc.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gold/powerpc.cc b/gold/powerpc.cc index 147d660..f4a9385 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc @@ -1149,7 +1149,10 @@ Target_powerpc<size, big_endian>::do_make_elf_object( off_t offset, 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())) { Powerpc_relobj<size, big_endian>* obj = new Powerpc_relobj<size, big_endian>(name, input_file, offset, ehdr); |