Lines Matching defs:liveMap
282 static bool isUseSpeciallyKnownDead(OpOperand &use, LiveMap &liveMap) {
299 return !liveMap.wasProvenLive(*arg);
305 static void processValue(Value value, LiveMap &liveMap) {
307 if (isUseSpeciallyKnownDead(use, liveMap))
309 return liveMap.wasProvenLive(use.getOwner());
312 liveMap.setProvedLive(value);
315 static void propagateLiveness(Region ®ion, LiveMap &liveMap);
317 static void propagateTerminatorLiveness(Operation *op, LiveMap &liveMap) {
319 liveMap.setProvedLive(op);
326 liveMap.setProvedLive(arg);
337 liveMap.setProvedLive(op->getSuccessor(i)->getArgument(opI));
341 static void propagateLiveness(Operation *op, LiveMap &liveMap) {
344 propagateLiveness(region, liveMap);
348 return propagateTerminatorLiveness(op, liveMap);
351 if (liveMap.wasProvenLive(op))
356 return liveMap.setProvedLive(op);
360 processValue(value, liveMap);
363 static void propagateLiveness(Region ®ion, LiveMap &liveMap) {
371 propagateLiveness(&op, liveMap);
381 if (!liveMap.wasProvenLive(value))
382 processValue(value, liveMap);
388 LiveMap &liveMap) {
407 if (!liveMap.wasProvenLive(successor->getArgument(arg)))
415 LiveMap &liveMap) {
429 eraseTerminatorSuccessorOperands(block->getTerminator(), liveMap);
432 if (!liveMap.wasProvenLive(&childOp)) {
438 deleteDeadness(rewriter, childOp.getRegions(), liveMap));
447 [&](BlockArgument arg) { return !liveMap.wasProvenLive(arg); });
472 LiveMap liveMap;
474 liveMap.resetChanged();
477 propagateLiveness(region, liveMap);
478 } while (liveMap.hasChanged());
480 return deleteDeadness(rewriter, regions, liveMap);