Lines Matching refs:use
32 bool HUint32AnalysisPhase::IsSafeUint32Use(HValue* val, HValue* use) { in IsSafeUint32Use() argument
34 if (use->IsBitwise() || use->IsShl() || use->IsSar() || use->IsShr()) { in IsSafeUint32Use()
36 } else if (use->IsSimulate() || use->IsArgumentsObject()) { in IsSafeUint32Use()
39 } else if (use->IsChange()) { in IsSafeUint32Use()
44 DCHECK(HChange::cast(use)->to().IsDouble() || in IsSafeUint32Use()
45 HChange::cast(use)->to().IsSmi() || in IsSafeUint32Use()
46 HChange::cast(use)->to().IsTagged()); in IsSafeUint32Use()
48 } else if (use->IsStoreKeyed()) { in IsSafeUint32Use()
49 HStoreKeyed* store = HStoreKeyed::cast(use); in IsSafeUint32Use()
61 } else if (use->IsCompareNumericAndBranch()) { in IsSafeUint32Use()
62 HCompareNumericAndBranch* c = HCompareNumericAndBranch::cast(use); in IsSafeUint32Use()
80 HValue* use = it.value(); in Uint32UsesAreSafe() local
82 if (use->IsPhi()) { in Uint32UsesAreSafe()
83 if (!use->CheckFlag(HInstruction::kUint32)) { in Uint32UsesAreSafe()
93 if (!IsSafeUint32Use(uint32val, use)) { in Uint32UsesAreSafe()
100 HValue* use = it.value(); in Uint32UsesAreSafe() local
104 if (use->IsPhi() && !use->CheckFlag(HInstruction::kUint32)) { in Uint32UsesAreSafe()
105 use->SetFlag(HInstruction::kUint32); in Uint32UsesAreSafe()
106 phis_.Add(HPhi::cast(use), zone()); in Uint32UsesAreSafe()