38d710b524f2d9888e89b4ea0209f0b57025dab4 |
|
01-Sep-2010 |
Carl Shapiro <cshapiro@google.com> |
Move the finger computation out of the bitmap scanning callback. The finger computation depends on bitmap internals. This knowledge should not be part of the bitmap interface, just its implementation. This change adds a new walker that computes and passes a finger argument to a callback. As part of this change, code to recompute the end address during a walk has been removed from the ordinary bitmap walker code. That check is needed by the scanning walk as its callback may advance the max address when setting mark bits for objects beyond the finger.
|
a634c852e985dcacf621c428c0597674bc5bfd77 |
|
30-Aug-2010 |
Carl Shapiro <cshapiro@google.com> |
Reduce the frequency of bitmap walk loop-bound computations.
|
57ee270b755271166b2349321e5b8b5457731dd7 |
|
27-Aug-2010 |
Carl Shapiro <cshapiro@google.com> |
Simplify the bitmap walker subroutines. This change... * Separates walking from sweeping. Walking had been implemented by a sweeping with an empty mark bitmap argument. * Localizes the finger machinations to scanBitmapCallback. There is one use of the finger but all callbacks received the argument. * Inlines a simplified bitmap walking routine operating a pointer at a time. Only sweeping benefits from batching decoded addresses.
|
7511ae1ed686ccdf6cfefeabeede0cedb0c36b77 |
|
20-Aug-2010 |
Carl Shapiro <cshapiro@google.com> |
Combine a typedef with a struct declaration.
|
eff16fb843ec191508d2e8306b6dfd8209ede501 |
|
19-Aug-2010 |
Carl Shapiro <cshapiro@google.com> |
Use symbolic constants when computing bits-per-word.
|
1c206f66a31215f0b5ce3897d607ae82281b1765 |
|
21-Jul-2010 |
Barry Hayes <bhayes@google.com> |
Change dvmHeapBitmapXorWalk to dvmHeapBitmapSweepWalk. Concurrent sweeping will require the callback to process objects which are live and not marked, while the client code continues to allocate and set bits. Since dvmHeapBitmapXorWalk was only used to sweep, it seemed easiest to make it learn its true purpose.
|
acdea993a168b26892f172015c7c8df696d25bad |
|
21-Jul-2010 |
Barry Hayes <bhayes@google.com> |
Change dvmHeapBitmapXorWalk to dvmHeapBitmapSweepWalk. Concurrent sweeping will require the callback to process objects which are live and not marked, while the client code continues to allocate and set bits. Since dvmHeapBitmapXorWalk was only used to sweep, it seemed easiest to make it learn its true purpose. Change-Id: I44edd15e5a7447d029a7ae60c6cd9b101cb1e9d9
|
006346e8f138b4e4b16c7a94b049c1646b009b52 |
|
30-Jul-2010 |
Carl Shapiro <cshapiro@google.com> |
Change the bitmap callback signature to have a void return value. Previously, a bitmap callback could abort the bitmap traversal by returning false. All of the bitmap callbacks used in the garbage collector are hardwired to return true. This change eliminates the early termination facility and its attendant complexity. Change-Id: I5490dd74b56b9700ec1b7e657637fae5eb4cc339
|
aca6ec801765bfb49765bf4848ee4b97ab231572 |
|
13-Jul-2010 |
Carl Shapiro <cshapiro@google.com> |
Remove redundant "#ifndef NDEBUG" guarding asserts. Change-Id: Iaa4687cbaaa1eac59cf0b80afb57b3ba708ece09
|
9cbece20cacb36193a14e9eb449d7ded091d264b |
|
13-Jul-2010 |
Carl Shapiro <cshapiro@google.com> |
Use "long" instead of the more verbose but equivalent "long int". Change-Id: I06f87c0f8314baeccac6e96e47ad749ff18a065c
|
6e5cf6021b2f3e00e18ab402f23ab93b27c6061b |
|
22-Jun-2010 |
Barry Hayes <bhayes@google.com> |
Quicker partial collection by using card marking. Add calls to the card marking from the write barrier routines, so that a write to an Object marks the appropriate card. Add code in the GC to use and rebuild the cards at a partial GC, clearing cards in the Zygote heap which do not in fact contain references to the application heap. Change-Id: Ie6f29fd096e029f48085715b282b6db8a7122555
|
fbdcfb9ea9e2a78f295834424c3f24986ea45dac |
|
29-May-2010 |
Brian Carlstrom <bdc@google.com> |
Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master Change-Id: I0c0edb3ebf0d5e040d6bbbf60269fab0deb70ef9
|
e168ebd5a7cfc57936c16ff7d7f7063e967bdb9d |
|
07-May-2010 |
Barry Hayes <bhayes@google.com> |
Remove the HeapBitmap List routines. Change-Id: Ic518798ba8574534746ada9e8757948ae2e1bab9
|
d25566d9278e6424e521f4b7148ac31480e60c5c |
|
12-Mar-2010 |
Carl Shapiro <cshapiro@google.com> |
Add the ability to treat the zygote heap as a root collect just the forked application heap. Change-Id: I8807897ae426f8274018d950fec44a2182a90525
|
8ecee7b81c70a8f61d984b6fb2e37fa3ecbd79f9 |
|
12-Mar-2010 |
Carl Shapiro <cshapiro@google.com> |
Eliminate unused heap bitmap functions. This is mostly the "list" code which is no longer needed. Change-Id: I3636a4a6a36e55d2ad080571cdb6c23a16f98aaf
|
8d72480298d3bab7ca6087482ca62af66974a2a1 |
|
15-Feb-2010 |
Carl Shapiro <cshapiro@google.com> |
Densely allocate mspaces. New heaps are started on the page following the break of the previously allocated heap. In addition, we shrink the reported size of the previous object bitmap so it covers only the committed range of the heap. We now separately track the size of the bitmap virtual memory reservation so we may unmap it all at shutdown time.
|
8eab1c515ef7f6bdb0252d49e6ea1c8ca7d8cfed |
|
12-Feb-2010 |
Carl Shapiro <cshapiro@google.com> |
Do not include assert.h in places where it may shadow the definition provided by Common.h if WITH_DALVIK_ASSERTS is defined. The include from HeapBitmap.h was notable as it redefined the Dalvik friendly assert macro with the useless libc macro across all of the GC sources.
|
f6c387128427e121477c1b32ad35cdcaa5101ba3 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
f72d5de56a522ac3be03873bdde26f23a5eeeb3c |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
89c1feb0a69a7707b271086e749975b3f7acacf7 |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
|
2ad60cfc28e14ee8f0bb038720836a4696c478ad |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
|