summaryrefslogtreecommitdiff
path: root/mlir
diff options
context:
space:
mode:
authorRafael Auler <rafaelauler@fb.com>2023-05-16 12:04:03 -0700
committerRafael Auler <rafaelauler@fb.com>2023-05-16 14:54:16 -0700
commit62a2feff5784bcee3c7b037501956552acdf736c (patch)
tree82ad9bcf29afbe900884a095ed362be7b162a819 /mlir
parent32ab0978dc3f7f7036df2038ee96a4ab89196255 (diff)
downloadllvm-62a2feff5784bcee3c7b037501956552acdf736c.tar.gz
[BOLT] Fix state of MCSymbols in lowering pass
We have mostly harmless data races when running BinaryContext::calculateEmittedSize() in parallel, while performing split function pass. However, it is possible to end up in a state where some MCSymbols are still registered and our clean up failed. This happens rarely but it does happen, and when it happens, it is a difficult to diagnose heisenbug. To avoid this, add a new clean pass to perform a last check on MCSymbols, before they undergo our final emission pass, to verify that they are in a sane state. If we fail to do this, we might resolve some symbols to zero and crash the output binary. Reviewed By: #bolt, Amir Differential Revision: https://reviews.llvm.org/D137984
Diffstat (limited to 'mlir')
0 files changed, 0 insertions, 0 deletions