Similar to the change we applied to ASan. The same test case works.
Details
Diff Detail
Event Timeline
*sigh* looks like anyone who splits basic blocks might stumble to this localescape problem. Probably it's worth to put this logic somewhere under lib/Transforms/Utils/BasicBlockUtils.cpp?
I mean, what kind of twisted person wants to split the entry block? It's so non-canonical. ;)
I think most instrumentation passes pretty much need this utility, but no optimization pass needs it. Should I create something like lib/Transforms/Instrumentation/Utils.cpp?
lib/Transforms/Instrumentation/AddressSanitizer.cpp | ||
---|---|---|
1805–1806 ↗ | (On Diff #32075) | Hm, this change fails because it moves instrumented static allocas around. Coverage and other instrumentation passes that don't replace static allocas don't have this problem. I think we should leave asan alone. |
Woops, this landed accidentally through the usual git svn confusion. Let me know if it needs changes.