clang
8.0.0
|
Defines the synch scope model for OpenCL. More...
#include "clang/Basic/SyncScope.h"
Public Types | |
enum | ID { WorkGroup = 1, Device = 2, AllSVMDevices = 3, SubGroup = 4, Last = SubGroup } |
The enum values match the pre-defined macros __OPENCL_MEMORY_SCOPE_*, which are used to define memory_scope_* enums in opencl-c.h. More... | |
Public Member Functions | |
AtomicScopeOpenCLModel () | |
SyncScope | map (unsigned S) const override |
Maps language specific synch scope values to internal SyncScope enum. More... | |
bool | isValid (unsigned S) const override |
Check if the compile-time constant synch scope value is valid. More... | |
ArrayRef< unsigned > | getRuntimeValues () const override |
Get all possible synch scope values that might be encountered at runtime for the current language. More... | |
unsigned | getFallBackValue () const override |
If atomic builtin function is called with invalid synch scope value at runtime, it will fall back to a valid synch scope value returned by this function. More... | |
![]() | |
virtual | ~AtomicScopeModel () |
Additional Inherited Members | |
![]() | |
static std::unique_ptr< AtomicScopeModel > | create (AtomicScopeModelKind K) |
Create an atomic scope model by AtomicScopeModelKind. More... | |
Defines the synch scope model for OpenCL.
Definition at line 95 of file SyncScope.h.
The enum values match the pre-defined macros __OPENCL_MEMORY_SCOPE_*, which are used to define memory_scope_* enums in opencl-c.h.
Enumerator | |
---|---|
WorkGroup | |
Device | |
AllSVMDevices | |
SubGroup | |
Last |
Definition at line 100 of file SyncScope.h.
|
inline |
Definition at line 108 of file SyncScope.h.
|
inlineoverridevirtual |
If atomic builtin function is called with invalid synch scope value at runtime, it will fall back to a valid synch scope value returned by this function.
Implements clang::AtomicScopeModel.
Definition at line 137 of file SyncScope.h.
|
inlineoverridevirtual |
Get all possible synch scope values that might be encountered at runtime for the current language.
Implements clang::AtomicScopeModel.
Definition at line 129 of file SyncScope.h.
References clang::Last.
|
inlineoverridevirtual |
Check if the compile-time constant synch scope value is valid.
Implements clang::AtomicScopeModel.
Definition at line 124 of file SyncScope.h.
|
inlineoverridevirtual |
Maps language specific synch scope values to internal SyncScope enum.
Implements clang::AtomicScopeModel.
Definition at line 110 of file SyncScope.h.