LLVM OpenMP 20.0.0git
|
A simple pure header implementation of VLA that aims to replace uses of actual VLA, which can cause compile warning. More...
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/openmp/runtime/src/kmp_utils.h"
Public Member Functions | |
SimpleVLA ()=delete | |
SimpleVLA (const SimpleVLA &)=delete | |
SimpleVLA (SimpleVLA &&)=delete | |
SimpleVLA & | operator= (const SimpleVLA &)=delete |
SimpleVLA & | operator= (SimpleVLA &&)=delete |
SimpleVLA (unsigned NumOfElements) noexcept | |
~SimpleVLA () | |
operator T* () noexcept | |
operator const T * () const noexcept | |
A simple pure header implementation of VLA that aims to replace uses of actual VLA, which can cause compile warning.
This class by default creates a stack buffer that can accomodate N
elements. If the number of elements is greater than N
, then a heap buffer will be allocated and used to accomodate the elements. Similar to the actual VLA, we don't check boundary (for now), so we will not store the number of elements. We can always revise it later.
Definition at line 26 of file kmp_utils.h.
|
delete |
|
delete |
|
delete |
|
inlineexplicitnoexcept |
Definition at line 38 of file kmp_utils.h.
References __kmp_allocate, and N.
Definition at line 46 of file kmp_utils.h.
References __kmp_free.
|
inlinenoexcept |
Definition at line 52 of file kmp_utils.h.
Definition at line 51 of file kmp_utils.h.
|
delete |
|
delete |