Lines Matching defs:Load
354 // This load is safe if any prefix of its operands is safe to load.
411 // unconditionally. This is only safe if we can prove that either the load
412 // would have happened in the callee anyway (ie, there is a load in the entry
417 // from introducing an invalid load that wouldn't have happened in the
421 // block, and thus are safe to unconditionally load in the caller.
431 // If the pointer is always valid, any load with first index 0 is valid.
447 // This load actually loads (part of) Arg? Check the indices then.
479 // Direct loads are equivalent to a GEP with a zero index and then a load.
501 // Ensure that the only users of the GEP are load instructions.
508 // Other uses than load?
512 return false; // Not a load or a GEP.
515 // Now, see if it is safe to promote this load / loads of this GEP. Loading
520 // See if we are already promoting a load with these indices. If not, check
538 // Okay, now we know that the argument is only used by load instructions and
541 // the function to each of the load instructions.
543 // Because there could be several/many load instructions, remember which
544 // blocks we know to be transparent to the load.
550 // Check to see if the load is invalidated from the start of the block to
551 // the load itself.
552 LoadInst *Load = Loads[i];
553 BasicBlock *BB = Load->getParent();
555 AliasAnalysis::Location Loc = AA.getLocation(Load);
556 if (AA.canInstructionRangeModRef(BB->front(), *Load, Loc,
560 // Now check every path from the entry block to the load for transparency.
570 // If the path from the entry of the function to each load is free of
571 // instructions that potentially invalidate the load, we can make the
595 // handle cases where there are both a direct load and GEP accesses.
599 // OriginalLoads - Keep track of a representative load instruction from the
601 // what the new GEP/Load instructions we are inserting look like.
669 // Take any load, we will use it only to update Alias Analysis
768 // Emit a GEP and load for each element of the struct.
811 // Since we're replacing a load make sure we take the alignment
812 // of the previous load.
939 // Otherwise, if we promoted this argument, then all users are load
940 // instructions (or GEPs with only load users), and all loads should be
947 "Load element should sort to front!");
952 DEBUG(dbgs() << "*** Promoted load of argument '" << I->getName()
982 // All of the uses must be load instructions. Replace them all with