9#ifndef FORTRAN_RUNTIME_CUDA_ALLOCATABLE_H_
10#define FORTRAN_RUNTIME_CUDA_ALLOCATABLE_H_
12#include "flang/Runtime/descriptor-consts.h"
13#include "flang/Runtime/entry-names.h"
15namespace Fortran::runtime::cuda {
20int RTDECL(CUFAllocatableAllocate)(Descriptor &, int64_t *stream =
nullptr,
21 bool *pinned =
nullptr,
bool hasStat =
false,
22 const Descriptor *errMsg =
nullptr,
const char *sourceFile =
nullptr,
27int RTDECL(CUFAllocatableAllocateSync)(Descriptor &, int64_t *stream =
nullptr,
28 bool *pinned =
nullptr,
bool hasStat =
false,
29 const Descriptor *errMsg =
nullptr,
const char *sourceFile =
nullptr,
34int RTDEF(CUFAllocatableAllocateSource)(Descriptor &alloc,
35 const Descriptor &source, int64_t *stream =
nullptr,
bool *pinned =
nullptr,
36 bool hasStat =
false,
const Descriptor *errMsg =
nullptr,
37 const char *sourceFile =
nullptr,
int sourceLine = 0);
41int RTDEF(CUFAllocatableAllocateSourceSync)(Descriptor &alloc,
42 const Descriptor &source, int64_t *stream =
nullptr,
bool *pinned =
nullptr,
43 bool hasStat =
false,
const Descriptor *errMsg =
nullptr,
44 const char *sourceFile =
nullptr,
int sourceLine = 0);
48int RTDECL(CUFAllocatableDeallocate)(Descriptor &,
bool hasStat =
false,
49 const Descriptor *errMsg =
nullptr,
const char *sourceFile =
nullptr,