1//===-- Coarray.cpp -------------------------------------------------------===//
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/// Implementation of the lowering of image related constructs and expressions.
10/// Fortran images can form teams, communicate via coarrays, etc.
11///
12//===----------------------------------------------------------------------===//
13
14#include "flang/Lower/Coarray.h"
15#include "flang/Lower/AbstractConverter.h"
16#include "flang/Lower/SymbolMap.h"
17#include "flang/Optimizer/Builder/FIRBuilder.h"
18#include "flang/Optimizer/Builder/Todo.h"
19#include "flang/Parser/parse-tree.h"
20#include "flang/Semantics/expression.h"
21
22//===----------------------------------------------------------------------===//
23// TEAM statements and constructs
24//===----------------------------------------------------------------------===//
25
26void Fortran::lower::genChangeTeamConstruct(
27 Fortran::lower::AbstractConverter &converter,
28 Fortran::lower::pft::Evaluation &,
29 const Fortran::parser::ChangeTeamConstruct &) {
30 TODO(converter.getCurrentLocation(), "coarray: CHANGE TEAM construct");
31}
32
33void Fortran::lower::genChangeTeamStmt(
34 Fortran::lower::AbstractConverter &converter,
35 Fortran::lower::pft::Evaluation &,
36 const Fortran::parser::ChangeTeamStmt &) {
37 TODO(converter.getCurrentLocation(), "coarray: CHANGE TEAM statement");
38}
39
40void Fortran::lower::genEndChangeTeamStmt(
41 Fortran::lower::AbstractConverter &converter,
42 Fortran::lower::pft::Evaluation &,
43 const Fortran::parser::EndChangeTeamStmt &) {
44 TODO(converter.getCurrentLocation(), "coarray: END CHANGE TEAM statement");
45}
46
47void Fortran::lower::genFormTeamStatement(
48 Fortran::lower::AbstractConverter &converter,
49 Fortran::lower::pft::Evaluation &, const Fortran::parser::FormTeamStmt &) {
50 TODO(converter.getCurrentLocation(), "coarray: FORM TEAM statement");
51}
52
53//===----------------------------------------------------------------------===//
54// COARRAY expressions
55//===----------------------------------------------------------------------===//
56
57fir::ExtendedValue Fortran::lower::CoarrayExprHelper::genAddr(
58 const Fortran::evaluate::CoarrayRef &expr) {
59 (void)symMap;
60 TODO(converter.getCurrentLocation(), "co-array address");
61}
62
63fir::ExtendedValue Fortran::lower::CoarrayExprHelper::genValue(
64 const Fortran::evaluate::CoarrayRef &expr) {
65 TODO(converter.getCurrentLocation(), "co-array value");
66}
67

source code of flang/lib/Lower/Coarray.cpp