diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2017-02-11 00:09:30 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2017-02-11 00:09:30 +0000 |
commit | 027340f3b9fa0ddbf14ca7db1129111524e99de9 (patch) | |
tree | 20c0504b49ee10ea70da60e03b90157f805053e9 /llvm/lib/MC/ELFObjectWriter.cpp | |
parent | dfe6ce7abda87a5a097335dffcc73c1d7306a78b (diff) | |
download | bcm5719-llvm-027340f3b9fa0ddbf14ca7db1129111524e99de9.tar.gz bcm5719-llvm-027340f3b9fa0ddbf14ca7db1129111524e99de9.zip |
[PM] Fix a bug in how I ported LoopDeletion to the new PM.
This was marking the loop for deletion after the loop was deleted. This
almost works, except that when we do any kind of debug logging it starts
reading the name of the loop from deleted memory or otherwise blowing
up. This can fail in a bunch of ways. I recently added a test that
*always* does this, and it started failing on the sanitizer bots.
The fix is to mark the loop as deleted in the loop PM infrastructure
before we remove the loop. We can do this by passing the updater into
the routine. That also lets us simplify a bunch of other interface
components here for a net win.
llvm-svn: 294810
Diffstat (limited to 'llvm/lib/MC/ELFObjectWriter.cpp')
0 files changed, 0 insertions, 0 deletions