Home | History | Annotate | Download | only in slang

Lines Matching refs:ForEach

179       std::cout << "  (ForEach) ordinal=" << feIdx << " state=";
181 case File::ForEach::S_Initial:
184 case File::ForEach::S_Collected:
187 case File::ForEach::S_UseMatched:
235 // ForEach /////////////////////////////////////////////////////////////////////////////////////
244 file.mForEaches = new File::ForEach[Count];
280 auto &foreach = foreaches[Ordinal];
281 slangAssert(foreach.mState == File::ForEach::S_Initial);
282 foreach.mState = File::ForEach::S_Collected;
283 foreach.mName = Name;
284 foreach.mIns.BeginCollecting(InCount);
285 foreach.mParams.BeginCollecting(ParamCount);
286 foreach.mOut = canon(OutType);
287 foreach.mHasOut = HasOut;
288 foreach.mSignatureMetadata = 0;
289 foreach.mIsKernel = IsKernel;
297 auto &foreach = foreaches[Ordinal];
298 slangAssert(foreach.mState == File::ForEach::S_Collected);
299 foreach.mState = File::ForEach::S_UseMatched;
302 if (foreach.mName != Name) {
310 if (foreach.mIsKernel != IsKernel) {
312 "foreach kernel '%0' has __attribute__((kernel)) for %select{32|64}1-bit targets "
318 if ((foreach.mHasOut != HasOut) || !foreach.mOut.equals(OutType)) {
324 if (foreach.mHasOut && HasOut) {
325 if (foreach.mOut.size() && OutType.size()) {
328 "foreach kernel '%0' has output type '%1' for 32-bit targets "
330 << Name << foreach.mOut.str() << OutType;
335 "foreach kernel '%0' has output type '%1' for %select{32|64}2-bit targets "
337 << Name << (foreach.mOut.str() + OutType) << hasTyped64;
340 const std::string CombinedOutType = (foreach.mOut.str() + OutType);
344 "foreach kernel '%0' has output type '%1' for %select{32|64}2-bit targets "
350 "foreach kernel '%0' has untyped output for %select{32|64}1-bit targets "
358 if (foreach.mIns.Size() != InCount) {
360 "foreach kernel '%0' has %1 input%s1 for 32-bit targets "
362 << Name << unsigned(foreach.mIns.Size()) << unsigned(InCount);
365 if (foreach.mParams.Size() != ParamCount) {
367 "foreach kernel '%0' has %1 usrData parameter%s1 for 32-bit targets "
369 << Name << unsigned(foreach.mParams.Size()) << unsigned(ParamCount);
376 foreach.mIns.BeginUsing();
377 foreach.mParams.BeginUsing();
408 "%ordinal0 input of foreach kernel '%1' "
418 "%ordinal0 input of foreach kernel '%1' "
449 foreach kernel '%1' "
490 "foreach kernel '%0' has different special parameters "
525 // 32-bit and 64-bit compiles need to see foreach kernels in the
527 // first name mismatch in the sequence of foreach kernels, it
529 // foreach kernels except those that still happen to match by name
537 "foreach kernel '%0' is only present for 64-bit targets")
541 "%ordinal0 foreach kernel is '%1' for 32-bit targets "
561 if (fe.mState == File::ForEach::S_Collected) {
562 mRSC->ReportError("in file '%0' foreach kernel '%1' is only present for 32-bit targets")