diff options
author | Artem Belevich <tra@google.com> | 2019-01-31 21:34:03 +0000 |
---|---|---|
committer | Artem Belevich <tra@google.com> | 2019-01-31 21:34:03 +0000 |
commit | c62214da3de04f702e29e4ba4772c9463e2829ca (patch) | |
tree | 3b37c00552d8dcef2f88e1ec999796dd5798406e /clang/test/SemaCUDA/Inputs | |
parent | 8fa28a0db058eb53970f7eca3aaf71c86357e478 (diff) | |
download | bcm5719-llvm-c62214da3de04f702e29e4ba4772c9463e2829ca.tar.gz bcm5719-llvm-c62214da3de04f702e29e4ba4772c9463e2829ca.zip |
[CUDA] add support for the new kernel launch API in CUDA-9.2+.
Instead of calling CUDA runtime to arrange function arguments,
the new API constructs arguments in a local array and the kernels
are launched with __cudaLaunchKernel().
The old API has been deprecated and is expected to go away
in the next CUDA release.
Differential Revision: https://reviews.llvm.org/D57488
llvm-svn: 352799
Diffstat (limited to 'clang/test/SemaCUDA/Inputs')
-rw-r--r-- | clang/test/SemaCUDA/Inputs/cuda.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/clang/test/SemaCUDA/Inputs/cuda.h b/clang/test/SemaCUDA/Inputs/cuda.h index 4544369411f..2600bfa9c47 100644 --- a/clang/test/SemaCUDA/Inputs/cuda.h +++ b/clang/test/SemaCUDA/Inputs/cuda.h @@ -18,9 +18,17 @@ struct dim3 { }; typedef struct cudaStream *cudaStream_t; - -int cudaConfigureCall(dim3 gridSize, dim3 blockSize, size_t sharedSize = 0, - cudaStream_t stream = 0); +typedef enum cudaError {} cudaError_t; + +extern "C" int cudaConfigureCall(dim3 gridSize, dim3 blockSize, + size_t sharedSize = 0, + cudaStream_t stream = 0); +extern "C" int __cudaPushCallConfiguration(dim3 gridSize, dim3 blockSize, + size_t sharedSize = 0, + cudaStream_t stream = 0); +extern "C" cudaError_t cudaLaunchKernel(const void *func, dim3 gridDim, + dim3 blockDim, void **args, + size_t sharedMem, cudaStream_t stream); // Host- and device-side placement new overloads. void *operator new(__SIZE_TYPE__, void *p) { return p; } |