clang: include/clang/AST/StmtSYCL.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12#ifndef LLVM_CLANG_AST_STMTSYCL_H
13#define LLVM_CLANG_AST_STMTSYCL_H
14
19
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
40
41private:
42 Stmt *OriginalStmt = nullptr;
44
45public:
46
48 : Stmt(SYCLKernelCallStmtClass), OriginalStmt(CS), OFDecl(OFD) {}
49
50
52
53
56 return cast(OriginalStmt);
57 }
59
60
63
64
66
69 }
70
73 }
74
77 }
78
80 return T->getStmtClass() == SYCLKernelCallStmtClass;
81 }
82
84 return child_range(&OriginalStmt, &OriginalStmt + 1);
85 }
86
89 }
90};
91
92}
93
94#endif
Defines the clang::ASTContext interface.
Defines the clang::SourceLocation class and associated facilities.
CompoundStmt - This represents a group of statements like { stmt stmt }.
SourceLocation getBeginLoc() const
SourceLocation getEndLoc() const
Represents a partial function definition.
SYCLKernelCallStmt represents the transformation that is applied to the body of a function declared w...
CompoundStmt * getOriginalStmt()
Retrieve the model statement.
void setOriginalStmt(CompoundStmt *CS)
static bool classof(const Stmt *T)
SourceRange getSourceRange() const LLVM_READONLY
SYCLKernelCallStmt(CompoundStmt *CS, OutlinedFunctionDecl *OFD)
Construct a SYCL kernel call statement.
SourceLocation getBeginLoc() const LLVM_READONLY
const OutlinedFunctionDecl * getOutlinedFunctionDecl() const
const CompoundStmt * getOriginalStmt() const
SYCLKernelCallStmt(EmptyShell Empty)
Construct an empty SYCL kernel call statement.
SourceLocation getEndLoc() const LLVM_READONLY
const_child_range children() const
OutlinedFunctionDecl * getOutlinedFunctionDecl()
Retrieve the outlined function declaration.
void setOutlinedFunctionDecl(OutlinedFunctionDecl *OFD)
Set the outlined function declaration.
Encodes a location in the source.
A trivial tuple used to represent a source range.
Stmt - This represents one statement.
SourceRange getSourceRange() const LLVM_READONLY
SourceLocation tokens are not useful in isolation - they are low level value objects created/interpre...
llvm::iterator_range< child_iterator > child_range
llvm::iterator_range< const_child_iterator > const_child_range
The JSON file list parser is used to communicate input to InstallAPI.
const FunctionProtoType * T
A placeholder type used to construct an empty shell of a type, that will be filled in later (e....