llvm-project/clang/test/OpenMP/declare_variant_bind_to_decl.cpp
Ritanya-B-Bharadwaj 8c36665267
[OpenMP]Initial parsing/sema support for target_device selector set (#118471)
This patch adds initial support for target_device selector set - Section
9.2 (Spec 6.0)
2025-02-05 19:24:24 +05:30

35 lines
884 B
C++

// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --function-signature --include-generated-funcs
// RUN: %clang_cc1 -verify -fopenmp -x c++ -triple powerpc64le-unknown-unknown -emit-llvm %s -o - | FileCheck %s
// expected-no-diagnostics
#ifndef HEADER
#define HEADER
void foo() { }
#pragma omp begin declare variant match( \
device = {arch(ppc64le, ppc64)}, \
implementation = {extension(match_any, bind_to_declaration)})
void foo();
#pragma omp end declare variant
int main() {
foo();
}
#endif
// CHECK-LABEL: define {{[^@]+}}@_Z3foov
// CHECK-SAME: () #[[ATTR0:[0-9]+]] {
// CHECK-NEXT: entry:
// CHECK-NEXT: ret void
//
//
// CHECK-LABEL: define {{[^@]+}}@main
// CHECK-SAME: () #[[ATTR1:[0-9]+]] {
// CHECK-NEXT: entry:
// CHECK-NEXT: call void @{{"_Z[0-9]+foo\$ompvariant\$.*"}}()
// CHECK-NEXT: ret i32 0
//