Skip to content

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

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

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions