29 lines
1.0 KiB
LLVM
29 lines
1.0 KiB
LLVM
; RUN: opt < %s -S -openmpopt | FileCheck %s
|
|
; RUN: opt < %s -S -passes=openmpopt | FileCheck %s
|
|
; RUN: opt < %s -S -openmpopt -openmp-ir-builder-optimistic-attributes | FileCheck %s --check-prefix=OPTIMISTIC
|
|
; RUN: opt < %s -S -passes=openmpopt -openmp-ir-builder-optimistic-attributes | FileCheck %s --check-prefix=OPTIMISTIC
|
|
|
|
target triple = "amdgcn-amd-amdhsa"
|
|
|
|
define void @call_all(i64 %arg) {
|
|
call void @__kmpc_syncwarp(i64 %arg)
|
|
call i64 @__kmpc_warp_active_thread_mask()
|
|
ret void
|
|
}
|
|
|
|
declare i64 @__kmpc_warp_active_thread_mask()
|
|
|
|
declare void @__kmpc_syncwarp(i64)
|
|
|
|
; CHECK: ; Function Attrs: convergent nounwind
|
|
; CHECK-NEXT: declare i64 @__kmpc_warp_active_thread_mask()
|
|
|
|
; CHECK: ; Function Attrs: convergent nounwind
|
|
; CHECK-NEXT: declare void @__kmpc_syncwarp(i64)
|
|
|
|
; OPTIMISTIC: ; Function Attrs: convergent nounwind
|
|
; OPTIMISTIC-NEXT: declare i64 @__kmpc_warp_active_thread_mask()
|
|
|
|
; OPTIMISTIC: ; Function Attrs: convergent nounwind
|
|
; OPTIMISTIC-NEXT: declare void @__kmpc_syncwarp(i64)
|