Lines Matching refs:Variable
12 /// primarily for the methods of the Variable class.
185 // indicates whether the Variable being tested is used in the Dest position (as
201 const Variable *Variable::asType(const Cfg *Func, Type Ty,
203 // Note: This returns a Variable, even if the "this" object is a subclass of
204 // Variable.
208 auto *V = new (CfgLocalAllocator<Variable>().allocate(One))
209 Variable(Func, kVariable, Ty, Number);
217 RegWeight Variable::getWeight(const Cfg *Func) const {
247 // uses a Variable.
252 // A phi source variable conservatively needs to be marked as multi-block,
255 // variable is live throughout those nodes.
285 // omit all uses of the variable if markDef() and markUse() both use this
380 for (Variable *Var : Func->getImplicitArgs()) {
398 if (Variable *Dest = I.getDest()) {
404 if (auto *Var = llvm::dyn_cast<Variable>(I.getSrc(SrcNum))) {
418 if (Variable *Dest = I.getDest()) {
432 bool VariablesMetadata::isMultiDef(const Variable *Var) const {
443 bool VariablesMetadata::isMultiBlock(const Variable *Var) const {
464 bool VariablesMetadata::isSingleBlock(const Variable *Var) const {
485 VariablesMetadata::getFirstDefinitionSingleBlock(const Variable *Var) const {
493 const Inst *VariablesMetadata::getSingleDefinition(const Variable *Var) const {
501 const Inst *VariablesMetadata::getFirstDefinition(const Variable *Var) const {
510 VariablesMetadata::getLatterDefinitions(const Variable *Var) const {
527 CfgNode *VariablesMetadata::getLocalUseNode(const Variable *Var) const {
534 RegWeight VariablesMetadata::getUseWeight(const Variable *Var) const {
545 void Variable::emit(const Cfg *Func) const {
550 void Variable::dump(const Cfg *Func, Ostream &Str) const {
560 for (Variable *Link = getLinkedTo(); Link != nullptr;