FLANG
ConvertProcedureDesignator.h
1//===- ConvertProcedureDesignator.h -- Procedure Designators ----*- 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// Coding style: https://mlir.llvm.org/getting_started/DeveloperGuide/
10//
11//===----------------------------------------------------------------------===//
15//===----------------------------------------------------------------------===//
16
17#ifndef FORTRAN_LOWER_CONVERT_PROCEDURE_DESIGNATOR_H
18#define FORTRAN_LOWER_CONVERT_PROCEDURE_DESIGNATOR_H
19
20namespace mlir {
21class Location;
22class Value;
23class Type;
24}
25namespace fir {
26class ExtendedValue;
27}
28namespace hlfir {
30}
31namespace Fortran::evaluate {
33}
34namespace Fortran::semantics {
35class Symbol;
36}
37
38namespace Fortran::lower {
41class SymMap;
42
46fir::ExtendedValue convertProcedureDesignator(
47 mlir::Location loc, Fortran::lower::AbstractConverter &converter,
48 const Fortran::evaluate::ProcedureDesignator &proc,
49 Fortran::lower::SymMap &symMap, Fortran::lower::StatementContext &stmtCtx);
50
53hlfir::EntityWithAttributes convertProcedureDesignatorToHLFIR(
54 mlir::Location loc, Fortran::lower::AbstractConverter &converter,
55 const Fortran::evaluate::ProcedureDesignator &proc,
56 Fortran::lower::SymMap &symMap, Fortran::lower::StatementContext &stmtCtx);
57
59mlir::Value
60convertProcedureDesignatorInitialTarget(Fortran::lower::AbstractConverter &,
61 mlir::Location,
62 const Fortran::semantics::Symbol &sym);
63
68 mlir::Location loc, Fortran::lower::AbstractConverter &converter,
69 const Fortran::evaluate::ProcedureDesignator &proc, mlir::Value passedArg,
70 Fortran::lower::SymMap &symMap, Fortran::lower::StatementContext &stmtCtx);
71} // namespace Fortran::lower
72#endif // FORTRAN_LOWER_CONVERT_PROCEDURE_DESIGNATOR_H
Definition AbstractConverter.h:85
Definition StatementContext.h:46
Definition SymbolMap.h:146
Definition symbol.h:781
Definition BoxValue.h:478
Definition HLFIRTools.h:190
Definition call.h:34
Definition ParserActions.h:24
mlir::Value derefPassProcPointerComponent(mlir::Location loc, Fortran::lower::AbstractConverter &converter, const Fortran::evaluate::ProcedureDesignator &proc, mlir::Value passedArg, Fortran::lower::SymMap &symMap, Fortran::lower::StatementContext &stmtCtx)
Definition ConvertProcedureDesignator.cpp:206
fir::ExtendedValue convertProcedureDesignator(mlir::Location loc, Fortran::lower::AbstractConverter &converter, const Fortran::evaluate::ProcedureDesignator &proc, Fortran::lower::SymMap &symMap, Fortran::lower::StatementContext &stmtCtx)
Definition ConvertProcedureDesignator.cpp:32
hlfir::EntityWithAttributes convertProcedureDesignatorToHLFIR(mlir::Location loc, Fortran::lower::AbstractConverter &converter, const Fortran::evaluate::ProcedureDesignator &proc, Fortran::lower::SymMap &symMap, Fortran::lower::StatementContext &stmtCtx)
Definition ConvertProcedureDesignator.cpp:149
mlir::Value convertProcedureDesignatorInitialTarget(Fortran::lower::AbstractConverter &, mlir::Location, const Fortran::semantics::Symbol &sym)
Generate initialization for procedure pointer to procedure target.
Definition ConvertProcedureDesignator.cpp:194
Definition AbstractConverter.h:34
Definition AbstractConverter.h:29