Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
kiranchandramohan opened this issue Apr 19, 2022 · 0 comments
Open

Comments

@kiranchandramohan
Copy link
Collaborator

@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;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant