• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Keine Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

GNU Binutils with patches for OS216


Commit MetaInfo

Revision4790d4b3cef58c4663f8b63bb1761e8494d323f5 (tree)
Zeit2017-02-22 08:10:22
AutorAlan Modra <amodra@gmai...>
CommiterAlan Modra

Log Message

[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.

Ändern Zusammenfassung

Diff

--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -2,6 +2,10 @@
22
33 Apply from master
44 2016-12-08 Alan Modra <amodra@gmail.com>
5+ * powerpc.cc (Powerpc_relobj::stub_table): Return NULL rather
6+ then asserting.
7+
8+ 2016-12-08 Alan Modra <amodra@gmail.com>
59 * options.h (--stub-group-multi): Fix typo.
610
711 2016-12-07 Alan Modra <amodra@gmail.com>
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -292,8 +292,8 @@ public:
292292 = static_cast<Target_powerpc<size, big_endian>*>(
293293 parameters->sized_target<size, big_endian>());
294294 unsigned int indx = this->stub_table_index_[shndx];
295- gold_assert(indx < target->stub_tables().size());
296- return target->stub_tables()[indx];
295+ if (indx < target->stub_tables().size())
296+ return target->stub_tables()[indx];
297297 }
298298 return NULL;
299299 }