[Mlir-commits] [mlir] [OpenMP]Support for lowering masked op (PR #98401)
Anchu Rajendran S
llvmlistbot at llvm.org
Thu Jul 11 10:08:21 PDT 2024
================
@@ -310,6 +310,35 @@ llvm.func @test_omp_master() -> () {
// -----
+// CHECK-LABEL: define void @test_omp_masked({{.*}})
+llvm.func @test_omp_masked(%arg0: i32)-> () {
+// CHECK: call void {{.*}}@__kmpc_fork_call{{.*}} @{{.*}})
+// CHECK: omp.par.region1:
+ omp.parallel {
+ omp.masked filter(%arg0: i32) {
+// CHECK: [[OMP_THREAD_3_4:%.*]] = call i32 @__kmpc_global_thread_num(ptr @{{[0-9]+}})
+// CHECK: {{[0-9]+}} = call i32 @__kmpc_masked(ptr @{{[0-9]+}}, i32 [[OMP_THREAD_3_4]], i32 %{{[0-9]+}})
+// CHECK: omp.masked.region
+// CHECK: call void @__kmpc_end_masked(ptr @{{[0-9]+}}, i32 [[OMP_THREAD_3_4]])
+// CHECK: br label %omp_region.end
+ omp.terminator
+ }
+ omp.terminator
+ }
+ omp.parallel {
+ omp.parallel {
+ omp.masked filter(%arg0: i32){
----------------
anchuraj wrote:
No, `master` test case had a similar structure where tested code was repeated. I thought it was added for readability purposes. I realise from your question, it adds more of confusion. I will remove the unnecessary code.
https://github.com/llvm/llvm-project/pull/98401
More information about the Mlir-commits
mailing list