[Mlir-commits] [mlir] [OpenMP] Enable simd in non-reduction composite constructs (PR #146097)
Sergio Afonso
llvmlistbot at llvm.org
Wed Jul 2 05:33:40 PDT 2025
================
@@ -533,3 +519,43 @@ llvm.func @wsloop_order(%lb : i32, %ub : i32, %step : i32) {
}
llvm.return
}
+
+// -----
+
+llvm.func @do_simd_if(%1 : !llvm.ptr, %5 : i32, %4 : i32, %6 : i1) {
+ omp.wsloop {
+ // expected-warning at below {{simd information on composite construct discarded}}
+ omp.simd if(%6) {
+ omp.loop_nest (%arg0) : i32 = (%5) to (%4) inclusive step (%5) {
+ llvm.store %arg0, %1 : i32, !llvm.ptr
+ omp.yield
+ }
+ } {omp.composite}
+ } {omp.composite}
+ llvm.return
+}
+
+// -----
+
+omp.declare_reduction @add_reduction_i32 : i32 init {
+^bb0(%arg0: i32):
+ %0 = llvm.mlir.constant(0 : i32) : i32
+ omp.yield(%0 : i32)
+} combiner {
+^bb0(%arg0: i32, %arg1: i32):
+ %0 = llvm.add %arg0, %arg1 : i32
+ omp.yield(%0 : i32)
+}
+llvm.func @simd_reduction(%1 : !llvm.ptr, %3 : !llvm.ptr, %6 : i32, %7 : i32) {
----------------
skatrak wrote:
```suggestion
llvm.func @do_simd_reduction(%1 : !llvm.ptr, %3 : !llvm.ptr, %6 : i32, %7 : i32) {
```
https://github.com/llvm/llvm-project/pull/146097
More information about the Mlir-commits
mailing list