Skip to content

Commit a9f42ac

Browse files
committed
Addressed reviewer comments. Added assert to check for derived type.
1 parent e091b21 commit a9f42ac

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

flang/lib/Lower/OpenMP/OpenMP.cpp

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939
#include "mlir/Transforms/RegionUtils.h"
4040
#include "llvm/ADT/STLExtras.h"
4141
#include "llvm/Frontend/OpenMP/OMPConstants.h"
42-
#include <string>
4342

4443
using namespace Fortran::lower::omp;
4544

@@ -2709,13 +2708,16 @@ genOMP(lower::AbstractConverter &converter, lower::SymMap &symTable,
27092708
const auto &mapperName{std::get<std::optional<parser::Name>>(spec.t)};
27102709
const auto &varType{std::get<parser::TypeSpec>(spec.t)};
27112710
const auto &varName{std::get<parser::Name>(spec.t)};
2712-
std::stringstream mapperNameStr;
2713-
if (mapperName.has_value()) {
2714-
mapperNameStr << mapperName->ToString();
2715-
} else {
2716-
mapperNameStr << "default_"
2717-
<< varType.declTypeSpec->derivedTypeSpec().name().ToString();
2718-
}
2711+
assert(varType.declTypeSpec->category() ==
2712+
semantics::DeclTypeSpec::Category::TypeDerived &&
2713+
"Expected derived type");
2714+
2715+
std::string mapperNameStr;
2716+
if (mapperName.has_value())
2717+
mapperNameStr = mapperName->ToString();
2718+
else
2719+
mapperNameStr =
2720+
"default_" + varType.declTypeSpec->derivedTypeSpec().name().ToString();
27192721

27202722
mlir::OpBuilder::InsertPoint insPt = firOpBuilder.saveInsertionPoint();
27212723
firOpBuilder.setInsertionPointToStart(converter.getModuleOp().getBody());
@@ -2731,7 +2733,7 @@ genOMP(lower::AbstractConverter &converter, lower::SymMap &symTable,
27312733
ClauseProcessor cp(converter, semaCtx, clauses);
27322734
cp.processMap(converter.getCurrentLocation(), stmtCtx, clauseOps);
27332735
auto declMapperOp = firOpBuilder.create<mlir::omp::DeclareMapperOp>(
2734-
converter.getCurrentLocation(), mapperNameStr.str(), varVal, mlirType,
2736+
converter.getCurrentLocation(), mapperNameStr, varVal, mlirType,
27352737
clauseOps.mapVars);
27362738
converter.getMLIRSymbolTable()->insert(declMapperOp.getOperation());
27372739
firOpBuilder.restoreInsertionPoint(insPt);

0 commit comments

Comments
 (0)