Lines Matching defs:eleTy

310     mlir::Type eleTy = fir::unwrapSequenceType(arrTy);
311 if (fir::isa_char(eleTy)) {
1382 mlir::Type eleTy =
1388 loc, builder.getRefType(eleTy), base, mlir::ValueRange{offset});
1608 mlir::Type eleTy = fir::dyn_cast_ptrOrBoxEleTy(base.getType());
1609 if (auto classTy = mlir::dyn_cast<fir::ClassType>(eleTy))
1610 eleTy = classTy.getEleTy();
1611 auto seqTy = mlir::cast<fir::SequenceType>(eleTy);
1630 auto eleTy = mlir::cast<fir::SequenceType>(arrTy).getElementType();
1631 mlir::Type seqTy = builder.getRefType(builder.getVarLenSeqTy(eleTy));
1632 mlir::Type refTy = builder.getRefType(eleTy);
1715 mlir::Type eleTy = mlir::cast<fir::SequenceType>(arrTy).getElementType();
1716 mlir::Type refTy = builder.getRefType(eleTy);
3160 mlir::Type eleTy = fir::unwrapPassByRefType(elementAddr.getType());
3161 if (fir::isa_char(eleTy)) {
3185 const fir::ExtendedValue &elementExv, mlir::Type eleTy,
3190 auto boxTy = fir::BoxType::get(eleTy);
3602 mlir::Type eleTy =
3604 auto seqTy = fir::SequenceType::get(eleTy, shape.size());
3618 mlir::Type eleTy =
3620 auto seqTy = fir::SequenceType::get(eleTy, iters.iterVec().size());
3627 loc, builder.getRefType(eleTy), castTo, shape,
3630 builder.createConvert(loc, eleTy, iters.getElement());
3974 /// Convert the original value, \p origVal, to type \p eleTy. When in a
3977 mlir::Value convertElementForUpdate(mlir::Location loc, mlir::Type eleTy,
3985 !mlir::isa<fir::BoxType>(eleTy)) {
3990 if (isPointerAssignment() && mlir::isa<fir::BoxType>(eleTy) &&
3996 if (auto eleTy = fir::dyn_cast_ptrEleTy(origVal.getType());
3997 fir::hasDynamicSize(eleTy))
3999 auto memrefTy = fir::boxMemRefType(mlir::cast<fir::BoxType>(eleTy));
4001 origVal = builder.create<fir::EmboxOp>(loc, eleTy, castTo);
4003 mlir::Value val = builder.convertWithSemantics(loc, eleTy, origVal);
4009 auto shiftTy = fir::ShiftType::get(eleTy.getContext(), lbs.size());
4011 val = builder.create<fir::ReboxOp>(loc, eleTy, val, shiftOp,
4021 auto shapeTy = fir::ShapeShiftType::get(eleTy.getContext(), lbs.size());
4024 val = builder.create<fir::ReboxOp>(loc, eleTy, val, shapeShift,
4041 mlir::Type eleTy = fir::applyPathToType(arrTy, iterSpace.iterVec());
4042 if (isAdjustedArrayElementType(eleTy)) {
4046 mlir::Type resRefTy = builder.getRefType(eleTy);
4051 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
4060 if (fir::isa_derived(eleTy)) {
4062 loc, destination, builder, arrayOp, exv, eleTy, innerArg);
4065 assert(mlir::isa<fir::SequenceType>(eleTy) && "must be an array");
4069 auto ele = convertElementForUpdate(loc, eleTy, fir::getBase(exv));
4202 auto eleTy = mlir::cast<fir::SequenceType>(arrTy).getElementType();
4203 mlir::Type eleRefTy = builder->getRefType(eleTy);
4333 mlir::Type eleTy =
4336 builder.getRefType(fir::SequenceType::get(eleTy, rank));
4522 if (mlir::Type eleTy = fir::unwrapSequenceType(type);
4523 fir::isRecordWithAllocatableMember(eleTy))
5786 mlir::Type eleTy =
5788 if (!eleTy)
5791 arrTy = fir::SequenceType::get(seqTy.getShape(), eleTy);
5794 << eleTy << ", " << arrTy << '\n');
5839 auto eleTy = mlir::cast<fir::SequenceType>(arrTy).getElementType();
5846 mlir::Type refEleTy = builder.getRefType(eleTy);
5854 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
5905 mlir::Type eleTy = fir::applyPathToType(resTy, iters.iterVec());
5907 fir::isa_ref_type(eleTy) ? eleTy : builder.getRefType(eleTy);
5931 mlir::Type eleTy = fir::applyPathToType(arrTy, iters.iterVec());
5932 if (isAdjustedArrayElementType(eleTy)) {
5933 mlir::Type eleRefTy = builder.getRefType(eleTy);
5938 loc, eleTy, arrLd, iters.iterVec(), arrLdTypeParams);
5952 mlir::Type eleTy = fir::applyPathToType(arrTy, iters.iterVec());
5953 if (isAdjustedArrayElementType(eleTy)) {
5954 mlir::Type eleRefTy = builder.getRefType(eleTy);
5957 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
5972 loc, eleTy, arrLd, iters.iterVec(), arrLdTypeParams);
6141 mlir::Value computeElementSize(const ExtValue &exv, mlir::Type eleTy,
6146 if (fir::hasDynamicSize(eleTy)) {
6147 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
6167 eleTy.getContext(), charTy.getFKind());
6169 assert(eleTy == seqTy.getEleTy());
6172 eleTy = newEleTy;
6177 mlir::Type eleRefTy = builder.getRefType(eleTy);
6241 mlir::Value eleSz, mlir::Type eleTy,
6249 if (fir::isRecordWithAllocatableMember(eleTy))
6254 assert(fir::hasDynamicSize(eleTy));
6255 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
6274 if (fir::hasDynamicSize(eleTy)) {
6275 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
6403 mlir::Type eleTy = fir::unwrapSequenceType(seqTy);
6415 mlir::Type eleRefTy = builder.getRefType(eleTy);
6427 mlir::Value eleSz = computeElementSize(exv, eleTy, resTy);
6429 eleSz, eleTy, eleRefTy, resTy)
6470 mlir::Type eleTy = fir::unwrapSequenceType(resTy);
6478 if (fir::hasDynamicSize(eleTy)) {
6481 mem = builder.createNullConstant(loc, builder.getRefType(eleTy));
6487 loc, eleTy, /*typeparams=*/std::nullopt, initBuffSz);
6500 mlir::Type eleRefTy = builder.getRefType(eleTy);
6511 mlir::Value eleSz = computeElementSize(exv, eleTy, resTy);
6513 eleSz, eleTy, eleRefTy, resTy)
6882 mlir::Type eleTy = lowerPath(arrayExv, components);
6896 if (isAdjustedArrayElementType(eleTy)) {
6897 mlir::Type eleRefTy = builder.getRefType(eleTy);
6901 if (auto charTy = mlir::dyn_cast<fir::CharacterType>(eleTy)) {
6910 if (fir::isa_derived(eleTy)) {
6913 iters.elementExv(), eleTy, innerArg);
6917 assert(mlir::isa<fir::SequenceType>(eleTy));
6935 if (auto boxTy = mlir::dyn_cast<fir::BaseBoxType>(eleTy)) {
6936 eleTy = fir::boxMemRefType(boxTy);
6937 addr = builder.create<fir::BoxAddrOp>(loc, eleTy, addr);
6938 eleTy = fir::unwrapRefType(eleTy);
6941 auto ele = convertElementForUpdate(loc, eleTy, iters.getElement());
6947 auto ele = convertElementForUpdate(loc, eleTy, iters.getElement());
6962 fir::isa_ref_type(eleTy) ? eleTy : builder.getRefType(eleTy);
6973 isAdjustedArrayElementType(eleTy)) {
6974 mlir::Type resTy = builder.getRefType(eleTy);
6980 if (fir::isa_char(eleTy)) {
7007 auto eleTy = fir::applyPathToType(load.getType(), iters.iterVec());
7008 if (!mlir::isa<fir::BoxType>(eleTy)) {
7013 loc, builder.getRefType(eleTy), load, iters.iterVec(),
7017 auto ptrEleTy = fir::PointerType::get(eleTy);
7033 loc, eleTy, load, iters.iterVec(), load.getTypeparams());
7078 mlir::Type eleTy = fir::unwrapRefType(addr.getType());
7079 if (isAdjustedArrayElementType(eleTy)) {
7080 if (fir::isa_char(eleTy)) {
7083 } else if (fir::isa_derived(eleTy)) {
7089 auto eleVal = convertElementForUpdate(loc, eleTy, iters.getElement());