Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
mlir/include/mlir/Dialect/LLVMIR/FunctionCallUtils.h
Show All 30 Lines | |||||
/// Helper functions to lookup or create the declaration for commonly used | /// Helper functions to lookup or create the declaration for commonly used | ||||
/// external C function calls. The list of functions provided here must be | /// external C function calls. The list of functions provided here must be | ||||
/// implemented separately (e.g. as part of a support runtime library or as part | /// implemented separately (e.g. as part of a support runtime library or as part | ||||
/// of the libc). | /// of the libc). | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintI64Fn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintI64Fn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintU64Fn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintU64Fn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintF32Fn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintF32Fn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintF64Fn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintF64Fn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintStrFn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintStrFn(ModuleOp moduleOp, | ||||
bool opaquePointers); | |||||
LLVM::LLVMFuncOp lookupOrCreatePrintOpenFn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintOpenFn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintCloseFn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintCloseFn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintCommaFn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintCommaFn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreatePrintNewlineFn(ModuleOp moduleOp); | LLVM::LLVMFuncOp lookupOrCreatePrintNewlineFn(ModuleOp moduleOp); | ||||
LLVM::LLVMFuncOp lookupOrCreateMallocFn(ModuleOp moduleOp, Type indexType); | LLVM::LLVMFuncOp lookupOrCreateMallocFn(ModuleOp moduleOp, Type indexType, | ||||
LLVM::LLVMFuncOp lookupOrCreateAlignedAllocFn(ModuleOp moduleOp, | bool opaquePointers); | ||||
Type indexType); | LLVM::LLVMFuncOp lookupOrCreateAlignedAllocFn(ModuleOp moduleOp, Type indexType, | ||||
LLVM::LLVMFuncOp lookupOrCreateFreeFn(ModuleOp moduleOp); | bool opaquePointers); | ||||
LLVM::LLVMFuncOp lookupOrCreateGenericAllocFn(ModuleOp moduleOp, | LLVM::LLVMFuncOp lookupOrCreateFreeFn(ModuleOp moduleOp, bool opaquePointers); | ||||
Type indexType); | LLVM::LLVMFuncOp lookupOrCreateGenericAllocFn(ModuleOp moduleOp, Type indexType, | ||||
bool opaquePointers); | |||||
LLVM::LLVMFuncOp lookupOrCreateGenericAlignedAllocFn(ModuleOp moduleOp, | LLVM::LLVMFuncOp lookupOrCreateGenericAlignedAllocFn(ModuleOp moduleOp, | ||||
Type indexType); | Type indexType, | ||||
LLVM::LLVMFuncOp lookupOrCreateGenericFreeFn(ModuleOp moduleOp); | bool opaquePointers); | ||||
LLVM::LLVMFuncOp lookupOrCreateGenericFreeFn(ModuleOp moduleOp, bool opaquePointers); | |||||
LLVM::LLVMFuncOp lookupOrCreateMemRefCopyFn(ModuleOp moduleOp, Type indexType, | LLVM::LLVMFuncOp lookupOrCreateMemRefCopyFn(ModuleOp moduleOp, Type indexType, | ||||
Type unrankedDescriptorType); | Type unrankedDescriptorType); | ||||
/// Create a FuncOp with signature `resultType`(`paramTypes`)` and name `name`. | /// Create a FuncOp with signature `resultType`(`paramTypes`)` and name `name`. | ||||
LLVM::LLVMFuncOp lookupOrCreateFn(ModuleOp moduleOp, StringRef name, | LLVM::LLVMFuncOp lookupOrCreateFn(ModuleOp moduleOp, StringRef name, | ||||
ArrayRef<Type> paramTypes = {}, | ArrayRef<Type> paramTypes = {}, | ||||
Type resultType = {}); | Type resultType = {}); | ||||
} // namespace LLVM | } // namespace LLVM | ||||
} // namespace mlir | } // namespace mlir | ||||
#endif // MLIR_DIALECT_LLVMIR_FUNCTIONCALLUTILS_H_ | #endif // MLIR_DIALECT_LLVMIR_FUNCTIONCALLUTILS_H_ |