Lines Matching full:live
86 enum Liveness { Live, MaybeLive };
99 /// arguments it uses. This allows the MaybeLive values to be marked live
100 /// when any of its users is marked live.
117 /// This set contains all values that have been determined to be live.
354 /// live, it adds Use to the MaybeLiveUses argument. Returns the determined
357 // We're live if our use or its Function is already marked as live.
359 return Live;
361 // We're maybe live otherwise, but remember that we must become live if
362 // Use becomes live.
379 // The value is returned from a function. It's only live when the
380 // function's return value is live. We use RetValNum here, for the case
384 // We might be live, depending on the liveness of Use.
402 if (Result == Live)
420 // The value is passed in through a vararg! Must be live.
421 return Live;
427 // Value passed to a normal call. It's only live when the corresponding
428 // argument to the called function turns out live.
433 // Used in any other way? Value must be live.
434 return Live;
441 /// the result is Live, MaybeLiveUses might be modified but its content should
450 if (Result == Live)
491 // Keep track of the number of live retvals, so we can skip checks once all
492 // of them turn out to be live.
516 // bother checking return values if all of them are live already.
527 if (RetValLiveness[Idx] != Live) {
529 if (RetValLiveness[Idx] == Live)
534 // values as live.
536 RetValLiveness[i] = Live;
544 if (RetValLiveness[0] == Live)
573 /// such that RA will be marked live if any use in MaybeLiveUses gets marked
574 /// live later on.
578 case Live: MarkLive(RA); break;
582 // marked live whenever one of the uses becomes live.
594 /// values (according to Uses) live as well.
596 DEBUG(dbgs() << "DAE - Intrinsically live fn: " << F.getName() << "\n");
597 // Mark the function as live.
599 // Mark all arguments as live.
602 // Mark all return values as live.
607 /// MarkLive - Mark the given return value or argument as live. Additionally,
608 /// mark any values that are used by this value (according to Uses) live as
612 return; // Function was already marked Live.
615 return; // We were already marked Live.
617 DEBUG(dbgs() << "DAE - Marking " << RA.getDescription() << " live\n");
621 /// PropagateLiveness - Given that RA is a live value, propagate it's liveness
643 // Don't modify fully live functions
903 // If this is a live argument, move the name and users over to the new
977 // Second phase:loop through the module, determining which arguments are live.