Lines Matching refs:eleTy
40 mlir::Type complexMemoryType(mlir::Type eleTy) const override { in complexMemoryType()
41 assert(fir::isa_real(eleTy)); in complexMemoryType()
44 mlir::TypeRange range = {eleTy, eleTy}; in complexMemoryType()
45 return mlir::TupleType::get(eleTy.getContext(), range); in complexMemoryType()
48 mlir::Type boxcharMemoryType(mlir::Type eleTy) const override { in boxcharMemoryType()
49 auto idxTy = mlir::IntegerType::get(eleTy.getContext(), S::defaultWidth); in boxcharMemoryType()
50 auto ptrTy = fir::ReferenceType::get(eleTy); in boxcharMemoryType()
54 return mlir::TupleType::get(eleTy.getContext(), range); in boxcharMemoryType()
57 Marshalling boxcharArgumentType(mlir::Type eleTy, bool sret) const override { in boxcharArgumentType()
59 auto idxTy = mlir::IntegerType::get(eleTy.getContext(), S::defaultWidth); in boxcharArgumentType()
60 auto ptrTy = fir::ReferenceType::get(eleTy); in boxcharArgumentType()
84 complexArgumentType(mlir::Location, mlir::Type eleTy) const override { in complexArgumentType()
85 assert(fir::isa_real(eleTy)); in complexArgumentType()
89 mlir::TypeRange range = {eleTy, eleTy}; in complexArgumentType()
90 auto structTy = mlir::TupleType::get(eleTy.getContext(), range); in complexArgumentType()
97 complexReturnType(mlir::Location loc, mlir::Type eleTy) const override { in complexReturnType()
98 assert(fir::isa_real(eleTy)); in complexReturnType()
100 const auto *sem = &floatToSemantics(kindMap, eleTy); in complexReturnType()
103 marshal.emplace_back(mlir::IntegerType::get(eleTy.getContext(), 64), in complexReturnType()
108 mlir::TypeRange range = {eleTy, eleTy}; in complexReturnType()
109 auto structTy = mlir::TupleType::get(eleTy.getContext(), range); in complexReturnType()
131 complexArgumentType(mlir::Location loc, mlir::Type eleTy) const override { in complexArgumentType()
133 const auto *sem = &floatToSemantics(kindMap, eleTy); in complexArgumentType()
136 marshal.emplace_back(fir::VectorType::get(2, eleTy), AT{}); in complexArgumentType()
139 marshal.emplace_back(eleTy, AT{}); in complexArgumentType()
140 marshal.emplace_back(eleTy, AT{}); in complexArgumentType()
144 mlir::TypeRange range = {eleTy, eleTy}; in complexArgumentType()
146 mlir::TupleType::get(eleTy.getContext(), range)), in complexArgumentType()
155 complexReturnType(mlir::Location loc, mlir::Type eleTy) const override { in complexReturnType()
157 const auto *sem = &floatToSemantics(kindMap, eleTy); in complexReturnType()
160 marshal.emplace_back(fir::VectorType::get(2, eleTy), AT{}); in complexReturnType()
164 mlir::TypeRange range = {eleTy, eleTy}; in complexReturnType()
165 marshal.emplace_back(mlir::TupleType::get(eleTy.getContext(), range), in complexReturnType()
170 mlir::TypeRange range = {eleTy, eleTy}; in complexReturnType()
172 mlir::TupleType::get(eleTy.getContext(), range)), in complexReturnType()
193 complexArgumentType(mlir::Location loc, mlir::Type eleTy) const override { in complexArgumentType()
195 const auto *sem = &floatToSemantics(kindMap, eleTy); in complexArgumentType()
199 marshal.emplace_back(fir::SequenceType::get({2}, eleTy), AT{}); in complexArgumentType()
207 complexReturnType(mlir::Location loc, mlir::Type eleTy) const override { in complexReturnType()
209 const auto *sem = &floatToSemantics(kindMap, eleTy); in complexReturnType()
214 mlir::TypeRange range = {eleTy, eleTy}; in complexReturnType()
215 marshal.emplace_back(mlir::TupleType::get(eleTy.getContext(), range), in complexReturnType()
236 complexArgumentType(mlir::Location, mlir::Type eleTy) const override { in complexArgumentType()
239 marshal.emplace_back(eleTy, AT{}); in complexArgumentType()
240 marshal.emplace_back(eleTy, AT{}); in complexArgumentType()
245 complexReturnType(mlir::Location, mlir::Type eleTy) const override { in complexReturnType()
249 mlir::TypeRange range = {eleTy, eleTy}; in complexReturnType()
250 marshal.emplace_back(mlir::TupleType::get(eleTy.getContext(), range), AT{}); in complexReturnType()