[GOLD] Don't assert in powerpc stub_table A branch in a non-exec section that needs a stub can lead to this assertion. * powerpc.cc (Powerpc_relobj::stub_table): Return NULL rather then asserting.
diff --git a/gold/ChangeLog b/gold/ChangeLog index 1fe7d03..65c6277 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog
@@ -2,6 +2,10 @@ Apply from master 2016-12-08 Alan Modra <amodra@gmail.com> + * powerpc.cc (Powerpc_relobj::stub_table): Return NULL rather + then asserting. + + 2016-12-08 Alan Modra <amodra@gmail.com> * options.h (--stub-group-multi): Fix typo. 2016-12-07 Alan Modra <amodra@gmail.com>
diff --git a/gold/powerpc.cc b/gold/powerpc.cc index 7d4a384..4d9e669 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc
@@ -292,8 +292,8 @@ = static_cast<Target_powerpc<size, big_endian>*>( parameters->sized_target<size, big_endian>()); unsigned int indx = this->stub_table_index_[shndx]; - gold_assert(indx < target->stub_tables().size()); - return target->stub_tables()[indx]; + if (indx < target->stub_tables().size()) + return target->stub_tables()[indx]; } return NULL; }