History log of /dalvik/vm/Sync.h
Revision Date Author Comments
375fb116bcb817b37509ab579dbd55cdbb765cbf 15-Jun-2011 Carl Shapiro <cshapiro@google.com> Normalize the include guard style.

An leading underscore followed by a capital letter is a reserved
name space in C and C++.

This change also moves any #include directives within the include
guard in some of the compiler/codegen/arm header files.

Change-Id: I9715e2c5301699d31886e61d0fe6e29483555a2a
d862faa2ceae186da5518607505eb942d634ced9 28-Apr-2011 Carl Shapiro <cshapiro@google.com> Get rid of uneeded extern, enum, typedef and struct qualifiers.

Change-Id: I236c5a1553a51f82c9bc3eaaab042046c854d3b4
122dac5b92c649b5d3182b163d7fce35e8c69d76 21-Apr-2011 Carl Shapiro <cshapiro@google.com> Remove DVM_LOCK_INIT and DVM_LOCK_INITIAL_THIN_VALUE.

The original implementation for thin locks used a magic non-zero value
to encode the initial thin lock state. This magic value was kept
around in DVM_LOCK_INITIAL_THIN_VALUE and stored into the lock word of
newly allocated objects. A later revision to the thin locking code
made the initial thin lock value be 0. That change eliminated the
requirement that lock words be explicitly initialized as the allocator
always returns zero-filled memory.

Change-Id: I34e0b43b4c4db0f45cf7cf524e15d4a6096c1365
ae188c676c681e47a93ade7fdf0144099b470e03 08-Apr-2011 Carl Shapiro <cshapiro@google.com> Compile the garbage collector and heap profiler as C++.

Change-Id: I25d8fa821987a3dd6d7109d07fd42dbf2fe0e589
7866f704cdc6600403e01626e34bea8509148561 05-Feb-2011 Carl Shapiro <cshapiro@google.com> Remove unused and racey debugging code.

Change-Id: I335a9304b7ffdcba8062cd33ce1a0d721f345a73
a492d20a08b35f49ef1cda1572bd5bb496f283e7 09-Nov-2010 Carl Shapiro <cshapiro@google.com> Expand away the QUIET_ZYGOTE_MONITOR macro.

Change-Id: I74eac297597e8e7c9a13d03335f91cf289e060df
0a24ef9d1a88984dae3f7a9bf431c82626eadb2e 12-Mar-2010 Andy McFadden <fadden@android.com> Try to show lock owner in MONITOR thread dump.

A thread in the MONITOR state is blocked waiting on a monitor. This
raises two interesting questions: (1) what lock is it waiting on, and
(2) who holds that lock? The answer to (1) can be determined easily by
looking at the source code, but (2) is a bit harder.

This change extracts the target object from the instruction stream and
prints some information about it, e.g.:

- waiting to lock <0x40028c68> (a java.lang.Object) held by threadid=1 (main)

Also: fiddled with "must [not] be locked" on a recently-added function.

(cherry-picked from dalvik-dev)

Change-Id: Ic16695741760d50be70e70fb7470972cef28bb09
fd54266907c3046339b48748f63afa32ee3ab4e1 12-Mar-2010 Andy McFadden <fadden@android.com> Try to show lock owner in MONITOR thread dump.

A thread in the MONITOR state is blocked waiting on a monitor. This
raises two interesting questions: (1) what lock is it waiting on, and
(2) who holds that lock? The answer to (1) can be determined easily by
looking at the source code, but (2) is a bit harder.

This change extracts the target object from the instruction stream and
prints some information about it, e.g.:

- waiting to lock <0x40028c68> (a java.lang.Object) held by threadid=1 (main)

Change-Id: Iad18fc6f2df4142368bdf1063b8cc71de2d66156
Also: fiddled with "must [not] be locked" on a recently-added function.
fccb31dd58e5cb9f7a3f6e128d481f0ff35a51f0 05-Feb-2010 Bill Buzbee <buzbee@google.com> Jit: Start the Jit when framework signals on first screen draw

Cleanup of delayed start - introduce dvmRelativeCondWait in Sync.c.
Additionally, support for deadman timer to start Jit when no screen draws
happen, and to start immediately when running stand-alone.

Fixed bug in assert variant of libdvm - recent MONITOR change had neglected
to add a new type of exit to the exit stats.
eb695c6f814f6b0bdbba0e837555d3fe5ad23104 05-Feb-2010 Bill Buzbee <buzbee@google.com> Jit: Start the Jit when framework signals on first screen draw

Cleanup of delayed start - introduce dvmRelativeCondWait in Sync.c.
Additionally, support for deadman timer to start Jit when no screen draws
happen, and to start immediately when running stand-alone.

Fixed bug in assert variant of libdvm - recent MONITOR change had neglected
to add a new type of exit to the exit stats.
94d89f8016b6c305ab0df491874dcedb252ecfcc 29-Jan-2010 Bill Buzbee <buzbee@google.com> Jit: Fix for [Issue 2406862] Compiler thread preventing VM from shutting down

Replace placeholder sleep with timed condition wait that will start
the jit either when the framework signals that the first screen has been
drawn or a fixed time has elapsed.
30aa99778069baf0dab767f0fc1f5b1d51d110ff 14-Jan-2010 Carl Shapiro <cshapiro@google.com> Update the hash state bits when an identity hash code is computed.
5a6071b914e7669eaf032256f163f65403bfcf3b 08-Jan-2010 Carl Shapiro <cshapiro@google.com> Separately sweep the monitor list before sweeping the heap. Required
for the copying collector so we can abandon objects without examining
their headers. There is a liminal reduction in sweep time when using
the non-moving collector. In addition, this change uncomments a call
to free to reclaim the monitor when its owning object is unmarked.
77f52ebffa3793a7e824fab7da02eaee9afdae0e 25-Dec-2009 Carl Shapiro <cshapiro@google.com> New implementation of wait, notify, and notifyAll. Uses an explicit
queue to represent the wait set instead of the implicit queue within
the monitor condition variable.
8d7f9b2cd9fe252399ae96a36781bba1242fb93c 22-Dec-2009 Carl Shapiro <cshapiro@google.com> Supersede the Lock union type with a word-sized integer in the object
instance header. An object's lock member is now just a bit-field.
bc64d787c0f33e07d8f7f8b1fe4f62682aad5481 22-Dec-2009 Carl Shapiro <cshapiro@google.com> Remove conditionally compiled code for monitor-only locks.
94338aadf8355b28846f0d21c49142ca29479dc4 21-Dec-2009 Carl Shapiro <cshapiro@google.com> Repurpose bits 1 and 2 of the lockword for encoding the hash state of
an object. Invert the meaning of the shape bit to match the encoding
scheme described in Bacon's paper. Consequently, monitor pointers
must have the lower 3 bits stripped before they may be dereferenced.
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