Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:36:43

0001 //===--- SYCLKernelInfo.h --- Information about SYCL kernels --------------===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 /// \file
0009 /// This file declares types used to describe SYCL kernels.
0010 ///
0011 //===----------------------------------------------------------------------===//
0012 
0013 #ifndef LLVM_CLANG_AST_SYCLKERNELINFO_H
0014 #define LLVM_CLANG_AST_SYCLKERNELINFO_H
0015 
0016 #include "clang/AST/CanonicalType.h"
0017 #include "clang/AST/Decl.h"
0018 #include "clang/AST/Type.h"
0019 
0020 namespace clang {
0021 
0022 class SYCLKernelInfo {
0023 public:
0024   SYCLKernelInfo(CanQualType KernelNameType,
0025                  const FunctionDecl *KernelEntryPointDecl)
0026       : KernelNameType(KernelNameType),
0027         KernelEntryPointDecl(KernelEntryPointDecl) {}
0028 
0029   CanQualType getKernelNameType() const { return KernelNameType; }
0030 
0031   const FunctionDecl *getKernelEntryPointDecl() const {
0032     return KernelEntryPointDecl;
0033   }
0034 
0035 private:
0036   CanQualType KernelNameType;
0037   const FunctionDecl *KernelEntryPointDecl;
0038 };
0039 
0040 } // namespace clang
0041 
0042 #endif // LLVM_CLANG_AST_SYCLKERNELINFO_H