/llvm-project/flang/runtime/ |
H A D | descriptor-io.h | 32 const Descriptor &descriptor, const SubscriptValue subscripts[]) { in ExtractElement() argument 33 A *p{descriptor.Element<A>(subscripts)}; in ExtractElement() 36 "address or subscripts out of range"); in ExtractElement() 51 SubscriptValue subscripts[maxRank]; in FormattedIntegerIO() local 52 descriptor.GetLowerBounds(subscripts); in FormattedIntegerIO() 57 IntType &x{ExtractElement<IntType>(io, descriptor, subscripts)}; in FormattedIntegerIO() 70 if (!descriptor.IncrementSubscripts(subscripts) && j + 1 < numElements) { in FormattedIntegerIO() 72 "FormattedIntegerIO: subscripts out of bounds"); in FormattedIntegerIO() 85 SubscriptValue subscripts[maxRank]; in FormattedRealIO() 86 descriptor.GetLowerBounds(subscripts); in FormattedRealIO() 84 SubscriptValue subscripts[maxRank]; FormattedRealIO() local 117 SubscriptValue subscripts[maxRank]; FormattedComplexIO() local 165 SubscriptValue subscripts[maxRank]; FormattedCharacterIO() local 205 SubscriptValue subscripts[maxRank]; FormattedLogicalIO() local 278 DefaultComponentwiseFormattedIO(IoStatementState & io,const Descriptor & descriptor,const typeInfo::DerivedType & type,const NonTbpDefinedIoTable * table,const SubscriptValue subscripts[]) DefaultComponentwiseFormattedIO() argument 310 SubscriptValue subscripts[maxRank]; DefaultComponentwiseUnformattedIO() local 368 SubscriptValue subscripts[maxRank]; FormattedDerivedTypeIO() local 459 SubscriptValue subscripts[maxRank]; global() variable [all...] |
H A D | descriptor-io.cpp | 20 const SubscriptValue subscripts[]) { in DefinedFormattedIo() argument 76 elementDesc.set_base_addr(descriptor.Element<char>(subscripts)); in DefinedFormattedIo() 83 p(descriptor.Element<char>(subscripts), unit, ioType, vListDesc, ioStat, in DefinedFormattedIo() 122 SubscriptValue subscripts[maxRank]; in DefinedUnformattedIo() local 123 descriptor.GetLowerBounds(subscripts); in DefinedUnformattedIo() 131 for (; numElements-- > 0; descriptor.IncrementSubscripts(subscripts)) { in DefinedUnformattedIo() 132 elementDesc.set_base_addr(descriptor.Element<char>(subscripts)); in DefinedUnformattedIo() 142 for (; numElements-- > 0; descriptor.IncrementSubscripts(subscripts)) { in DefinedUnformattedIo() 143 p(descriptor.Element<char>(subscripts), unit, ioStat, ioMsg, in DefinedUnformattedIo()
|
H A D | reduction-templates.h | 37 // AccumulateAt() member function that applies supplied subscripts to the 115 // array of subscripts [j,_,k] for result subscripts [j,k] so that the in GetExpandedSubscripts() 133 int zeroBasedDim, SubscriptValue subscripts[], TYPE *result, in ReduceDimToScalar() 136 GetExpandedSubscripts(xAt, x, zeroBasedDim, subscripts); in ReduceDimToScalar() 154 int zeroBasedDim, SubscriptValue subscripts[], const Descriptor &mask, in ReduceDimMaskToScalar() 157 GetExpandedSubscripts(xAt, x, zeroBasedDim, subscripts); in ReduceDimMaskToScalar() 158 GetExpandedSubscripts(maskAt, mask, zeroBasedDim, subscripts); in ReduceDimMaskToScalar() 129 ReduceDimToScalar(const Descriptor & x,int zeroBasedDim,SubscriptValue subscripts[],TYPE * result,ACCUMULATOR & accumulator) ReduceDimToScalar() argument 150 ReduceDimMaskToScalar(const Descriptor & x,int zeroBasedDim,SubscriptValue subscripts[],const Descriptor & mask,TYPE * result,ACCUMULATOR & accumulator) ReduceDimMaskToScalar() argument
|
H A D | type-info.cpp | 140 const SubscriptValue *subscripts) const { in CreatePointerDescriptor() 143 if (subscripts) { in CreatePointerDescriptor() 144 descriptor.set_base_addr(container.Element<char>(subscripts) + offset_); in CreatePointerDescriptor()
|
H A D | ISO_Fortran_binding.cpp | 26 const CFI_cdesc_t *descriptor, const CFI_index_t subscripts[]) { in CFI_address() argument 31 p += (subscripts[j] - dim->lower_bound) * dim->sm; in CFI_address()
|
H A D | reduction.cpp | 268 SubscriptValue subscripts[]) -> typename ACCUMULATOR::Type { 271 GetExpandedSubscripts(xAt, x, zeroBasedDim, subscripts); in operator ()() 254 ReduceLogicalDimToScalar(const Descriptor & x,int zeroBasedDim,SubscriptValue subscripts[]) ReduceLogicalDimToScalar() argument
|
/llvm-project/flang/lib/Parser/ |
H A D | parse-tree.cpp | 55 if (!pr.subscripts.empty()) { 57 std::move(*this), std::move(pr.subscripts)); 96 const Name &name, std::list<Expr> &&subscripts) { in MakeArrayElementRef() argument 98 for (Expr &expr : subscripts) { in MakeArrayElementRef() 99 arrayElement.subscripts.push_back( in MakeArrayElementRef() 106 StructureComponent &&sc, std::list<Expr> &&subscripts) { in MakeArrayElementRef() argument 109 for (Expr &expr : subscripts) { in MakeArrayElementRef() 110 arrayElement.subscripts.push_back( in MakeArrayElementRef() 185 for (auto &subscript : subscripts) { in ConvertToStructureConstructor() 195 auto iter{subscripts in ConvertToSubstring() [all...] |
/llvm-project/flang/lib/Semantics/ |
H A D | scope.cpp | 23 return symbol == that.symbol && subscripts == that.subscripts && in operator ==() 30 (subscripts < that.subscripts || in operator <() 31 (subscripts == that.subscripts && in operator <() 39 if (!subscripts.empty()) { in AsFortran() 41 for (auto subscript : subscripts) { in AsFortran()
|
H A D | resolve-names-utils.cpp | 353 auto subscripts{currObject_.subscripts}; in GetBound() 354 if (subscripts.empty()) { in GetBound() 361 subscripts.push_back(*lbValue); in PropagateSaveAttr() 365 subscripts.clear(); // error recovery in PropagateSaveAttr() 372 *symbol, subscripts, substringStart, designator.source); in PropagateSaveAttr() 521 for (const auto &subscript : elem.value().subscripts) { in CheckDesignator() 572 currObject_.subscripts.push_back(*subscript); in CheckDataRef() 386 auto subscripts{currObject_.subscripts}; AddToSet() local
|
H A D | compute-offsets.cpp | 360 if (!object.subscripts.empty()) { in GetSizeAndAlignment() 369 for (std::size_t i{object.subscripts.size() - 1};;) { in Align() 370 offset += object.subscripts[i] - lbound(i); in Align()
|
H A D | resolve-names-utils.h | 138 std::vector<ConstantSubscript> subscripts; 143 std::vector<ConstantSubscript> subscripts; global() member
|
H A D | expression.cpp | 267 // subscripts are in hand. in CompleteSubscripts() 271 int subscripts{static_cast<int>(ref.size())}; in CompleteSubscripts() 272 if (subscripts == 0) { in CompleteSubscripts() 274 } else if (subscripts != symbolRank) { in CompleteSubscripts() 276 Say("Reference to rank-%d object '%s' has %d subscripts"_err_en_US, in CompleteSubscripts() 277 symbolRank, symbol.name(), subscripts); in CompleteSubscripts() 306 // Applies subscripts to a data reference. in ApplySubscripts() 308 DataRef &&dataRef, std::vector<Subscript> &&subscripts) { in ApplySubscripts() 309 if (subscripts.empty()) { in ApplySubscripts() 315 return CompleteSubscripts(ArrayRef{symbol, std::move(subscripts)}); in ApplySubscripts() 260 int subscripts{static_cast<int>(ref.size())}; CompleteSubscripts() local 297 ApplySubscripts(DataRef && dataRef,std::vector<Subscript> && subscripts) ApplySubscripts() argument 1245 std::vector<Subscript> subscripts; AnalyzeSectionSubscripts() local 1435 std::vector<Subscript> subscripts; Analyze() local [all...] |
/llvm-project/flang/unittests/Evaluate/ |
H A D | ISO-Fortran-binding.cpp | 205 const CFI_cdesc_t *dv, const CFI_index_t subscripts[]) { in check_CFI_address() argument 207 void *addr{CFI_address(dv, subscripts)}; in check_CFI_address() 209 void *addrCheck{desc->Element<void>(subscripts)}; in check_CFI_address() 241 CFI_index_t subscripts[CFI_MAX_RANK]; in run_CFI_address_tests() local 252 subscripts[i] = i + 1; in run_CFI_address_tests() 277 check_CFI_address(dv, subscripts); in run_CFI_address_tests() 286 check_CFI_address(dv, subscripts); in run_CFI_address_tests() 561 CFI_index_t subscripts[]{ in run_CFI_select_part_tests() local 564 i * 2 + j * 64, *static_cast<int *>(CFI_address(result, subscripts))); in run_CFI_select_part_tests() 592 CFI_index_t subscripts[]{ in run_CFI_select_part_tests() local [all …]
|
/llvm-project/mlir/test/Dialect/Affine/ |
H A D | load-store-invalid.mlir | 4 // expected-error@+1 {{op expects as many subscripts as affine map inputs}} 12 // expected-error@+1 {{op expects as many subscripts as affine map inputs}} 21 // expected-error@+1 {{op expects as many subscripts as affine map inputs}} 29 // expected-error@+1 {{op expects as many subscripts as affine map inputs}}
|
/llvm-project/flang/include/flang/Semantics/ |
H A D | scope.h | 40 EquivalenceObject(Symbol &symbol, std::vector<ConstantSubscript> subscripts, in EquivalenceObject() 42 : symbol{symbol}, subscripts{subscripts}, in EquivalenceObject() 52 std::vector<ConstantSubscript> subscripts; // for array elem member
|
/llvm-project/flang/lib/Lower/ |
H A D | ConvertConstant.cpp | 572 Fortran::evaluate::ConstantSubscripts subscripts = con.lbounds(); in genInlinedArrayLit() local 575 for (size_t i = 0; i < subscripts.size(); ++i) in genInlinedArrayLit() 577 builder.getIntegerAttr(idxTy, subscripts[i] - con.lbounds()[i])); in genInlinedArrayLit() 586 genScalarLit<T::kind>(builder, loc, con.At(subscripts), con.LEN(), in genInlinedArrayLit() 590 } while (con.IncrementSubscripts(subscripts)); in genInlinedArrayLit() 596 genScalarLit(converter, loc, con.At(subscripts), eleTy, in genInlinedArrayLit() 600 } while (con.IncrementSubscripts(subscripts)); in genInlinedArrayLit() 609 builder, loc, con.At(subscripts))); in genInlinedArrayLit() 611 Fortran::evaluate::ConstantSubscripts nextSubscripts = subscripts; in genInlinedArrayLit() 613 con.At(subscripts) in genInlinedArrayLit() [all...] |
H A D | IterationSpace.cpp | 130 bool intersection(const A &subscripts) { in intersection() argument 131 return Fortran::lower::symbolsIntersectSubscripts(controlVars, subscripts); in intersection()
|
/llvm-project/flang/lib/Optimizer/HLFIR/Transforms/ |
H A D | ConvertToFIR.cpp | 508 auto subscripts = designate.getIndices(); in matchAndRewrite() 518 if (!subscripts.empty()) { in matchAndRewrite() 520 loc, builder, designate.getComponentShape(), subscripts.size()); in matchAndRewrite() 521 for (auto [i, lb] : llvm::zip(subscripts, lbounds)) { in matchAndRewrite() 533 triples.push_back(subscripts[i++]); in matchAndRewrite() 535 triples.push_back(subscripts[i++]); in matchAndRewrite() 536 triples.push_back(subscripts[i++]); in matchAndRewrite() 507 auto subscripts = designate.getIndices(); matchAndRewrite() local
|
/llvm-project/flang/lib/Evaluate/ |
H A D | fold-implementation.h | 61 const std::vector<Constant<SubscriptInteger>> &subscripts); 163 std::vector<Constant<SubscriptInteger>> subscripts; in Folding() 167 subscripts.emplace_back(std::move(*constant)); in Folding() 173 return GetConstantComponent(*component, &subscripts); in Folding() 176 return ApplySubscripts(*array, subscripts); in Folding() 203 const std::vector<Constant<SubscriptInteger>> &subscripts) { in ApplySubscripts() 207 CHECK(rank == static_cast<int>(subscripts.size())); in ApplySubscripts() 211 for (const auto &ss : subscripts) { in ApplySubscripts() 226 if (subscripts[j].Rank() == 0) { in ApplySubscripts() 227 at[j] = subscripts[ in ApplySubscripts() 161 std::vector<Constant<SubscriptInteger>> subscripts; Folding() local 201 ApplySubscripts(const Constant<T> & array,const std::vector<Constant<SubscriptInteger>> & subscripts) ApplySubscripts() argument 263 ApplyComponent(Constant<SomeDerived> && structures,const Symbol & component,const std::vector<Constant<SubscriptInteger>> * subscripts) ApplyComponent() argument 320 GetConstantComponent(Component & component,const std::vector<Constant<SubscriptInteger>> * subscripts) GetConstantComponent() argument [all...] |
H A D | fold-designator.cpp | 20 // rightmost symbol in a designator and has no subscripts. in DEFINE_DEFAULT_CONSTRUCTORS_AND_ASSIGNMENTS() 61 } else { // A(1)%B(:) - apply elementNumber_ to subscripts in FoldDesignator() 214 // Reconstructs subscripts. 231 std::vector<Subscript> subscripts; in OffsetToArrayRef() 240 subscripts.emplace_back(ExtentExpr{(*lower)[dim] + remainder}); in OffsetToArrayRef() 244 subscripts.emplace_back(ExtentExpr{(*lower)[rank - 1] + at}); in OffsetToArrayRef() 246 return ArrayRef{std::move(entity), std::move(subscripts)}; in OffsetToArrayRef() 269 // Converts an offset into subscripts &/or component references. Recursive. 230 std::vector<Subscript> subscripts; OffsetToArrayRef() local
|
/llvm-project/clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/ |
H A D | core.uninitialized.ArraySubscript.rst | 8 Check for uninitialized values used as array subscripts.
|
/llvm-project/flang/test/Semantics/ |
H A D | image_index02.f90 | 98 n = image_index(scalar_coarray, subscripts=[1])
|
/llvm-project/flang/include/flang/ |
H A D | ISO_Fortran_binding.h | 197 const CFI_cdesc_t *, const CFI_index_t subscripts[]);
|
/llvm-project/flang/include/flang/Lower/ |
H A D | IterationSpace.h | 557 const A &subscripts) { 558 for (auto &sub : subscripts) {
|
/llvm-project/flang/include/flang/Parser/ |
H A D | parse-tree-visitor.h | 315 Walk(x.subscripts, visitor); in Walk() 322 Walk(x.subscripts, mutator); in Walk() 618 Walk(x.subscripts, visitor); in Walk() 626 Walk(x.subscripts, mutator); in Walk()
|