[Mlir-commits] [mlir] [WIP][OpenMP][MLIR] Lowering task_reduction clause for pass-by-value vars to LLVMIR (PR #125218)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Jan 1 10:05:31 PST 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 3379 tests passed
* 411 tests skipped
* 4 tests failed
## Failed Tests
(click on a test name to see its output)
### MLIR
<details>
<summary>MLIR.Target/LLVMIR/openmp-cancel.mlir</summary>
```
Exit Code: 2
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe --mlir-to-llvmir C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancel.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancel.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe' --mlir-to-llvmir 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancel.mlir'
# .---command stderr------------
# | Assertion failed: attr && "Missing task reduction symbols", file C:\_work\llvm-project\llvm-project\mlir\lib\Target\LLVMIR\Dialect\OpenMP\OpenMPToLLVMIRTranslation.cpp, line 2695
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0. Program arguments: c:\\_work\\llvm-project\\llvm-project\\build\\bin\\mlir-translate.exe --mlir-to-llvmir C:\\_work\\llvm-project\\llvm-project\\mlir\\test\\Target\\LLVMIR\\openmp-cancel.mlir
# | Exception Code: 0xC000001D
# | #0 0x00007ff6279ac9d6 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0xa0c9d6)
# | #1 0x00007ffe8447bb04 (C:\Windows\System32\ucrtbase.dll+0x7bb04)
# | #2 0x00007ffe8447cad1 (C:\Windows\System32\ucrtbase.dll+0x7cad1)
# | #3 0x00007ffe8447e4a1 (C:\Windows\System32\ucrtbase.dll+0x7e4a1)
# | #4 0x00007ffe8447e6e1 (C:\Windows\System32\ucrtbase.dll+0x7e6e1)
# | #5 0x00007ff6274abb0c mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x50bb0c)
# | #6 0x00007ff6274a5037 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x505037)
# | #7 0x00007ff6273dfc60 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x43fc60)
# | #8 0x00007ff6273e0356 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x440356)
# | #9 0x00007ff6273e683f mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44683f)
# | #10 0x00007ff6273ea180 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44a180)
# | #11 0x00007ff6273eeac5 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44eac5)
# | #12 0x00007ff626fa946d (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x946d)
# | #13 0x00007ff626ff7e82 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x57e82)
# | #14 0x00007ff626fa5884 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x5884)
# | #15 0x00007ff627014374 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74374)
# | #16 0x00007ff627013a16 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x73a16)
# | #17 0x00007ff627014041 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74041)
# | #18 0x00007ff626fa17c5 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x17c5)
# | #19 0x00007ff626fa1078 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x1078)
# | #20 0x00007ff628f2f2cc mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x1f8f2cc)
# | #21 0x00007ffe900d4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
# | #22 0x00007ffe9793edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
# `-----------------------------
# error: command failed with exit status: 0xc000001d
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancel.mlir'
# .---command stderr------------
# | FileCheck error: '<stdin>' is empty.
# | FileCheck command line: c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancel.mlir
# `-----------------------------
# error: command failed with exit status: 2
--
```
</details>
<details>
<summary>MLIR.Target/LLVMIR/openmp-cancellation-point.mlir</summary>
```
Exit Code: 2
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe --mlir-to-llvmir C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancellation-point.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancellation-point.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe' --mlir-to-llvmir 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancellation-point.mlir'
# .---command stderr------------
# | Assertion failed: attr && "Missing task reduction symbols", file C:\_work\llvm-project\llvm-project\mlir\lib\Target\LLVMIR\Dialect\OpenMP\OpenMPToLLVMIRTranslation.cpp, line 2695
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0. Program arguments: c:\\_work\\llvm-project\\llvm-project\\build\\bin\\mlir-translate.exe --mlir-to-llvmir C:\\_work\\llvm-project\\llvm-project\\mlir\\test\\Target\\LLVMIR\\openmp-cancellation-point.mlir
# | Exception Code: 0xC000001D
# | #0 0x00007ff6279ac9d6 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0xa0c9d6)
# | #1 0x00007ffe8447bb04 (C:\Windows\System32\ucrtbase.dll+0x7bb04)
# | #2 0x00007ffe8447cad1 (C:\Windows\System32\ucrtbase.dll+0x7cad1)
# | #3 0x00007ffe8447e4a1 (C:\Windows\System32\ucrtbase.dll+0x7e4a1)
# | #4 0x00007ffe8447e6e1 (C:\Windows\System32\ucrtbase.dll+0x7e6e1)
# | #5 0x00007ff6274abb0c mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x50bb0c)
# | #6 0x00007ff6274a5037 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x505037)
# | #7 0x00007ff6273dfc60 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x43fc60)
# | #8 0x00007ff6273e0356 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x440356)
# | #9 0x00007ff6273e683f mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44683f)
# | #10 0x00007ff6273ea180 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44a180)
# | #11 0x00007ff6273eeac5 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44eac5)
# | #12 0x00007ff626fa946d (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x946d)
# | #13 0x00007ff626ff7e82 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x57e82)
# | #14 0x00007ff626fa5884 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x5884)
# | #15 0x00007ff627014374 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74374)
# | #16 0x00007ff627013a16 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x73a16)
# | #17 0x00007ff627014041 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74041)
# | #18 0x00007ff626fa17c5 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x17c5)
# | #19 0x00007ff626fa1078 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x1078)
# | #20 0x00007ff628f2f2cc mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x1f8f2cc)
# | #21 0x00007ffe900d4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
# | #22 0x00007ffe9793edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
# `-----------------------------
# error: command failed with exit status: 0xc000001d
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancellation-point.mlir'
# .---command stderr------------
# | FileCheck error: '<stdin>' is empty.
# | FileCheck command line: c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-cancellation-point.mlir
# `-----------------------------
# error: command failed with exit status: 2
--
```
</details>
<details>
<summary>MLIR.Target/LLVMIR/openmp-llvm.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe -mlir-to-llvmir -split-input-file C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-llvm.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-llvm.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe' -mlir-to-llvmir -split-input-file 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-llvm.mlir'
# .---command stderr------------
# | Assertion failed: attr && "Missing task reduction symbols", file C:\_work\llvm-project\llvm-project\mlir\lib\Target\LLVMIR\Dialect\OpenMP\OpenMPToLLVMIRTranslation.cpp, line 2695
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0. Program arguments: c:\\_work\\llvm-project\\llvm-project\\build\\bin\\mlir-translate.exe -mlir-to-llvmir -split-input-file C:\\_work\\llvm-project\\llvm-project\\mlir\\test\\Target\\LLVMIR\\openmp-llvm.mlir
# | Exception Code: 0xC000001D
# | #0 0x00007ff6279ac9d6 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0xa0c9d6)
# | #1 0x00007ffe8447bb04 (C:\Windows\System32\ucrtbase.dll+0x7bb04)
# | #2 0x00007ffe8447cad1 (C:\Windows\System32\ucrtbase.dll+0x7cad1)
# | #3 0x00007ffe8447e4a1 (C:\Windows\System32\ucrtbase.dll+0x7e4a1)
# | #4 0x00007ffe8447e6e1 (C:\Windows\System32\ucrtbase.dll+0x7e6e1)
# | #5 0x00007ff6274abb0c mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x50bb0c)
# | #6 0x00007ff6274a5037 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x505037)
# | #7 0x00007ff6273dfc60 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x43fc60)
# | #8 0x00007ff6273e0356 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x440356)
# | #9 0x00007ff6273e683f mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44683f)
# | #10 0x00007ff6273ea180 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44a180)
# | #11 0x00007ff6273eeac5 mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x44eac5)
# | #12 0x00007ff626fa946d (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x946d)
# | #13 0x00007ff626ff7e82 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x57e82)
# | #14 0x00007ff626fa5884 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x5884)
# | #15 0x00007ff627014374 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74374)
# | #16 0x00007ff627014280 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74280)
# | #17 0x00007ff627013e19 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x73e19)
# | #18 0x00007ff627014041 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x74041)
# | #19 0x00007ff626fa17c5 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x17c5)
# | #20 0x00007ff626fa1078 (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x1078)
# | #21 0x00007ff628f2f2cc mlir::detail::FallbackTypeIDResolver::registerImplicitTypeID(class llvm::StringRef) (c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe+0x1f8f2cc)
# | #22 0x00007ffe900d4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
# | #23 0x00007ffe9793edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
# `-----------------------------
# error: command failed with exit status: 0xc000001d
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-llvm.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-llvm.mlir:2983:17: error: CHECK-LABEL: expected string not found in input
# | // CHECK-LABEL: define void @omp_taskgroup(
# | ^
# | <stdin>:8639:115: note: scanning from here
# | %4 = call ptr @__kmpc_omp_task_alloc(ptr @1, i32 %omp_global_thread_num, i32 1, i64 40, i64 8, ptr @task..omp_par)
# | ^
# | <stdin>:8649:5: note: possible intended match here
# | define internal void @task..omp_par(i32 %global.tid.val, ptr %0) {
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-llvm.mlir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 8634:
# | 8635: codeRepl: ; preds = %omp.task.start
# | 8636: %gep_omp.task.context_ptr = getelementptr { ptr }, ptr %structArg, i32 0, i32 0
# | 8637: store ptr %omp.task.context_ptr, ptr %gep_omp.task.context_ptr, align 8
# | 8638: %omp_global_thread_num = call i32 @__kmpc_global_thread_num(ptr @1)
# | 8639: %4 = call ptr @__kmpc_omp_task_alloc(ptr @1, i32 %omp_global_thread_num, i32 1, i64 40, i64 8, ptr @task..omp_par)
# | label:2983'0 X~ error: no match found
# | 8640: %5 = load ptr, ptr %4, align 8
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8641: call void @llvm.memcpy.p0.p0.i64(ptr align 1 %5, ptr align 1 %structArg, i64 8, i1 false)
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8642: %6 = call i32 @__kmpc_omp_task(ptr @1, i32 %omp_global_thread_num, ptr %4)
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8643: br label %task.exit
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~
# | 8644:
# | label:2983'0 ~
# | 8645: task.exit: ; preds = %codeRepl
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8646: ret void
# | label:2983'0 ~~~~~~~~~~
# | 8647: }
# | label:2983'0 ~~
# | 8648:
# | label:2983'0 ~
# | 8649: define internal void @task..omp_par(i32 %global.tid.val, ptr %0) {
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | label:2983'1 ? possible intended match
# | 8650: task.alloca:
# | label:2983'0 ~~~~~~~~~~~~~
# | 8651: %1 = load ptr, ptr %0, align 8
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8652: %gep_omp.task.context_ptr = getelementptr { ptr }, ptr %1, i32 0, i32 0
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8653: %loadgep_omp.task.context_ptr = load ptr, ptr %gep_omp.task.context_ptr, align 8, !align !1
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 8654: br label %task.body
# | label:2983'0 ~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>MLIR.Target/LLVMIR/openmp-todo.mlir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe -mlir-to-llvmir -split-input-file -verify-diagnostics C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-todo.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-translate.exe' -mlir-to-llvmir -split-input-file -verify-diagnostics 'C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-todo.mlir'
# .---command stdout------------
# | ; ModuleID = 'LLVMDialectModule'
# | source_filename = "LLVMDialectModule"
# |
# | define void @atomic_hint(ptr %0, ptr %1, i32 %2) {
# | br label %entry
# |
# | entry: ; preds = %3
# | %4 = atomicrmw xchg ptr %0, i32 %2 monotonic, align 4
# | store i32 %4, ptr %1, align 4
# | %omp.atomic.read = load atomic i32, ptr %0 monotonic, align 4
# | store i32 %omp.atomic.read, ptr %1, align 4
# | store atomic i32 %2, ptr %0 monotonic, align 4
# | %5 = atomicrmw add ptr %1, i32 %2 monotonic, align 4
# | %6 = add i32 %5, %2
# | ret void
# | }
# |
# | !llvm.module.flags = !{!0}
# |
# | !0 = !{i32 2, !"Debug Info Version", i32 3}
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# |
# | ; ModuleID = 'LLVMDialectModule'
# | source_filename = "LLVMDialectModule"
# |
# | %struct.ident_t = type { i32, i32, i32, i32, ptr }
# | %kmp_taskred_input_t = type { ptr, ptr, i64, ptr, ptr, ptr, i32 }
# |
# | @0 = private unnamed_addr constant [23 x i8] c";unknown;unknown;0;0;;\00", align 1
# | @1 = private unnamed_addr constant %struct.ident_t { i32 0, i32 2, i32 0, i32 22, ptr @0 }, align 8
# |
# | define void @taskgroup_task_reduction(ptr %0) {
# | %kmp_taskred_array = alloca [1 x %kmp_taskred_input_t], align 8
# | br label %entry
# |
# | entry: ; preds = %1
# | %omp_global_thread_num = call i32 @__kmpc_global_thread_num(ptr @1)
# | call void @__kmpc_taskgroup(ptr @1, i32 %omp_global_thread_num)
# | %red_element = getelementptr [1 x %kmp_taskred_input_t], ptr %kmp_taskred_array, i32 0, i32 0
# | %reduce_shar = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 0
# | store ptr %0, ptr %reduce_shar, align 8
# | %reduce_orig = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 1
# | store ptr %0, ptr %reduce_orig, align 8
# | %reduce_size = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 2
# | store i64 4, ptr %reduce_size, align 4
# | %reduce_init = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 3
# | store ptr @red_init, ptr %reduce_init, align 8
# | %reduce_fini = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 4
# | store ptr null, ptr %reduce_fini, align 8
# | %reduce_comb = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 5
# | store ptr @red_comb, ptr %reduce_comb, align 8
# | %flags = getelementptr inbounds nuw %kmp_taskred_input_t, ptr %red_element, i32 0, i32 6
# | store i64 0, ptr %flags, align 4
# | %omp_global_thread_num1 = call i32 @__kmpc_global_thread_num(ptr @1)
# | %2 = call ptr @__kmpc_taskred_init(i32 %omp_global_thread_num1, i32 1, ptr %kmp_taskred_array)
# | br label %omp.taskgroup.region
# |
# | omp.taskgroup.region: ; preds = %entry
# | br label %omp.region.cont
# |
# | omp.region.cont: ; preds = %omp.taskgroup.region
# | br label %taskgroup.exit
# |
# | taskgroup.exit: ; preds = %omp.region.cont
# | call void @__kmpc_end_taskgroup(ptr @1, i32 %omp_global_thread_num)
# | ret void
# | }
# |
# | ; Function Attrs: nounwind
# | declare i32 @__kmpc_global_thread_num(ptr) #0
# |
# | ; Function Attrs: convergent nounwind
# | declare void @__kmpc_taskgroup(ptr, i32) #1
# |
# | ; Function Attrs: norecurse
# | define ptr @red_init(ptr noalias %0, ptr noalias %1) #2 {
# | entry:
# | store float 0.000000e+00, ptr %0, align 4
# | ret ptr %0
# | }
# |
# | ; Function Attrs: norecurse
# | define ptr @red_comb(ptr %0, ptr %1) #2 {
# | entry:
# | %2 = load float, ptr %0, align 4
# | %3 = load float, ptr %1, align 4
# | %4 = fadd float %2, %3
# | store float %4, ptr %0, align 4
# | ret ptr %0
# | }
# |
# | ; Function Attrs: nounwind
# | declare ptr @__kmpc_taskred_init(i32, i32, ptr) #0
# |
# | ; Function Attrs: convergent nounwind
# | declare void @__kmpc_end_taskgroup(ptr, i32) #1
# |
# | attributes #0 = { nounwind }
# | attributes #1 = { convergent nounwind }
# | attributes #2 = { norecurse }
# |
# | !llvm.module.flags = !{!0}
# |
# | !0 = !{i32 2, !"Debug Info Version", i32 3}
# |
# |
# |
# |
# |
# |
# |
# |
# `-----------------------------
# .---command stderr------------
# | within split at C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-todo.mlir:296 offset :21:6: error: expected error "not yet implemented: Unhandled clause task_reduction in omp.taskgroup operation" was not produced
# | // expected-error at below {{not yet implemented: Unhandled clause task_reduction in omp.taskgroup operation}}
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | within split at C:\_work\llvm-project\llvm-project\mlir\test\Target\LLVMIR\openmp-todo.mlir:296 offset :22:6: error: expected error "LLVM Translation failed for operation: omp.taskgroup" was not produced
# | // expected-error at below {{LLVM Translation failed for operation: omp.taskgroup}}
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.
https://github.com/llvm/llvm-project/pull/125218
More information about the Mlir-commits
mailing list