This is the dominator before/after
Computed:
Inorder Dominator Tree:
[1] %0 {0,1}
Actual:
Inorder Dominator Tree:
[1] %0 {0,5} [2] %cdce.call {1,2} [2] %cdce.end {3,4}
Differential D26381
LibcallsShrinkWrap doesn't preserve the CFG davide on Nov 7 2016, 5:33 PM. Authored by
Details This is the dominator before/after Computed:Inorder Dominator Tree: [1] %0 {0,1} Actual:Inorder Dominator Tree: [1] %0 {0,5} [2] %cdce.call {1,2} [2] %cdce.end {3,4}
Diff Detail Event TimelineComment Actions Thanks for the fix. Look good to me. Comment Actions Can you use -verify-dom-info to write a testcase, as opposed to a run line with three passes? (If that doesn't actually work, please ignore this.) LibcallsShrinkWrap should preserve GlobalsAAWrapperPass, at least. domtree would probably be easy to preserve, but that can be done as a followup. Please make sure to upload patches with full context. Comment Actions I tried before, but that doesn't actually work.
Done.
Sorry, for some reason I forgot to add -U to my git diff invocation.. Comment Actions Looked into the test a little; I guess to trigger -verify-dom-info, you need to compute domtree before -libcalls-shrinkwrap, and have a pass which requires domtree after it. So "opt -domtree -libcalls-shrinkwrap -instcombine -verify-dom-info" triggers verification, for example. I think that's a little bit better than dragging in gvn. Comment Actions LGTM. I feel like we should probably make a new directory for libcalls-shrinkwrap tests at some point, but you don't have to do that here. |