Lines Matching refs:gvn_
213 memory_version = Versions::StartMemoryVersion(gvn_, this, key); in UpdateAliasingValuesLoadVersion()
216 uint16_t ref_set_id = gvn_->GetRefSetId(values->store_loc_set); in UpdateAliasingValuesLoadVersion()
217 memory_version = Versions::BumpMemoryVersion(gvn_, memory_version, ref_set_id, in UpdateAliasingValuesLoadVersion()
264 res = Versions::LookupGlobalValue(gvn_, key, location, values->last_load_memory_version); in HandleAliasingValuesGet()
320 : gvn_(gvn), in LocalValueNumbering()
344 DCHECK(gvn_ == other.gvn_); in Equals()
409 *new_version = gvn_->LookupValue(kMergeBlockMemoryVersionBumpOp, 0u, 0u, id_); in NewMemoryVersion()
415 DCHECK_GE(gvn_->merge_lvns_.size(), 2u); in MergeMemoryVersions()
416 const LocalValueNumbering* cmp = gvn_->merge_lvns_[0]; in MergeMemoryVersions()
420 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeMemoryVersions()
437 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeMemoryVersions()
454 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in PruneNonAliasingRefsForCatch()
455 const BasicBlock* bb = gvn_->GetBasicBlock(lvn->Id()); in PruneNonAliasingRefsForCatch()
463 const BasicBlock* fall_through_bb = gvn_->GetBasicBlock(bb->fall_through); in PruneNonAliasingRefsForCatch()
479 DCHECK_GE(gvn_->merge_lvns_.size(), 2u); in IntersectSets()
482 const LocalValueNumbering* least_entries_lvn = gvn_->merge_lvns_[0]; in IntersectSets()
483 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in IntersectSets()
492 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in IntersectSets()
506 ArenaBitVector* live_in_v = gvn_->GetMirGraph()->GetBasicBlock(id_)->data_flow_info->live_in_v; in CopyLiveSregValues()
509 bool live = live_in_v->IsBitSet(gvn_->GetMirGraph()->SRegToVReg(entry.first)); in CopyLiveSregValues()
518 DCHECK_GE(gvn_->merge_lvns_.size(), 2u); in IntersectSregValueMaps()
521 const LocalValueNumbering* least_entries_lvn = gvn_->merge_lvns_[0]; in IntersectSregValueMaps()
522 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in IntersectSregValueMaps()
529 ArenaBitVector* live_in_v = gvn_->GetMirGraph()->GetBasicBlock(id_)->data_flow_info->live_in_v; in IntersectSregValueMaps()
532 bool live_and_same = live_in_v->IsBitSet(gvn_->GetMirGraph()->SRegToVReg(entry.first)); in IntersectSregValueMaps()
534 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in IntersectSregValueMaps()
572 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeSets()
622 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeEscapedRefs()
663 merge_names_.resize(gvn_->merge_lvns_.size(), entry); in MergeNullChecked()
664 if (gvn_->NullCheckedInAllPredecessors(merge_names_)) { in MergeNullChecked()
675 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeSFieldValues()
681 uint16_t type = gvn_->GetFieldType(field_id); in MergeSFieldValues()
682 value_name = gvn_->LookupValue(kResolvedSFieldOp, field_id, in MergeSFieldValues()
697 value_name = gvn_->LookupValue(kMergeBlockSFieldVersionBumpOp, field_id, id_, kNoValue); in MergeSFieldValues()
699 if (gvn_->NullCheckedInAllPredecessors(merge_names_)) { in MergeSFieldValues()
713 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeNonAliasingIFieldValues()
719 value_name = gvn_->LookupValue(kNonAliasingIFieldInitialOp, field_loc, kNoValue, kNoValue); in MergeNonAliasingIFieldValues()
732 value_name = gvn_->LookupValue(kMergeBlockNonAliasingIFieldVersionBumpOp, field_loc, in MergeNonAliasingIFieldValues()
735 if (gvn_->NullCheckedInAllPredecessors(merge_names_)) { in MergeNonAliasingIFieldValues()
752 bool same_version = !Versions::HasNewBaseVersion(gvn_, this, key); in MergeAliasingValues()
756 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeAliasingValues()
768 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeAliasingValues()
797 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeAliasingValues()
812 Versions::LookupMergeBlockValue(gvn_, id_, key); in MergeAliasingValues()
816 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeAliasingValues()
839 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in MergeAliasingValues()
840 value_name = Versions::LookupMergeValue(gvn_, lvn, key, location); in MergeAliasingValues()
857 value_name = Versions::LookupMergeLocationValue(gvn_, id_, key, location); in MergeAliasingValues()
859 if (gvn_->NullCheckedInAllPredecessors(merge_names_)) { in MergeAliasingValues()
870 DCHECK_GE(gvn_->merge_lvns_.size(), 2u); in Merge()
978 if (LIKELY(gvn_->CanModify())) { in HandleNullCheck()
979 if (gvn_->GetCompilationUnit()->verbose) { in HandleNullCheck()
993 if (LIKELY(gvn_->CanModify())) { in HandleRangeCheck()
994 if (gvn_->GetCompilationUnit()->verbose) { in HandleRangeCheck()
1020 if (gvn_->merge_lvns_.empty()) { in HandlePhi()
1045 for (const LocalValueNumbering* lvn : gvn_->merge_lvns_) { in HandlePhi()
1065 value_name = gvn_->LookupValue(kNoValue, mir->ssa_rep->defs[0], kNoValue, kNoValue); in HandlePhi()
1067 if (!wide && gvn_->NullCheckedInAllPredecessors(merge_names_)) { in HandlePhi()
1093 uint16_t location = gvn_->GetArrayLocation(array, index); in HandleAGet()
1126 uint16_t location = gvn_->GetArrayLocation(array, index); in HandleAPut()
1146 const MirFieldInfo& field_info = gvn_->GetMirGraph()->GetIFieldLoweringInfo(mir); in HandleIGet()
1152 res = gvn_->LookupValue(kNoValue, mir->ssa_rep->defs[0], kNoValue, kNoValue); in HandleIGet()
1155 uint16_t field_id = gvn_->GetFieldId(field_info, type); in HandleIGet()
1157 uint16_t loc = gvn_->LookupValue(kNonAliasingIFieldLocOp, base, field_id, type); in HandleIGet()
1162 res = gvn_->LookupValue(kNonAliasingIFieldInitialOp, loc, kNoValue, kNoValue); in HandleIGet()
1183 const MirFieldInfo& field_info = gvn_->GetMirGraph()->GetIFieldLoweringInfo(mir); in HandleIPut()
1188 gvn_->LookupValue(kUnresolvedIFieldOp, kNoValue, kNoValue, mir->offset); in HandleIPut()
1202 if (gvn_->GetFieldType(it->first) != type) { in HandleIPut()
1212 uint16_t field_id = gvn_->GetFieldId(field_info, type); in HandleIPut()
1217 uint16_t loc = gvn_->LookupValue(kNonAliasingIFieldLocOp, base, field_id, type); in HandleIPut()
1248 const MirSFieldLoweringInfo& field_info = gvn_->GetMirGraph()->GetSFieldLoweringInfo(mir); in HandleSGet()
1258 res = gvn_->LookupValue(kNoValue, mir->ssa_rep->defs[0], kNoValue, kNoValue); in HandleSGet()
1261 uint16_t field_id = gvn_->GetFieldId(field_info, type); in HandleSGet()
1269 res = gvn_->LookupValue(kResolvedSFieldOp, field_id, in HandleSGet()
1283 const MirSFieldLoweringInfo& field_info = gvn_->GetMirGraph()->GetSFieldLoweringInfo(mir); in HandleSPut()
1293 gvn_->LookupValue(kUnresolvedSFieldOp, kNoValue, kNoValue, mir->offset); in HandleSPut()
1299 uint16_t field_id = gvn_->GetFieldId(field_info, type); in HandleSPut()
1323 if (gvn_->GetFieldType(it->first) == type) { in RemoveSFieldsForType()
1334 gvn_->LookupValue(kInvokeMemoryVersionBumpOp, 0u, 0u, mir->offset); in HandleInvokeOrClInit()
1392 if ((gvn_->GetCompilationUnit()->disable_opt & (1u << kGlobalValueNumbering)) == 0u && in GetValueNumber()
1393 gvn_->CanModify() && (mir->optimization_flags & MIR_IGNORE_NULL_CHECK) == 0) { in GetValueNumber()
1395 << mir->offset << " in " << PrettyMethod(gvn_->cu_->method_idx, *gvn_->cu_->dex_file); in GetValueNumber()
1411 uint16_t index = gvn_->LookupValue(Instruction::CONST, i, 0u, 0); in GetValueNumber()
1470 res = gvn_->LookupValue(Instruction::CONST_STRING, Low16Bits(mir->dalvikInsn.vB), in GetValueNumber()
1513 res = gvn_->LookupValue(Instruction::CONST, Low16Bits(mir->dalvikInsn.vB), in GetValueNumber()
1519 res = gvn_->LookupValue(Instruction::CONST, 0, mir->dalvikInsn.vB, 0); in GetValueNumber()
1525 uint16_t low_res = gvn_->LookupValue(Instruction::CONST, Low16Bits(mir->dalvikInsn.vB), in GetValueNumber()
1529 high_res = gvn_->LookupValue(Instruction::CONST, 0xffff, 0xffff, 2); in GetValueNumber()
1531 high_res = gvn_->LookupValue(Instruction::CONST, 0, 0, 2); in GetValueNumber()
1533 res = gvn_->LookupValue(Instruction::CONST, low_res, high_res, 3); in GetValueNumber()
1541 uint16_t low_res = gvn_->LookupValue(Instruction::CONST, Low16Bits(low_word), in GetValueNumber()
1543 uint16_t high_res = gvn_->LookupValue(Instruction::CONST, Low16Bits(high_word), in GetValueNumber()
1545 res = gvn_->LookupValue(Instruction::CONST, low_res, high_res, 3); in GetValueNumber()
1551 uint16_t low_res = gvn_->LookupValue(Instruction::CONST, 0, 0, 1); in GetValueNumber()
1552 uint16_t high_res = gvn_->LookupValue(Instruction::CONST, 0, in GetValueNumber()
1554 res = gvn_->LookupValue(Instruction::CONST, low_res, high_res, 3); in GetValueNumber()
1575 res = gvn_->LookupValue(opcode, operand1, kNoValue, kNoValue); in GetValueNumber()
1586 res = gvn_->LookupValue(opcode, operand1, kNoValue, kNoValue); in GetValueNumber()
1599 res = gvn_->LookupValue(opcode, operand1, kNoValue, kNoValue); in GetValueNumber()
1610 res = gvn_->LookupValue(opcode, operand1, kNoValue, kNoValue); in GetValueNumber()
1621 res = gvn_->LookupValue(opcode, operand1, operand2, kNoValue); in GetValueNumber()
1653 res = gvn_->LookupValue(opcode, operand1, operand2, kNoValue); in GetValueNumber()
1687 res = gvn_->LookupValue(opcode, operand1, operand2, kNoValue); in GetValueNumber()
1701 res = gvn_->LookupValue(opcode, operand1, operand2, kNoValue); in GetValueNumber()
1719 res = gvn_->LookupValue(opcode, operand1, operand2, kNoValue); in GetValueNumber()
1745 uint16_t operand2 = gvn_->LookupValue(Instruction::CONST, mir->dalvikInsn.vC, 0, 0); in GetValueNumber()
1746 res = gvn_->LookupValue(opcode, operand1, operand2, kNoValue); in GetValueNumber()