Lines Matching defs:numBlockDims
137 unsigned numBlockDims,
139 if (numBlockDims < 1 || numThreadDims < 1) {
144 if (numBlockDims > 3) {
150 return checkAffineLoopNestMappableImpl(forOp, numBlockDims + numThreadDims);
161 unsigned numBlockDims, unsigned numThreadDims);
214 // and to have (numBlockDims + numThreadDims) perfectly nested loops between
218 unsigned numBlockDims,
224 (numBlockDims < 3 || numThreadDims < 3)
227 Value gridSizeX = numBlockDims > 0 ? dims[0] : constOne;
228 Value gridSizeY = numBlockDims > 1 ? dims[1] : constOne;
229 Value gridSizeZ = numBlockDims > 2 ? dims[2] : constOne;
230 Value blockSizeX = numThreadDims > 0 ? dims[numBlockDims] : constOne;
231 Value blockSizeY = numThreadDims > 1 ? dims[numBlockDims + 1] : constOne;
232 Value blockSizeZ = numThreadDims > 2 ? dims[numBlockDims + 2] : constOne;
262 en.index() < numBlockDims
264 : getDim3Value(launchOp.getThreadIds(), en.index() - numBlockDims);
282 unsigned numBlockDims,
284 if (failed(checkAffineLoopNestMappable(forOp, numBlockDims, numThreadDims)))
289 converter.collectBounds(forOp, numBlockDims + numThreadDims);
292 converter.createLaunch(forOp, *maybeInnerLoop, numBlockDims, numThreadDims);
298 unsigned numBlockDims,
300 return ::convertAffineLoopNestToGPULaunch(forOp, numBlockDims, numThreadDims);