MLIR 24.0.0git
OpenACCRuntimeUtils.cpp File Reference
#include "mlir/Dialect/OpenACC/OpenACCRuntimeUtils.h"
#include "mlir/IR/SymbolTable.h"
#include "llvm/Support/ErrorHandling.h"
#include <cassert>
#include <optional>
#include "mlir/Dialect/OpenACC/OpenACCRuntimeFunctions.def"
#include "mlir/Dialect/OpenACC/OpenACCRuntimeDescriptors.def"

Go to the source code of this file.

Macros

#define ACC_RTL(Enum, Str, ...)
#define ACC_RTL(Enum, Str, IsVarArg, ReturnType, ...)
#define ACC_DESC_BEGIN(Enum, NameStr, DescKind)
#define ACC_DESC_BEGIN(Enum, NameStr, DescKind)
#define ACC_DESC_BEGIN(Enum, NameStr, DescKind)
#define ACC_DESC_FIELD(Enum, Field, TypeToken)
#define ACC_DESC_END(Enum)

Macro Definition Documentation

◆ ACC_DESC_BEGIN [1/3]

#define ACC_DESC_BEGIN ( Enum,
NameStr,
DescKind )
Value:
case DataDescriptor::Enum: \
return NameStr;

◆ ACC_DESC_BEGIN [2/3]

#define ACC_DESC_BEGIN ( Enum,
NameStr,
DescKind )
Value:
case DataDescriptor::Enum: \
return DescKind;

◆ ACC_DESC_BEGIN [3/3]

#define ACC_DESC_BEGIN ( Enum,
NameStr,
DescKind )
Value:
case DataDescriptor::Enum: { \

◆ ACC_DESC_END

#define ACC_DESC_END ( Enum)
Value:
return LLVM::LLVMStructType::getLiteral(ctx, fields); \
}

◆ ACC_DESC_FIELD

#define ACC_DESC_FIELD ( Enum,
Field,
TypeToken )
Value:
assert(TypeToken && "no type for descriptor field " #Field); \
fields.push_back(TypeToken);

◆ ACC_RTL [1/2]

#define ACC_RTL ( Enum,
Str,
IsVarArg,
ReturnType,
... )
Value:
case RuntimeFunction::Enum: \
return LLVM::LLVMFunctionType::get(ReturnType, \
ArrayRef<Type>{__VA_ARGS__}, IsVarArg);

◆ ACC_RTL [2/2]

#define ACC_RTL ( Enum,
Str,
... )
Value:
case RuntimeFunction::Enum: \
return Str;