Lines Matching refs:UseVal
733 ForwardingAction forwardTreeImpl(ScopStmt *TargetStmt, Value *UseVal, in forwardTreeImpl() argument
741 VirtualUse VUse = VirtualUse::create(UseStmt, UseLoop, UseVal, true); in forwardTreeImpl()
747 return ForwardingAction::triviallyForwardable(false, UseVal); in forwardTreeImpl()
761 S, TargetStmt, TargetStmt->getSurroundingLoop(), UseVal, true); in forwardTreeImpl()
763 return ForwardingAction::triviallyForwardable(false, UseVal); in forwardTreeImpl()
767 << *UseVal << "\n"); in forwardTreeImpl()
773 return ForwardingAction::triviallyForwardable(false, UseVal); in forwardTreeImpl()
776 auto ExecAction = [this, TargetStmt, UseVal]() { in forwardTreeImpl()
777 TargetStmt->ensureValueRead(UseVal); in forwardTreeImpl()
779 LLVM_DEBUG(dbgs() << " forwarded read-only value " << *UseVal in forwardTreeImpl()
803 Instruction *Inst = cast<Instruction>(UseVal); in forwardTreeImpl()
851 ForwardingDecision forwardTree(ScopStmt *TargetStmt, Value *UseVal, in forwardTree() argument
854 auto It = ForwardingActions.find({UseVal, UseStmt}); in forwardTree()
860 forwardTreeImpl(TargetStmt, UseVal, UseStmt, UseLoop); in forwardTree()
864 assert(!ForwardingActions.count({UseVal, UseStmt}) && in forwardTree()
866 ForwardingActions.insert({{UseVal, UseStmt}, std::move(Action)}); in forwardTree()
877 void applyForwardingActions(ScopStmt *Stmt, Value *UseVal, MemoryAccess *RA) { in applyForwardingActions() argument
887 assert(ForwardingActions.count({UseVal, Stmt})); in applyForwardingActions()
888 ForwardingAction *RootAction = &ForwardingActions[{UseVal, Stmt}]; in applyForwardingActions()