FLANG
CUFOpConversion.h
1//===------- Optimizer/Transforms/CUFOpConversion.h -------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef FORTRAN_OPTIMIZER_TRANSFORMS_CUFOPCONVERSION_H_
10#define FORTRAN_OPTIMIZER_TRANSFORMS_CUFOPCONVERSION_H_
11
12#include "mlir/Pass/Pass.h"
13
14namespace fir {
16}
17
18namespace mlir {
19class DataLayout;
20class SymbolTable;
21} // namespace mlir
22
23namespace cuf {
24
26void populateCUFToFIRConversionPatterns(const fir::LLVMTypeConverter &converter,
27 mlir::DataLayout &dl,
28 const mlir::SymbolTable &symtab,
29 mlir::RewritePatternSet &patterns);
30
32void populateFIRCUFConversionPatterns(const mlir::SymbolTable &symtab,
33 mlir::RewritePatternSet &patterns);
34
35} // namespace cuf
36
37#endif // FORTRAN_OPTIMIZER_TRANSFORMS_CUFOPCONVERSION_H_
Definition TypeConverter.h:49
Definition ConvertVariable.h:28
void populateFIRCUFConversionPatterns(const mlir::SymbolTable &symtab, mlir::RewritePatternSet &patterns)
Patterns that updates fir operations in presence of CUF.
Definition CUFOpConversion.cpp:610
void populateCUFToFIRConversionPatterns(const fir::LLVMTypeConverter &converter, mlir::DataLayout &dl, const mlir::SymbolTable &symtab, mlir::RewritePatternSet &patterns)
Patterns that convert CUF operations to runtime calls.
Definition CUFOpConversion.cpp:601
Definition AbstractConverter.h:37
Definition AbstractConverter.h:32