bb046193c2da5d43a57b2fa8a17a0f634bf003ba |
|
07-Aug-2012 |
Elliott Hughes <enh@google.com> |
Fix ALOGV bit rot. Change-Id: Ia182af8f5ca3967a21003b3d1513145f8e6e5db0
|
0c2dc522d0e120f346cf0a40c8cf0c93346131c2 |
|
03-Jul-2012 |
Dong-Yuan Chen <dong-yuan.chen@intel.com> |
[X86] X86 trace JIT compiler support This patch provides a fully functional x86 trace JIT compiler for Dalvik VM. It is built on top of the existing x86 fast interpreter with bug fixes and needed extension to support trace JIT interface. The x86 trace JIT code generator was developed independent of the existing template-based code generator and thus does not share exactly the same infrastructure. Included in this patch are: * Deprecated and removed the x86-atom fast interpreter that is no longer functional since ICS. * Augmented x86 fast interpreter to provide interfaces for x86 trace JIT compiler. * Added x86 trace JIT code generator with full JDWP debugging support. * Method JIT and self-verification mode are not supported. The x86 code generator uses the x86 instruction encoder/decoder library from the Apache Harmony project. Additional wrapper extension and bug fixes were added to support the x86 trace JIT code generator. The x86 instruction encoder/decoder is embedded inside the x86 code generator under the libenc subdirectory. Change-Id: I241113681963a16c13a3562390813cbaaa6eedf0 Signed-off-by: Dong-Yuan Chen <dong-yuan.chen@intel.com> Signed-off-by: Yixin Shou <yixin.shou@intel.com> Signed-off-by: Johnnie Birch <johnnie.l.birch.jr@intel.com> Signed-off-by: Udayan <udayan.banerji@intel.com> Signed-off-by: Sushma Kyasaralli Thimmappa <sushma.kyasaralli.thimmappa@intel.com> Signed-off-by: Bijoy Jose <bijoy.a.jose@intel.com> Signed-off-by: Razvan A Lupusoru <razvan.a.lupusoru@intel.com> Signed-off-by: Tim Hartley <timothy.d.hartley@intel.com>
|
a8b91c52fd8a90b784835dfe1f8898035266c4dd |
|
02-May-2012 |
Raghu Gandham <raghu@mips.com> |
[MIPS] Dalvik fast interpreter support and JIT implementation Change-Id: I9bb4f6875b7061d3ffaee73f204026cb8ba3ed39 Signed-off-by: Raghu Gandham <raghu@mips.com> Signed-off-by: Chris Dearman <chris@mips.com> Signed-off-by: Douglas Leung <douglas@mips.com> Signed-off-by: Don Padgett <don@mips.com>
|
7882ef9e459373e31c5e06eb2d2fe96c2e948300 |
|
31-Jan-2012 |
Chris Dearman <chris@mips.com> |
Use old frame for dvmReportPreNativeInvoke/dvmReportPostNativeInvoke The portable and standard interpreters were using different values. The portable interpeter is correct... Change-Id: I8669dfbc979f161666e6b7f63aae16f48612a0c6 Signed-off-by: Chris Dearman <chris@mips.com>
|
0d5443d0ef4c5538112a9ae1d1c8b93b8ab18736 |
|
31-Jan-2012 |
Chris Dearman <chris@mips.com> |
Restore fp after calling JNI method in allstubs interpreter The allstubs interpreter uses self->interpSave.curFrame as fp. The invokeMethod native code sets self->interpSave.curFrame directly effectively updating fp, so restore fp after the call has completed. Change-Id: I0ffb15b71a48c2780251bbcd66e551bb0a52fe94 Signed-off-by: Chris Dearman <chris@mips.com>
|
68df230d661dbafb117f942f981f8abfc12e552a |
|
31-Jan-2012 |
Raghu Gandham <raghu@mips.com> |
Fix the warning emitted by codesourcery compiler 4.5.2 Change-Id: Ib2b8e87afff7af56281d83961edf79c17cbcf940
|
46f3fd49ebda372887192fa32b16040ed6710f58 |
|
31-Jan-2012 |
Chris Dearman <chris@mips.com> |
Fix instruction logging messages Change-Id: Ifc7de30ea1c1221f7838523a5ebd269eec622e03 Signed-off-by: Chris Dearman <chris@mips.com>
|
3185a41fe8b3223003a07685c1acdf44bfe148d0 |
|
30-Jan-2012 |
buzbee <buzbee@google.com> |
x86 mterp debug/profile fix (issue 5938080) When profiling or debugging is active, the Dalvik vm calls out to a helper function to handle any pending debug/profile activities before and after native invokes. The assembly code in footer.s was passing arguments to these routines in the wrong oder. Issue 5938080 Change-Id: I425eb2bfbee504a70eda8b382f4cf7340e458241
|
c1a4ab9c313d8a3d12007f2dbef7b5a6fa4ac2ef |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Also fix an occurrence of LOGW missed in an earlier change. Bug: 5449033 Change-Id: I2e3b23839e6dcd09015d6402280e9300c75e3406
|
e8e1ddccd616e8226b7cc1e4e9fdb327429249e8 |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: Ia5d301248024df26c2a29dabdfe738e39ec87c82
|
ab35b50311951feea3782151dd5422ee944685c2 |
|
05-Jan-2012 |
Elliott Hughes <enh@google.com> |
Remove unsupported experimental opcodes. External developers were starting to try to get themselves into trouble with this stuff... Change-Id: I2b03bfeaa8c98b6a994bc7924fc8dcf4e4d4f6cb
|
062bf509a77fce9dfcb7e7b2e401cf2a124d83d5 |
|
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: Ic663376d1ad6a6cb14bf81405ad9afd247cf2f60
|
34987b48d216786454aca59474cb76015af48bd9 |
|
27-Oct-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix reference to non-existent function in debug code. The generated interpreter code has some debugging code that call dvmIsHeapAddressObject, which doesn't exist. This causes the build to fails when we build Dalvik with DEBUG_DALVIK_VM=true. Use dvmIsHeapAddress instead. Change-Id: Ifc5eeb4bd2ea6b45046c606b744b1a70a5e56dfc
|
92c1f6f1b4249e4e379452ee7b49f027052bf4ce |
|
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I8bd96961e369a08e86ff78b82d90f20f42787eb1
|
1663a6c12fdf4732d7ea0a0406af6085b3c408e4 |
|
12-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGE See https://android-git.corp.google.com/g/#/c/141576 Bug: 5449033 Change-Id: Ie3bc0d5436218ea05f98cb0373ecf5924f78db05
|
8bc8bf71a52e17d483021b4c9dc8e735d9bce3ed |
|
20-Jul-2011 |
Elliott Hughes <enh@google.com> |
Don't use dvmIsValidObject outside the GC. Use dvmIsHeapPointer outside the GC. (This still isn't safe because there's no synchronization when dealing with the HeapSource.) Bug: 5049447 Change-Id: Ie0b325ef0a92687ea1eaf1491a4bb832298893c5
|
291c84f60853d30e1c0d79dd08c5e5164f588e26 |
|
26-May-2011 |
Dan Bornstein <danfuzz@android.com> |
Prefer printf format "%#x" over "0x%x". I exist to serve. Change-Id: I8e2880b20eefd466da8515d5b6b0c5cb75d56169
|
60fc806b679a3655c228b4093058c59941a49cfe |
|
26-May-2011 |
Dan Bornstein <danfuzz@android.com> |
Further conservation of newlines. Friends don't let friends end LOG() strings with newlines. Change-Id: I5a18c766c90c4ab5f03caa6acd601d34d91beb00
|
cf4a20cf0cbc53f03a5b16c7152bbb29907f7108 |
|
25-May-2011 |
buzbee <buzbee@google.com> |
Interpreter/Debugger fix #4479968 This one was tricky to track down. The underlying problem arose with the consolidation of InterpState with Thread. Rather than having a state structure for each instance of the interpreter, we moved to a model that had a single thread-local struct shared by all interpreter instances running on that thread. A portion of interpreter state can't be shared - and thus was saved and restored on nested invocations of the interpreter. The bug here was that the storage for method return values was not included in the state that needed save/retore. In normal operation, it doesn't need to be saved - that storage isn't live across an invoke that could trigger a nested interpreter activation. However, when debugging, the debugger itself may hijack threads and create new interpreter instances for its own purposed - and there is a small window in which live retval can be trashed. The fix is simply to move retval into the InterpSave struct. Change-Id: Ib621824b799c5caa16fdfa8f5689a181159059df
|
9c6f0a6a36fcce4a55e3764db45c6c7cced077a5 |
|
10-May-2011 |
Carl Shapiro <cshapiro@google.com> |
Fixes to allow the debug VM configuration to build. Change-Id: Ifbe6acf84beb75014303152d20153072e7e50c55
|
a62c3a0ab3fcdde37f47d16e9699a935ae7a8e88 |
|
04-May-2011 |
Carl Shapiro <cshapiro@google.com> |
Establish a subclass relationship between ArrayObject and Object. Change-Id: I9f9fe52bd4ceebb6dde48251a89190ba6bb00ce4
|
92a3b69286a757afff76402d8a0d5ec04d7f177c |
|
30-Apr-2011 |
Carl Shapiro <cshapiro@google.com> |
Type the reference member of JValue as an Object pointer. Previously this had been a void pointer. To avoid adding lots of casts from the logical Object subtypes to Object the RETURN_PTR macro silently casts its argument to an Object* before performing an assignment to the JValue return value. After an inheritance relationship is established between Object and its subtypes this cast can be removed. Change-Id: Id05e5c11e57e2a9afd12bad0be095f1dfe9e1f51
|
c67c23bc6f5f3621f31c41bd48553b196ab0325e |
|
28-Apr-2011 |
Carl Shapiro <cshapiro@google.com> |
Eliminate the PROFILE_FIELD_ACCESS feature. Change-Id: I27bf2d18c4c0735913ea8698825b05e393b046b2
|
30bc0d46ae730d78c42c39cfa56a59ba3025380b |
|
22-Apr-2011 |
buzbee <buzbee@google.com> |
Consolidate curFrame fields in thread storage We ended up with two locations in the Thread structure for saved Dalvik frame pointer. This change consolidates them. Change-Id: I78f288e4e57e232f29663be930101e775bfe370f
|
cd8f5e701547739f241594b43e9470c92d98e9cf |
|
21-Apr-2011 |
Carl Shapiro <cshapiro@google.com> |
Move the interpreter into C++. Change-Id: I4b7d6ed9c54dbf3244304a7ea0f13e6c37cca2aa
|