43 lines · c
1 2// clang-format off3// RUN: %libomptarget-compileopt-generic4// RUN: %not --crash env -u LLVM_DISABLE_SYMBOLIZATION OFFLOAD_TRACK_NUM_KERNEL_LAUNCH_TRACES=1 %libomptarget-run-generic 2>&1 | %fcheck-generic --check-prefixes=CHECK,TRACE5// RUN: %not --crash %libomptarget-run-generic 2>&1 | %fcheck-generic --check-prefixes=CHECK6// RUN: %libomptarget-compileopt-generic -g7// RUN: %not --crash env -u LLVM_DISABLE_SYMBOLIZATION OFFLOAD_TRACK_NUM_KERNEL_LAUNCH_TRACES=1 %libomptarget-run-generic 2>&1 | %fcheck-generic --check-prefixes=CHECK,TRACE,DEBUG8// RUN: %not --crash %libomptarget-run-generic 2>&1 | %fcheck-generic --check-prefixes=CHECK9// clang-format on10 11// UNSUPPORTED: nvptx64-nvidia-cuda12// UNSUPPORTED: nvptx64-nvidia-cuda-LTO13// UNSUPPORTED: aarch64-unknown-linux-gnu14// UNSUPPORTED: aarch64-unknown-linux-gnu-LTO15// UNSUPPORTED: x86_64-unknown-linux-gnu16// UNSUPPORTED: x86_64-unknown-linux-gnu-LTO17// UNSUPPORTED: s390x-ibm-linux-gnu18// UNSUPPORTED: s390x-ibm-linux-gnu-LTO19 20#include <omp.h>21 22int main(void) {23 24#pragma omp target nowait25 {26 }27#pragma omp target nowait28 {29 }30#pragma omp target nowait31 {32 __builtin_trap();33 }34#pragma omp taskwait35}36 37// clang-format off38// CHECK: OFFLOAD ERROR: Kernel {{.*}} (__omp_offloading_{{.*}}_main_l30)39// CHECK: OFFLOAD ERROR: execution interrupted by hardware trap instruction40// TRACE: launchKernel41// DEBUG: kernel_trap_async.c:42// clang-format on43