| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Add support for customer device extension
Change-Id: I0402a630ba212d1c5e81cda110f61210f7b60384
(cherry picked from commit 11499df326462bfe25890a35c6abbf019ff7784e)
(cherry picked from commit e03b8f8da9cf4eef64cedf39ce9ca90d26ce5124)
(cherry picked from commit fb360be406f35b9591f12c61936657f03cc5880f)
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Change-Id: I236c5a1553a51f82c9bc3eaaab042046c854d3b4
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Change-Id: I25d8fa821987a3dd6d7109d07fd42dbf2fe0e589
|
|
|
|
| |
Change-Id: I335a9304b7ffdcba8062cd33ce1a0d721f345a73
|
|
|
|
| |
Change-Id: I74eac297597e8e7c9a13d03335f91cf289e060df
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
queue to represent the wait set instead of the implicit queue within
the monitor condition variable.
|
|
|
|
| |
instance header. An object's lock member is now just a bit-field.
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|