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
|
2d63bc57d5fcbcd54f0bd3e9491e1704b98ec0bf |
|
14-Apr-2011 |
Carl Shapiro <cshapiro@google.com> |
Move JDWP into C++ and add extern "C" to remaining non-compiler includes. Change-Id: I19cba56e8f75b76f902c87ff5c5b3e2c17cb5c00
|
9fd527f3258381b33365cb18fd37c7864e2bbb40 |
|
11-Dec-2010 |
Andy McFadden <fadden@android.com> |
Progress on live-precise GC. This implements computation of register liveness. This is still a work in progress. The computation is disabled by default, and when enabled it's not yet used during the generation of register maps. The code has not been thoughly tested. While working on this I fiddled around with the verifier's verbose debugging stuff a bit. This also changes some stuff in BitVector. Unsigned ints are now prevalent, and functions like dvmSetBit abort rather than returning a boolean value when an illegal operation is attempted. (Some parallel functions in the compiler were also updated.) Bug 2534655 Change-Id: Iea161c6d63a310e1dbdac2aeeb7b7aeadda8807c
|
701d2720fa693621a3c0c4d0bdf9e32e3eb8e731 |
|
02-Dec-2010 |
Andy McFadden <fadden@android.com> |
Progress on liveness analysis. Compute basic blocks and their predecessors, necessary for backward flow analysis. This is a work in progress and isn't yet enabled. (When enabled, verification takes 20% longer, so there's some room for improvement on performance.) Also, this changes the "generate register maps" setting to be enabled by default, and allows a "no" prefix on -Xgenregmap to disable it. Bug 2534655 Change-Id: Id2e8512f53fc454ce2184879ab663ed7121274b6
|
d325011fc98e0f1179d467bbc284cccea72f560b |
|
03-Nov-2010 |
Andy McFadden <fadden@android.com> |
Shift register index tests to static pass. This rather hefty change moves the range tests on register index values from the code-flow pass to the earlier static analysis pass. The idea is to test everything up front so that we don't have to do a bounds check every time we get or set a register value during verification. This allowed some simplification in the code-flow pass, since get/set of a register no longer needs to have the method register count passed in, and can no longer fail due to bad input. As part of doing this, some of the static verification code was cleaned up, e.g. the instruction decoding is now only done in one place. This had no apparently effect on performance on nexus one -- verify+opt of the bootstrap classes takes the same amount of time. However, it does reduce the compiled size of the humongous instruction verification method by about 10%. Also, cleaned up some instruction format stuff (e.g. removed 3rfs). Bug 2534655. (cherry-pick from dalvik-dev) Change-Id: I1b220f4e97b1214ed575470695c52e1bd64d5137
|
6989a1e1106e401d4f8fa8dee361de7a643af739 |
|
03-Nov-2010 |
Andy McFadden <fadden@android.com> |
Shift register index tests to static pass. This rather hefty change moves the range tests on register index values from the code-flow pass to the earlier static analysis pass. The idea is to test everything up front so that we don't have to do a bounds check every time we get or set a register value during verification. This allowed some simplification in the code-flow pass, since get/set of a register no longer needs to have the method register count passed in, and can no longer fail due to bad input. As part of doing this, some of the static verification code was cleaned up, e.g. the instruction decoding is now only done in one place. This had no apparently effect on performance on nexus one -- verify+opt of the bootstrap classes takes the same amount of time. However, it does reduce the compiled size of the humongous instruction verification method by about 10%. Also, cleaned up some instruction format stuff (e.g. removed 3rfs). Bug 2534655. Change-Id: I3c2a5877bca5ddc3d794b61a46b95a7e5a3c233f
|
fbdcfb9ea9e2a78f295834424c3f24986ea45dac |
|
29-May-2010 |
Brian Carlstrom <bdc@google.com> |
Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master Change-Id: I0c0edb3ebf0d5e040d6bbbf60269fab0deb70ef9
|
2e1ee50a08cc3dd07ce4e956b925c1f0f28cf329 |
|
24-Mar-2010 |
Andy McFadden <fadden@android.com> |
Rearrange some things. This splits DexOptimize into DexPrepare (which deals with file shuffling and fork/exec) and Optimize (which does the actual quickening of instructions). The Optimize functions are now effectively private to the "analysis" directory. Twiddled some comments. No substantive code changes. Change-Id: Ia51865b259fb32822132e2373997866e360ca86a
|
72e93344b4d1ffc71e9c832ec23de0657e5b04a5 |
|
13-Nov-2009 |
Jean-Baptiste Queru <jbq@google.com> |
eclair snapshot
|
99409883d9c4c0ffb49b070ce307bb33a9dfe9f1 |
|
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import //branches/master/...@140412
|
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
|
4c1a2915e40eceeb68dbc323d28b8bf8763af83b |
|
20-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127101
|
cc05ad238516f1303687aba4a978e24e57c0c07a |
|
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
|