Lines Matching defs:PHIs

37 /// any un-necessary PHIs. This gives us a map of each variable to the value
2451 // whether we can eliminate redundant PHIs.
2533 // units for registers, place PHIs for them, and then replicate them for
2535 // arguments) don't lead to register units being tracked, just place PHIs for
2555 // isn't actually def'd anywhere, we only read from it. Generate PHIs
2572 // Lambda to fetch PHIs for a given location, and write into the PHIBlocks
2591 // Ask the SSA construction algorithm where we should put PHIs. Clear
2602 // For locations with no reg units, just place PHIs.
2609 // For stack slots, calculate PHIs for the equivalent of the units, then
2618 // Find anything that aliases this stack index, install PHIs for it too.
2634 // For reg units, place PHIs, and then place them for any aliasing registers.
2642 // Now find aliases and install PHIs for those.
2676 // Initialize entry block to PHIs. These represent arguments.
2683 // Start by placing PHIs, using the usual SSA constructor algorithm. Consider
2688 // Propagate values to eliminate redundant PHIs. At the same time, this
2691 // The kind of PHIs we can eliminate are, for example, where one path in a
2694 // code. Propagating values allows us to identify such un-necessary PHIs and
2780 // redundant PHIs.
2788 // required PHIs into PHIBlocks. Uses the dominator tree stored in the
2802 // No predecessors means no PHIs.
3201 // Loop over each variable and place PHIs for it, then propagate values
3214 // Place PHIs for variable values, using the LLVM IDF calculator.
3225 // Request the set of PHIs we should insert for this variable. If there's
3233 // Otherwise: we need to place PHIs through SSA and propagate values.
3236 // Insert PHIs into the per-block live-in tables for this variable.
3383 // * Place PHIs,
3741 // either live-through machine values, or PHIs.
3910 /// List of PHIs in this block. There should only ever be one.
3930 /// SSAUpdater wishes to know what PHIs already exist in this block.
3934 /// Utility class for the SSAUpdater interface: tracks blocks, PHIs and values
3940 DenseMap<BlockValueNum, LDVSSAPhi *> PHIs;
3958 PHIs.clear();
4074 Updater->PHIs[PHIValNum] = PHI;
4087 return Updater->PHIs.lookup(Val);
4148 // Pick out the location (physreg, slot) where any PHIs must occur. It's
4158 // determine which Def is used at the Use, and any PHIs that happen along
4164 // Set of PHIs that we have created along the way.
4184 // that we are to use, and the PHIs that must happen along the way.
4193 // * Are the Defs or PHIs clobbered in a block? SSAUpdater isn't aware that
4198 // (SSAUpdater doesn't know that either). Remap validated PHIs into the
4209 // Sort PHIs to validate into RPO-order.
4251 // All the PHIs are valid: we can return what the SSAUpdater said our value