Lines Matching defs:use
2 // Use of this source code is governed by a BSD-style license that can be
35 bool HUint32AnalysisPhase::IsSafeUint32Use(HValue* val, HValue* use) {
37 if (use->IsBitwise() || use->IsShl() || use->IsSar() || use->IsShr()) {
39 } else if (use->IsSimulate()) {
42 } else if (use->IsChange()) {
47 DCHECK(HChange::cast(use)->to().IsDouble() ||
48 HChange::cast(use)->to().IsSmi() ||
49 HChange::cast(use)->to().IsTagged());
51 } else if (use->IsStoreKeyed()) {
52 HStoreKeyed* store = HStoreKeyed::cast(use);
64 } else if (use->IsCompareNumericAndBranch()) {
65 HCompareNumericAndBranch* c = HCompareNumericAndBranch::cast(use);
83 HValue* use = it.value();
85 if (use->IsPhi()) {
86 if (!use->CheckFlag(HInstruction::kUint32)) {
87 // There is a phi use of this value from a phi that is not yet
96 if (!IsSafeUint32Use(uint32val, use)) {
103 HValue* use = it.value();
105 // There is a phi use of this value from a phi that is not yet
107 if (use->IsPhi() && !use->CheckFlag(HInstruction::kUint32)) {
108 use->SetFlag(HInstruction::kUint32);
109 phis_.Add(HPhi::cast(use), zone());