mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 20:23:11 +01:00
b8d800fd9c
The metadata added in D102361 introduces a module flag that we can check to determine if the module was compiled with `-fopenmp` enables. We can now check for the precense of this instead of scanning the call graph for OpenMP runtime functions. Depends on D102361 Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D102423
30 lines
961 B
LLVM
30 lines
961 B
LLVM
; RUN: opt -passes=openmp-opt-cgscc -pass-remarks-analysis=openmp-opt -openmp-print-gpu-kernels -disable-output < %s 2>&1 | FileCheck %s --implicit-check-not=non_kernel
|
|
; RUN: opt -openmp-opt-cgscc -pass-remarks-analysis=openmp-opt -openmp-print-gpu-kernels -disable-output < %s 2>&1 | FileCheck %s --implicit-check-not=non_kernel
|
|
|
|
; CHECK-DAG: remark: <unknown>:0:0: OpenMP GPU kernel kernel1
|
|
; CHECK-DAG: remark: <unknown>:0:0: OpenMP GPU kernel kernel2
|
|
|
|
define void @kernel1() {
|
|
ret void
|
|
}
|
|
|
|
define void @kernel2() {
|
|
ret void
|
|
}
|
|
|
|
define void @non_kernel() {
|
|
ret void
|
|
}
|
|
|
|
; Needed to trigger the openmp-opt pass
|
|
declare dso_local void @__kmpc_kernel_prepare_parallel(i8*)
|
|
|
|
!llvm.module.flags = !{!4}
|
|
!nvvm.annotations = !{!2, !0, !1, !3, !1, !2}
|
|
|
|
!0 = !{void ()* @kernel1, !"kernel", i32 1}
|
|
!1 = !{void ()* @non_kernel, !"non_kernel", i32 1}
|
|
!2 = !{null, !"align", i32 1}
|
|
!3 = !{void ()* @kernel2, !"kernel", i32 1}
|
|
!4 = !{i32 7, !"openmp", i32 50}
|