================
@@ -0,0 +1,58 @@
+// RUN: cir-opt %s -cir-flatten-cfg -o - | FileCheck %s
+
+module {
+ cir.func @foo() {
+ cir.scope {
+ %0 = cir.alloca !cir.int<u, 32>, !cir.ptr<!cir.int<u, 32>>, ["a", init]
{alignment = 4 : i64}
+ %1 = cir.const #cir.int<4> : !cir.int<u, 32>
+ cir.store %1, %0 : !cir.int<u, 32>, !cir.ptr<!cir.int<u, 32>>
+ }
+ cir.return
+ }
+// CHECK: cir.func @foo() {
+// CHECK: cir.br ^bb1
----------------
andykaylor wrote:
I don't think it should. The general intent is for passes to perform a specific
purpose and rely on layering of passes to clean things up. Because the
canonicalization pass needs to remove useless blocks anyway, there is no
advantage to also doing that in the flatten pass.
https://github.com/llvm/llvm-project/pull/130861
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits