Lines Matching refs:use
31 bool HUint32AnalysisPhase::IsSafeUint32Use(HValue* val, HValue* use) { in IsSafeUint32Use() argument
33 if (use->IsBitwise() || use->IsShl() || use->IsSar() || use->IsShr()) { in IsSafeUint32Use()
35 } else if (use->IsSimulate() || use->IsArgumentsObject()) { in IsSafeUint32Use()
38 } else if (use->IsChange()) { in IsSafeUint32Use()
43 DCHECK(HChange::cast(use)->to().IsDouble() || in IsSafeUint32Use()
44 HChange::cast(use)->to().IsSmi() || in IsSafeUint32Use()
45 HChange::cast(use)->to().IsTagged()); in IsSafeUint32Use()
47 } else if (use->IsStoreKeyed()) { in IsSafeUint32Use()
48 HStoreKeyed* store = HStoreKeyed::cast(use); in IsSafeUint32Use()
60 } else if (use->IsCompareNumericAndBranch()) { in IsSafeUint32Use()
61 HCompareNumericAndBranch* c = HCompareNumericAndBranch::cast(use); in IsSafeUint32Use()
79 HValue* use = it.value(); in Uint32UsesAreSafe() local
81 if (use->IsPhi()) { in Uint32UsesAreSafe()
82 if (!use->CheckFlag(HInstruction::kUint32)) { in Uint32UsesAreSafe()
92 if (!IsSafeUint32Use(uint32val, use)) { in Uint32UsesAreSafe()
99 HValue* use = it.value(); in Uint32UsesAreSafe() local
103 if (use->IsPhi() && !use->CheckFlag(HInstruction::kUint32)) { in Uint32UsesAreSafe()
104 use->SetFlag(HInstruction::kUint32); in Uint32UsesAreSafe()
105 phis_.Add(HPhi::cast(use), zone()); in Uint32UsesAreSafe()