Home
last modified time | relevance | path

Searched refs:interval (Results 1 – 22 of 22) sorted by relevance

/art/compiler/optimizing/
Dlive_interval_test.cc31 LiveInterval* interval = BuildInterval(ranges, arraysize(ranges), allocator); in TEST() local
32 ASSERT_EQ(0u, interval->GetStart()); in TEST()
37 LiveInterval* interval = BuildInterval(ranges, arraysize(ranges), allocator); in TEST() local
38 ASSERT_EQ(4u, interval->GetStart()); in TEST()
48 LiveInterval* interval = BuildInterval(ranges, arraysize(ranges), allocator); in TEST() local
49 ASSERT_TRUE(interval->IsDeadAt(42)); in TEST()
50 ASSERT_TRUE(interval->IsDeadAt(43)); in TEST()
51 ASSERT_FALSE(interval->IsDeadAt(41)); in TEST()
52 ASSERT_FALSE(interval->IsDeadAt(0)); in TEST()
53 ASSERT_FALSE(interval->IsDeadAt(22)); in TEST()
[all …]
Dregister_allocator.cc73 explicit AllRangesIterator(LiveInterval* interval) in AllRangesIterator() argument
74 : current_interval_(interval), in AllRangesIterator()
75 current_range_(interval->GetFirstRange()) {} in AllRangesIterator()
177 for (LiveInterval* interval : intervals) { in ValidateIntervals()
178 if (interval->HasRegister() in ValidateIntervals()
179 && interval->GetRegister() == current->GetRegister() in ValidateIntervals()
180 && interval->CoversSlow(j)) { in ValidateIntervals()
182 if (interval->GetDefinedBy() != nullptr) { in ValidateIntervals()
183 message << interval->GetDefinedBy()->GetKind() << " "; in ValidateIntervals()
187 interval->Dump(message); in ValidateIntervals()
[all …]
Dlive_ranges_test.cc71 LiveInterval* interval = liveness.GetInstructionFromSsaIndex(0)->GetLiveInterval(); in TEST_F() local
72 LiveRange* range = interval->GetFirstRange(); in TEST_F()
115 LiveInterval* interval = liveness.GetInstructionFromSsaIndex(0)->GetLiveInterval(); in TEST_F() local
116 LiveRange* range = interval->GetFirstRange(); in TEST_F()
163 LiveInterval* interval = liveness.GetInstructionFromSsaIndex(1)->GetLiveInterval(); in TEST_F() local
164 LiveRange* range = interval->GetFirstRange(); in TEST_F()
172 interval = liveness.GetInstructionFromSsaIndex(0)->GetLiveInterval(); in TEST_F()
175 range = interval->GetFirstRange(); in TEST_F()
187 interval = liveness.GetInstructionFromSsaIndex(2)->GetLiveInterval(); in TEST_F()
188 range = interval->GetFirstRange(); in TEST_F()
[all …]
Dregister_allocator_linear_scan.cc86 static bool ShouldProcess(bool processing_core_registers, LiveInterval* interval) { in ShouldProcess() argument
87 if (interval == nullptr) return false; in ShouldProcess()
88 bool is_core_register = (interval->GetType() != DataType::Type::kFloat64) in ShouldProcess()
89 && (interval->GetType() != DataType::Type::kFloat32); in ShouldProcess()
134 LiveInterval* interval = location.IsRegister() in BlockRegister() local
140 if (interval == nullptr) { in BlockRegister()
141 interval = LiveInterval::MakeFixedInterval(allocator_, reg, type); in BlockRegister()
143 physical_core_register_intervals_[reg] = interval; in BlockRegister()
145 physical_fp_register_intervals_[reg] = interval; in BlockRegister()
148 DCHECK(interval->GetRegister() == reg); in BlockRegister()
[all …]
Dregister_allocator_graph_color.cc163 static float ComputeSpillWeight(LiveInterval* interval, const SsaLivenessAnalysis& liveness) { in ComputeSpillWeight() argument
164 if (interval->HasRegister()) { in ComputeSpillWeight()
169 size_t length = interval->GetLength(); in ComputeSpillWeight()
176 if (interval->GetDefinedBy() != nullptr && interval->DefinitionRequiresRegister()) { in ComputeSpillWeight()
178 use_weight += CostForMoveAt(interval->GetStart() + 1, liveness); in ComputeSpillWeight()
183 auto matching_use_range = FindMatchingUseRange(interval->GetUses().begin(), in ComputeSpillWeight()
184 interval->GetUses().end(), in ComputeSpillWeight()
185 interval->GetStart() + 1u, in ComputeSpillWeight()
186 interval->GetEnd() + 1u); in ComputeSpillWeight()
220 InterferenceNode(LiveInterval* interval, in InterferenceNode() argument
[all …]
Dregister_allocator_linear_scan.h69 bool TryAllocateFreeReg(LiveInterval* interval);
70 bool AllocateBlockedReg(LiveInterval* interval);
73 static void AddSorted(ScopedArenaVector<LiveInterval*>* array, LiveInterval* interval);
84 void AllocateSpillSlotFor(LiveInterval* interval);
95 void DumpInterval(std::ostream& stream, LiveInterval* interval) const;
Dregister_allocation_resolver.cc160 LiveInterval* interval = liveness_.GetInstructionFromSsaIndex(idx)->GetLiveInterval(); in Resolve() local
161 LiveInterval* sibling = interval->GetSiblingAt(block->GetLifetimeStart()); in Resolve()
173 LiveInterval* interval = liveness_.GetInstructionFromSsaIndex(idx)->GetLiveInterval(); in Resolve() local
175 ConnectSplitSiblings(interval, predecessor, block); in Resolve()
298 void RegisterAllocationResolver::ConnectSiblings(LiveInterval* interval) { in ConnectSiblings() argument
299 LiveInterval* current = interval; in ConnectSiblings()
303 && !interval->GetDefinedBy()->IsCurrentMethod()) { in ConnectSiblings()
306 size_t num_of_slots = interval->NumberOfSpillSlotsNeeded(); in ConnectSiblings()
307 loc = Location::StackSlotByNumOfSlots(num_of_slots, interval->GetParent()->GetSpillSlot()); in ConnectSiblings()
312 InsertMoveAfter(interval->GetDefinedBy(), interval->ToLocation(), loc); in ConnectSiblings()
[all …]
Dregister_allocator.h81 static LiveInterval* Split(LiveInterval* interval, size_t position);
85 LiveInterval* SplitBetween(LiveInterval* interval, size_t from, size_t to);
Dregister_allocation_resolver.h61 void ConnectSiblings(LiveInterval* interval);
64 void ConnectSplitSiblings(LiveInterval* interval, HBasicBlock* from, HBasicBlock* to) const;
Doptimizing_unit_test.h64 LiveInterval* interval =
67 defined_by->SetLiveInterval(interval);
70 interval->AddRange(ranges[i - 1][0], ranges[i - 1][1]);
72 interval->SetRegister(reg);
73 return interval;
Dregister_allocator_test.cc371 LiveInterval* interval = first_xor->GetLiveInterval(); in TEST_F() local
372 ASSERT_EQ(interval->GetEnd(), last_xor->GetLifetimePosition()); in TEST_F()
373 ASSERT_TRUE(interval->GetNextSibling() == nullptr); in TEST_F()
376 ASSERT_EQ(interval->FirstRegisterUse(), first_xor->GetLifetimePosition()); in TEST_F()
379 interval = interval->SplitAt(first_xor->GetLifetimePosition() + 2); in TEST_F()
381 ASSERT_EQ(interval->FirstRegisterUse(), last_xor->GetLifetimePosition()); in TEST_F()
384 LiveInterval* new_interval = interval->SplitAt(last_xor->GetLifetimePosition() - 1); in TEST_F()
386 ASSERT_EQ(interval->FirstRegisterUse(), kNoLifetime); in TEST_F()
461 LiveInterval* interval = in TEST_F() local
463 interval->AddRange(40, 50); in TEST_F()
[all …]
Dregister_allocator_graph_color.h126 static LiveInterval* TrySplit(LiveInterval* interval, size_t position);
132 void SplitAtRegisterUses(LiveInterval* interval);
Dssa_liveness_analysis.h881 LiveInterval* interval = input->GetLiveInterval(); in IsUsingInputRegister() local
885 while (interval != nullptr && !interval->CoversSlow(defined_by_->GetLifetimePosition())) { in IsUsingInputRegister()
886 interval = interval->GetNextSibling(); in IsUsingInputRegister()
890 if (interval != nullptr in IsUsingInputRegister()
891 && interval->SameRegisterKind(*this) in IsUsingInputRegister()
892 && interval->GetRegister() == GetRegister()) { in IsUsingInputRegister()
912 LiveInterval* interval = input->GetLiveInterval(); in CanUseInputRegister() local
916 while (interval != nullptr && !interval->CoversSlow(defined_by_->GetLifetimePosition())) { in CanUseInputRegister()
917 interval = interval->GetNextSibling(); in CanUseInputRegister()
920 if (interval != nullptr in CanUseInputRegister()
[all …]
Dgraph_visualizer.cc637 LiveInterval* interval = instruction->GetLiveInterval(); in PrintInstruction() local
639 << StringList(interval->GetFirstRange(), StringList::kSetBrackets); in PrintInstruction()
640 StartAttributeStream("uses") << StringList(interval->GetUses()); in PrintInstruction()
641 StartAttributeStream("env_uses") << StringList(interval->GetEnvironmentUses()); in PrintInstruction()
642 StartAttributeStream("is_fixed") << interval->IsFixed(); in PrintInstruction()
643 StartAttributeStream("is_split") << interval->IsSplit(); in PrintInstruction()
644 StartAttributeStream("is_low") << interval->IsLowInterval(); in PrintInstruction()
645 StartAttributeStream("is_high") << interval->IsHighInterval(); in PrintInstruction()
Dssa_liveness_analysis.cc250 LiveInterval* interval = current->GetLiveInterval(); in ComputeLiveRanges() local
251 DCHECK((interval->GetFirstRange() == nullptr) in ComputeLiveRanges()
252 || (interval->GetStart() == current->GetLifetimePosition())); in ComputeLiveRanges()
253 interval->SetFrom(current->GetLifetimePosition()); in ComputeLiveRanges()
Dnodes.h2447 void SetLiveInterval(LiveInterval* interval) { live_interval_ = interval; } in SetLiveInterval() argument
/art/runtime/gc/collector/
Dimmune_spaces.cc71 for (const Interval& interval : intervals) { in CreateLargestImmuneRegion() local
72 const uintptr_t begin = std::get<0>(interval); in CreateLargestImmuneRegion()
73 const uintptr_t end = std::get<1>(interval); in CreateLargestImmuneRegion()
74 const bool is_heap = std::get<2>(interval); in CreateLargestImmuneRegion()
/art/libartbase/base/
Dhistogram-inl.h193 inline void Histogram<Value>::PrintConfidenceIntervals(std::ostream &os, double interval, in PrintConfidenceIntervals() argument
196 DCHECK_GT(interval, 0); in PrintConfidenceIntervals()
197 DCHECK_LT(interval, 1.0); in PrintConfidenceIntervals()
198 const double per_0 = (1.0 - interval) / 2.0; in PrintConfidenceIntervals()
199 const double per_1 = per_0 + interval; in PrintConfidenceIntervals()
202 << (interval * 100) << "% C.I. " << FormatDuration(Percentile(per_0, data) * kAdjust, unit, in PrintConfidenceIntervals()
Dhistogram.h63 void PrintConfidenceIntervals(std::ostream& os, double interval,
/art/test/565-checker-irreducible-loop/smali/
DIrreducibleLoop.smali53 # a live interval is found while connecting siblings, but that
54 # live interval is inactive at the desired position.
92 # will create an interval hole.
/art/test/099-vmdebug/
Dexpected.txt18 Test sampling with bogus (<= 0) interval
/art/runtime/gc/
Dheap.h839 void SetMinIntervalHomogeneousSpaceCompactionByOom(uint64_t interval) { in SetMinIntervalHomogeneousSpaceCompactionByOom() argument
840 min_interval_homogeneous_space_compaction_by_oom_ = interval; in SetMinIntervalHomogeneousSpaceCompactionByOom()