This is an archive of the discontinued LLVM Phabricator instance.

[GVNHoist] computeInsertionPoints() miscalculates the Iterated Dominance Frontiers
ClosedPublic

Authored by labrinea on Sep 12 2018, 5:51 AM.

Details

Summary

Fix for https://bugs.llvm.org/show_bug.cgi?id=38912. In GVNHoist::computeInsertionPoints() we iterate over the Value Numbers and calculate the Iterated Dominance Frontiers without clearing the IDFBlocks vector first. IDFBlocks ends up accumulating an insane number of basic blocks, which bloats the compilation time of SemaChecking.cpp with ubsan enabled.

Diff Detail

Repository
rL LLVM

Event Timeline

labrinea created this revision.Sep 12 2018, 5:51 AM
sebpop accepted this revision.Sep 12 2018, 7:01 AM

Looks good to me.

This revision is now accepted and ready to land.Sep 12 2018, 7:01 AM
This revision was automatically updated to reflect the committed changes.