Home
last modified time | relevance | path

Searched refs:CardTable (Results 1 – 21 of 21) sorted by relevance

/art/runtime/gc/accounting/
Dcard_table_test.cc41 std::unique_ptr<CardTable> card_table_;
45 card_table_.reset(CardTable::Create(heap_begin_, heap_size_)); in CommonSetup()
65 size_t offset = RoundDown(addr - heap_begin_, CardTable::kCardSize); in PseudoRandomCard()
69 for (const uint8_t* addr = HeapBegin(); addr != HeapLimit(); addr += CardTable::kCardSize) { in FillRandom()
85 EXPECT_EQ(card_table_->GetCard(obj), CardTable::kCardClean); in TEST_F()
89 EXPECT_EQ(card_table_->GetCard(obj), CardTable::kCardDirty); in TEST_F()
91 EXPECT_EQ(*card_addr, CardTable::kCardDirty); in TEST_F()
92 *card_addr = CardTable::kCardClean; in TEST_F()
93 EXPECT_EQ(*card_addr, CardTable::kCardClean); in TEST_F()
110 8U * CardTable::kCardSize); in TEST_F()
[all …]
Dcard_table.cc33 constexpr size_t CardTable::kCardShift;
34 constexpr size_t CardTable::kCardSize;
35 constexpr uint8_t CardTable::kCardClean;
36 constexpr uint8_t CardTable::kCardDirty;
60 CardTable* CardTable::Create(const uint8_t* heap_begin, size_t heap_capacity) { in Create()
89 return new CardTable(mem_map.release(), biased_begin, offset); in Create()
92 CardTable::CardTable(MemMap* mem_map, uint8_t* biased_begin, size_t offset) in CardTable() function in art::gc::accounting::CardTable
96 CardTable::~CardTable() { in ~CardTable()
100 void CardTable::ClearSpaceCards(space::ContinuousSpace* space) { in ClearSpaceCards()
107 void CardTable::ClearCardTable() { in ClearCardTable()
[all …]
Dmod_union_table.cc44 if (expected_value == CardTable::kCardDirty) { in operator ()()
55 ModUnionAddToCardBitmapVisitor(ModUnionTable::CardBitmap* bitmap, CardTable* card_table) in ModUnionAddToCardBitmapVisitor()
61 if (expected_value == CardTable::kCardDirty) { in operator ()()
69 CardTable* const card_table_;
79 if (expected_card == CardTable::kCardDirty) { in operator ()()
172 CardTable* card_table = GetHeap()->GetCardTable(); in ClearCards()
330 CardTable* card_table = heap_->GetCardTable(); in Verify()
334 if (*card == CardTable::kCardClean) { in Verify()
341 live_bitmap->VisitMarkedRange(start, start + CardTable::kCardSize, visitor); in Verify()
347 CardTable* card_table = heap_->GetCardTable(); in Dump()
[all …]
Dremembered_set.cc45 if (expected_value == CardTable::kCardDirty) { in operator ()()
55 CardTable* card_table = GetHeap()->GetCardTable(); in ClearCards()
133 CardTable* card_table = heap_->GetCardTable(); in UpdateAndMarkReferences()
143 bitmap->VisitMarkedRange(start, start + CardTable::kCardSize, obj_visitor); in UpdateAndMarkReferences()
162 CardTable* card_table = heap_->GetCardTable(); in Dump()
166 auto end = start + CardTable::kCardSize; in Dump()
173 CardTable* card_table = heap_->GetCardTable(); in AssertAllDirtyCardsAreWithinSpace()
176 auto end = start + CardTable::kCardSize; in AssertAllDirtyCardsAreWithinSpace()
Dcard_table.h48 class CardTable {
55 static CardTable* Create(const uint8_t* heap_begin, size_t heap_capacity);
56 ~CardTable();
134 CardTable(MemMap* begin, uint8_t* biased_begin, size_t offset);
152 DISALLOW_IMPLICIT_CONSTRUCTORS(CardTable);
Dmod_union_table_test.cc197 auto* obj1 = AllocObjectArray(self, space, CardTable::kCardSize); in RunTest()
199 auto* obj2 = AllocObjectArray(self, space, CardTable::kCardSize); in RunTest()
201 auto* obj3 = AllocObjectArray(self, space, CardTable::kCardSize); in RunTest()
203 auto* obj4 = AllocObjectArray(self, space, CardTable::kCardSize); in RunTest()
211 auto* other_space_ref1 = AllocObjectArray(self, other_space.get(), CardTable::kCardSize); in RunTest()
213 auto* other_space_ref2 = AllocObjectArray(self, other_space.get(), CardTable::kCardSize); in RunTest()
245 for (auto* ptr = space->Begin(); ptr < AlignUp(space->End(), CardTable::kCardSize); in RunTest()
246 ptr += CardTable::kCardSize) { in RunTest()
Dcard_table-inl.h53 inline size_t CardTable::Scan(ContinuousSpaceBitmap* bitmap, uint8_t* scan_begin, uint8_t* scan_end, in Scan()
138 inline void CardTable::ModifyCardsAtomic(uint8_t* scan_begin, uint8_t* scan_end, const Visitor& vis… in ModifyCardsAtomic()
210 inline void* CardTable::AddrFromCard(const uint8_t *card_addr) const { in AddrFromCard()
219 inline uint8_t* CardTable::CardFromAddr(const void *addr) const { in CardFromAddr()
227 inline bool CardTable::IsValidCard(const uint8_t* card_addr) const { in IsValidCard()
233 inline void CardTable::CheckCardValid(uint8_t* card) const { in CheckCardValid()
Dbitmap.cc94 template class MemoryRangeBitmap<CardTable::kCardSize>;
Dmod_union_table.h49 typedef MemoryRangeBitmap<CardTable::kCardSize> CardBitmap;
/art/runtime/gc/collector/
Dsticky_mark_sweep.cc56 RecursiveMarkDirtyObjects(false, accounting::CardTable::kCardDirty - 1); in MarkReachableObjects()
Dmark_sweep.cc193 RecursiveMarkDirtyObjects(true, accounting::CardTable::kCardDirty); in PausePhase()
240 RecursiveMarkDirtyObjects(false, accounting::CardTable::kCardDirty - 1); in PreCleanCards()
836 accounting::CardTable* card_table = mark_sweep_->GetHeap()->GetCardTable(); in Run()
857 accounting::CardTable* card_table = GetHeap()->GetCardTable(); in ScanGrayObjects()
884 card_end = AlignUp(card_end, accounting::CardTable::kCardSize); in ScanGrayObjects()
885 DCHECK_ALIGNED(card_begin, accounting::CardTable::kCardSize); in ScanGrayObjects()
886 DCHECK_ALIGNED(card_end, accounting::CardTable::kCardSize); in ScanGrayObjects()
891 accounting::CardTable::kCardSize); in ScanGrayObjects()
/art/runtime/gc/space/
Dmalloc_space.cc48 static const uintptr_t kGcCardSize = static_cast<uintptr_t>(accounting::CardTable::kCardSize); in MallocSpace()
167 DCHECK_ALIGNED(begin_, accounting::CardTable::kCardSize); in CreateZygoteSpace()
168 DCHECK_ALIGNED(End(), accounting::CardTable::kCardSize); in CreateZygoteSpace()
Dzygote_space.cc109 accounting::CardTable* card_table = Runtime::Current()->GetHeap()->GetCardTable(); in SweepCallback()
/art/runtime/gc/
Dheap.h99 return (card == accounting::CardTable::kCardDirty) ? card - 1 : 0; in operator()
456 accounting::CardTable* GetCardTable() const { in GetCardTable()
1047 std::unique_ptr<accounting::CardTable> card_table_;
Dheap.cc527 card_table_.reset(accounting::CardTable::Create(reinterpret_cast<uint8_t*>(kMinHeapAddress), in Heap()
2916 accounting::CardTable* card_table = heap_->GetCardTable(); in VerifyReference()
2952 accounting::CardTable::kCardSize); in VerifyReference()
2984 byte_cover_begin + accounting::CardTable::kCardSize, scan_visitor); in VerifyReference()
3133 accounting::CardTable* card_table = heap_->GetCardTable(); in operator ()()
3305 end = AlignUp(end, accounting::CardTable::kCardSize); in ProcessCards()
/art/compiler/optimizing/
Dcode_generator_mips64.cc886 __ Dsrl(temp, object, gc::accounting::CardTable::kCardShift); in MarkGCCard()
Dcode_generator_arm64.cc1085 __ Lsr(temp, object, gc::accounting::CardTable::kCardShift); in MarkGCCard()
Dcode_generator_mips.cc986 __ Srl(temp, object, gc::accounting::CardTable::kCardShift); in MarkGCCard()
Dcode_generator_arm.cc4787 __ Lsr(temp, object, gc::accounting::CardTable::kCardShift); in MarkGCCard()
Dcode_generator_x86_64.cc5040 __ shrq(temp, Immediate(gc::accounting::CardTable::kCardShift)); in MarkGCCard()
Dcode_generator_x86.cc4521 __ shrl(temp, Immediate(gc::accounting::CardTable::kCardShift)); in MarkGCCard()