1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

[PowerPC] Clear the set of symbols that need to be updated in MCTargetStreamer

We have added code to correct the .localentry values on assignments. However, we
never clear the set so presumably it will still contain the (now dangling)
MCSymbol pointers across a call to finish() and reset() in the streamer.

This is based on my speculation that it is the reason we are getting
segmentation faults mentioned in https://bugs.llvm.org/show_bug.cgi?id=45366

Fixes: https://bugs.llvm.org/show_bug.cgi?id=45366

Differential revision: https://reviews.llvm.org/D78196
This commit is contained in:
Nemanja Ivanovic 2020-04-15 15:40:51 -05:00
parent fe3c653173
commit 455c82c016

View File

@ -210,6 +210,10 @@ public:
for (auto *Sym : UpdateOther)
if (Sym->isVariable())
copyLocalEntry(Sym, Sym->getVariableValue());
// Clear the set of symbols that needs to be updated so the streamer can
// be reused without issues.
UpdateOther.clear();
}
private: