Fix loop merge and continue as same block (#485)
Fixes #482
* New pass fixes up after structurize cfg
* splits blocks that are both a loop merge block and a loop continue
block
* updated simple tests to reorder check statements
* replaced hack-scf tests with specific pass tests on IR that check all
comparisons
* pass tests
diff --git a/lib/Passes.cpp b/lib/Passes.cpp
index 2f4ec19..a92ff14 100644
--- a/lib/Passes.cpp
+++ b/lib/Passes.cpp
@@ -22,6 +22,7 @@
initializeClusterPodKernelArgumentsPassPass(r);
initializeDirectResourceAccessPassPass(r);
initializeDefineOpenCLWorkItemBuiltinsPassPass(r);
+ initializeFixupStructuredCFGPassPass(r);
initializeFunctionInternalizerPassPass(r);
initializeHideConstantLoadsPassPass(r);
initializeUnhideConstantLoadsPassPass(r);