Skip to content

Review uses of converter.getSymbolAddress in the Lowering code #1595

@kiranchandramohan

Description

@kiranchandramohan

@schweitzpgi pointed out during the review in #1592 that the usage of getSymbolAddress will probably not work in any situation where boxed types are used. This is currently used in a few places in OpenMP and OpenACC, and in F77 construct lowering and in a few other places. All uses are listed below. Review the uses and fix if necessary.

lib/Lower/OpenACC.cpp: const auto variable = converter.getSymbolAddress(sym);
lib/Lower/OpenACC.cpp: operands.push_back(converter.getSymbolAddress(details->symbol()));
lib/Lower/OpenACC.cpp: auto cond = converter.getSymbolAddress(*name->symbol);
lib/Lower/Bridge.cpp: mlir::Value getSymbolAddress(Fortran::lower::SymbolRef sym) override final {
lib/Lower/Bridge.cpp: return getSymbolAddress(symbol);
lib/Lower/Bridge.cpp: builder->createfir::LoadOp(loc, getSymbolAddress(symbol));
lib/Lower/Bridge.cpp: builder->createfir::StoreOp(loc, labelValue, getSymbolAddress(symbol));
lib/Lower/Bridge.cpp: getSymbolAddress(passedResult->entity->get()));
lib/Lower/Bridge.cpp: primaryFuncResultStorage = getSymbolAddress(sym);
lib/Lower/OpenMP.cpp: const mlir::Value variable = converter.getSymbolAddress(sym);
lib/Lower/OpenMP.cpp: operands.push_back(converter.getSymbolAddress(details->symbol()));
include/flang/Lower/AbstractConverter.h: virtual mlir::Value getSymbolAddress(SymbolRef sym) = 0;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions