Lines Matching refs:csi
178 ConditionSpecInfo &csi, in genEndIO() argument
181 if (csi.ioMsg) { in genEndIO()
189 fir::getBase(*csi.ioMsg)), in genEndIO()
191 fir::getLen(*csi.ioMsg))}); in genEndIO()
198 if (csi.bigUnitIfOp) { in genEndIO()
201 builder.setInsertionPointAfter(csi.bigUnitIfOp); in genEndIO()
202 iostat = csi.bigUnitIfOp.getResult(0); in genEndIO()
204 if (csi.ioStatExpr) { in genEndIO()
206 fir::getBase(converter.genExprAddr(loc, csi.ioStatExpr, stmtCtx)); in genEndIO()
208 builder.createConvert(loc, converter.genType(*csi.ioStatExpr), iostat); in genEndIO()
211 return csi.hasTransferConditionSpec() ? iostat : mlir::Value{}; in genEndIO()
1178 ConditionSpecInfo csi; in lowerErrorSpec() local
1184 csi.ioStatExpr = Fortran::semantics::GetExpr(var); in lowerErrorSpec()
1189 csi.ioStatExpr = Fortran::semantics::GetExpr( in lowerErrorSpec()
1203 [&](const Fortran::parser::EndLabel &) { csi.hasEnd = true; }, in lowerErrorSpec()
1204 [&](const Fortran::parser::EorLabel &) { csi.hasEor = true; }, in lowerErrorSpec()
1205 [&](const Fortran::parser::ErrLabel &) { csi.hasErr = true; }, in lowerErrorSpec()
1213 csi.ioMsg = converter.genExprAddr(loc, ioMsgExpr, stmtCtx); in lowerErrorSpec()
1216 return csi; in lowerErrorSpec()
1222 const A &specList, ConditionSpecInfo &csi) { in genConditionHandlerCall() argument
1223 if (!csi.hasAnyConditionSpec()) in genConditionHandlerCall()
1234 boolValue(csi.ioStatExpr != nullptr), in genConditionHandlerCall()
1235 boolValue(csi.hasErr), in genConditionHandlerCall()
1236 boolValue(csi.hasEnd), in genConditionHandlerCall()
1237 boolValue(csi.hasEor), in genConditionHandlerCall()
1238 boolValue(csi.ioMsg.has_value())}; in genConditionHandlerCall()
1547 mlir::Type ty, ConditionSpecInfo &csi, in genIOUnitNumber() argument
1566 args.push_back(builder.createBool(loc, csi.hasErrorConditionSpec())); in genIOUnitNumber()
1567 if (csi.ioMsg) { in genIOUnitNumber()
1569 fir::getBase(*csi.ioMsg))); in genIOUnitNumber()
1571 fir::getLen(*csi.ioMsg))); in genIOUnitNumber()
1582 if (csi.hasErrorConditionSpec()) { in genIOUnitNumber()
1594 csi.bigUnitIfOp = ifOp; in genIOUnitNumber()
1603 mlir::Type ty, ConditionSpecInfo &csi, in genIOUnit() argument
1609 ty, csi, stmtCtx); in genIOUnit()
1617 ConditionSpecInfo &csi, in getIOUnit() argument
1621 return genIOUnit(converter, loc, iounit, ty, csi, stmtCtx); in getIOUnit()
1633 ConditionSpecInfo csi = lowerErrorSpec(converter, loc, stmt.v); in genBasicIOStmt() local
1638 beginFuncTy.getInput(0), csi, stmtCtx); in genBasicIOStmt()
1645 genConditionHandlerCall(converter, loc, cookie, stmt.v, csi); in genBasicIOStmt()
1648 threadSpecs(converter, loc, cookie, stmt.v, csi.hasErrorConditionSpec(), ok); in genBasicIOStmt()
1650 return genEndIO(converter, converter.getCurrentLocation(), cookie, csi, in genBasicIOStmt()
1710 ConditionSpecInfo csi = lowerErrorSpec(converter, loc, stmt.v); in genOpenStatement() local
1717 beginFuncTy.getInput(0), csi, stmtCtx); in genOpenStatement()
1731 genConditionHandlerCall(converter, loc, cookie, stmt.v, csi); in genOpenStatement()
1734 threadSpecs(converter, loc, cookie, stmt.v, csi.hasErrorConditionSpec(), ok); in genOpenStatement()
1738 return genEndIO(converter, loc, cookie, csi, stmtCtx); in genOpenStatement()
1753 ConditionSpecInfo csi = lowerErrorSpec(converter, loc, stmt.v); in genWaitStatement() local
1761 beginFuncTy.getInput(0), csi, stmtCtx); in genWaitStatement()
1774 genConditionHandlerCall(converter, loc, cookie, stmt.v, csi); in genWaitStatement()
1775 return genEndIO(converter, converter.getCurrentLocation(), cookie, csi, in genWaitStatement()
1852 const llvm::Optional<fir::ExtendedValue> &descRef, ConditionSpecInfo &csi, in genBeginDataTransferCallArgs() argument
1888 ioFuncTy.getInput(ioArgs.size()), csi, in genBeginDataTransferCallArgs()
1922 ConditionSpecInfo csi; in genDataTransferStmt() local
1924 csi = lowerErrorSpec(converter, loc, stmt.controls); in genDataTransferStmt()
1934 isList || isNml, isInternal, isAsync, descRef, csi, stmtCtx); in genDataTransferStmt()
1941 genConditionHandlerCall(converter, loc, cookie, stmt.controls, csi); in genDataTransferStmt()
1943 csi.hasErrorConditionSpec(), ok); in genDataTransferStmt()
1952 csi.hasTransferConditionSpec(), ok, stmtCtx); in genDataTransferStmt()
1955 csi.hasTransferConditionSpec(), ok, /*inLoop=*/false); in genDataTransferStmt()
1961 csi.hasTransferConditionSpec(), ok, stmtCtx); in genDataTransferStmt()
1964 csi.hasTransferConditionSpec(), ok, in genDataTransferStmt()
1968 csi.hasTransferConditionSpec(), ok, in genDataTransferStmt()
1976 csi.hasErrorConditionSpec()); in genDataTransferStmt()
1979 return genEndIO(converter, loc, cookie, csi, stmtCtx); in genDataTransferStmt()
2189 ConditionSpecInfo csi = in genInquireStatement() local
2198 beginFuncTy.getInput(0), csi, stmtCtx); in genInquireStatement()
2241 return genEndIO(converter, loc, cookie, csi, stmtCtx); in genInquireStatement()
2248 genConditionHandlerCall(converter, loc, cookie, *list, csi); in genInquireStatement()
2252 threadInquire(converter, loc, cookie, *list, csi.hasErrorConditionSpec(), ok, in genInquireStatement()
2256 return genEndIO(converter, loc, cookie, csi, stmtCtx); in genInquireStatement()