History log of /dalvik/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cbac7aed2621a0d51ecddf89af0b3c4a110a17df 02-Jan-2013 jwilson <jwilson@squareup.com> am 51997559: Fail if the new index is out of range. do not merge.

* commit '519975591eba13ae7ac4e494a0dfb88a34ca191b':
Fail if the new index is out of range. do not merge.
519975591eba13ae7ac4e494a0dfb88a34ca191b 17-Dec-2012 jwilson <jwilson@squareup.com> Fail if the new index is out of range. do not merge.

We were silently truncating, which made an obvious problem
into a non-obvious one.

Bug: http://code.google.com/p/android/issues/detail?id=40409

(cherry picked from commit 0a752f071fbbdfeab5dd9a230efe0f4f47b8cd94)

Change-Id: I6adbe6309bdcb2882f0e5500d6e1e149d08dbd2d
x/src/com/android/dx/merge/DexMerger.java
a3df5b58369667f2fb3c4616f7e175b6ec7db412 12-Nov-2012 Yohann Roussel <yroussel@google.com> am b6f4e037: am afe3a013: (-s ours) am 288f2280: Revert "Fix alignment when recompacting a DexMerger result. do not merge."

* commit 'b6f4e0372154191bdf1ee32727aead1fe1200cbc':
Revert "Fix alignment when recompacting a DexMerger result. do not merge."
ce0723cc425223c0e93ab0ce1968822c5ef9d352 12-Nov-2012 yroussel <yroussel@google.com> am 437f58a5: am 2d2f13c5: (-s ours) am 707ebe9f: Fix alignment when recompacting a DexMerger result. do not merge.

* commit '437f58a5d25d76aa035c53e341e2516e39a70927':
Fix alignment when recompacting a DexMerger result. do not merge.
b6f4e0372154191bdf1ee32727aead1fe1200cbc 12-Nov-2012 Yohann Roussel <yroussel@google.com> am afe3a013: (-s ours) am 288f2280: Revert "Fix alignment when recompacting a DexMerger result. do not merge."

* commit 'afe3a0131e75367759e1d7a69cec0aac2a45524c':
Revert "Fix alignment when recompacting a DexMerger result. do not merge."
437f58a5d25d76aa035c53e341e2516e39a70927 12-Nov-2012 yroussel <yroussel@google.com> am 2d2f13c5: (-s ours) am 707ebe9f: Fix alignment when recompacting a DexMerger result. do not merge.

* commit '2d2f13c50ba3c38dc4a8a8aaf483f6df155e0080':
Fix alignment when recompacting a DexMerger result. do not merge.
bb07779818b583ec6d0b73c4062f485751332c81 12-Nov-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-mr1-release - do not merge

Change-Id: Ic0fb72b0939908c2e072e4ae5d60c9d24de9dc66
890e41c1c4289b97476bc90d2e1e443fffec4b13 12-Nov-2012 The Android Open Source Project <initial-contribution@android.com> Merge f870f2d - do not merge

Change-Id: Ib8ea0f0d579f78fcab1deca05ff1beac9ba9bc03
583e1f6c32d09620cc9c352758335be7ea57ca73 10-Nov-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
f870f2dce9300c8dec620613371f08e5c234245b 16-Oct-2012 jeffhao <jeffhao@google.com> Add dx option to always generate const-string/jumbo.do not merge.

This allows large dex files with many strings to be merged properly.

(cherry picked from commit 266f45ff7da18022faf5f77df76c69f8cdad313f)

Change-Id: I5fe4c55d84a91101a4f89f590117aa6dc0bfc0f2
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/command/dexer/Main.java
x/src/com/android/dx/dex/DexOptions.java
x/src/com/android/dx/dex/code/OutputFinisher.java
x/src/com/android/dx/merge/InstructionTransformer.java
afe3a0131e75367759e1d7a69cec0aac2a45524c 07-Nov-2012 Yohann Roussel <yroussel@google.com> am 288f2280: Revert "Fix alignment when recompacting a DexMerger result. do not merge."

* commit '288f22800c8fe1eb44afff78ec1fff815379183e':
Revert "Fix alignment when recompacting a DexMerger result. do not merge."
288f22800c8fe1eb44afff78ec1fff815379183e 07-Nov-2012 Yohann Roussel <yroussel@google.com> Revert "Fix alignment when recompacting a DexMerger result. do not merge."

This reverts commit 707ebe9f1984f7b1ed2e3465012c7c0eb3ef2bd6

Looks like jb-dev is missing some other patches before it possible to cherry-pick this one.

Change-Id: I8cbdd649d03696cb80be0dacc8640275468ef162
x/src/com/android/dx/merge/DexMerger.java
2d2f13c50ba3c38dc4a8a8aaf483f6df155e0080 07-Nov-2012 yroussel <yroussel@google.com> am 707ebe9f: Fix alignment when recompacting a DexMerger result. do not merge.

* commit '707ebe9f1984f7b1ed2e3465012c7c0eb3ef2bd6':
Fix alignment when recompacting a DexMerger result. do not merge.
707ebe9f1984f7b1ed2e3465012c7c0eb3ef2bd6 31-Oct-2012 yroussel <yroussel@google.com> Fix alignment when recompacting a DexMerger result. do not merge.

(cherry picked from commit e0e7b076e427a327e27247aa409d0b0fa8b0e0aa)

Change-Id: Ib8092bd9ce9ba5490040a41c5d604e6a138acc7d
x/src/com/android/dx/merge/DexMerger.java
e7e77c4bd64c87798344d690e13418b481ab2d05 06-Nov-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge

Change-Id: Ia24bfd680910be16fa6f89fbd48db251b076d8f6
c087108ca634ab9587044bebd1e69746021ce2e8 27-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
d454d96bf19438d2fc4301714abf55f7fecd0001 17-Oct-2012 jeffhao <jeffhao@google.com> am a0475a59: (-s ours) am d5cc3680: (-s ours) am 9db54b1e: Add dx option to always generate const-string/jumbo. do not merge.

* commit 'a0475a59b58c39c9a3babddc371815c6d51e3f39':
Add dx option to always generate const-string/jumbo. do not merge.
07df951456410a66353455108d86958985a15115 17-Oct-2012 jeffhao <jeffhao@google.com> am 69dd411c: (-s ours) Add dx option to always generate const-string/jumbo. do not merge.

* commit '69dd411c7ef47e3ea3f6ff8be9a4d903f545f0d5':
Add dx option to always generate const-string/jumbo. do not merge.
a0475a59b58c39c9a3babddc371815c6d51e3f39 17-Oct-2012 jeffhao <jeffhao@google.com> am d5cc3680: (-s ours) am 9db54b1e: Add dx option to always generate const-string/jumbo. do not merge.

* commit 'd5cc36801bb86ba4e8b3db6efc67282f41b5b784':
Add dx option to always generate const-string/jumbo. do not merge.
d5cc36801bb86ba4e8b3db6efc67282f41b5b784 17-Oct-2012 jeffhao <jeffhao@google.com> am 9db54b1e: Add dx option to always generate const-string/jumbo. do not merge.

* commit '9db54b1e21b8e994658890328e57caa822e444a7':
Add dx option to always generate const-string/jumbo. do not merge.
8fce9164ed186eb9569c328b37488b93a5f8a13c 17-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
9db54b1e21b8e994658890328e57caa822e444a7 16-Oct-2012 jeffhao <jeffhao@google.com> Add dx option to always generate const-string/jumbo. do not merge.

This allows large dex files with many strings to be merged properly.

(cherry picked from commit 266f45ff7da18022faf5f77df76c69f8cdad313f)

Change-Id: I0277b1a0a81b3a77092a9e9f8f648ff190e29723
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/command/dexer/Main.java
x/src/com/android/dx/dex/DexOptions.java
x/src/com/android/dx/dex/code/OutputFinisher.java
x/src/com/android/dx/merge/InstructionTransformer.java
69dd411c7ef47e3ea3f6ff8be9a4d903f545f0d5 16-Oct-2012 jeffhao <jeffhao@google.com> Add dx option to always generate const-string/jumbo. do not merge.

This allows large dex files with many strings to be merged properly.

(cherry picked from commit 266f45ff7da18022faf5f77df76c69f8cdad313f)

Change-Id: I5e85346610c4c5280ecdd9e97c63eaef4420642e
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/command/dexer/Main.java
x/src/com/android/dx/dex/DexOptions.java
x/src/com/android/dx/dex/code/OutputFinisher.java
x/src/com/android/dx/merge/InstructionTransformer.java
6a15a0af57a91d07c4a8f851e60f911872b12432 16-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
7284c78e14a7aad15b4f1c66c0a18d09a49c00de 15-Oct-2012 Elliott Hughes <enh@google.com> Revert the fix for incorrect package-private overriding.

This fixes FIFA 2012, the download portion of which relies on the
old bug, without breaking instrumentation tests. The problem is that
dexopt tries to quicken method calls, and gets confused by this case
where the apparent static method resolution differs from the actual
one at runtime, depending on the targetSdkVersion of the specific app.
dexopt can't make an ahead-of-time decision in a world where the rules
might change at runtime.

Bug: 7301030
Bug: 7343420
Change-Id: Iaa15611f099546b7e54279cfd6abc9b4cdcb9812
m/oo/Class.cpp
9735865121118f255c4c15183b236f9f30e795f1 15-Oct-2012 Elliott Hughes <enh@google.com> Revert the fix for incorrect package-private overriding.

This fixes FIFA 2012, the download portion of which relies on the
old bug, without breaking instrumentation tests. The problem is that
dexopt tries to quicken method calls, and gets confused by this case
where the apparent static method resolution differs from the actual
one at runtime, depending on the targetSdkVersion of the specific app.
dexopt can't make an ahead-of-time decision in a world where the rules
might change at runtime.

Bug: 7301030
Bug: 7343420
Change-Id: Iaa15611f099546b7e54279cfd6abc9b4cdcb9812
m/oo/Class.cpp
3b6dbf23c227597102bc6965ff0664e35787c7cd 15-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-factory-release history after reset to jb-mr1-dev
1ddb70ad557eebaaa314778ef616c7598af714f8 13-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
ed94ff793680873d2c942641ccda9ea81c95b5ad 13-Oct-2012 Elliott Hughes <enh@google.com> Revert "Don't enforce access checks for overloading for targetSdkVersion < 17."

This reverts commit 0fe885202fc2d1e7f3d34c99ae3487a9a6387be1

May be causing http://b/7343420, though I can't reproduce that crash.

Change-Id: Ia3d2a1507602d07699d1f9914e734cc813f97518
m/Globals.h
m/native/dalvik_system_VMRuntime.cpp
m/oo/Class.cpp
c6d0c2e634099ac7c74163667d708d0324f6889f 13-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-factory-release history after reset to jb-mr1-dev
8a0e26e0abfbd73ee9903910d0958614875fff2c 12-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
0fe885202fc2d1e7f3d34c99ae3487a9a6387be1 12-Oct-2012 Elliott Hughes <enh@google.com> Don't enforce access checks for overloading for targetSdkVersion < 17.

Still warn, and enforce the missing check for targetSdkVersion >= 17.

Bug: 7301030
Change-Id: I8189fcbf222f331b1f80a156b01082d61f1f9362
m/Globals.h
m/native/dalvik_system_VMRuntime.cpp
m/oo/Class.cpp
7538ddb0aa64b3bff7c762be2e6d05b213cd4189 10-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-factory-release history after reset to jb-mr1-dev
d2789adec42145e041d534bc116639758733ee22 10-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
9c789541c5a37dc8c5d12d98b8db74def61e26db 10-Oct-2012 Elliott Hughes <enh@google.com> Don't disable inlining for ARM.

I think there was confusion here between method inlining and the method
compiler. Just because the latter isn't yet functional doesn't mean we
don't want the former for those targets that support it.

(cherry-pick of 4b3f78e73109604b817294a9c21bc3653328e3fb.)

Bug: 7179010
Change-Id: I627badb448a056ed4a1cc1e75a05325ce6112876
m/Init.cpp
m/compiler/codegen/arm/armv7-a-neon/MethodCodegenDriver.cpp
m/compiler/codegen/x86/CodegenInterface.cpp
f42607c815773c1fdd09f0cd799aad8a8f064ba5 09-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
43e44fd5952d0bbad335c54d1f5c3eac920d755b 08-Oct-2012 Elliott Hughes <enh@google.com> Merge "Log if dlopen(3) fails." into jb-mr1-dev
9e11d05d52f2df7512453116d4bc602bccef0f65 01-Oct-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
2e3748ed8161e710d1a4d9f8070e16ce3350209a 30-Sep-2012 Jeff Sharkey <jsharkey@android.com> Final shuffle to make /sdcard work in shell.

Always prepare legacy path, since it's no longer created by init.

Bug: 7255202
Change-Id: I152b44ac62f69923b300abc8d394afe79dac4601
m/native/dalvik_system_Zygote.cpp
6567510ba1470bba6036d2b0b042425bdd03cf2b 27-Sep-2012 Elliott Hughes <enh@google.com> Log if dlopen(3) fails.

It turns out that some apps swallow the UnsatisfiedLinkError, making it
really hard to work out why they failed to launch.

Before:
D dalvikvm: Trying to load lib /data/app-lib/com.adobe.air-1/libCore.so 0x415be8a8
W dalvikvm: No implementation found for native Lcom/adobe/air/AIRWindowSurfaceView;.nativeSurfaceCreated:()V

After:
D dalvikvm: Trying to load lib /data/app-lib/com.adobe.air-1/libCore.so 0x415be8a8
E dalvikvm: dlopen("/data/app-lib/com.adobe.air-1/libCore.so") failed: Cannot load library: soinfo_relocate(linker.cpp:975): cannot locate symbol "_ZN7android10VectorImpl19reservedVectorImpl1Ev" referenced by "libCore.so"...
W dalvikvm: No implementation found for native Lcom/adobe/air/AIRWindowSurfaceView;.nativeSurfaceCreated:()V

Bug: 7093208
Change-Id: Ib751fb959d49cb872d586f299e62ed6aae783de9
m/Native.cpp
d353b58e482d06cde8482ae45556cd08e1ab47ab 26-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
9d9919e93c3af16888cf90c475fff63758d73770 25-Sep-2012 Ian Rogers <irogers@google.com> Merge "Allow max free size of heap to be configured." into jb-mr1-dev
5b0ee0d120ea0dd9a8c518419d87226e0a21f36f 25-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
485dfb5ccb6d8b2c5d498ff6ee41b14e79103e3c 24-Sep-2012 Ian Rogers <irogers@google.com> Allow max free size of heap to be configured.

This allows the max free to be larger on devices with more memory and
thereby avoid GCs (that may be more frequent due to larger bitmaps).

b/6606849

Change-Id: I4063a303ea4be3c1f227259d699fb238a806451f
m/Globals.h
m/Init.cpp
m/alloc/HeapSource.cpp
m/alloc/MarkSweep.cpp
5005743f9b35effed87bbd9a9786f1f2e16bebe2 24-Sep-2012 Jeff Sharkey <jsharkey@android.com> Move multi-user OBB under user-specific path.

Support apps that may manually build OBB paths using
getExternalStorageDirectory() by making multi-user OBB paths live
under user-specific path.

This new structure means we can simplify the emulated_legacy paths
to be a single recursive bind mount.

Bug: 7212801
Change-Id: I85a0caebca52a6ff3bfe61c961518a91f0b8f8ff
m/native/dalvik_system_Zygote.cpp
74573701ee9863a0d2f1ba638b1c1cce69cdc2b2 21-Sep-2012 Jean-Baptiste Queru <jbq@google.com> am 9bd5a9db: Reconcile jb-dev and AOSP

* commit '9bd5a9db106863069dd6c12de881acca6103f8d7':
Fix an ugly bug where try/catch offsets weren't being mapped properly. do not merge.
Fix a bug where the max blowup of annotations was incorrect. do not merge.
Fix a bug where debugInfos' size wasn't being computed. do not merge.
Make dex merging stateless. do not merge.
Support debug info in dexmerge. do not merge.
9bd5a9db106863069dd6c12de881acca6103f8d7 21-Sep-2012 Jean-Baptiste Queru <jbq@google.com> Reconcile jb-dev and AOSP

Change-Id: If3d2ce0f23b929f92d49649e015386670ed16863
067c62027dc592224e1ae16f9847b7273d3e4026 20-Sep-2012 Elliott Hughes <enh@google.com> am 74d4652e: am e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"

* commit '74d4652ebd432295a5442b024f51bce531abea15':
Log when the native trace is unavailable
74d4652ebd432295a5442b024f51bce531abea15 20-Sep-2012 Elliott Hughes <enh@google.com> am e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"

* commit 'e64cfc1cdacd8a820acce596f6986e17e2f5e330':
Log when the native trace is unavailable
e64cfc1cdacd8a820acce596f6986e17e2f5e330 20-Sep-2012 Elliott Hughes <enh@google.com> am b79d90eb: Merge "Log when the native trace is unavailable"

* commit 'b79d90ebd197b9040c06d73f5dc8bbc8fdad1d54':
Log when the native trace is unavailable
b79d90ebd197b9040c06d73f5dc8bbc8fdad1d54 20-Sep-2012 Elliott Hughes <enh@google.com> Merge "Log when the native trace is unavailable"
c32a3774e9c1eeb289d71e0e53199893b6951b1b 19-Sep-2012 Andy McFadden <fadden@android.com> Log when the native trace is unavailable

This should allow us to differentiate between "couldn't get the
stack" and "didn't try to get the stack". Also show the thread's
state (e.g. 'R' for running, 'D' for uninterruptible syscall).

Bug 7053953

(cherry-pick of b3667a19f5c573b7785876979af4781292d27327.)

Change-Id: I0a40cb3d3cdd9aef8589a39586cccd9c229aa8cb
m/Misc.cpp
m/Misc.h
m/Thread.cpp
m/interp/Stack.cpp
38221406a7aefc9cd2c67ff8c8f60c7e947c65a5 20-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
b3667a19f5c573b7785876979af4781292d27327 19-Sep-2012 Andy McFadden <fadden@android.com> Log when the native trace is unavailable

This should allow us to differentiate between "couldn't get the
stack" and "didn't try to get the stack". Also show the thread's
state (e.g. 'R' for running, 'D' for uninterruptible syscall).

Bug 7053953

Change-Id: Ibc9e6a6f0fc855a4e5e8e133122232dc939bcb16
m/Misc.cpp
m/Misc.h
m/Thread.cpp
m/interp/Stack.cpp
89314532eb32cc273c0f03d1524a842e31ec75c9 18-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
86913b6b88b9ad4a1eea14be928da6c9485d53c0 18-Sep-2012 Elliott Hughes <enh@google.com> am 90f12e0b: am 4535e29e: am a177aa50: Merge "Use 0xde as the poison value after JIT code cache reset."

* commit '90f12e0b4b08b9776b02580b223ec8968a5725b0':
Use 0xde as the poison value after JIT code cache reset.
90f12e0b4b08b9776b02580b223ec8968a5725b0 18-Sep-2012 Elliott Hughes <enh@google.com> am 4535e29e: am a177aa50: Merge "Use 0xde as the poison value after JIT code cache reset."

* commit '4535e29e384a400a62fe259674565c0e21c4c182':
Use 0xde as the poison value after JIT code cache reset.
4535e29e384a400a62fe259674565c0e21c4c182 18-Sep-2012 Elliott Hughes <enh@google.com> am a177aa50: Merge "Use 0xde as the poison value after JIT code cache reset."

* commit 'a177aa50c665e97f92ee7519ed9d32b0e89e84d3':
Use 0xde as the poison value after JIT code cache reset.
a177aa50c665e97f92ee7519ed9d32b0e89e84d3 18-Sep-2012 Elliott Hughes <enh@google.com> Merge "Use 0xde as the poison value after JIT code cache reset."
474c8abbcaf0ac55973b9f2afd5b1438fef7fd5b 17-Sep-2012 Ben Cheng <bccheng@google.com> Use 0xde as the poison value after JIT code cache reset.

(cherry-pick of 60497bbcee68d98b2bdcb3fb64682b00d61b942d.)

Change-Id: I4f8c1bac2ac3bdc1d931e91f3e2e8038fe4c2b5a
m/compiler/codegen/arm/ArchUtility.cpp
ae341c385bd23d73212e07e8e1c8bb5092c0e585 17-Sep-2012 Ben Cheng <bccheng@google.com> Merge "Use 0xde as the poison value after JIT code cache reset." into jb-mr1-dev
60497bbcee68d98b2bdcb3fb64682b00d61b942d 17-Sep-2012 Ben Cheng <bccheng@google.com> Use 0xde as the poison value after JIT code cache reset.

Change-Id: Ic25ede5bcd988f240d8c24df6bc5da81e2b03249
m/compiler/codegen/arm/ArchUtility.cpp
8b2847130dcab9ef2176f9c301f05b49cce1a71e 16-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
dde72bb4edd23a319c02be9fcb3ee79757b26869 14-Sep-2012 Elliott Hughes <enh@google.com> am 8e80f76a: am d207be35: am f31a0600: Merge "Optimize those StrictMath routines that are identical to Math routines."

* commit '8e80f76abdeedb75ca0837545f6c33c2c452a928':
Optimize those StrictMath routines that are identical to Math routines.
8e80f76abdeedb75ca0837545f6c33c2c452a928 14-Sep-2012 Elliott Hughes <enh@google.com> am d207be35: am f31a0600: Merge "Optimize those StrictMath routines that are identical to Math routines."

* commit 'd207be351aa5f8707a7829fc5cfd602b69b5bcc5':
Optimize those StrictMath routines that are identical to Math routines.
d207be351aa5f8707a7829fc5cfd602b69b5bcc5 14-Sep-2012 Elliott Hughes <enh@google.com> am f31a0600: Merge "Optimize those StrictMath routines that are identical to Math routines."

* commit 'f31a0600bb84e04280440c84a5966a624a89e117':
Optimize those StrictMath routines that are identical to Math routines.
f31a0600bb84e04280440c84a5966a624a89e117 14-Sep-2012 Elliott Hughes <enh@google.com> Merge "Optimize those StrictMath routines that are identical to Math routines."
6986bcfd1cdeafb594203fee605ebed456fe83c3 14-Sep-2012 Elliott Hughes <enh@google.com> Optimize those StrictMath routines that are identical to Math routines.

We can just use the existing Math intinsics.

Bug: 7146208
Change-Id: I9e78d33cf65a5dcc5a7c0133e67bd9c3c1e43f23
m/InlineNative.cpp
m/InlineNative.h
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/mips/CodegenDriver.cpp
84f9ec67802f26e4db7aa737c65532293787d179 13-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
c524d17cc39e429e4c6398f6c8f7d428bdc6885a 12-Sep-2012 Jeff Sharkey <jsharkey@android.com> Merge "Missing EMULATED_STORAGE_TARGET isn't an error." into jb-mr1-dev
acc6d354dbe440abdea964e791d826701feba035 12-Sep-2012 The Android Open Source Project <initial-contribution@android.com> am 91a17e5e: (-s ours) Reconcile with jb-release - do not merge

* commit '91a17e5e78ddc49b761133151831770379dc777f':
Test if new build is kicked off.
91a17e5e78ddc49b761133151831770379dc777f 12-Sep-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-release - do not merge

Change-Id: I20cffa47e360af1eac86d8a04aa53441f9260bc6
b921944f1082d777c994b00e0737020ba3ca5ce7 12-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
851248a4b89294bd86974189939990242ef36ae0 12-Sep-2012 Jeff Sharkey <jsharkey@android.com> Missing EMULATED_STORAGE_TARGET isn't an error.

Devices without emulated storage should just skip the tmpfs.

Bug: 7131382
Change-Id: I9c697e4faf7864ec3a2695cd3770fbf0c9a5cce3
m/Init.cpp
1f36c8128f4130f190faecc6bb24a6853deccd38 12-Sep-2012 Ben Cheng <bccheng@google.com> Test if new build is kicked off.

Change-Id: Ia6a25f00cb28e80111b78d87180575d57c55b062
m/Init.cpp
d8de46c475830792eeb6fb0f7b59aab51f55e817 08-Sep-2012 Jeff Sharkey <jsharkey@android.com> Include user identifier in external storage paths.

When building external storage paths, always include user in path
to enable cross-user paths and aid debugging.

Each Zygote process continues to only have access to the appropriate
user-specific emulated storage through bind mounts. A second set of
mounts continue supporting legacy /sdcard-style paths. For example,
a process running as owner has these mount points:

/storage/emulated_legacy
/storage/emulated_legacy/Android/obb
/storage/emulated/0
/storage/emulated/obb

This change also creates two nested namespaces around zygote. The
first namespace is created when the zygote starts, and it holds a
single writable tmpfs, since rootfs is ro. The second namespace is
created quickly after forking, and is used to hold the private
user-specific bind mounts. (This design saves us from creating a
tmpfs-per-process.)

Bug: 7131382
Change-Id: Id80403ec956f0bff6997411cb1f82f273c76b85f
m/Init.cpp
m/native/dalvik_system_Zygote.cpp
15e631eb8bdee248b350fd3eee0b7aa04378eb98 01-Sep-2012 Jesse Wilson <jwilson@squareup.com> Fix an ugly bug where try/catch offsets weren't being mapped properly. do not merge.

In dex files, there are several places where one object refers
to another object by its position in the file. The dex merger
is generally very careful to adjust these mappings when combining
dex files.

Unfortunately one of these cases was broken. Each try_item refers
to a corresponding encoded_catch_handler by its byte offset in a
list. Most of the time this byte offset is the same in the input
dex file and the output dex file. But encoded_catch_handlers are
variable-length because they use a variable-length uleb128 encoding
to address the type_idx being caught. When dex files are merged,
some exception types may go from having a small index to having
a large index, increasing the number of bytes required to encode
that index. This breaks our ability to directly copy over offsets
as we were doing previously.

Bug: http://code.google.com/p/android/issues/detail?id=36490

(cherry picked from commit d43341a24abe339d474b0b0d92669917ae2eb9bf)

Change-Id: I4e6ab791925a918513122b46e039c02dfef62ace
x/src/com/android/dx/dex/SizeOf.java
x/src/com/android/dx/io/Code.java
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
52dc08d463f7c44a01acacfd30d23768c73fa78a 01-Sep-2012 Jesse Wilson <jwilson@squareup.com> Fix a bug where the max blowup of annotations was incorrect. do not merge.

I'm not sure where the 1.34 number comes from but it's incorrect.
From the spec, the encoded_annotation is made up of a single byte
plus an unlimited number of uleb128 values. Each of these values
can double in width in the worst case. I received (personal) email
from one user who'd run into a case worse than the incorrect 1.34
limit.

(cherry picked from commit bf7dfeea94f21dd0e097cf5f786f9995722fd70d)

Change-Id: I033a0d76ea0324d434d732e7757df0c3fd925b68
x/src/com/android/dx/merge/DexMerger.java
963b13a8d955af94bffa1231a79614f3e7f7a1e5 23-Aug-2012 Jesse Wilson <jwilson@squareup.com> Fix a bug where debugInfos' size wasn't being computed. do not merge.

Previously debugInfos' size of 0 caused a malformed dex file
because debug data was present but not mentioned in the table
of contents.

(cherry picked from commit 55ac44b64744cd5692d6495bca99dfc8181e0cfc)

Change-Id: I2084c06521ea200772c523cdaa28c8019fa76025
x/src/com/android/dx/merge/DexMerger.java
8f1a2d3543d7e8832144e7f3a74b62afd1f0359a 06-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
21c93dc795dfbea3932e0273b1aa873051dde72c 06-Sep-2012 Jeff Sharkey <jsharkey@android.com> Remove /sdcard hack for shell users.

Using a /storage/sdcard0 symlink and a tmpfs staging area was used
to enable "/sdcard" paths for both zygote processes and the shell
user, but it breaks on devices with both emulated and physical
external storage.

Specifically, vold can't mount a physical sdcard onto the primary
storage symlink, and zygote can't re-bind-mount when secondary
storage is remounted after dropping privileges.

Bug: 7094858, 7064600
Change-Id: Id91e3b3e521a3b3e1bb5358920adc66a0a43917f
m/native/dalvik_system_Zygote.cpp
aa5ba91402f60e6beba38d45903a71366ad3c9c1 05-Sep-2012 Ian Rogers <irogers@google.com> am e599c468: am cfeacbdd: Merge "Remove unnecessary compiler pragma."

* commit 'e599c4684ac47fe6417b9c482b7ff651513988ff':
Remove unnecessary compiler pragma.
e599c4684ac47fe6417b9c482b7ff651513988ff 05-Sep-2012 Ian Rogers <irogers@google.com> am cfeacbdd: Merge "Remove unnecessary compiler pragma."

* commit 'cfeacbdd0cdd71a7974ac623e6534d0221d93ed9':
Remove unnecessary compiler pragma.
cfeacbdd0cdd71a7974ac623e6534d0221d93ed9 05-Sep-2012 Ian Rogers <irogers@google.com> Merge "Remove unnecessary compiler pragma."
f669470f8298e87b7cf172cff27a26a00e524a1b 05-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
2004e4eb058ca637f44501f738258b27a93b3f5b 05-Sep-2012 Jean-Philippe Lesot <jplesot@google.com> am 86e036a8: am e6516a53: Merge "Fix an ugly bug where try/catch offsets weren\'t being mapped properly."

* commit '86e036a83d596ebacb20c87c8f7bd8a8dfa98d9c':
Fix an ugly bug where try/catch offsets weren't being mapped properly.
86e036a83d596ebacb20c87c8f7bd8a8dfa98d9c 05-Sep-2012 Jean-Philippe Lesot <jplesot@google.com> am e6516a53: Merge "Fix an ugly bug where try/catch offsets weren\'t being mapped properly."

* commit 'e6516a5395a20f2bf923753e4dd87ffd304074fb':
Fix an ugly bug where try/catch offsets weren't being mapped properly.
e6516a5395a20f2bf923753e4dd87ffd304074fb 05-Sep-2012 Jean-Philippe Lesot <jplesot@google.com> Merge "Fix an ugly bug where try/catch offsets weren't being mapped properly."
b760cb537b8a63e23055ede9b1fcc11952c01785 05-Sep-2012 Jean-Philippe Lesot <jplesot@google.com> am 93ee4913: am f3b60d2f: Merge "Fix a bug where the max blowup of annotations was incorrect."

* commit '93ee4913aa3d9a6b23f303fe0d03a0d07a8ae4d2':
Fix a bug where the max blowup of annotations was incorrect.
93ee4913aa3d9a6b23f303fe0d03a0d07a8ae4d2 05-Sep-2012 Jean-Philippe Lesot <jplesot@google.com> am f3b60d2f: Merge "Fix a bug where the max blowup of annotations was incorrect."

* commit 'f3b60d2f07280dd6b0753223d4590e11e18a3985':
Fix a bug where the max blowup of annotations was incorrect.
f3b60d2f07280dd6b0753223d4590e11e18a3985 05-Sep-2012 Jean-Philippe Lesot <jplesot@google.com> Merge "Fix a bug where the max blowup of annotations was incorrect."
d60fc021aac8db478fd2a04e50ff4cb15f9b7083 03-Sep-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
bf7dfeea94f21dd0e097cf5f786f9995722fd70d 01-Sep-2012 Jesse Wilson <jwilson@squareup.com> Fix a bug where the max blowup of annotations was incorrect.

I'm not sure where the 1.34 number comes from but it's incorrect.
From the spec, the encoded_annotation is made up of a single byte
plus an unlimited number of uleb128 values. Each of these values
can double in width in the worst case. I received (personal) email
from one user who'd run into a case worse than the incorrect 1.34
limit.

Change-Id: I3b676e6d2b274aaa538ca61ce23945b3d49aff04
x/src/com/android/dx/merge/DexMerger.java
d43341a24abe339d474b0b0d92669917ae2eb9bf 01-Sep-2012 Jesse Wilson <jwilson@squareup.com> Fix an ugly bug where try/catch offsets weren't being mapped properly.

In dex files, there are several places where one object refers
to another object by its position in the file. The dex merger
is generally very careful to adjust these mappings when combining
dex files.

Unfortunately one of these cases was broken. Each try_item refers
to a corresponding encoded_catch_handler by its byte offset in a
list. Most of the time this byte offset is the same in the input
dex file and the output dex file. But encoded_catch_handlers are
variable-length because they use a variable-length uleb128 encoding
to address the type_idx being caught. When dex files are merged,
some exception types may go from having a small index to having
a large index, increasing the number of bytes required to encode
that index. This breaks our ability to directly copy over offsets
as we were doing previously.

Bug: http://code.google.com/p/android/issues/detail?id=36490
Change-Id: I3bdadf20899fdb5d4d074e69103b33c0404a31f8
x/src/com/android/dx/dex/SizeOf.java
x/src/com/android/dx/io/Code.java
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
45ffaef820370a176097e2987a27e9169d1f8869 12-Jun-2012 Xavier Ducrohet <xav@android.com> Make dex merging stateless. do not merge.

This is required to run dx in Eclipse which doesn't unload the dx
library after each run.

(cherry-pick of 7aa5ce7e990dc3766eba97cd0932b62e4de21503.)

(cherry picked from commit 5e90165d5918f18aec0964bc475f4064e9143599)

Change-Id: Id5818f516539d13423b7cef4b2b1af30a9686b45
x/src/com/android/dx/command/dexer/Main.java
822a722b412511cd1322d9d32107981c009c470c 08-Jun-2012 Elliott Hughes <enh@google.com> Support debug info in dexmerge. do not merge.

Bug: 4090053

Signed-off-by: Jesse Wilson <jesse@swank.ca>

(cherry picked from commit bc23c4f3ebaefebb3f1be7732767631f91e165ea)

Change-Id: Ic59d3cc1866c2e4328e406f22cb23fc08d5c6d91
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
a018360cab83a505d9f50338df20e4d495e4424d 30-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Access to all users' external storage." into jb-mr1-dev
e66f926bf413bbf3f1cde05bbe50b83043829056 30-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Shared OBB storage across users." into jb-mr1-dev
ba471b55fea7a3cec473289ab6ed39a06068a3d9 30-Aug-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
f646cb9e717e4937255ae8bd72bed212b275de44 30-Aug-2012 Elliott Hughes <enh@google.com> am 8e98f776: am 3e46814d: Merge "Don\'t crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup."

* commit '8e98f7761d88d0230305d1855e4f418fe3554398':
Don't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup.
8e98f7761d88d0230305d1855e4f418fe3554398 30-Aug-2012 Elliott Hughes <enh@google.com> am 3e46814d: Merge "Don\'t crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup."

* commit '3e46814d8984243612176c9b15d8d012dcca2143':
Don't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup.
3e46814d8984243612176c9b15d8d012dcca2143 30-Aug-2012 Elliott Hughes <enh@google.com> Merge "Don't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup."
4bccb689a800df1f34c7b9e35381ccbea20beb18 30-Aug-2012 Elliott Hughes <enh@google.com> Don't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup.

dalvikvm --help would fail here:

#0 __pthread_mutex_destroy (mutex=0x0) at pthread_mutex_destroy.c:28
#1 0xf7b36e13 in dvmDestroyMutex (pMutex=0x0) at dalvik/vm/Thread.h:465
#2 dvmQuasiAtomicsShutdown () at dalvik/vm/Atomic.cpp:188
#3 0xf7b65781 in dvmShutdown () at dalvik/vm/Init.cpp:1889
#4 0xf7b65f31 in ~ScopedShutdown (this=<synthetic pointer>, __in_chrg=<optimized out>) at dalvik/vm/Init.cpp:1317
#5 dvmStartup (argc=11, argv=0x804b360, ignoreUnrecognized=false, pEnv=0x804b398) at dalvik/vm/Init.cpp:1548
#6 0xf7b790e2 in JNI_CreateJavaVM (p_vm=0xffffc758, p_env=0xffffc75c, vm_args=0xffffc760) at dalvik/vm/Jni.cpp:3502
#7 0x08048958 in main (argc=13, argv=0xffffc8b8) at dalvik/dalvikvm/Main.cpp:212

Change-Id: I8c833ca5ea454d9b2d1714a569fb728562088659
m/Atomic.cpp
aee874277d611c7535b559b009e9ec2d8d7025d3 29-Aug-2012 Ian Rogers <irogers@google.com> Remove unnecessary compiler pragma.

With dlmalloc 2.8.6 the compiler pragmas to suppress warnings are not
necessary.
Remove unnecessary dlmalloc dl prefix #define.

Depends upon: https://android-review.googlesource.com/42351

Change-Id: Idc45cee9342efec0aab63d5172b3308a0fca3c4f
m/alloc/DlMalloc.cpp
m/alloc/DlMalloc.h
cdfcc0f7cbcae8f9cf56e43c197a5ba00c9fb047 29-Aug-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
e2c102c93964401ce913d880d7973c5ae9b9e8f4 29-Aug-2012 Jeff Sharkey <jsharkey@android.com> Access to all users' external storage.

System services holding this permission have external storage bound
one level higher, giving them access to all users' files.

Bug: 7003520
Change-Id: Id95d6d5b2fa2ff75c0c94f18f81cb118f837f665
m/native/dalvik_system_Zygote.cpp
2f30ef57ceb02ee5d6719d2158bd9bca4723687d 29-Aug-2012 Ian Rogers <irogers@google.com> Revert "Revert "Trim pre-Zygote fork, fix under-estimate of heap limit.""

This reverts commit 4c7e27186d87ccd40646fd4f514dc982ff5b40b1.
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
m/alloc/MarkSweep.cpp
808a7c0e7e39b7ca3c7db1366e6e4089166052bb 29-Aug-2012 Ian Rogers <irogers@google.com> Revert "Revert "Upgrade to dlmalloc 2.8.5.""

This reverts commit 729eebbb4e4ec5b826b7230b4c02267da341b70b.
m/Dvm.mk
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/alloc/DlMalloc.cpp
m/alloc/DlMalloc.h
m/alloc/Heap.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
a8c56490e730052cf196b79135c44c679b42dd56 28-Aug-2012 Jeff Sharkey <jsharkey@android.com> Shared OBB storage across users.

To avoid downloading large OBB files separately for each user,
provide a shared view of /sdcard/Android/obb to all apps. This new
shared view is read-only by default, but it's mounted writable if
an app requests the WRITE_EXTERNAL_OBB_STORAGE permission.

Bug: 7008879
Change-Id: Ibc6a3dbf360bf1b9d356bf52595201d155ff73b8
m/native/dalvik_system_Zygote.cpp
a78e89c828cbb8a6befecf6c703612309b85d448 28-Aug-2012 Jean-Philippe Lesot <jplesot@google.com> am 4014e152: am a5731795: Merge "Correctly handle switches on values in a high register"

* commit '4014e152c86a0a6929382f8ac767d572ada21042':
Correctly handle switches on values in a high register
4014e152c86a0a6929382f8ac767d572ada21042 28-Aug-2012 Jean-Philippe Lesot <jplesot@google.com> am a5731795: Merge "Correctly handle switches on values in a high register"

* commit 'a57317952de3fc37876f97e8655cc773b97df891':
Correctly handle switches on values in a high register
a57317952de3fc37876f97e8655cc773b97df891 28-Aug-2012 Jean-Philippe Lesot <jplesot@google.com> Merge "Correctly handle switches on values in a high register"
67510b1b21114fa5cf47758d350059c9743fb7db 28-Aug-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
46f57f4da2f75daadda008d28f9199f9e971f087 28-Aug-2012 Elliott Hughes <enh@google.com> am cc686898: am f6104618: Merge "Fix a bug where debugInfos\' size wasn\'t being computed."

* commit 'cc68689852b84b244ca393d748836f54cae5b5a7':
Fix a bug where debugInfos' size wasn't being computed.
cc68689852b84b244ca393d748836f54cae5b5a7 28-Aug-2012 Elliott Hughes <enh@google.com> am f6104618: Merge "Fix a bug where debugInfos\' size wasn\'t being computed."

* commit 'f610461867348df0c5a624d75f39b34071044fb2':
Fix a bug where debugInfos' size wasn't being computed.
f610461867348df0c5a624d75f39b34071044fb2 27-Aug-2012 Elliott Hughes <enh@google.com> Merge "Fix a bug where debugInfos' size wasn't being computed."
8cdeca33142e87fe060ab664490344ed2a693fa0 27-Aug-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
fc2d0f2a17167756d0e4a03c3de9f63f8f301674 24-Aug-2012 Ian Rogers <irogers@google.com> am f76ab40f: am ecda5d85: Merge "Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test"

* commit 'f76ab40f7065b4e0202b83b8a7a0c4175d695801':
Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test
f76ab40f7065b4e0202b83b8a7a0c4175d695801 24-Aug-2012 Ian Rogers <irogers@google.com> am ecda5d85: Merge "Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test"

* commit 'ecda5d8585466d63f185ff09047643e9bd9cb261':
Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test
ecda5d8585466d63f185ff09047643e9bd9cb261 24-Aug-2012 Ian Rogers <irogers@google.com> Merge "Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test"
4c7e27186d87ccd40646fd4f514dc982ff5b40b1 24-Aug-2012 Ian Rogers <irogers@google.com> Revert "Trim pre-Zygote fork, fix under-estimate of heap limit."

This reverts commit 2f8d5e11f735e9ee8e235c31b3f113f6c90ad63c.
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
m/alloc/MarkSweep.cpp
f314511baafba3a20d370d8128931c1586948eb2 24-Aug-2012 Brian Carlstrom <bdc@google.com> am 6464661f: am b48569ac: Merge "Fix build warning."

* commit '6464661ff5ca7dd83f60f68e7b40af0ed3ec8760':
Fix build warning.
df6983ae4d02247277502479179167aa64d94a4f 24-Aug-2012 Ian Rogers <irogers@google.com> am bd561cbf: am a9dd9337: Merge "Trim pre-Zygote fork, fix under-estimate of heap limit."

* commit 'bd561cbffebbff1a8b17e031841ab2fcd2777cff':
Trim pre-Zygote fork, fix under-estimate of heap limit.
6464661ff5ca7dd83f60f68e7b40af0ed3ec8760 24-Aug-2012 Brian Carlstrom <bdc@google.com> am b48569ac: Merge "Fix build warning."

* commit 'b48569acbb7b3702f1071befa5ebfeae7a46303b':
Fix build warning.
b48569acbb7b3702f1071befa5ebfeae7a46303b 24-Aug-2012 Brian Carlstrom <bdc@google.com> Merge "Fix build warning."
08dcaeddf9c4b3d8cdbb00c39b472752d3609951 23-Aug-2012 Ying Wang <wangying@google.com> Fix build warning.

Change-Id: I1f9813c9dc1dfc388f82f37584fe60256b6a8b12
x/junit-tests/Android.mk
63118a85fe3e6d8a85c7f45373d946a0e0c99d28 23-Aug-2012 Jeff Sharkey <jsharkey@android.com> One more errno for encrypted devices.

Bug: 7017585
Change-Id: I4c2cc95a5c3a44bab4a93f3a1f8907869f0ce8e6
m/native/dalvik_system_Zygote.cpp
bd561cbffebbff1a8b17e031841ab2fcd2777cff 23-Aug-2012 Ian Rogers <irogers@google.com> am a9dd9337: Merge "Trim pre-Zygote fork, fix under-estimate of heap limit."

* commit 'a9dd9337605a610841c86fe1bd90a8fa9b8d28c9':
Trim pre-Zygote fork, fix under-estimate of heap limit.
a9dd9337605a610841c86fe1bd90a8fa9b8d28c9 23-Aug-2012 Ian Rogers <irogers@google.com> Merge "Trim pre-Zygote fork, fix under-estimate of heap limit."
33c8ae5bb1bb8052680108d999c608df8c72a613 22-Aug-2012 Mathieu Chartier <mathieuc@google.com> Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test

Fixes the GC aspect of the regression in FrameworkTest for Gc.
Large bitmap test seems to be unaffected.

Changes are:
We now have minimum sleep of 1ms instead of 10ms in dvmSuspendAll.
Some heuristics to avoid doing extra GCs if an allocation waited for a concurrent Gc.

Change-Id: I3797c7dc813e26bd1f7bb0a9dbe55eb70dd1c9c9
m/Misc.cpp
m/alloc/Heap.cpp
m/alloc/Heap.h
42106ef49501a0c72cda9e80b81e82b8254390ab 23-Aug-2012 Ying Wang <wangying@google.com> Merge "Fix build warning." into jb-mr1-dev
4daf32f904b0a0dc2378278d3a7a79fe7c85ebb4 23-Aug-2012 Ying Wang <wangying@google.com> Fix build warning.

Change-Id: I1f9813c9dc1dfc388f82f37584fe60256b6a8b12
x/junit-tests/Android.mk
af02f57404b28590b34fa3777a381c13e3c956eb 23-Aug-2012 Jeff Sharkey <jsharkey@android.com> One more errno for encrypted devices.

Bug: 7017585
Change-Id: I4c2cc95a5c3a44bab4a93f3a1f8907869f0ce8e6
m/native/dalvik_system_Zygote.cpp
1ff1627ff7b4d1d0bb023146ce81a2c953a3b045 23-Aug-2012 The Android Automerger <android-build@android.com> merge in jb-mr1-release history after reset to jb-mr1-dev
55ac44b64744cd5692d6495bca99dfc8181e0cfc 23-Aug-2012 Jesse Wilson <jwilson@squareup.com> Fix a bug where debugInfos' size wasn't being computed.

Previously debugInfos' size of 0 caused a malformed dex file
because debug data was present but not mentioned in the table
of contents.

Change-Id: I07171aaee12fef9f303fc505909f44ef1a714114
x/src/com/android/dx/merge/DexMerger.java
2f8d5e11f735e9ee8e235c31b3f113f6c90ad63c 23-Aug-2012 Ian Rogers <irogers@google.com> Trim pre-Zygote fork, fix under-estimate of heap limit.

Card scanning uses dvmHeapSourceGetValue to scan from the heap base to
the total foot print of the heap. Trimming the Zygote may lower the
footprint of the heap by creating a hole in the middle. This hole is
unaccounted for in the card scanning leading to missed dirty cards.

This was a regression introduced by:
https://android-review.googlesource.com/#/c/41728/
as it didn't #define MORECORE_CANNOT_TRIM 1 that was previously defined
here:
https://android-review.googlesource.com/#/c/41731/4/libcutils/mspace.c

Introduce a notion of dvmHeapSourceGetLimit so that card scanning
doesn't rely on footprint. Trim the heap before forking the Zygote. This
change continues to enable morecore trimming of mspaces.

Change-Id: I3f0b12371097f50a1f920cac25846ca08685e7ed
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
m/alloc/MarkSweep.cpp
40c69d949e67fe2cc2cccf4dd16b2f9fdabea396 23-Aug-2012 Ben Gruver <bgruv@google.com> Correctly handle switches on values in a high register

When dx generates a switch on a value in a high register, it prepends a move
instruction, to move the value to a low register. However, this causes the
switch data pseudo-instruction to use address of the move instruction as the
base address of the switch targets, rather than the address of the switch
instruction

Change-Id: I0708d35ec3059c30221cd0a64f426244411d31ea
x/src/com/android/dx/dex/code/CodeAddress.java
x/src/com/android/dx/dex/code/OutputFinisher.java
x/src/com/android/dx/dex/code/RopTranslator.java
x/tests/122-switch-with-high-register/Blort.java
x/tests/122-switch-with-high-register/expected.txt
x/tests/122-switch-with-high-register/info.txt
x/tests/122-switch-with-high-register/run
b88891a2f40a47aef0cab76dc5b696812359f8bb 23-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Iteration on multi-user external storage." into jb-mr1-dev
f84ce753c2bec26e3ce7c2e627951dc3aaafa572 22-Aug-2012 Jeff Sharkey <jsharkey@android.com> Iteration on multi-user external storage.

Zygote now mounts a tmpfs over any existing /storage contents, giving
it a clean slate for its bind mounts. This supports a symlink that
enables legacy /sdcard paths for shell users. Move to using paths
defined from environment variables, instead of header files.

Bug: 6925012
Change-Id: Ia4a2ac35ecfe98b617c27ff3bd73deb29e395e55
m/native/dalvik_system_Zygote.cpp
497b25e87a51b4afd206ba7734971614d00301fb 22-Aug-2012 Brian Carlstrom <bdc@google.com> Revert "Upgrade to dlmalloc 2.8.5."

This reverts commit bba37bd191843ef29ef9c7a8839e98b73debfffa.
m/Dvm.mk
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/alloc/DlMalloc.cpp
m/alloc/DlMalloc.h
m/alloc/Heap.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
3a874b4610df8c2623823dded604858448882109 22-Aug-2012 Brian Carlstrom <bdc@google.com> Revert "Ensure we fence the writing of clazz to an Object post allocation."

This reverts commit 821ab588af4566a800d4b5608092ccc1dd3764af.
m/oo/Object.h
729eebbb4e4ec5b826b7230b4c02267da341b70b 22-Aug-2012 Brian Carlstrom <bdc@google.com> Revert "Upgrade to dlmalloc 2.8.5."

This reverts commit bba37bd191843ef29ef9c7a8839e98b73debfffa.
m/Dvm.mk
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/alloc/DlMalloc.cpp
m/alloc/DlMalloc.h
m/alloc/Heap.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
3b93aad3e70c0b369ce922d92e5ab154320c401c 22-Aug-2012 Brian Carlstrom <bdc@google.com> Revert "Ensure we fence the writing of clazz to an Object post allocation."

This reverts commit 821ab588af4566a800d4b5608092ccc1dd3764af.
m/oo/Object.h
821ab588af4566a800d4b5608092ccc1dd3764af 22-Aug-2012 Ian Rogers <irogers@google.com> Ensure we fence the writing of clazz to an Object post allocation.

We hold the heap lock during the calloc of an object in the GCed heap.
We do a non-volatile store following this for the clazz, this may lead to a
race where an object is allocated but appears to have no clazz.

Found investigating Bug: 7028104

Change-Id: I390ad4c7b9632127bd27393742be347b84d9269a
m/oo/Object.h
a20bc3bada66210e4fb76352bf29cb3c2b41f7b3 21-Aug-2012 Brian Carlstrom <bdc@google.com> am 1129f6a7: am b931f906: Merge "Upgrade to dlmalloc 2.8.5."

* commit '1129f6a78708a8d8861f8053616c3961aefdc1ef':
Upgrade to dlmalloc 2.8.5.
1129f6a78708a8d8861f8053616c3961aefdc1ef 21-Aug-2012 Brian Carlstrom <bdc@google.com> am b931f906: Merge "Upgrade to dlmalloc 2.8.5."

* commit 'b931f9065990520bf34b8c6128e069b4cca4a7ec':
Upgrade to dlmalloc 2.8.5.
b931f9065990520bf34b8c6128e069b4cca4a7ec 21-Aug-2012 Brian Carlstrom <bdc@google.com> Merge "Upgrade to dlmalloc 2.8.5."
bba37bd191843ef29ef9c7a8839e98b73debfffa 18-Aug-2012 Ian Rogers <irogers@google.com> Upgrade to dlmalloc 2.8.5.

Switch to using dlmalloc 2.8.5. Define mspace functionality directly
using dlmalloc rather than taking from libcutils.
Remove growth limit check in tryMalloc that only checks initial growth
limit.
Implement trimming at the end of the mspace.

Depends upon: https://android-review.googlesource.com/41717

Change-Id: Ia2c6b50bdb0b0d5aae4b18deefbd1bf50dfa49d5
m/Dvm.mk
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/alloc/DlMalloc.cpp
m/alloc/DlMalloc.h
m/alloc/Heap.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
15e3b32a0a6dd9788ce2a5fad07600b8aa26fb38 16-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Multi-user external storage support." into jb-mr1-dev
404535b7434441ac741a1f33d747c1cb4103d633 11-Aug-2012 Jeff Sharkey <jsharkey@android.com> Multi-user external storage support.

When a specialized zygote process needs external storage access,
create a private mount namespace and create a bind mount to give
them access. Support both single-user and multi-user modes, which
dictate the bind mount source.

Bug: 6925012
Change-Id: Ib987ba09f59ce03a6aeb9ee8bcb522965a2dfb67
m/native/dalvik_system_Zygote.cpp
55e323d4a2d794dc3b00c34fc05602647591da39 13-Aug-2012 Elliott Hughes <enh@google.com> am 031072f0: am 57573862: Merge "hardening: eliminate all text relocations from lidbvm"

* commit '031072f007d3ffd0d2facd6277005f2dac93c19c':
hardening: eliminate all text relocations from lidbvm
031072f007d3ffd0d2facd6277005f2dac93c19c 13-Aug-2012 Elliott Hughes <enh@google.com> am 57573862: Merge "hardening: eliminate all text relocations from lidbvm"

* commit '57573862ca6b377c73958d5ba876a406445b4490':
hardening: eliminate all text relocations from lidbvm
57573862ca6b377c73958d5ba876a406445b4490 13-Aug-2012 Elliott Hughes <enh@google.com> Merge "hardening: eliminate all text relocations from lidbvm"
5dfcc78af479937ba8dafceefd9b1931a88dfaaf 11-Aug-2012 Ard Biesheuvel <ard.biesheuvel@gmail.com> hardening: eliminate all text relocations from lidbvm

This patch consists of:
- changes to mterp/ that turn all literals from absolute
to PC relative, so the relocations can be resolved at
(build) link time
- changes to compiler/template/ that result in the
compiler templates to live in the non-executable
.data.rel.ro section (this code is never executed
directly, only from the jit heap, so there is no
reason to put it in the .text section)

Change-Id: I2dc97bd4720b393a74b7277a188f0c7b681fc932
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@gmail.com>
m/compiler/template/armv5te/footer.S
m/compiler/template/gen-template.py
m/compiler/template/ia32/footer.S
m/compiler/template/mips/footer.S
m/compiler/template/out/CompilerTemplateAsm-armv5te-vfp.S
m/compiler/template/out/CompilerTemplateAsm-armv5te.S
m/compiler/template/out/CompilerTemplateAsm-armv7-a-neon.S
m/compiler/template/out/CompilerTemplateAsm-armv7-a.S
m/compiler/template/out/CompilerTemplateAsm-ia32.S
m/compiler/template/out/CompilerTemplateAsm-mips.S
m/mterp/armv5te/OP_EXECUTE_INLINE.S
m/mterp/armv5te/OP_EXECUTE_INLINE_RANGE.S
m/mterp/armv5te/OP_FILLED_NEW_ARRAY.S
m/mterp/armv5te/entry.S
m/mterp/armv5te/footer.S
m/mterp/common/asm-constants.h
m/mterp/out/InterpAsm-armv5te-vfp.S
m/mterp/out/InterpAsm-armv5te.S
m/mterp/out/InterpAsm-armv7-a-neon.S
m/mterp/out/InterpAsm-armv7-a.S
bdf72ad7ce2828837424ea93806acce62688e21d 07-Aug-2012 Elliott Hughes <enh@google.com> am 219a3f5f: am 21212cbd: Merge "Fix ALOGV bit rot."

* commit '219a3f5fdb4a8b85646037e2c09b3c7e408b1ec8':
Fix ALOGV bit rot.
219a3f5fdb4a8b85646037e2c09b3c7e408b1ec8 07-Aug-2012 Elliott Hughes <enh@google.com> am 21212cbd: Merge "Fix ALOGV bit rot."

* commit '21212cbd65aa7ec7d69f0c6f5b98794045f750a5':
Fix ALOGV bit rot.
21212cbd65aa7ec7d69f0c6f5b98794045f750a5 07-Aug-2012 Elliott Hughes <enh@google.com> Merge "Fix ALOGV bit rot."
bb046193c2da5d43a57b2fa8a17a0f634bf003ba 07-Aug-2012 Elliott Hughes <enh@google.com> Fix ALOGV bit rot.

Change-Id: Ia182af8f5ca3967a21003b3d1513145f8e6e5db0
m/DvmDex.cpp
m/Jni.cpp
m/jdwp/JdwpHandler.cpp
m/mterp/c/OP_APUT_OBJECT.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
d426cb39d2cdfcdacc41255a3c5732031833b7d0 06-Aug-2012 Elliott Hughes <enh@google.com> am aa1d0261: am 464388e8: Merge "Don\'t crash on invalid string/type ids."

* commit 'aa1d026167c9024bf08784527b5c4176ee8c6523':
Don't crash on invalid string/type ids.
aa1d026167c9024bf08784527b5c4176ee8c6523 06-Aug-2012 Elliott Hughes <enh@google.com> am 464388e8: Merge "Don\'t crash on invalid string/type ids."

* commit '464388e8756d362f91d110b5741ba785ea3d44bd':
Don't crash on invalid string/type ids.
464388e8756d362f91d110b5741ba785ea3d44bd 06-Aug-2012 Elliott Hughes <enh@google.com> Merge "Don't crash on invalid string/type ids."
82d489f4233acd46b51473971b73883cd5d4e5ab 06-Aug-2012 Elliott Hughes <enh@google.com> am 74f9cd03: am 8fb8c4de: Merge "RETURN_VOID_BARRIER is also a return."

* commit '74f9cd03d837538d311cc068bdd31cfd66eb014c':
RETURN_VOID_BARRIER is also a return.
74f9cd03d837538d311cc068bdd31cfd66eb014c 06-Aug-2012 Elliott Hughes <enh@google.com> am 8fb8c4de: Merge "RETURN_VOID_BARRIER is also a return."

* commit '8fb8c4de25c5c95019a06b37f17bb6d82b41f4ac':
RETURN_VOID_BARRIER is also a return.
35ecedd8eacfd38b833135170a38221b54476c86 06-Aug-2012 Elliott Hughes <enh@google.com> Don't crash on invalid string/type ids.

Bug: http://code.google.com/p/android/issues/detail?id=35934
Change-Id: I7bf31f6c80c794beb3554ad2f60ed5ebbca0c65e
exdump/DexDump.cpp
8fb8c4de25c5c95019a06b37f17bb6d82b41f4ac 06-Aug-2012 Elliott Hughes <enh@google.com> Merge "RETURN_VOID_BARRIER is also a return."
4fa9a95705253695d257381fdb12311f13d7638a 06-Aug-2012 Elliott Hughes <enh@google.com> RETURN_VOID_BARRIER is also a return.

Bug: http://code.google.com/p/android/issues/detail?id=36003
Change-Id: I7fb53b0898158a3ad7b0eb4f8385674ddaeffd60
m/interp/Interp.cpp
89e33ccf71d5ae71cae5e1001e0aa5a5d5828cd5 03-Aug-2012 Brian Carlstrom <bdc@google.com> am 93018cdc: am 0b79e282: Merge "Change dalvik script to use exec"

* commit '93018cdcc6d419b19587ad2e6622284a4b72742c':
Change dalvik script to use exec
93018cdcc6d419b19587ad2e6622284a4b72742c 03-Aug-2012 Brian Carlstrom <bdc@google.com> am 0b79e282: Merge "Change dalvik script to use exec"

* commit '0b79e2824eeb763ea82aa8ff544ef7b20ea7fdd5':
Change dalvik script to use exec
0b79e2824eeb763ea82aa8ff544ef7b20ea7fdd5 03-Aug-2012 Brian Carlstrom <bdc@google.com> Merge "Change dalvik script to use exec"
352ed2a3c2aa80fbd81ede8671572b61c045f3ce 03-Aug-2012 Brian Carlstrom <bdc@google.com> Change dalvik script to use exec

Change-Id: I0a82ced8ce31ae0e6916509a1c79b738c475ae18
m/dalvik
548a2df4db8f327ab55506cb92a9b2c2e6db4199 01-Aug-2012 Elliott Hughes <enh@google.com> am 339c627e: am 8ad6a746: Merge "Fix an array out-of-bound read in the JIT compiler."

* commit '339c627e690215687deca0b845932c220ee9ebb3':
Fix an array out-of-bound read in the JIT compiler.
339c627e690215687deca0b845932c220ee9ebb3 01-Aug-2012 Elliott Hughes <enh@google.com> am 8ad6a746: Merge "Fix an array out-of-bound read in the JIT compiler."

* commit '8ad6a74627b70166e594e15514f289a25eb8f721':
Fix an array out-of-bound read in the JIT compiler.
8ad6a74627b70166e594e15514f289a25eb8f721 01-Aug-2012 Elliott Hughes <enh@google.com> Merge "Fix an array out-of-bound read in the JIT compiler."
bd1b0d74bbf40c69e47863fab7ea99eac418c515 01-Aug-2012 Douglas Leung <douglas@mips.com> Fix an array out-of-bound read in the JIT compiler.

Without the fix the compiler is still safe since the offending memory access
is a read, though the hoisted distance is non-deterministic. The easiest and
safest fix is to unconditionally hoist a load when it can reach the
scheduling barrier.

Change-Id: I021161cb2a6e011301ab65ba62bc2a74af1cb552
Signed-off-by: Douglas Leung <douglas@mips.com>
m/compiler/codegen/mips/LocalOptimizations.cpp
478a8d25ba969fd59667e34bc74eadb5cc11bf7f 31-Jul-2012 Elliott Hughes <enh@google.com> am 5918aeff: am 5b861ab5: Merge "Fix the MIPS build: 1. LOG->ALOG conversion 2. Remove Jumbo opcodes support"

* commit '5918aeff98a37d3314ea485329a5d6f95b6941e1':
Fix the MIPS build: 1. LOG->ALOG conversion 2. Remove Jumbo opcodes support
5918aeff98a37d3314ea485329a5d6f95b6941e1 31-Jul-2012 Elliott Hughes <enh@google.com> am 5b861ab5: Merge "Fix the MIPS build: 1. LOG->ALOG conversion 2. Remove Jumbo opcodes support"

* commit '5b861ab5541e9806d6255f17769acad3c2b4029b':
Fix the MIPS build: 1. LOG->ALOG conversion 2. Remove Jumbo opcodes support
5b861ab5541e9806d6255f17769acad3c2b4029b 31-Jul-2012 Elliott Hughes <enh@google.com> Merge "Fix the MIPS build: 1. LOG->ALOG conversion 2. Remove Jumbo opcodes support"
fc3b0c4ba9e0ecabb0f6df1ceb6a3eb69da07c7b 30-Jul-2012 Raghu Gandham <raghu@mips.com> Fix the MIPS build:
1. LOG->ALOG conversion
2. Remove Jumbo opcodes support

Change-Id: Ifbd1eae2f5e7a1cab5828ebfbdba380ad499abfd
m/compiler/codegen/mips/ArchUtility.cpp
m/compiler/codegen/mips/Assemble.cpp
m/compiler/codegen/mips/CodegenCommon.cpp
m/compiler/codegen/mips/CodegenDriver.cpp
m/compiler/codegen/mips/CodegenFactory.cpp
m/compiler/codegen/mips/Mips32/Factory.cpp
m/compiler/codegen/mips/RallocUtil.cpp
m/compiler/codegen/mips/mips/ArchVariant.cpp
m/compiler/codegen/mips/mips/MethodCodegenDriver.cpp
2a81955288428ad0c449ea1962d81b7e5678b6a2 28-Jul-2012 The Android Open Source Project <initial-contribution@android.com> am 0396c17c: Reconcile with jb-release

* commit '0396c17c193e803d7f23d2a9f5b0d893ecab898e':
0396c17c193e803d7f23d2a9f5b0d893ecab898e 27-Jul-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-release

Change-Id: Id73f7a55edc5654069e7ce75f5545d3bff4448da
a13c9769fa098ef1f2100af670f5a35a5f161c9b 25-Jul-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
eb97cda6e80e599e13ed13f7f841ba758590e6a3 24-Jul-2012 Elliott Hughes <enh@google.com> am 505c1cad: am 37755063: Merge "Fix Method.getParameterAnnotations."

* commit '505c1cad45fe793d59842bfbf6bae1d9e195b427':
Fix Method.getParameterAnnotations.
505c1cad45fe793d59842bfbf6bae1d9e195b427 24-Jul-2012 Elliott Hughes <enh@google.com> am 37755063: Merge "Fix Method.getParameterAnnotations."

* commit '37755063648910ee919c22c3d15cd57092026633':
Fix Method.getParameterAnnotations.
37755063648910ee919c22c3d15cd57092026633 24-Jul-2012 Elliott Hughes <enh@google.com> Merge "Fix Method.getParameterAnnotations."
4f29f302c71d886db8ced57b6ede2d9cf41b30de 23-Jul-2012 Elliott Hughes <enh@google.com> Fix Method.getParameterAnnotations.

The dex format represents parameter annotations using an
annotation_set_ref_item for each parameter. According to the spec,
the item's annotation_offset can be "0 if there are no annotations for this
element". The Dalvik VM accepts 0 values in the verification step,
but Method#getParameterAnnotations then crashes with a segmentation fault.

Bug: http://code.google.com/p/android/issues/detail?id=35304
Change-Id: I0ac7336d369894520c8e17848ab6a91dbbd905e9
ibdex/DexFile.h
m/reflect/Annotation.cpp
d695c36ab400989bb6b2b1daf8f534fe1d9dc24c 21-Jul-2012 Elliott Hughes <enh@google.com> am 025a6d08: am b498bf42: Merge "[X86] X86 trace JIT compiler support"

* commit '025a6d088554fcdaa8c0e94231c4048749bf103a':
[X86] X86 trace JIT compiler support
025a6d088554fcdaa8c0e94231c4048749bf103a 20-Jul-2012 Elliott Hughes <enh@google.com> am b498bf42: Merge "[X86] X86 trace JIT compiler support"

* commit 'b498bf420d28aeab14384fcc12db54d00ede03d3':
[X86] X86 trace JIT compiler support
b498bf420d28aeab14384fcc12db54d00ede03d3 20-Jul-2012 Elliott Hughes <enh@google.com> Merge "[X86] X86 trace JIT compiler support"
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>
OTICE
ests/063-process-manager/src/Main.java
ests/etc/host-run-test-jar
m/Android.mk
m/Dvm.mk
m/Globals.h
m/Init.cpp
m/ReconfigureDvm.mk
m/Thread.h
m/arch/x86-atom/Call386ABI.S
m/arch/x86-atom/Hints386ABI.cpp
m/arch/x86/Call386ABI.S
m/compiler/Compiler.cpp
m/compiler/Compiler.h
m/compiler/CompilerIR.h
m/compiler/CompilerUtility.h
m/compiler/Frontend.cpp
m/compiler/Loop.cpp
m/compiler/codegen/CompilerCodegen.h
m/compiler/codegen/arm/ArchUtility.cpp
m/compiler/codegen/arm/Assemble.cpp
m/compiler/codegen/mips/ArchUtility.cpp
m/compiler/codegen/mips/Assemble.cpp
m/compiler/codegen/x86/AnalysisO1.cpp
m/compiler/codegen/x86/AnalysisO1.h
m/compiler/codegen/x86/ArchUtility.cpp
m/compiler/codegen/x86/Assemble.cpp
m/compiler/codegen/x86/BytecodeVisitor.cpp
m/compiler/codegen/x86/CalloutHelper.h
m/compiler/codegen/x86/Codegen.h
m/compiler/codegen/x86/CodegenDriver.cpp
m/compiler/codegen/x86/CodegenInterface.cpp
m/compiler/codegen/x86/Lower.cpp
m/compiler/codegen/x86/Lower.h
m/compiler/codegen/x86/LowerAlu.cpp
m/compiler/codegen/x86/LowerConst.cpp
m/compiler/codegen/x86/LowerGetPut.cpp
m/compiler/codegen/x86/LowerHelper.cpp
m/compiler/codegen/x86/LowerInvoke.cpp
m/compiler/codegen/x86/LowerJump.cpp
m/compiler/codegen/x86/LowerMove.cpp
m/compiler/codegen/x86/LowerObject.cpp
m/compiler/codegen/x86/LowerReturn.cpp
m/compiler/codegen/x86/NcgAot.cpp
m/compiler/codegen/x86/NcgAot.h
m/compiler/codegen/x86/NcgHelper.cpp
m/compiler/codegen/x86/NcgHelper.h
m/compiler/codegen/x86/Translator.h
m/compiler/codegen/x86/X86LIR.h
m/compiler/codegen/x86/ia32/ArchVariant.cpp
m/compiler/codegen/x86/ia32/ArchVariant.h
m/compiler/codegen/x86/ia32/CallingConvention.S
m/compiler/codegen/x86/ia32/Codegen.cpp
m/compiler/codegen/x86/libenc/Android.mk
m/compiler/codegen/x86/libenc/README.txt
m/compiler/codegen/x86/libenc/dec_base.cpp
m/compiler/codegen/x86/libenc/dec_base.h
m/compiler/codegen/x86/libenc/enc_base.cpp
m/compiler/codegen/x86/libenc/enc_base.h
m/compiler/codegen/x86/libenc/enc_defs.h
m/compiler/codegen/x86/libenc/enc_defs_ext.h
m/compiler/codegen/x86/libenc/enc_prvt.h
m/compiler/codegen/x86/libenc/enc_tabl.cpp
m/compiler/codegen/x86/libenc/enc_wrapper.cpp
m/compiler/codegen/x86/libenc/enc_wrapper.h
m/compiler/codegen/x86/libenc/encoder.cpp
m/compiler/codegen/x86/libenc/encoder.h
m/compiler/codegen/x86/libenc/encoder.inl
m/interp/Interp.cpp
m/interp/InterpDefs.h
m/interp/InterpState.h
m/interp/Jit.cpp
m/mterp/c/OP_EXECUTE_INLINE.cpp
m/mterp/c/OP_EXECUTE_INLINE_RANGE.cpp
m/mterp/config-x86-atom
m/mterp/out/InterpAsm-x86-atom.S
m/mterp/out/InterpAsm-x86.S
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/mterp/rebuild.sh
m/mterp/x86-atom/OP_ADD_DOUBLE.S
m/mterp/x86-atom/OP_ADD_DOUBLE_2ADDR.S
m/mterp/x86-atom/OP_ADD_FLOAT.S
m/mterp/x86-atom/OP_ADD_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_ADD_INT.S
m/mterp/x86-atom/OP_ADD_INT_2ADDR.S
m/mterp/x86-atom/OP_ADD_INT_LIT16.S
m/mterp/x86-atom/OP_ADD_INT_LIT8.S
m/mterp/x86-atom/OP_ADD_LONG.S
m/mterp/x86-atom/OP_ADD_LONG_2ADDR.S
m/mterp/x86-atom/OP_AGET.S
m/mterp/x86-atom/OP_AGET_BOOLEAN.S
m/mterp/x86-atom/OP_AGET_BYTE.S
m/mterp/x86-atom/OP_AGET_CHAR.S
m/mterp/x86-atom/OP_AGET_OBJECT.S
m/mterp/x86-atom/OP_AGET_SHORT.S
m/mterp/x86-atom/OP_AGET_WIDE.S
m/mterp/x86-atom/OP_AND_INT.S
m/mterp/x86-atom/OP_AND_INT_2ADDR.S
m/mterp/x86-atom/OP_AND_INT_LIT16.S
m/mterp/x86-atom/OP_AND_INT_LIT8.S
m/mterp/x86-atom/OP_AND_LONG.S
m/mterp/x86-atom/OP_AND_LONG_2ADDR.S
m/mterp/x86-atom/OP_APUT.S
m/mterp/x86-atom/OP_APUT_BOOLEAN.S
m/mterp/x86-atom/OP_APUT_BYTE.S
m/mterp/x86-atom/OP_APUT_CHAR.S
m/mterp/x86-atom/OP_APUT_OBJECT.S
m/mterp/x86-atom/OP_APUT_SHORT.S
m/mterp/x86-atom/OP_APUT_WIDE.S
m/mterp/x86-atom/OP_ARRAY_LENGTH.S
m/mterp/x86-atom/OP_BREAKPOINT.S
m/mterp/x86-atom/OP_CHECK_CAST.S
m/mterp/x86-atom/OP_CMPG_DOUBLE.S
m/mterp/x86-atom/OP_CMPG_FLOAT.S
m/mterp/x86-atom/OP_CMPL_DOUBLE.S
m/mterp/x86-atom/OP_CMPL_FLOAT.S
m/mterp/x86-atom/OP_CMP_LONG.S
m/mterp/x86-atom/OP_CONST.S
m/mterp/x86-atom/OP_CONST_16.S
m/mterp/x86-atom/OP_CONST_4.S
m/mterp/x86-atom/OP_CONST_CLASS.S
m/mterp/x86-atom/OP_CONST_HIGH16.S
m/mterp/x86-atom/OP_CONST_STRING.S
m/mterp/x86-atom/OP_CONST_STRING_JUMBO.S
m/mterp/x86-atom/OP_CONST_WIDE.S
m/mterp/x86-atom/OP_CONST_WIDE_16.S
m/mterp/x86-atom/OP_CONST_WIDE_32.S
m/mterp/x86-atom/OP_CONST_WIDE_HIGH16.S
m/mterp/x86-atom/OP_DIV_DOUBLE.S
m/mterp/x86-atom/OP_DIV_DOUBLE_2ADDR.S
m/mterp/x86-atom/OP_DIV_FLOAT.S
m/mterp/x86-atom/OP_DIV_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_DIV_INT.S
m/mterp/x86-atom/OP_DIV_INT_2ADDR.S
m/mterp/x86-atom/OP_DIV_INT_LIT16.S
m/mterp/x86-atom/OP_DIV_INT_LIT8.S
m/mterp/x86-atom/OP_DIV_LONG.S
m/mterp/x86-atom/OP_DIV_LONG_2ADDR.S
m/mterp/x86-atom/OP_DOUBLE_TO_FLOAT.S
m/mterp/x86-atom/OP_DOUBLE_TO_INT.S
m/mterp/x86-atom/OP_DOUBLE_TO_LONG.S
m/mterp/x86-atom/OP_EXECUTE_INLINE.S
m/mterp/x86-atom/OP_EXECUTE_INLINE_RANGE.S
m/mterp/x86-atom/OP_FILLED_NEW_ARRAY.S
m/mterp/x86-atom/OP_FILLED_NEW_ARRAY_RANGE.S
m/mterp/x86-atom/OP_FILL_ARRAY_DATA.S
m/mterp/x86-atom/OP_FLOAT_TO_DOUBLE.S
m/mterp/x86-atom/OP_FLOAT_TO_INT.S
m/mterp/x86-atom/OP_FLOAT_TO_LONG.S
m/mterp/x86-atom/OP_GOTO.S
m/mterp/x86-atom/OP_GOTO_16.S
m/mterp/x86-atom/OP_GOTO_32.S
m/mterp/x86-atom/OP_IF_EQ.S
m/mterp/x86-atom/OP_IF_EQZ.S
m/mterp/x86-atom/OP_IF_GE.S
m/mterp/x86-atom/OP_IF_GEZ.S
m/mterp/x86-atom/OP_IF_GT.S
m/mterp/x86-atom/OP_IF_GTZ.S
m/mterp/x86-atom/OP_IF_LE.S
m/mterp/x86-atom/OP_IF_LEZ.S
m/mterp/x86-atom/OP_IF_LT.S
m/mterp/x86-atom/OP_IF_LTZ.S
m/mterp/x86-atom/OP_IF_NE.S
m/mterp/x86-atom/OP_IF_NEZ.S
m/mterp/x86-atom/OP_IGET.S
m/mterp/x86-atom/OP_IGET_BOOLEAN.S
m/mterp/x86-atom/OP_IGET_BYTE.S
m/mterp/x86-atom/OP_IGET_CHAR.S
m/mterp/x86-atom/OP_IGET_OBJECT.S
m/mterp/x86-atom/OP_IGET_OBJECT_QUICK.S
m/mterp/x86-atom/OP_IGET_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_IGET_QUICK.S
m/mterp/x86-atom/OP_IGET_SHORT.S
m/mterp/x86-atom/OP_IGET_VOLATILE.S
m/mterp/x86-atom/OP_IGET_WIDE.S
m/mterp/x86-atom/OP_IGET_WIDE_QUICK.S
m/mterp/x86-atom/OP_INSTANCE_OF.S
m/mterp/x86-atom/OP_INT_TO_BYTE.S
m/mterp/x86-atom/OP_INT_TO_CHAR.S
m/mterp/x86-atom/OP_INT_TO_DOUBLE.S
m/mterp/x86-atom/OP_INT_TO_FLOAT.S
m/mterp/x86-atom/OP_INT_TO_LONG.S
m/mterp/x86-atom/OP_INT_TO_SHORT.S
m/mterp/x86-atom/OP_INVOKE_DIRECT.S
m/mterp/x86-atom/OP_INVOKE_DIRECT_RANGE.S
m/mterp/x86-atom/OP_INVOKE_INTERFACE.S
m/mterp/x86-atom/OP_INVOKE_INTERFACE_RANGE.S
m/mterp/x86-atom/OP_INVOKE_OBJECT_INIT_RANGE.S
m/mterp/x86-atom/OP_INVOKE_STATIC.S
m/mterp/x86-atom/OP_INVOKE_STATIC_RANGE.S
m/mterp/x86-atom/OP_INVOKE_SUPER.S
m/mterp/x86-atom/OP_INVOKE_SUPER_QUICK.S
m/mterp/x86-atom/OP_INVOKE_SUPER_QUICK_RANGE.S
m/mterp/x86-atom/OP_INVOKE_SUPER_RANGE.S
m/mterp/x86-atom/OP_INVOKE_VIRTUAL.S
m/mterp/x86-atom/OP_INVOKE_VIRTUAL_QUICK.S
m/mterp/x86-atom/OP_INVOKE_VIRTUAL_QUICK_RANGE.S
m/mterp/x86-atom/OP_INVOKE_VIRTUAL_RANGE.S
m/mterp/x86-atom/OP_IPUT.S
m/mterp/x86-atom/OP_IPUT_BOOLEAN.S
m/mterp/x86-atom/OP_IPUT_BYTE.S
m/mterp/x86-atom/OP_IPUT_CHAR.S
m/mterp/x86-atom/OP_IPUT_OBJECT.S
m/mterp/x86-atom/OP_IPUT_OBJECT_QUICK.S
m/mterp/x86-atom/OP_IPUT_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_IPUT_QUICK.S
m/mterp/x86-atom/OP_IPUT_SHORT.S
m/mterp/x86-atom/OP_IPUT_VOLATILE.S
m/mterp/x86-atom/OP_IPUT_WIDE.S
m/mterp/x86-atom/OP_IPUT_WIDE_QUICK.S
m/mterp/x86-atom/OP_LONG_TO_DOUBLE.S
m/mterp/x86-atom/OP_LONG_TO_FLOAT.S
m/mterp/x86-atom/OP_LONG_TO_INT.S
m/mterp/x86-atom/OP_MONITOR_ENTER.S
m/mterp/x86-atom/OP_MONITOR_EXIT.S
m/mterp/x86-atom/OP_MOVE.S
m/mterp/x86-atom/OP_MOVE_16.S
m/mterp/x86-atom/OP_MOVE_EXCEPTION.S
m/mterp/x86-atom/OP_MOVE_FROM16.S
m/mterp/x86-atom/OP_MOVE_OBJECT.S
m/mterp/x86-atom/OP_MOVE_OBJECT_16.S
m/mterp/x86-atom/OP_MOVE_OBJECT_FROM16.S
m/mterp/x86-atom/OP_MOVE_RESULT.S
m/mterp/x86-atom/OP_MOVE_RESULT_OBJECT.S
m/mterp/x86-atom/OP_MOVE_RESULT_WIDE.S
m/mterp/x86-atom/OP_MOVE_WIDE.S
m/mterp/x86-atom/OP_MOVE_WIDE_16.S
m/mterp/x86-atom/OP_MOVE_WIDE_FROM16.S
m/mterp/x86-atom/OP_MUL_DOUBLE.S
m/mterp/x86-atom/OP_MUL_DOUBLE_2ADDR.S
m/mterp/x86-atom/OP_MUL_FLOAT.S
m/mterp/x86-atom/OP_MUL_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_MUL_INT.S
m/mterp/x86-atom/OP_MUL_INT_2ADDR.S
m/mterp/x86-atom/OP_MUL_INT_LIT16.S
m/mterp/x86-atom/OP_MUL_INT_LIT8.S
m/mterp/x86-atom/OP_MUL_LONG.S
m/mterp/x86-atom/OP_MUL_LONG_2ADDR.S
m/mterp/x86-atom/OP_NEG_DOUBLE.S
m/mterp/x86-atom/OP_NEG_FLOAT.S
m/mterp/x86-atom/OP_NEG_INT.S
m/mterp/x86-atom/OP_NEG_LONG.S
m/mterp/x86-atom/OP_NEW_ARRAY.S
m/mterp/x86-atom/OP_NEW_INSTANCE.S
m/mterp/x86-atom/OP_NOP.S
m/mterp/x86-atom/OP_NOT_INT.S
m/mterp/x86-atom/OP_NOT_LONG.S
m/mterp/x86-atom/OP_OR_INT.S
m/mterp/x86-atom/OP_OR_INT_2ADDR.S
m/mterp/x86-atom/OP_OR_INT_LIT16.S
m/mterp/x86-atom/OP_OR_INT_LIT8.S
m/mterp/x86-atom/OP_OR_LONG.S
m/mterp/x86-atom/OP_OR_LONG_2ADDR.S
m/mterp/x86-atom/OP_PACKED_SWITCH.S
m/mterp/x86-atom/OP_REM_DOUBLE.S
m/mterp/x86-atom/OP_REM_DOUBLE_2ADDR.S
m/mterp/x86-atom/OP_REM_FLOAT.S
m/mterp/x86-atom/OP_REM_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_REM_INT.S
m/mterp/x86-atom/OP_REM_INT_2ADDR.S
m/mterp/x86-atom/OP_REM_INT_LIT16.S
m/mterp/x86-atom/OP_REM_INT_LIT8.S
m/mterp/x86-atom/OP_REM_LONG.S
m/mterp/x86-atom/OP_REM_LONG_2ADDR.S
m/mterp/x86-atom/OP_RETURN.S
m/mterp/x86-atom/OP_RETURN_COMMON.S
m/mterp/x86-atom/OP_RETURN_OBJECT.S
m/mterp/x86-atom/OP_RETURN_VOID.S
m/mterp/x86-atom/OP_RETURN_WIDE.S
m/mterp/x86-atom/OP_RSUB_INT.S
m/mterp/x86-atom/OP_RSUB_INT_LIT8.S
m/mterp/x86-atom/OP_SGET.S
m/mterp/x86-atom/OP_SGET_BOOLEAN.S
m/mterp/x86-atom/OP_SGET_BYTE.S
m/mterp/x86-atom/OP_SGET_CHAR.S
m/mterp/x86-atom/OP_SGET_OBJECT.S
m/mterp/x86-atom/OP_SGET_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_SGET_SHORT.S
m/mterp/x86-atom/OP_SGET_VOLATILE.S
m/mterp/x86-atom/OP_SGET_WIDE.S
m/mterp/x86-atom/OP_SHL_INT.S
m/mterp/x86-atom/OP_SHL_INT_2ADDR.S
m/mterp/x86-atom/OP_SHL_INT_LIT8.S
m/mterp/x86-atom/OP_SHL_LONG.S
m/mterp/x86-atom/OP_SHL_LONG_2ADDR.S
m/mterp/x86-atom/OP_SHR_INT.S
m/mterp/x86-atom/OP_SHR_INT_2ADDR.S
m/mterp/x86-atom/OP_SHR_INT_LIT8.S
m/mterp/x86-atom/OP_SHR_LONG.S
m/mterp/x86-atom/OP_SHR_LONG_2ADDR.S
m/mterp/x86-atom/OP_SPARSE_SWITCH.S
m/mterp/x86-atom/OP_SPUT.S
m/mterp/x86-atom/OP_SPUT_BOOLEAN.S
m/mterp/x86-atom/OP_SPUT_BYTE.S
m/mterp/x86-atom/OP_SPUT_CHAR.S
m/mterp/x86-atom/OP_SPUT_OBJECT.S
m/mterp/x86-atom/OP_SPUT_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_SPUT_SHORT.S
m/mterp/x86-atom/OP_SPUT_VOLATILE.S
m/mterp/x86-atom/OP_SPUT_WIDE.S
m/mterp/x86-atom/OP_SUB_DOUBLE.S
m/mterp/x86-atom/OP_SUB_DOUBLE_2ADDR.S
m/mterp/x86-atom/OP_SUB_FLOAT.S
m/mterp/x86-atom/OP_SUB_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_SUB_INT.S
m/mterp/x86-atom/OP_SUB_INT_2ADDR.S
m/mterp/x86-atom/OP_SUB_INT_LIT8.S
m/mterp/x86-atom/OP_SUB_LONG.S
m/mterp/x86-atom/OP_SUB_LONG_2ADDR.S
m/mterp/x86-atom/OP_THROW.S
m/mterp/x86-atom/OP_THROW_VERIFICATION_ERROR.S
m/mterp/x86-atom/OP_UNUSED_3E.S
m/mterp/x86-atom/OP_UNUSED_3F.S
m/mterp/x86-atom/OP_UNUSED_40.S
m/mterp/x86-atom/OP_UNUSED_41.S
m/mterp/x86-atom/OP_UNUSED_42.S
m/mterp/x86-atom/OP_UNUSED_43.S
m/mterp/x86-atom/OP_UNUSED_73.S
m/mterp/x86-atom/OP_UNUSED_79.S
m/mterp/x86-atom/OP_UNUSED_7A.S
m/mterp/x86-atom/OP_UNUSED_FF.S
m/mterp/x86-atom/OP_USHR_INT.S
m/mterp/x86-atom/OP_USHR_INT_2ADDR.S
m/mterp/x86-atom/OP_USHR_INT_LIT8.S
m/mterp/x86-atom/OP_USHR_LONG.S
m/mterp/x86-atom/OP_USHR_LONG_2ADDR.S
m/mterp/x86-atom/OP_XOR_INT.S
m/mterp/x86-atom/OP_XOR_INT_2ADDR.S
m/mterp/x86-atom/OP_XOR_INT_LIT16.S
m/mterp/x86-atom/OP_XOR_INT_LIT8.S
m/mterp/x86-atom/OP_XOR_LONG.S
m/mterp/x86-atom/OP_XOR_LONG_2ADDR.S
m/mterp/x86-atom/TODO.txt
m/mterp/x86-atom/bincmp.S
m/mterp/x86-atom/binop.S
m/mterp/x86-atom/binop2addr.S
m/mterp/x86-atom/binopD.S
m/mterp/x86-atom/binopD2addr.S
m/mterp/x86-atom/binopDLit16.S
m/mterp/x86-atom/binopDLit8.S
m/mterp/x86-atom/binopDivRemLong.S
m/mterp/x86-atom/binopDivRemLong2Addr.S
m/mterp/x86-atom/binopF.S
m/mterp/x86-atom/binopF2addr.S
m/mterp/x86-atom/binopLit16.S
m/mterp/x86-atom/binopLit8.S
m/mterp/x86-atom/binopLit8S.S
m/mterp/x86-atom/binopS.S
m/mterp/x86-atom/binopS2addr.S
m/mterp/x86-atom/binopWide.S
m/mterp/x86-atom/binopWide2addr.S
m/mterp/x86-atom/entry.S
m/mterp/x86-atom/footer.S
m/mterp/x86-atom/header.S
m/mterp/x86-atom/stub.S
m/mterp/x86-atom/unop.S
m/mterp/x86-atom/unopWide.S
m/mterp/x86-atom/unused.S
m/mterp/x86-atom/zcmp.S
m/mterp/x86/OP_ADD_DOUBLE.S
m/mterp/x86/OP_ADD_DOUBLE_2ADDR.S
m/mterp/x86/OP_EXECUTE_INLINE.S
m/mterp/x86/OP_GOTO.S
m/mterp/x86/OP_GOTO_16.S
m/mterp/x86/OP_GOTO_32.S
m/mterp/x86/OP_INVOKE_INTERFACE.S
m/mterp/x86/OP_INVOKE_OBJECT_INIT_RANGE.S
m/mterp/x86/OP_INVOKE_STATIC.S
m/mterp/x86/OP_INVOKE_SUPER.S
m/mterp/x86/OP_INVOKE_SUPER_QUICK.S
m/mterp/x86/OP_INVOKE_VIRTUAL.S
m/mterp/x86/OP_INVOKE_VIRTUAL_QUICK.S
m/mterp/x86/OP_MUL_DOUBLE.S
m/mterp/x86/OP_MUL_DOUBLE_2ADDR.S
m/mterp/x86/OP_NEW_INSTANCE.S
m/mterp/x86/OP_PACKED_SWITCH.S
m/mterp/x86/OP_SGET.S
m/mterp/x86/OP_SGET_WIDE.S
m/mterp/x86/OP_SPUT.S
m/mterp/x86/OP_SPUT_OBJECT.S
m/mterp/x86/OP_SPUT_WIDE.S
m/mterp/x86/OP_SUB_DOUBLE.S
m/mterp/x86/OP_SUB_DOUBLE_2ADDR.S
m/mterp/x86/bincmp.S
m/mterp/x86/binop2addr.S
m/mterp/x86/entry.S
m/mterp/x86/footer.S
m/mterp/x86/header.S
m/mterp/x86/zcmp.S
ebdf9a670dba0421514372c05800d3cf4b79c5dd 19-Jul-2012 The Android Open Source Project <initial-contribution@android.com> am 0c9185fa: Reconcile with jb-mr0-release

* commit '0c9185faf929bdbc87da4a2e18d374dc0c082978':
0c9185faf929bdbc87da4a2e18d374dc0c082978 19-Jul-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-mr0-release

Change-Id: I3f1190900571a53d58ef0b7816490b9e9019b2f3
945bf6e5a374f543eddf90d90589325721498c89 19-Jul-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
61c966b09d0fc5113d7d10d761594bc1fddc9ed1 19-Jul-2012 The Android Automerger <android-build@android.com> merge in jb-mr0-release history after reset to jb-dev
17d97d895d0f5857ba2f32973a30ce1465946843 19-Jul-2012 Elliott Hughes <enh@google.com> am c870b1b8: am 51801371: Avoid sign extension in packed-switch.

* commit 'c870b1b88cda7d5f5afd7015a15e1f60e80355fc':
Avoid sign extension in packed-switch.
3d7b5469af53db96ea1c63d4004b23a29eabaf92 19-Jul-2012 Elliott Hughes <enh@google.com> am abede656: Merge "Use uintptr_t for cast pointer to integer."

* commit 'abede656a1f2330e3d31281fb208be7c04e8eb56':
Use uintptr_t for cast pointer to integer.
74c92a39af67145f6584c92fe352f53d85e40807 19-Jul-2012 Elliott Hughes <enh@google.com> am fd9491c5: Merge "Remove untested SH "support"; bionic long since stopped supporting SH."

* commit 'fd9491c5ea82e91d0085679caa82195bb5b4d17b':
Remove untested SH "support"; bionic long since stopped supporting SH.
c870b1b88cda7d5f5afd7015a15e1f60e80355fc 19-Jul-2012 Elliott Hughes <enh@google.com> am 51801371: Avoid sign extension in packed-switch.

* commit '51801371a9b0f829303d326a2300518177dde3e8':
Avoid sign extension in packed-switch.
abede656a1f2330e3d31281fb208be7c04e8eb56 19-Jul-2012 Elliott Hughes <enh@google.com> Merge "Use uintptr_t for cast pointer to integer."
b210a9f9c7ae17e2028a86d9a4e9a3b35472862a 15-Jul-2012 SangWook Han <sangwook.han@gmail.com> Use uintptr_t for cast pointer to integer.

On 64bit host, sizeof pointer is not equal to sizeof int/u4.
Need for host tools.

Change-Id: Id8d9418787e79523226b9c9e3f67277f9ac7c6aa
exdump/DexDump.cpp
ibdex/DexFile.h
ibdex/DexOptData.cpp
ibdex/DexSwapVerify.cpp
ibdex/SysUtil.cpp
fd9491c5ea82e91d0085679caa82195bb5b4d17b 18-Jul-2012 Elliott Hughes <enh@google.com> Merge "Remove untested SH "support"; bionic long since stopped supporting SH."
1a341025776a7677353e5d8e6d8c4dbf6d5441b7 18-Jul-2012 Elliott Hughes <enh@google.com> Remove untested SH "support"; bionic long since stopped supporting SH.

Hello world!

Change-Id: I4660c8905b2641f90d90987938498e8693dc33da
m/Dvm.mk
m/arch/sh/CallSH4ABI.S
a456d158ec03ad4afbc1bb8f8352bd959d2327e6 18-Jul-2012 Elliott Hughes <enh@google.com> am 53c6022c: Merge "Avoid sign extension in packed-switch."

* commit '53c6022cd1211bfa7d14c95585f3554c8cea8aa2':
Avoid sign extension in packed-switch.
53c6022cd1211bfa7d14c95585f3554c8cea8aa2 18-Jul-2012 Elliott Hughes <enh@google.com> Merge "Avoid sign extension in packed-switch."
100dbe0d8d5b419bc3727e5b8a07e995351fe129 18-Jul-2012 Elliott Hughes <enh@google.com> Avoid sign extension in packed-switch.

This code (at least in the ARM version) is trying to assign to r0 and r1
from C by returning a 64-bit result. The mistaken use of signed integers
for pointers can lead to sign extension if the JIT code cache is at a
sufficiently high address.

Bug: 6799823
Bug: 6703991

(cherry-pick from 2d0c1c2dbe44458ebb199c47ce1047f266db5349.)

Change-Id: I79e72228b60e195272d11899ac69bb4a76b7402f
m/compiler/codegen/arm/CalloutHelper.h
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/mips/CalloutHelper.h
m/compiler/codegen/mips/CodegenDriver.cpp
m/oo/Resolve.cpp
51801371a9b0f829303d326a2300518177dde3e8 18-Jul-2012 Elliott Hughes <enh@google.com> Avoid sign extension in packed-switch.

This code (at least in the ARM version) is trying to assign to r0 and r1
from C by returning a 64-bit result. The mistaken use of signed integers
for pointers can lead to sign extension if the JIT code cache is at a
sufficiently high address.

Bug: 6799823
Bug: 6703991

(cherry picked from commit 2d0c1c2dbe44458ebb199c47ce1047f266db5349)

Conflicts:

vm/compiler/codegen/mips/CalloutHelper.h
vm/compiler/codegen/mips/CodegenDriver.cpp

Change-Id: Id4699fdd0b3d61abe9c92874832b8561df4fa797
m/compiler/codegen/arm/CalloutHelper.h
m/compiler/codegen/arm/CodegenDriver.cpp
m/oo/Resolve.cpp
1953f158d2031d1f227e390cacf70a789fbef53a 18-Jul-2012 Elliott Hughes <enh@google.com> Merge "Avoid sign extension in packed-switch."
247df40eef208bf80035b1d9ad1c5a2cd7a6e749 18-Jul-2012 Elliott Hughes <enh@google.com> am 319206f3: Merge "Fix a small and unlikely memory leak."

* commit '319206f324bd937bc1d661dec2082413e41cf8e5':
Fix a small and unlikely memory leak.
2d0c1c2dbe44458ebb199c47ce1047f266db5349 18-Jul-2012 Elliott Hughes <enh@google.com> Avoid sign extension in packed-switch.

This code (at least in the ARM version) is trying to assign to r0 and r1
from C by returning a 64-bit result. The mistaken use of signed integers
for pointers can lead to sign extension if the JIT code cache is at a
sufficiently high address.

Bug: 6799823
Bug: 6703991
Change-Id: Ic3f587f453f0f3f520551383ef1ed29efa1ad551
m/compiler/codegen/arm/CalloutHelper.h
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/mips/CalloutHelper.h
m/compiler/codegen/mips/CodegenDriver.cpp
m/oo/Resolve.cpp
319206f324bd937bc1d661dec2082413e41cf8e5 18-Jul-2012 Elliott Hughes <enh@google.com> Merge "Fix a small and unlikely memory leak."
0de2df09a41ffbe2318dbc9a4daa04dc7966f9b8 18-Jul-2012 Elliott Hughes <enh@google.com> Fix a small and unlikely memory leak.

Change-Id: I131b9f2f8ae4a4b2bb3bb00bc2cd1e607d979bb5
m/interp/Interp.cpp
a8a96515c9620fd9073a69660e31979acf2da8b2 18-Jul-2012 Elliott Hughes <enh@google.com> am 80f212b7: Merge "Remove some dead code in the MIPS stuff, and run rebuild.sh."

* commit '80f212b7365ab116541f151db559e6653fe5a55b':
Remove some dead code in the MIPS stuff, and run rebuild.sh.
80f212b7365ab116541f151db559e6653fe5a55b 18-Jul-2012 Elliott Hughes <enh@google.com> Merge "Remove some dead code in the MIPS stuff, and run rebuild.sh."
ba1195e1f17456a9a0acab6e122b49f65134fc1f 18-Jul-2012 Elliott Hughes <enh@google.com> Remove some dead code in the MIPS stuff, and run rebuild.sh.

Change-Id: I7c3226efe97e6e5678b757eb2350d0eeb2efd8b5
m/compiler/codegen/mips/CodegenDriver.cpp
m/mterp/config-mips
m/mterp/out/InterpAsm-mips.S
m/mterp/out/InterpC-mips.cpp
ec3f9796628f92f698c71246f0e8ddbd91f27e43 16-Jul-2012 Elliott Hughes <enh@google.com> am ad8bebe4: Merge "Don\'t log "WAIT_FOR_CONCURRENT_GC blocked 0ms"."

* commit 'ad8bebe4a097a3fdcb4d858dbedf49a1904acfee':
Don't log "WAIT_FOR_CONCURRENT_GC blocked 0ms".
ad8bebe4a097a3fdcb4d858dbedf49a1904acfee 16-Jul-2012 Elliott Hughes <enh@google.com> Merge "Don't log "WAIT_FOR_CONCURRENT_GC blocked 0ms"."
daec4f6ae56e2149cecea8cd052b232bcf03f568 16-Jul-2012 Elliott Hughes <enh@google.com> Don't log "WAIT_FOR_CONCURRENT_GC blocked 0ms".

Stupid to spend more time logging than we spent waiting. (Highly visible
in the zygote's preloading phase.)

Change-Id: If2d6b6093b3bebae0887aa385745b7ed9225216b
m/alloc/Heap.cpp
2bdc16127521703801d884d6a930c45d88f3d55e 13-Jul-2012 Elliott Hughes <enh@google.com> am 4d7567a6: Merge "Warn if we see a class whose behavior has changed because of https://android-review.googlesource.com/#/c/32480/."

* commit '4d7567a600ae06df053f0e48918c984927eb6671':
Warn if we see a class whose behavior has changed because of https://android-review.googlesource.com/#/c/32480/.
4d7567a600ae06df053f0e48918c984927eb6671 13-Jul-2012 Elliott Hughes <enh@google.com> Merge "Warn if we see a class whose behavior has changed because of https://android-review.googlesource.com/#/c/32480/."
8b5cd0ae1c50bf6375b223f7e95e76a6fd8664c8 13-Jul-2012 Elliott Hughes <enh@google.com> Warn if we see a class whose behavior has changed because of https://android-review.googlesource.com/#/c/32480/.

Change-Id: Ic7ca229a92c8d1bd666ecf64209d061301dcb0c9
m/oo/Class.cpp
30233529f1e7984b8113d39427616a93f2ddbeb3 12-Jul-2012 Elliott Hughes <enh@google.com> am fe269684: Merge "s/LOGE/ALOGE/ in HAVE_SELINUX blocks"

* commit 'fe26968480166e0788856b382841274b77655449':
s/LOGE/ALOGE/ in HAVE_SELINUX blocks
fe26968480166e0788856b382841274b77655449 12-Jul-2012 Elliott Hughes <enh@google.com> Merge "s/LOGE/ALOGE/ in HAVE_SELINUX blocks"
e448ce9c2a56d23037488b303c0fdbdc6b5cfe78 10-Jul-2012 Joshua Brindle <jbrindle@tresys.com> s/LOGE/ALOGE/ in HAVE_SELINUX blocks

The latest push changed LOGE to ALOGE but it was not updated in HAVE_SELINUX blocks.

Change-Id: If64c6beeb1d7c24e1b610acb8ccb195e00c777da
Signed-off-by: Joshua Brindle <jbrindle@tresys.com>
m/native/dalvik_system_Zygote.cpp
b0afb75ccab3d07f818e16b709155c9a5cadb493 11-Jul-2012 Elliott Hughes <enh@google.com> am 84cdf110: Merge "Avoid method overriding if its super method is inaccessible."

* commit '84cdf1103122aaef5d3969a7b02f3d1965a894c6':
Avoid method overriding if its super method is inaccessible.
0ad22619127847d73eebdc9ed924db0eb6de925b 11-Jul-2012 Elliott Hughes <enh@google.com> am 202bc301: Merge "Missing zero-checks in JIT compiler"

* commit '202bc301c313b4b49b04bdc59e484b439222462d':
Missing zero-checks in JIT compiler
84cdf1103122aaef5d3969a7b02f3d1965a894c6 11-Jul-2012 Elliott Hughes <enh@google.com> Merge "Avoid method overriding if its super method is inaccessible."
2fa5a86e48ac27992664f1677ce2ea5f441dc143 09-Feb-2012 Im Sooin <ciecet@gmail.com> Avoid method overriding if its super method is inaccessible.

A call to package private method could be redirected to subclass which
was not in the same package.
Modified vtable to retain virtual super methods which cannot be accessed.

This change affects vtable index in optimized dex.

Change-Id: I9cc7e309c305bca12e5061009c4245fb70014681
Signed-off-by: Im Sooin <ciecet@gmail.com>
ests/300-package-override/expected.txt
ests/300-package-override/info.txt
ests/300-package-override/src/Main.java
ests/300-package-override/src/p1/BaseClass.java
ests/300-package-override/src/p2/DerivedClass.java
m/oo/Class.cpp
202bc301c313b4b49b04bdc59e484b439222462d 11-Jul-2012 Elliott Hughes <enh@google.com> Merge "Missing zero-checks in JIT compiler"
ac3da004fe02e855e2444ce76abf13f12e2e0050 07-Jun-2012 Mattias Petersson <mattias.petersson@sonymobile.com> Missing zero-checks in JIT compiler

Zero-checks were not generated by the JIT compiler for
some instructions. This caused crashes instead of
the expected ArithmeticException.

Change-Id: Ic8041741a7cccc1bd6b8c3c0723ba55a55af856b
ests/083-jit-regressions/expected.txt
ests/083-jit-regressions/src/Main.java
ests/083-jit-regressions/src/ZeroTests.java
ests/etc/host-run-test-jar
ests/etc/push-and-run-test-jar
ests/run-test
m/compiler/codegen/arm/CodegenDriver.cpp
b502e99fa6b702225726c2bdb760ef6b4b530d14 09-Jul-2012 Jean-Baptiste Queru <jbq@google.com> am 5220f12d: Merge from AOSP

* commit '5220f12dca8ad2666a97e36862bf0d4767e3555e':
hprof generation, not writing the first record
5220f12dca8ad2666a97e36862bf0d4767e3555e 09-Jul-2012 Jean-Baptiste Queru <jbq@google.com> Merge from AOSP

Change-Id: I8ac8ecf5d57b4d852957a0c4498e3e304e8e2e17
987f0cb69509ca4eaf32908b3ada10e81f4bd937 09-Jul-2012 Elliott Hughes <enh@google.com> Merge "hprof generation, not writing the first record"
b78712d35808e767534be361dfa556b9657345d3 03-Jul-2012 Elliott Hughes <enh@google.com> am f31a6f7b: am 7798a614: Merge "Fix a possible off-by-one in the verifier."

* commit 'f31a6f7b1648c079e45a519ed3dd84f7c1b5f768':
Fix a possible off-by-one in the verifier.
f31a6f7b1648c079e45a519ed3dd84f7c1b5f768 03-Jul-2012 Elliott Hughes <enh@google.com> am 7798a614: Merge "Fix a possible off-by-one in the verifier."

* commit '7798a614753251adf7a77835792d78db2e93f5ff':
Fix a possible off-by-one in the verifier.
4769b5106ff47fef1df9491608f0a2ba3354b9d3 11-Jun-2012 Johan Erlandsson <johan.erlandsson@sonyericsson.com> hprof generation, not writing the first record

We miss some roots since the first record isn't initialized.

Change-Id: I50c80a701a4ee142c52602b9015f6e93be54da9f
m/hprof/Hprof.cpp
7798a614753251adf7a77835792d78db2e93f5ff 02-Jul-2012 Elliott Hughes <enh@google.com> Merge "Fix a possible off-by-one in the verifier."
0bd15512ca35f8c77d743166807ce60684f21123 30-Jun-2012 Elliott Hughes <enh@google.com> Fix a possible off-by-one in the verifier.

Bug: http://code.google.com/p/android/issues/detail?id=10863
Change-Id: I604f9a5ea08b6a6934b3ba522e1fda0bb738f81c
m/analysis/CodeVerify.cpp
1c7d5a982cd67aab6e227152273b919efbdd6cfc 22-Jun-2012 Elliott Hughes <enh@google.com> am 8ca227ef: resolved conflicts for merge of 7c03fb79 to jb-dev-plus-aosp

* commit '8ca227ef75cdb1511ea3b11679526a6de5a99974':
Extend forkAndSpecialize to take additional inputs and to set the SELinux security context.
8ca227ef75cdb1511ea3b11679526a6de5a99974 21-Jun-2012 Elliott Hughes <enh@google.com> resolved conflicts for merge of 7c03fb79 to jb-dev-plus-aosp

Change-Id: Icedbe5a6d7cbcedde53e05249f7e90a390f2f0ea
7c03fb79290de74c8f855275c0878e31a968665b 21-Jun-2012 Kenny Root <kroot@android.com> Merge "Extend forkAndSpecialize to take additional inputs and to set the SELinux security context."
40a97214b8ac00fb5f090dc376384a987ba2bba7 20-Jun-2012 Jean-Baptiste Queru <jbq@google.com> am de574936: am 44292346: Merge "Switched code to blx <reg>"

* commit 'de574936841bbfa9ad82b5876e214bc918ee777c':
Switched code to blx <reg>
de574936841bbfa9ad82b5876e214bc918ee777c 20-Jun-2012 Jean-Baptiste Queru <jbq@google.com> am 44292346: Merge "Switched code to blx <reg>"

* commit '44292346f4935cd078ca7b931042809af80f9d95':
Switched code to blx <reg>
44292346f4935cd078ca7b931042809af80f9d95 20-Jun-2012 Jean-Baptiste Queru <jbq@google.com> Merge "Switched code to blx <reg>"
8b095215a4d5bde723819087f3455bdcc250a78f 20-Jun-2012 David Butcher <david.butcher@arm.com> Switched code to blx <reg>

ldr ip,<addr> blx ip is preferred over mov lr,pc ldr pc,<addr> from armv5te,
and will typically perform better on later ARM processors.

Change-Id: I8f2e5e794c644faafd767037ad56579f2934de47
m/compiler/template/armv5te/TEMPLATE_CMPL_DOUBLE.S
m/compiler/template/armv5te/TEMPLATE_CMPL_FLOAT.S
m/compiler/template/armv5te/TEMPLATE_INVOKE_METHOD_CHAIN.S
m/compiler/template/armv5te/TEMPLATE_INVOKE_METHOD_NATIVE.S
m/compiler/template/armv5te/TEMPLATE_INVOKE_METHOD_NO_OPT.S
m/compiler/template/armv5te/TEMPLATE_RETURN.S
m/compiler/template/armv5te/footer.S
m/compiler/template/out/CompilerTemplateAsm-armv5te-vfp.S
m/compiler/template/out/CompilerTemplateAsm-armv5te.S
m/compiler/template/out/CompilerTemplateAsm-armv7-a-neon.S
m/compiler/template/out/CompilerTemplateAsm-armv7-a.S
m/mterp/armv5te/footer.S
m/mterp/out/InterpAsm-armv5te-vfp.S
m/mterp/out/InterpAsm-armv5te.S
m/mterp/out/InterpAsm-armv7-a-neon.S
m/mterp/out/InterpAsm-armv7-a.S
cbc9584a3b68c0efa5fcbe548e75414c59e79e13 12-Jun-2012 Elliott Hughes <enh@google.com> am f2a33d44: am effc95cb: Merge "Make dex merging stateless."

* commit 'f2a33d444213c328642daae78742e9e978c94c28':
Make dex merging stateless.
c074232fe0b92027a71b001e486c6bc587e65c6a 12-Jun-2012 Elliott Hughes <enh@google.com> am 5164762f: am a9ac3a9d: Merge "Support debug info in dexmerge."

* commit '5164762f98362866f50cda3c7f2b72b519be9c91':
Support debug info in dexmerge.
f2a33d444213c328642daae78742e9e978c94c28 12-Jun-2012 Elliott Hughes <enh@google.com> am effc95cb: Merge "Make dex merging stateless."

* commit 'effc95cb732d8d5453930e647240a1665b6dc71a':
Make dex merging stateless.
5164762f98362866f50cda3c7f2b72b519be9c91 12-Jun-2012 Elliott Hughes <enh@google.com> am a9ac3a9d: Merge "Support debug info in dexmerge."

* commit 'a9ac3a9d1f8de71bcdc39d1f4827c04a952a0c29':
Support debug info in dexmerge.
effc95cb732d8d5453930e647240a1665b6dc71a 12-Jun-2012 Elliott Hughes <enh@google.com> Merge "Make dex merging stateless."
5e90165d5918f18aec0964bc475f4064e9143599 12-Jun-2012 Xavier Ducrohet <xav@android.com> Make dex merging stateless.

This is required to run dx in Eclipse which doesn't unload the dx
library after each run.

(cherry-pick of 7aa5ce7e990dc3766eba97cd0932b62e4de21503.)

Change-Id: I7a69a3015d448ddd5558c307cd01346156cbc739
x/src/com/android/dx/command/dexer/Main.java
a9ac3a9d1f8de71bcdc39d1f4827c04a952a0c29 12-Jun-2012 Elliott Hughes <enh@google.com> Merge "Support debug info in dexmerge."
89b53f727b579850a777a99b822aab1d31093db0 08-Jun-2012 Elliott Hughes <enh@google.com> Support debug info in dexmerge.

Bug: 4090053

(cherry-pick of bc23c4f3ebaefebb3f1be7732767631f91e165ea.)

Change-Id: I1108933fc03330ff91be3a2edef8b4966977dcd7
Signed-off-by: Jesse Wilson <jesse@swank.ca>
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
7aa5ce7e990dc3766eba97cd0932b62e4de21503 12-Jun-2012 Xavier Ducrohet <xav@android.com> Make dex merging stateless.

This is required to run dx in Eclipse which doesn't unload the dx
library after each run.

Change-Id: I84df49d424ea465f70613eb602d1a4890804296a
x/src/com/android/dx/command/dexer/Main.java
32d5c6e5c728bb067ef9007ed4b3e265348aeb9e 11-Jun-2012 Elliott Hughes <enh@google.com> am c3cd2420: am bf11122d: Merge "Revert " Trim after explicit gc.""

* commit 'c3cd242005fb31035265d0bbd5681518eea656b4':
Revert " Trim after explicit gc."
c3cd242005fb31035265d0bbd5681518eea656b4 11-Jun-2012 Elliott Hughes <enh@google.com> am bf11122d: Merge "Revert " Trim after explicit gc.""

* commit 'bf11122d175d1315783b313897ee8ecae63f0278':
Revert " Trim after explicit gc."
bf11122d175d1315783b313897ee8ecae63f0278 11-Jun-2012 Elliott Hughes <enh@google.com> Merge "Revert " Trim after explicit gc.""
9487ab7fa22fc53512b344eeddc6dc866492a880 11-Jun-2012 Elliott Hughes <enh@google.com> Revert " Trim after explicit gc."

This reverts commit ea4c6e57a48e08eacbf08520c64133175e7d5da0
m/alloc/Alloc.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
bc23c4f3ebaefebb3f1be7732767631f91e165ea 08-Jun-2012 Elliott Hughes <enh@google.com> Support debug info in dexmerge.

Bug: 4090053

Change-Id: Ided1979b306539bfe3576ef17b72689fc9705abb
Signed-off-by: Jesse Wilson <jesse@swank.ca>
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
d2bba56367cb154caf03b76853341ddfed3b1cd1 07-Jun-2012 The Android Open Source Project <initial-contribution@android.com> am 411b853a: Reconcile with jb-release

* commit '411b853adfa971ca58c7cb6ac1896206085814e6':
411b853adfa971ca58c7cb6ac1896206085814e6 07-Jun-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-release

Change-Id: I3e7e63e5d19d73ece11951f9cc3f85589c72adbe
c8ae7db82bc8d2dda9996fe3060dcfe5eed982f2 06-Jun-2012 Elliott Hughes <enh@google.com> am 7d740cf6: am 53bc3719: Merge "Fixing a crash when doing lock profiling"

* commit '7d740cf6430a86edca1fcf20fd974b53b00136f8':
Fixing a crash when doing lock profiling
7d740cf6430a86edca1fcf20fd974b53b00136f8 06-Jun-2012 Elliott Hughes <enh@google.com> am 53bc3719: Merge "Fixing a crash when doing lock profiling"

* commit '53bc3719bab6f0a075dd3f968a6d9a630fb81476':
Fixing a crash when doing lock profiling
53bc3719bab6f0a075dd3f968a6d9a630fb81476 05-Jun-2012 Elliott Hughes <enh@google.com> Merge "Fixing a crash when doing lock profiling"
823b6475852f02d694857dc41977079b35870594 05-Jun-2012 Elliott Hughes <enh@google.com> am 2436ea18: am 90d3e3b3: Merge "Add test cases for concurrent gc and System.arraycopy"

* commit '2436ea181dc24ec4d91a6052394d24bf60987f25':
Add test cases for concurrent gc and System.arraycopy
2436ea181dc24ec4d91a6052394d24bf60987f25 05-Jun-2012 Elliott Hughes <enh@google.com> am 90d3e3b3: Merge "Add test cases for concurrent gc and System.arraycopy"

* commit '90d3e3b3999aa22d0cecc4f064e5686c555ad700':
Add test cases for concurrent gc and System.arraycopy
90d3e3b3999aa22d0cecc4f064e5686c555ad700 05-Jun-2012 Elliott Hughes <enh@google.com> Merge "Add test cases for concurrent gc and System.arraycopy"
e0e29754397bc0447d77d8cc82009d83ffb01208 03-Feb-2011 Johannes Carlsson <johannes.carlsson.x@sonyericsson.com> Add test cases for concurrent gc and System.arraycopy

When System.arraycopy runs at the same time as a concurrent gc
the phone will sometimes crash since System.arraycopy was implemented
using memmove and memcpy. In current implementation of mememove bytes
are copied one at a time. If for instance only 3 out of 4 bytes
to an object reference were copied when the thread switch to the
gc thread occurred and the gc was scanning the marked objects the
gc read an invalid address. The parameters to dvmWriteBarrierArray
in one case was also corrected (they are currently not used).

The fix itself for this crash is made elsewhere, this commit just
adds test cases to verify that this works.

Change-Id: I0a8cfd43561b3d5de4bba818993bcf8b40413045
ests/096-array-copy-concurrent-gc/expected.txt
ests/096-array-copy-concurrent-gc/info.txt
ests/096-array-copy-concurrent-gc/src/Main.java
8c9441fdbb1ac31c3eca2fb047629476daaa6490 05-Jun-2012 Mattias Petersson <mattias.petersson@sonyericsson.com> Fixing a crash when doing lock profiling

This is a fix for a crash that can happen when logging Contention
events. This logging is performed when lock profiling is enabled.
This is by default enabled on userdebug builds. The crash happened
when a thread was being destroyed. When a thread is being
destroyed it is normal that the frame depth is zero, and thus the
current frame is null. logContentionEvent() requires that the
current frame is not null, or it will crash.

The fix is to check if the current frame is null.

Change-Id: I4c2b9ad94b663398645497fdffa1ec6f7ea86a51
m/Sync.cpp
1f02e13d2e8a697d7a55062d6728b056275d2aa4 31-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
3cf90ab6245db3143a59e4d67ea5e637afa56fb9 31-May-2012 Jeff Brown <jeffbrown@google.com> am 5e037ee6: am 89cf125c: Report GC pause times more accurately.

* commit '5e037ee6df37069ba12c9a9eccbf01dd232b1d7d':
Report GC pause times more accurately.
5e037ee6df37069ba12c9a9eccbf01dd232b1d7d 31-May-2012 Jeff Brown <jeffbrown@google.com> am 89cf125c: Report GC pause times more accurately.

* commit '89cf125cd95a7df3a713cb3d3d39a033304e474c':
Report GC pause times more accurately.
89cf125cd95a7df3a713cb3d3d39a033304e474c 31-May-2012 Jeff Brown <jeffbrown@google.com> Report GC pause times more accurately.

Include the time that it actually took to pause or suspend
threads in the reported time.

Also report the amount of time that other threads spend blocked
waiting for a concurrent GC to complete.

Change-Id: I80af351c2dc3171fc7db48dbbb361f3d92bbca80
m/alloc/Heap.cpp
dd510bcb6553015c7a5cd59ee5095a5bcf8bf917 30-May-2012 Elliott Hughes <enh@google.com> am e99e79db: am 07901d5e: Merge "Running rebuild.sh found a few changes to be updated to vm/mterp/out/InterpAsm-mips.S and vm/mterp/out/InterpC-mips.cpp"

* commit 'e99e79dbab3ce3a3b18fd4422f1d69ef05ccde59':
Running rebuild.sh found a few changes to be updated to vm/mterp/out/InterpAsm-mips.S and vm/mterp/out/InterpC-mips.cpp
e99e79dbab3ce3a3b18fd4422f1d69ef05ccde59 30-May-2012 Elliott Hughes <enh@google.com> am 07901d5e: Merge "Running rebuild.sh found a few changes to be updated to vm/mterp/out/InterpAsm-mips.S and vm/mterp/out/InterpC-mips.cpp"

* commit '07901d5e8d0be0130d92b626f0b92d177ba8f460':
Running rebuild.sh found a few changes to be updated to vm/mterp/out/InterpAsm-mips.S and vm/mterp/out/InterpC-mips.cpp
07901d5e8d0be0130d92b626f0b92d177ba8f460 30-May-2012 Elliott Hughes <enh@google.com> Merge "Running rebuild.sh found a few changes to be updated to vm/mterp/out/InterpAsm-mips.S and vm/mterp/out/InterpC-mips.cpp"
455b9bd781f7632c9f10bc088975e2201ad5bfe2 21-May-2012 Raghu Gandham <raghu@mips.com> Running rebuild.sh found a few changes to be updated to
vm/mterp/out/InterpAsm-mips.S and
vm/mterp/out/InterpC-mips.cpp
m/mterp/out/InterpAsm-mips.S
m/mterp/out/InterpC-mips.cpp
8edd99808540411c751fd37c19adcd0ec029f74e 22-May-2012 The Android Open Source Project <initial-contribution@android.com> am b605b393: Reconcile with jb-release

* commit 'b605b39373274d1ad5d194fb09c0d06e07379025':
b605b39373274d1ad5d194fb09c0d06e07379025 22-May-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-release

Change-Id: I9be82c25a57356698a04628abbbb0a18f95a9ca2
6b905a32d2cce95890c36e0db2b2863a87247435 22-May-2012 Brian Carlstrom <bdc@google.com> Merge "Fix for bug 6448650 by changing to dvmCreateReflectObjForMethod"
f0d221d6182db32c8ef7caef62e168dd3fea63d4 20-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
697a1c4c012316b9f40305f16ae3d80a5a610df2 19-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
a56f891c2f870f767f98842648db602a18d04ea0 19-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
83997b459c4b0926dbfa9ba24f79b6cfddf8a2ee 18-May-2012 Brian Carlstrom <bdc@google.com> am 6fb6f30d: Update test 089 expectations

* commit '6fb6f30d1d079724bc6107c4c68eabf2d8cadefb':
Update test 089 expectations
747b5cdfde892ed282cc2173551701eddef321fe 18-May-2012 Mathieu Chartier <mathieuc@google.com> Fix for bug 6448650 by changing to dvmCreateReflectObjForMethod

Bug: 6448650

Changing dvmCreateReflectMethodObject with dvmCreateReflectObjForMethod in createAnnotationMember fixes crash caused by accessing uninitialized gDvm.classJavaLangReflectMethod

Change-Id: I3ce9b112a4afab2f972b80cbdb80f1ab1fb9678c
m/reflect/Annotation.cpp
6fb6f30d1d079724bc6107c4c68eabf2d8cadefb 18-May-2012 Brian Carlstrom <bdc@google.com> Update test 089 expectations

Change-Id: I9023d20d1bc68204f932449b5e90fcb455da7a0b
ests/089-many-methods/expected.txt
b78fd465ab5427d347780763beeb32db54d64531 16-May-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with jb-release nakasi-factoryrom-release

Change-Id: I805eea05d6c4840fe471dbfbfb5624a7fdc78235
63545e5f1d96b0a28bab138f751ce25f5fbc1412 14-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
519470f68f49a88c4299321ceef11830366d4fe6 12-May-2012 Elliott Hughes <enh@google.com> am 3492e8ab: Merge " Trim after explicit gc."

* commit '3492e8ab5939ebdbec642ad284bce015937e60d9':
Trim after explicit gc.
3492e8ab5939ebdbec642ad284bce015937e60d9 12-May-2012 Elliott Hughes <enh@google.com> Merge " Trim after explicit gc."
ea4c6e57a48e08eacbf08520c64133175e7d5da0 11-May-2012 SangWook Han <swhan@nemustech.com> Trim after explicit gc.

On Gingerbread, dvmHeapSourceTrim() is called 5 seconds
after every kind of GC. Current AOSP do trim only for
concurrent GC. That makes OOM killer too busy.

At least explicit GC need trim and in case of explicit
GC, there are no need to delay 5 seconds before trim.

Change-Id: I8fde8f773398bf20c674cfa6f686d7d745d56492
m/alloc/Alloc.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
270524037c45366fabbfcd6798a7423ba398c266 12-May-2012 SangWook Han <swhan@nemustech.com> am 0cea134b: Fix: Issue 26627: Dalvik Heap Trim timer value after GC

* commit '0cea134bef68f348225178dacf03716d4907bdbe':
Fix: Issue 26627: Dalvik Heap Trim timer value after GC
0cea134bef68f348225178dacf03716d4907bdbe 11-May-2012 SangWook Han <swhan@nemustech.com> Fix: Issue 26627: Dalvik Heap Trim timer value after GC

dvmRelativeCondWait need millisecods not seconds.

With this fix, trim will begins 5 seconds after concurrent GC

Bug: http://code.google.com/p/android/issues/detail?id=26627
Bug: 6482868
Change-Id: I3802b48e345725fb78e4ef2c999dd243ef30a138
m/alloc/HeapSource.cpp
46ddf446d8b59599e24038d4834432b8d2a09315 11-May-2012 Elliott Hughes <enh@google.com> am 07cfd74d: Merge " Fix: Issue 26627: Dalvik Heap Trim timer value after GC"

* commit '07cfd74d766d821196fa2451604af25cfa9767de':
Fix: Issue 26627: Dalvik Heap Trim timer value after GC
07cfd74d766d821196fa2451604af25cfa9767de 11-May-2012 Elliott Hughes <enh@google.com> Merge " Fix: Issue 26627: Dalvik Heap Trim timer value after GC"
1ae25c55391a874638f6a6366d2c8359c811b168 11-May-2012 SangWook Han <swhan@nemustech.com> Fix: Issue 26627: Dalvik Heap Trim timer value after GC

dvmRelativeCondWait need millisecods not seconds.

With this fix, trim will begins 5 seconds after concurrent GC

Bug: http://code.google.com/p/android/issues/detail?id=26627
Change-Id: I3802b48e345725fb78e4ef2c999dd243ef30a138
m/alloc/HeapSource.cpp
4e4411a056ed09d1df7a0a5bdaecfe35f532760f 10-May-2012 Elliott Hughes <enh@google.com> am 259298d9: Make sure we have room for future Maps builds.

* commit '259298d964e55be9f2afbd9e145311895ed920da':
Make sure we have room for future Maps builds.
af8816611a95c5fe12ee48f601c517ac8250accd 10-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
259298d964e55be9f2afbd9e145311895ed920da 10-May-2012 Elliott Hughes <enh@google.com> Make sure we have room for future Maps builds.

They're worried that the Honeycomb increase to 8MiB won't last them very long.

Bug: 6423582
Change-Id: I5f35add9f370548415c0a5e6aed42ec5bd943a03
m/LinearAlloc.cpp
e021dc326f1fe897e4d4a4b326d5a592cdbbb21a 06-May-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
d25f00e6921e9d7957017c79cab6b52ddef93234 05-May-2012 Elliott Hughes <enh@google.com> am 2b02fef4: Lose libnativehelper to its own project for the PDK.

* commit '2b02fef409ebf91d3a9e6a624ab4f60ef540dbc9':
Lose libnativehelper to its own project for the PDK.
ad4681b5d7f46bf8d672ddcd102b6e123bae37cd 04-May-2012 Elliott Hughes <enh@google.com> am 20aeca6e: Merge "Pad the 8 and 16 bit Jvalue members"

* commit '20aeca6e2b18c07d3840f4b09f09186511148d8c':
Pad the 8 and 16 bit Jvalue members
0b88861edfe5c0d57e0bb4a1cccb04f1916b5e9f 04-May-2012 Elliott Hughes <enh@google.com> resolved conflicts for merge of 93a44a28 to jb-dev-plus-aosp

Change-Id: I9c1f2e37602bea86e70333d2b274665e99fcbd92
2b02fef409ebf91d3a9e6a624ab4f60ef540dbc9 04-May-2012 Elliott Hughes <enh@google.com> Lose libnativehelper to its own project for the PDK.

Bug: 6369821
Change-Id: Iae06cf1570a14ddefad6b31eec904d9fa598d89f
ndroid.mk
exopt/Android.mk
ibnativehelper/Android.mk
ibnativehelper/JNIHelp.cpp
ibnativehelper/MODULE_LICENSE_APACHE2
ibnativehelper/NOTICE
ibnativehelper/README
ibnativehelper/Register.cpp
ibnativehelper/include/nativehelper/JNIHelp.h
ibnativehelper/include/nativehelper/jni.h
m/Android.mk
m/Init.cpp
20aeca6e2b18c07d3840f4b09f09186511148d8c 03-May-2012 Elliott Hughes <enh@google.com> Merge "Pad the 8 and 16 bit Jvalue members"
64793fc548200f9b6da0782e7b276743a529c807 31-Jan-2012 Chris Dearman <chris@mips.com> Pad the 8 and 16 bit Jvalue members

This allows them to be consistently accessed as either 8-bit,
16-bit or 32-bit values in bigendian and little-endian mode.

Change-Id: I1be5519f3666a3553b404368075f5a7b5d9e6b32
Signed-off-by: Chris Dearman <chris@mips.com>
Signed-off-by: Raghu Gandham <raghu@mips.com>
m/Common.h
m/mterp/common/asm-constants.h
93a44a282327b44a84af59f201eaf58df02c449f 03-May-2012 Elliott Hughes <enh@google.com> Merge "[MIPS] Dalvik fast interpreter support and JIT implementation"
901167c1d78403bedcb48a20f46a971fae392a27 03-May-2012 Elliott Hughes <enh@google.com> am e6bdc430: Merge "Fix a bug in dvmQuasiAtomicsShutdown."

* commit 'e6bdc430f38ef9c2e74ecdb0cee5aa04848e71fc':
Fix a bug in dvmQuasiAtomicsShutdown.
e6bdc430f38ef9c2e74ecdb0cee5aa04848e71fc 03-May-2012 Elliott Hughes <enh@google.com> Merge "Fix a bug in dvmQuasiAtomicsShutdown."
a1b6477b6ad6a78ede584d0638d0df3dac925ef3 03-May-2012 Elliott Hughes <enh@google.com> am a14639df: Merge "Support architectures that require correctly aligned doubles"

* commit 'a14639df65cc0aefafcddda5aae8b591204e45f9':
Support architectures that require correctly aligned doubles
ce4b1cf456de22f1fbf696ed718f65edbebd1b5c 03-May-2012 Elliott Hughes <enh@google.com> Fix a bug in dvmQuasiAtomicsShutdown.

Spotted visually when merging to an internal branch.

Change-Id: Ic130608bfa46036cec0684cd50706178cfefd2a0
m/Atomic.cpp
627d8d06b366c4aa54bee43daee0d0011638b608 03-May-2012 Elliott Hughes <enh@google.com> resolved conflicts for merge of 323d9152 to jb-dev-plus-aosp

Change-Id: Ie94542150dad725ca09ad2824cddd034cd6a149b
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>
m/Android.mk
m/Dvm.mk
m/Thread.cpp
m/arch/generic/Call.cpp
m/arch/mips/CallO32.S
m/arch/mips/HintsO32.cpp
m/compiler/Compiler.cpp
m/compiler/Compiler.h
m/compiler/CompilerUtility.h
m/compiler/codegen/arm/ArchUtility.cpp
m/compiler/codegen/mips/ArchUtility.cpp
m/compiler/codegen/mips/Assemble.cpp
m/compiler/codegen/mips/CalloutHelper.h
m/compiler/codegen/mips/Codegen.h
m/compiler/codegen/mips/CodegenCommon.cpp
m/compiler/codegen/mips/CodegenDriver.cpp
m/compiler/codegen/mips/CodegenFactory.cpp
m/compiler/codegen/mips/FP/MipsFP.cpp
m/compiler/codegen/mips/GlobalOptimizations.cpp
m/compiler/codegen/mips/LocalOptimizations.cpp
m/compiler/codegen/mips/Mips32/Factory.cpp
m/compiler/codegen/mips/Mips32/Gen.cpp
m/compiler/codegen/mips/Mips32/Ralloc.cpp
m/compiler/codegen/mips/MipsLIR.h
m/compiler/codegen/mips/Ralloc.h
m/compiler/codegen/mips/RallocUtil.cpp
m/compiler/codegen/mips/mips/ArchVariant.cpp
m/compiler/codegen/mips/mips/ArchVariant.h
m/compiler/codegen/mips/mips/CallingConvention.S
m/compiler/codegen/mips/mips/Codegen.cpp
m/compiler/codegen/mips/mips/MethodCodegenDriver.cpp
m/compiler/codegen/x86/ArchUtility.cpp
m/compiler/template/config-mips
m/compiler/template/mips/TEMPLATE_ADD_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_ADD_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_CMPG_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_CMPG_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_CMPL_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_CMPL_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_CMP_LONG.S
m/compiler/template/mips/TEMPLATE_DIV_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_DIV_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_DOUBLE_TO_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_DOUBLE_TO_INT_VFP.S
m/compiler/template/mips/TEMPLATE_FLOAT_TO_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_FLOAT_TO_INT_VFP.S
m/compiler/template/mips/TEMPLATE_INTERPRET.S
m/compiler/template/mips/TEMPLATE_INT_TO_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_INT_TO_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_CHAIN.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_CHAIN_PROF.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_NATIVE.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_NATIVE_PROF.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_NO_OPT.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_NO_OPT_PROF.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_PREDICTED_CHAIN.S
m/compiler/template/mips/TEMPLATE_INVOKE_METHOD_PREDICTED_CHAIN_PROF.S
m/compiler/template/mips/TEMPLATE_MEM_OP_DECODE.S
m/compiler/template/mips/TEMPLATE_MONITOR_ENTER.S
m/compiler/template/mips/TEMPLATE_MONITOR_ENTER_DEBUG.S
m/compiler/template/mips/TEMPLATE_MUL_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_MUL_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_MUL_LONG.S
m/compiler/template/mips/TEMPLATE_PERIODIC_PROFILING.S
m/compiler/template/mips/TEMPLATE_RESTORE_STATE.S
m/compiler/template/mips/TEMPLATE_RETURN.S
m/compiler/template/mips/TEMPLATE_RETURN_PROF.S
m/compiler/template/mips/TEMPLATE_SAVE_STATE.S
m/compiler/template/mips/TEMPLATE_SHL_LONG.S
m/compiler/template/mips/TEMPLATE_SHR_LONG.S
m/compiler/template/mips/TEMPLATE_SQRT_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_STRING_COMPARETO.S
m/compiler/template/mips/TEMPLATE_STRING_INDEXOF.S
m/compiler/template/mips/TEMPLATE_SUB_DOUBLE_VFP.S
m/compiler/template/mips/TEMPLATE_SUB_FLOAT_VFP.S
m/compiler/template/mips/TEMPLATE_THROW_EXCEPTION_COMMON.S
m/compiler/template/mips/TEMPLATE_USHR_LONG.S
m/compiler/template/mips/TemplateOpList.h
m/compiler/template/mips/fbinop.S
m/compiler/template/mips/fbinopWide.S
m/compiler/template/mips/footer.S
m/compiler/template/mips/funop.S
m/compiler/template/mips/funopNarrower.S
m/compiler/template/mips/funopWider.S
m/compiler/template/mips/header.S
m/compiler/template/mips/platform.S
m/compiler/template/out/CompilerTemplateAsm-mips.S
m/compiler/template/rebuild.sh
m/mterp/Mterp.cpp
m/mterp/c/header.cpp
m/mterp/common/asm-constants.h
m/mterp/common/mips-defines.h
m/mterp/config-mips
m/mterp/gen-mterp.py
m/mterp/mips/ALT_OP_DISPATCH_FF.S
m/mterp/mips/OP_ADD_DOUBLE.S
m/mterp/mips/OP_ADD_DOUBLE_2ADDR.S
m/mterp/mips/OP_ADD_FLOAT.S
m/mterp/mips/OP_ADD_FLOAT_2ADDR.S
m/mterp/mips/OP_ADD_INT.S
m/mterp/mips/OP_ADD_INT_2ADDR.S
m/mterp/mips/OP_ADD_INT_LIT16.S
m/mterp/mips/OP_ADD_INT_LIT8.S
m/mterp/mips/OP_ADD_LONG.S
m/mterp/mips/OP_ADD_LONG_2ADDR.S
m/mterp/mips/OP_AGET.S
m/mterp/mips/OP_AGET_BOOLEAN.S
m/mterp/mips/OP_AGET_BYTE.S
m/mterp/mips/OP_AGET_CHAR.S
m/mterp/mips/OP_AGET_OBJECT.S
m/mterp/mips/OP_AGET_SHORT.S
m/mterp/mips/OP_AGET_WIDE.S
m/mterp/mips/OP_AND_INT.S
m/mterp/mips/OP_AND_INT_2ADDR.S
m/mterp/mips/OP_AND_INT_LIT16.S
m/mterp/mips/OP_AND_INT_LIT8.S
m/mterp/mips/OP_AND_LONG.S
m/mterp/mips/OP_AND_LONG_2ADDR.S
m/mterp/mips/OP_APUT.S
m/mterp/mips/OP_APUT_BOOLEAN.S
m/mterp/mips/OP_APUT_BYTE.S
m/mterp/mips/OP_APUT_CHAR.S
m/mterp/mips/OP_APUT_OBJECT.S
m/mterp/mips/OP_APUT_SHORT.S
m/mterp/mips/OP_APUT_WIDE.S
m/mterp/mips/OP_ARRAY_LENGTH.S
m/mterp/mips/OP_BREAKPOINT.S
m/mterp/mips/OP_CHECK_CAST.S
m/mterp/mips/OP_CHECK_CAST_JUMBO.S
m/mterp/mips/OP_CMPG_DOUBLE.S
m/mterp/mips/OP_CMPG_FLOAT.S
m/mterp/mips/OP_CMPL_DOUBLE.S
m/mterp/mips/OP_CMPL_FLOAT.S
m/mterp/mips/OP_CMP_LONG.S
m/mterp/mips/OP_CONST.S
m/mterp/mips/OP_CONST_16.S
m/mterp/mips/OP_CONST_4.S
m/mterp/mips/OP_CONST_CLASS.S
m/mterp/mips/OP_CONST_CLASS_JUMBO.S
m/mterp/mips/OP_CONST_HIGH16.S
m/mterp/mips/OP_CONST_STRING.S
m/mterp/mips/OP_CONST_STRING_JUMBO.S
m/mterp/mips/OP_CONST_WIDE.S
m/mterp/mips/OP_CONST_WIDE_16.S
m/mterp/mips/OP_CONST_WIDE_32.S
m/mterp/mips/OP_CONST_WIDE_HIGH16.S
m/mterp/mips/OP_DISPATCH_FF.S
m/mterp/mips/OP_DIV_DOUBLE.S
m/mterp/mips/OP_DIV_DOUBLE_2ADDR.S
m/mterp/mips/OP_DIV_FLOAT.S
m/mterp/mips/OP_DIV_FLOAT_2ADDR.S
m/mterp/mips/OP_DIV_INT.S
m/mterp/mips/OP_DIV_INT_2ADDR.S
m/mterp/mips/OP_DIV_INT_LIT16.S
m/mterp/mips/OP_DIV_INT_LIT8.S
m/mterp/mips/OP_DIV_LONG.S
m/mterp/mips/OP_DIV_LONG_2ADDR.S
m/mterp/mips/OP_DOUBLE_TO_FLOAT.S
m/mterp/mips/OP_DOUBLE_TO_INT.S
m/mterp/mips/OP_DOUBLE_TO_LONG.S
m/mterp/mips/OP_EXECUTE_INLINE.S
m/mterp/mips/OP_EXECUTE_INLINE_RANGE.S
m/mterp/mips/OP_FILLED_NEW_ARRAY.S
m/mterp/mips/OP_FILLED_NEW_ARRAY_JUMBO.S
m/mterp/mips/OP_FILLED_NEW_ARRAY_RANGE.S
m/mterp/mips/OP_FILL_ARRAY_DATA.S
m/mterp/mips/OP_FLOAT_TO_DOUBLE.S
m/mterp/mips/OP_FLOAT_TO_INT.S
m/mterp/mips/OP_FLOAT_TO_LONG.S
m/mterp/mips/OP_GOTO.S
m/mterp/mips/OP_GOTO_16.S
m/mterp/mips/OP_GOTO_32.S
m/mterp/mips/OP_IF_EQ.S
m/mterp/mips/OP_IF_EQZ.S
m/mterp/mips/OP_IF_GE.S
m/mterp/mips/OP_IF_GEZ.S
m/mterp/mips/OP_IF_GT.S
m/mterp/mips/OP_IF_GTZ.S
m/mterp/mips/OP_IF_LE.S
m/mterp/mips/OP_IF_LEZ.S
m/mterp/mips/OP_IF_LT.S
m/mterp/mips/OP_IF_LTZ.S
m/mterp/mips/OP_IF_NE.S
m/mterp/mips/OP_IF_NEZ.S
m/mterp/mips/OP_IGET.S
m/mterp/mips/OP_IGET_BOOLEAN.S
m/mterp/mips/OP_IGET_BOOLEAN_JUMBO.S
m/mterp/mips/OP_IGET_BYTE.S
m/mterp/mips/OP_IGET_BYTE_JUMBO.S
m/mterp/mips/OP_IGET_CHAR.S
m/mterp/mips/OP_IGET_CHAR_JUMBO.S
m/mterp/mips/OP_IGET_JUMBO.S
m/mterp/mips/OP_IGET_OBJECT.S
m/mterp/mips/OP_IGET_OBJECT_JUMBO.S
m/mterp/mips/OP_IGET_OBJECT_QUICK.S
m/mterp/mips/OP_IGET_OBJECT_VOLATILE.S
m/mterp/mips/OP_IGET_OBJECT_VOLATILE_JUMBO.S
m/mterp/mips/OP_IGET_QUICK.S
m/mterp/mips/OP_IGET_SHORT.S
m/mterp/mips/OP_IGET_SHORT_JUMBO.S
m/mterp/mips/OP_IGET_VOLATILE.S
m/mterp/mips/OP_IGET_VOLATILE_JUMBO.S
m/mterp/mips/OP_IGET_WIDE.S
m/mterp/mips/OP_IGET_WIDE_JUMBO.S
m/mterp/mips/OP_IGET_WIDE_QUICK.S
m/mterp/mips/OP_IGET_WIDE_VOLATILE.S
m/mterp/mips/OP_IGET_WIDE_VOLATILE_JUMBO.S
m/mterp/mips/OP_INSTANCE_OF.S
m/mterp/mips/OP_INSTANCE_OF_JUMBO.S
m/mterp/mips/OP_INT_TO_BYTE.S
m/mterp/mips/OP_INT_TO_CHAR.S
m/mterp/mips/OP_INT_TO_DOUBLE.S
m/mterp/mips/OP_INT_TO_FLOAT.S
m/mterp/mips/OP_INT_TO_LONG.S
m/mterp/mips/OP_INT_TO_SHORT.S
m/mterp/mips/OP_INVOKE_DIRECT.S
m/mterp/mips/OP_INVOKE_DIRECT_JUMBO.S
m/mterp/mips/OP_INVOKE_DIRECT_RANGE.S
m/mterp/mips/OP_INVOKE_INTERFACE.S
m/mterp/mips/OP_INVOKE_INTERFACE_JUMBO.S
m/mterp/mips/OP_INVOKE_INTERFACE_RANGE.S
m/mterp/mips/OP_INVOKE_OBJECT_INIT_JUMBO.S
m/mterp/mips/OP_INVOKE_OBJECT_INIT_RANGE.S
m/mterp/mips/OP_INVOKE_STATIC.S
m/mterp/mips/OP_INVOKE_STATIC_JUMBO.S
m/mterp/mips/OP_INVOKE_STATIC_RANGE.S
m/mterp/mips/OP_INVOKE_SUPER.S
m/mterp/mips/OP_INVOKE_SUPER_JUMBO.S
m/mterp/mips/OP_INVOKE_SUPER_QUICK.S
m/mterp/mips/OP_INVOKE_SUPER_QUICK_RANGE.S
m/mterp/mips/OP_INVOKE_SUPER_RANGE.S
m/mterp/mips/OP_INVOKE_VIRTUAL.S
m/mterp/mips/OP_INVOKE_VIRTUAL_JUMBO.S
m/mterp/mips/OP_INVOKE_VIRTUAL_QUICK.S
m/mterp/mips/OP_INVOKE_VIRTUAL_QUICK_RANGE.S
m/mterp/mips/OP_INVOKE_VIRTUAL_RANGE.S
m/mterp/mips/OP_IPUT.S
m/mterp/mips/OP_IPUT_BOOLEAN.S
m/mterp/mips/OP_IPUT_BOOLEAN_JUMBO.S
m/mterp/mips/OP_IPUT_BYTE.S
m/mterp/mips/OP_IPUT_BYTE_JUMBO.S
m/mterp/mips/OP_IPUT_CHAR.S
m/mterp/mips/OP_IPUT_CHAR_JUMBO.S
m/mterp/mips/OP_IPUT_JUMBO.S
m/mterp/mips/OP_IPUT_OBJECT.S
m/mterp/mips/OP_IPUT_OBJECT_JUMBO.S
m/mterp/mips/OP_IPUT_OBJECT_QUICK.S
m/mterp/mips/OP_IPUT_OBJECT_VOLATILE.S
m/mterp/mips/OP_IPUT_OBJECT_VOLATILE_JUMBO.S
m/mterp/mips/OP_IPUT_QUICK.S
m/mterp/mips/OP_IPUT_SHORT.S
m/mterp/mips/OP_IPUT_SHORT_JUMBO.S
m/mterp/mips/OP_IPUT_VOLATILE.S
m/mterp/mips/OP_IPUT_VOLATILE_JUMBO.S
m/mterp/mips/OP_IPUT_WIDE.S
m/mterp/mips/OP_IPUT_WIDE_JUMBO.S
m/mterp/mips/OP_IPUT_WIDE_QUICK.S
m/mterp/mips/OP_IPUT_WIDE_VOLATILE.S
m/mterp/mips/OP_IPUT_WIDE_VOLATILE_JUMBO.S
m/mterp/mips/OP_LONG_TO_DOUBLE.S
m/mterp/mips/OP_LONG_TO_FLOAT.S
m/mterp/mips/OP_LONG_TO_INT.S
m/mterp/mips/OP_MONITOR_ENTER.S
m/mterp/mips/OP_MONITOR_EXIT.S
m/mterp/mips/OP_MOVE.S
m/mterp/mips/OP_MOVE_16.S
m/mterp/mips/OP_MOVE_EXCEPTION.S
m/mterp/mips/OP_MOVE_FROM16.S
m/mterp/mips/OP_MOVE_OBJECT.S
m/mterp/mips/OP_MOVE_OBJECT_16.S
m/mterp/mips/OP_MOVE_OBJECT_FROM16.S
m/mterp/mips/OP_MOVE_RESULT.S
m/mterp/mips/OP_MOVE_RESULT_OBJECT.S
m/mterp/mips/OP_MOVE_RESULT_WIDE.S
m/mterp/mips/OP_MOVE_WIDE.S
m/mterp/mips/OP_MOVE_WIDE_16.S
m/mterp/mips/OP_MOVE_WIDE_FROM16.S
m/mterp/mips/OP_MUL_DOUBLE.S
m/mterp/mips/OP_MUL_DOUBLE_2ADDR.S
m/mterp/mips/OP_MUL_FLOAT.S
m/mterp/mips/OP_MUL_FLOAT_2ADDR.S
m/mterp/mips/OP_MUL_INT.S
m/mterp/mips/OP_MUL_INT_2ADDR.S
m/mterp/mips/OP_MUL_INT_LIT16.S
m/mterp/mips/OP_MUL_INT_LIT8.S
m/mterp/mips/OP_MUL_LONG.S
m/mterp/mips/OP_MUL_LONG_2ADDR.S
m/mterp/mips/OP_NEG_DOUBLE.S
m/mterp/mips/OP_NEG_FLOAT.S
m/mterp/mips/OP_NEG_INT.S
m/mterp/mips/OP_NEG_LONG.S
m/mterp/mips/OP_NEW_ARRAY.S
m/mterp/mips/OP_NEW_ARRAY_JUMBO.S
m/mterp/mips/OP_NEW_INSTANCE.S
m/mterp/mips/OP_NEW_INSTANCE_JUMBO.S
m/mterp/mips/OP_NOP.S
m/mterp/mips/OP_NOT_INT.S
m/mterp/mips/OP_NOT_LONG.S
m/mterp/mips/OP_OR_INT.S
m/mterp/mips/OP_OR_INT_2ADDR.S
m/mterp/mips/OP_OR_INT_LIT16.S
m/mterp/mips/OP_OR_INT_LIT8.S
m/mterp/mips/OP_OR_LONG.S
m/mterp/mips/OP_OR_LONG_2ADDR.S
m/mterp/mips/OP_PACKED_SWITCH.S
m/mterp/mips/OP_REM_DOUBLE.S
m/mterp/mips/OP_REM_DOUBLE_2ADDR.S
m/mterp/mips/OP_REM_FLOAT.S
m/mterp/mips/OP_REM_FLOAT_2ADDR.S
m/mterp/mips/OP_REM_INT.S
m/mterp/mips/OP_REM_INT_2ADDR.S
m/mterp/mips/OP_REM_INT_LIT16.S
m/mterp/mips/OP_REM_INT_LIT8.S
m/mterp/mips/OP_REM_LONG.S
m/mterp/mips/OP_REM_LONG_2ADDR.S
m/mterp/mips/OP_RETURN.S
m/mterp/mips/OP_RETURN_OBJECT.S
m/mterp/mips/OP_RETURN_VOID.S
m/mterp/mips/OP_RETURN_VOID_BARRIER.S
m/mterp/mips/OP_RETURN_WIDE.S
m/mterp/mips/OP_RSUB_INT.S
m/mterp/mips/OP_RSUB_INT_LIT8.S
m/mterp/mips/OP_SGET.S
m/mterp/mips/OP_SGET_BOOLEAN.S
m/mterp/mips/OP_SGET_BOOLEAN_JUMBO.S
m/mterp/mips/OP_SGET_BYTE.S
m/mterp/mips/OP_SGET_BYTE_JUMBO.S
m/mterp/mips/OP_SGET_CHAR.S
m/mterp/mips/OP_SGET_CHAR_JUMBO.S
m/mterp/mips/OP_SGET_JUMBO.S
m/mterp/mips/OP_SGET_OBJECT.S
m/mterp/mips/OP_SGET_OBJECT_JUMBO.S
m/mterp/mips/OP_SGET_OBJECT_VOLATILE.S
m/mterp/mips/OP_SGET_OBJECT_VOLATILE_JUMBO.S
m/mterp/mips/OP_SGET_SHORT.S
m/mterp/mips/OP_SGET_SHORT_JUMBO.S
m/mterp/mips/OP_SGET_VOLATILE.S
m/mterp/mips/OP_SGET_VOLATILE_JUMBO.S
m/mterp/mips/OP_SGET_WIDE.S
m/mterp/mips/OP_SGET_WIDE_JUMBO.S
m/mterp/mips/OP_SGET_WIDE_VOLATILE.S
m/mterp/mips/OP_SGET_WIDE_VOLATILE_JUMBO.S
m/mterp/mips/OP_SHL_INT.S
m/mterp/mips/OP_SHL_INT_2ADDR.S
m/mterp/mips/OP_SHL_INT_LIT8.S
m/mterp/mips/OP_SHL_LONG.S
m/mterp/mips/OP_SHL_LONG_2ADDR.S
m/mterp/mips/OP_SHR_INT.S
m/mterp/mips/OP_SHR_INT_2ADDR.S
m/mterp/mips/OP_SHR_INT_LIT8.S
m/mterp/mips/OP_SHR_LONG.S
m/mterp/mips/OP_SHR_LONG_2ADDR.S
m/mterp/mips/OP_SPARSE_SWITCH.S
m/mterp/mips/OP_SPUT.S
m/mterp/mips/OP_SPUT_BOOLEAN.S
m/mterp/mips/OP_SPUT_BOOLEAN_JUMBO.S
m/mterp/mips/OP_SPUT_BYTE.S
m/mterp/mips/OP_SPUT_BYTE_JUMBO.S
m/mterp/mips/OP_SPUT_CHAR.S
m/mterp/mips/OP_SPUT_CHAR_JUMBO.S
m/mterp/mips/OP_SPUT_JUMBO.S
m/mterp/mips/OP_SPUT_OBJECT.S
m/mterp/mips/OP_SPUT_OBJECT_JUMBO.S
m/mterp/mips/OP_SPUT_OBJECT_VOLATILE.S
m/mterp/mips/OP_SPUT_OBJECT_VOLATILE_JUMBO.S
m/mterp/mips/OP_SPUT_SHORT.S
m/mterp/mips/OP_SPUT_SHORT_JUMBO.S
m/mterp/mips/OP_SPUT_VOLATILE.S
m/mterp/mips/OP_SPUT_VOLATILE_JUMBO.S
m/mterp/mips/OP_SPUT_WIDE.S
m/mterp/mips/OP_SPUT_WIDE_JUMBO.S
m/mterp/mips/OP_SPUT_WIDE_VOLATILE.S
m/mterp/mips/OP_SPUT_WIDE_VOLATILE_JUMBO.S
m/mterp/mips/OP_SUB_DOUBLE.S
m/mterp/mips/OP_SUB_DOUBLE_2ADDR.S
m/mterp/mips/OP_SUB_FLOAT.S
m/mterp/mips/OP_SUB_FLOAT_2ADDR.S
m/mterp/mips/OP_SUB_INT.S
m/mterp/mips/OP_SUB_INT_2ADDR.S
m/mterp/mips/OP_SUB_LONG.S
m/mterp/mips/OP_SUB_LONG_2ADDR.S
m/mterp/mips/OP_THROW.S
m/mterp/mips/OP_THROW_VERIFICATION_ERROR.S
m/mterp/mips/OP_THROW_VERIFICATION_ERROR_JUMBO.S
m/mterp/mips/OP_UNUSED_27FF.S
m/mterp/mips/OP_UNUSED_28FF.S
m/mterp/mips/OP_UNUSED_29FF.S
m/mterp/mips/OP_UNUSED_2AFF.S
m/mterp/mips/OP_UNUSED_2BFF.S
m/mterp/mips/OP_UNUSED_2CFF.S
m/mterp/mips/OP_UNUSED_2DFF.S
m/mterp/mips/OP_UNUSED_2EFF.S
m/mterp/mips/OP_UNUSED_2FFF.S
m/mterp/mips/OP_UNUSED_30FF.S
m/mterp/mips/OP_UNUSED_31FF.S
m/mterp/mips/OP_UNUSED_32FF.S
m/mterp/mips/OP_UNUSED_33FF.S
m/mterp/mips/OP_UNUSED_34FF.S
m/mterp/mips/OP_UNUSED_35FF.S
m/mterp/mips/OP_UNUSED_36FF.S
m/mterp/mips/OP_UNUSED_37FF.S
m/mterp/mips/OP_UNUSED_38FF.S
m/mterp/mips/OP_UNUSED_39FF.S
m/mterp/mips/OP_UNUSED_3AFF.S
m/mterp/mips/OP_UNUSED_3BFF.S
m/mterp/mips/OP_UNUSED_3CFF.S
m/mterp/mips/OP_UNUSED_3DFF.S
m/mterp/mips/OP_UNUSED_3E.S
m/mterp/mips/OP_UNUSED_3EFF.S
m/mterp/mips/OP_UNUSED_3F.S
m/mterp/mips/OP_UNUSED_3FFF.S
m/mterp/mips/OP_UNUSED_40.S
m/mterp/mips/OP_UNUSED_40FF.S
m/mterp/mips/OP_UNUSED_41.S
m/mterp/mips/OP_UNUSED_41FF.S
m/mterp/mips/OP_UNUSED_42.S
m/mterp/mips/OP_UNUSED_42FF.S
m/mterp/mips/OP_UNUSED_43.S
m/mterp/mips/OP_UNUSED_43FF.S
m/mterp/mips/OP_UNUSED_44FF.S
m/mterp/mips/OP_UNUSED_45FF.S
m/mterp/mips/OP_UNUSED_46FF.S
m/mterp/mips/OP_UNUSED_47FF.S
m/mterp/mips/OP_UNUSED_48FF.S
m/mterp/mips/OP_UNUSED_49FF.S
m/mterp/mips/OP_UNUSED_4AFF.S
m/mterp/mips/OP_UNUSED_4BFF.S
m/mterp/mips/OP_UNUSED_4CFF.S
m/mterp/mips/OP_UNUSED_4DFF.S
m/mterp/mips/OP_UNUSED_4EFF.S
m/mterp/mips/OP_UNUSED_4FFF.S
m/mterp/mips/OP_UNUSED_50FF.S
m/mterp/mips/OP_UNUSED_51FF.S
m/mterp/mips/OP_UNUSED_52FF.S
m/mterp/mips/OP_UNUSED_53FF.S
m/mterp/mips/OP_UNUSED_54FF.S
m/mterp/mips/OP_UNUSED_55FF.S
m/mterp/mips/OP_UNUSED_56FF.S
m/mterp/mips/OP_UNUSED_57FF.S
m/mterp/mips/OP_UNUSED_58FF.S
m/mterp/mips/OP_UNUSED_59FF.S
m/mterp/mips/OP_UNUSED_5AFF.S
m/mterp/mips/OP_UNUSED_5BFF.S
m/mterp/mips/OP_UNUSED_5CFF.S
m/mterp/mips/OP_UNUSED_5DFF.S
m/mterp/mips/OP_UNUSED_5EFF.S
m/mterp/mips/OP_UNUSED_5FFF.S
m/mterp/mips/OP_UNUSED_60FF.S
m/mterp/mips/OP_UNUSED_61FF.S
m/mterp/mips/OP_UNUSED_62FF.S
m/mterp/mips/OP_UNUSED_63FF.S
m/mterp/mips/OP_UNUSED_64FF.S
m/mterp/mips/OP_UNUSED_65FF.S
m/mterp/mips/OP_UNUSED_66FF.S
m/mterp/mips/OP_UNUSED_67FF.S
m/mterp/mips/OP_UNUSED_68FF.S
m/mterp/mips/OP_UNUSED_69FF.S
m/mterp/mips/OP_UNUSED_6AFF.S
m/mterp/mips/OP_UNUSED_6BFF.S
m/mterp/mips/OP_UNUSED_6CFF.S
m/mterp/mips/OP_UNUSED_6DFF.S
m/mterp/mips/OP_UNUSED_6EFF.S
m/mterp/mips/OP_UNUSED_6FFF.S
m/mterp/mips/OP_UNUSED_70FF.S
m/mterp/mips/OP_UNUSED_71FF.S
m/mterp/mips/OP_UNUSED_72FF.S
m/mterp/mips/OP_UNUSED_73.S
m/mterp/mips/OP_UNUSED_73FF.S
m/mterp/mips/OP_UNUSED_74FF.S
m/mterp/mips/OP_UNUSED_75FF.S
m/mterp/mips/OP_UNUSED_76FF.S
m/mterp/mips/OP_UNUSED_77FF.S
m/mterp/mips/OP_UNUSED_78FF.S
m/mterp/mips/OP_UNUSED_79.S
m/mterp/mips/OP_UNUSED_79FF.S
m/mterp/mips/OP_UNUSED_7A.S
m/mterp/mips/OP_UNUSED_7AFF.S
m/mterp/mips/OP_UNUSED_7BFF.S
m/mterp/mips/OP_UNUSED_7CFF.S
m/mterp/mips/OP_UNUSED_7DFF.S
m/mterp/mips/OP_UNUSED_7EFF.S
m/mterp/mips/OP_UNUSED_7FFF.S
m/mterp/mips/OP_UNUSED_80FF.S
m/mterp/mips/OP_UNUSED_81FF.S
m/mterp/mips/OP_UNUSED_82FF.S
m/mterp/mips/OP_UNUSED_83FF.S
m/mterp/mips/OP_UNUSED_84FF.S
m/mterp/mips/OP_UNUSED_85FF.S
m/mterp/mips/OP_UNUSED_86FF.S
m/mterp/mips/OP_UNUSED_87FF.S
m/mterp/mips/OP_UNUSED_88FF.S
m/mterp/mips/OP_UNUSED_89FF.S
m/mterp/mips/OP_UNUSED_8AFF.S
m/mterp/mips/OP_UNUSED_8BFF.S
m/mterp/mips/OP_UNUSED_8CFF.S
m/mterp/mips/OP_UNUSED_8DFF.S
m/mterp/mips/OP_UNUSED_8EFF.S
m/mterp/mips/OP_UNUSED_8FFF.S
m/mterp/mips/OP_UNUSED_90FF.S
m/mterp/mips/OP_UNUSED_91FF.S
m/mterp/mips/OP_UNUSED_92FF.S
m/mterp/mips/OP_UNUSED_93FF.S
m/mterp/mips/OP_UNUSED_94FF.S
m/mterp/mips/OP_UNUSED_95FF.S
m/mterp/mips/OP_UNUSED_96FF.S
m/mterp/mips/OP_UNUSED_97FF.S
m/mterp/mips/OP_UNUSED_98FF.S
m/mterp/mips/OP_UNUSED_99FF.S
m/mterp/mips/OP_UNUSED_9AFF.S
m/mterp/mips/OP_UNUSED_9BFF.S
m/mterp/mips/OP_UNUSED_9CFF.S
m/mterp/mips/OP_UNUSED_9DFF.S
m/mterp/mips/OP_UNUSED_9EFF.S
m/mterp/mips/OP_UNUSED_9FFF.S
m/mterp/mips/OP_UNUSED_A0FF.S
m/mterp/mips/OP_UNUSED_A1FF.S
m/mterp/mips/OP_UNUSED_A2FF.S
m/mterp/mips/OP_UNUSED_A3FF.S
m/mterp/mips/OP_UNUSED_A4FF.S
m/mterp/mips/OP_UNUSED_A5FF.S
m/mterp/mips/OP_UNUSED_A6FF.S
m/mterp/mips/OP_UNUSED_A7FF.S
m/mterp/mips/OP_UNUSED_A8FF.S
m/mterp/mips/OP_UNUSED_A9FF.S
m/mterp/mips/OP_UNUSED_AAFF.S
m/mterp/mips/OP_UNUSED_ABFF.S
m/mterp/mips/OP_UNUSED_ACFF.S
m/mterp/mips/OP_UNUSED_ADFF.S
m/mterp/mips/OP_UNUSED_AEFF.S
m/mterp/mips/OP_UNUSED_AFFF.S
m/mterp/mips/OP_UNUSED_B0FF.S
m/mterp/mips/OP_UNUSED_B1FF.S
m/mterp/mips/OP_UNUSED_B2FF.S
m/mterp/mips/OP_UNUSED_B3FF.S
m/mterp/mips/OP_UNUSED_B4FF.S
m/mterp/mips/OP_UNUSED_B5FF.S
m/mterp/mips/OP_UNUSED_B6FF.S
m/mterp/mips/OP_UNUSED_B7FF.S
m/mterp/mips/OP_UNUSED_B8FF.S
m/mterp/mips/OP_UNUSED_B9FF.S
m/mterp/mips/OP_UNUSED_BAFF.S
m/mterp/mips/OP_UNUSED_BBFF.S
m/mterp/mips/OP_UNUSED_BCFF.S
m/mterp/mips/OP_UNUSED_BDFF.S
m/mterp/mips/OP_UNUSED_BEFF.S
m/mterp/mips/OP_UNUSED_BFFF.S
m/mterp/mips/OP_UNUSED_C0FF.S
m/mterp/mips/OP_UNUSED_C1FF.S
m/mterp/mips/OP_UNUSED_C2FF.S
m/mterp/mips/OP_UNUSED_C3FF.S
m/mterp/mips/OP_UNUSED_C4FF.S
m/mterp/mips/OP_UNUSED_C5FF.S
m/mterp/mips/OP_UNUSED_C6FF.S
m/mterp/mips/OP_UNUSED_C7FF.S
m/mterp/mips/OP_UNUSED_C8FF.S
m/mterp/mips/OP_UNUSED_C9FF.S
m/mterp/mips/OP_UNUSED_CAFF.S
m/mterp/mips/OP_UNUSED_CBFF.S
m/mterp/mips/OP_UNUSED_CCFF.S
m/mterp/mips/OP_UNUSED_CDFF.S
m/mterp/mips/OP_UNUSED_CEFF.S
m/mterp/mips/OP_UNUSED_CFFF.S
m/mterp/mips/OP_UNUSED_D0FF.S
m/mterp/mips/OP_UNUSED_D1FF.S
m/mterp/mips/OP_UNUSED_D2FF.S
m/mterp/mips/OP_UNUSED_D3FF.S
m/mterp/mips/OP_UNUSED_D4FF.S
m/mterp/mips/OP_UNUSED_D5FF.S
m/mterp/mips/OP_UNUSED_D6FF.S
m/mterp/mips/OP_UNUSED_D7FF.S
m/mterp/mips/OP_UNUSED_D8FF.S
m/mterp/mips/OP_UNUSED_D9FF.S
m/mterp/mips/OP_UNUSED_DAFF.S
m/mterp/mips/OP_UNUSED_DBFF.S
m/mterp/mips/OP_UNUSED_DCFF.S
m/mterp/mips/OP_UNUSED_DDFF.S
m/mterp/mips/OP_UNUSED_DEFF.S
m/mterp/mips/OP_UNUSED_DFFF.S
m/mterp/mips/OP_UNUSED_E0FF.S
m/mterp/mips/OP_UNUSED_E1FF.S
m/mterp/mips/OP_UNUSED_E2FF.S
m/mterp/mips/OP_UNUSED_E3.S
m/mterp/mips/OP_UNUSED_E3FF.S
m/mterp/mips/OP_UNUSED_E4.S
m/mterp/mips/OP_UNUSED_E4FF.S
m/mterp/mips/OP_UNUSED_E5.S
m/mterp/mips/OP_UNUSED_E5FF.S
m/mterp/mips/OP_UNUSED_E6.S
m/mterp/mips/OP_UNUSED_E6FF.S
m/mterp/mips/OP_UNUSED_E7.S
m/mterp/mips/OP_UNUSED_E7FF.S
m/mterp/mips/OP_UNUSED_E8.S
m/mterp/mips/OP_UNUSED_E8FF.S
m/mterp/mips/OP_UNUSED_E9.S
m/mterp/mips/OP_UNUSED_E9FF.S
m/mterp/mips/OP_UNUSED_EA.S
m/mterp/mips/OP_UNUSED_EAFF.S
m/mterp/mips/OP_UNUSED_EB.S
m/mterp/mips/OP_UNUSED_EBFF.S
m/mterp/mips/OP_UNUSED_EC.S
m/mterp/mips/OP_UNUSED_ECFF.S
m/mterp/mips/OP_UNUSED_ED.S
m/mterp/mips/OP_UNUSED_EDFF.S
m/mterp/mips/OP_UNUSED_EEFF.S
m/mterp/mips/OP_UNUSED_EF.S
m/mterp/mips/OP_UNUSED_EFFF.S
m/mterp/mips/OP_UNUSED_F0FF.S
m/mterp/mips/OP_UNUSED_F1.S
m/mterp/mips/OP_UNUSED_F1FF.S
m/mterp/mips/OP_UNUSED_FC.S
m/mterp/mips/OP_UNUSED_FD.S
m/mterp/mips/OP_UNUSED_FE.S
m/mterp/mips/OP_UNUSED_FF.S
m/mterp/mips/OP_USHR_INT.S
m/mterp/mips/OP_USHR_INT_2ADDR.S
m/mterp/mips/OP_USHR_INT_LIT8.S
m/mterp/mips/OP_USHR_LONG.S
m/mterp/mips/OP_USHR_LONG_2ADDR.S
m/mterp/mips/OP_XOR_INT.S
m/mterp/mips/OP_XOR_INT_2ADDR.S
m/mterp/mips/OP_XOR_INT_LIT16.S
m/mterp/mips/OP_XOR_INT_LIT8.S
m/mterp/mips/OP_XOR_LONG.S
m/mterp/mips/OP_XOR_LONG_2ADDR.S
m/mterp/mips/alt_stub.S
m/mterp/mips/bincmp.S
m/mterp/mips/binflop.S
m/mterp/mips/binflop2addr.S
m/mterp/mips/binflopWide.S
m/mterp/mips/binflopWide2addr.S
m/mterp/mips/binop.S
m/mterp/mips/binop2addr.S
m/mterp/mips/binopLit16.S
m/mterp/mips/binopLit8.S
m/mterp/mips/binopWide.S
m/mterp/mips/binopWide2addr.S
m/mterp/mips/debug.cpp
m/mterp/mips/entry.S
m/mterp/mips/footer.S
m/mterp/mips/header.S
m/mterp/mips/platform.S
m/mterp/mips/stub.S
m/mterp/mips/unflop.S
m/mterp/mips/unflopWide.S
m/mterp/mips/unflopWider.S
m/mterp/mips/unop.S
m/mterp/mips/unopNarrower.S
m/mterp/mips/unopWide.S
m/mterp/mips/unopWider.S
m/mterp/mips/unused.S
m/mterp/mips/zcmp.S
m/mterp/out/InterpAsm-mips.S
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-mips.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/mterp/rebuild.sh
a14639df65cc0aefafcddda5aae8b591204e45f9 02-May-2012 Elliott Hughes <enh@google.com> Merge "Support architectures that require correctly aligned doubles"
323d9152187610653be7f07d045f76ea1bd3af5b 02-May-2012 Elliott Hughes <enh@google.com> Merge "Simplify the quasi-atomic stuff and add MIPS support."
1c92af60b4b6cf1b63c86b29c69c9b54646f915c 02-May-2012 Elliott Hughes <enh@google.com> Simplify the quasi-atomic stuff and add MIPS support.

Change-Id: Iac896c03ef707c998cc714628adea0255f21c035
m/Atomic.cpp
m/Atomic.h
m/Init.cpp
ce00cbe5fb3ead585b97b257d0cfb7973ca4ab01 01-May-2012 Elliott Hughes <enh@google.com> resolved conflicts for merge of 5a1fcc8a to jb-dev-plus-aosp

Change-Id: I229e532e3c2892251244bde61290ff40e7b95b4e
c73a456cf9170d3838a626502c5fad17ae65737c 01-May-2012 Elliott Hughes <enh@google.com> resolved conflicts for merge of 4c5f9711 to jb-dev-plus-aosp

Change-Id: I4c724c3df990a5abf42cec748bbbba25ee5bc112
37c16f81e3c170c4e54f62c1bd1c0b00d4e9b774 01-May-2012 Elliott Hughes <enh@google.com> am 8b946491: Merge "Fixed bug in x86-atom fast interpreter. Adds guard for potential null pointer. Adds guard for potential null pointer when checking for debugger active on return from method."

* commit '8b946491bd4d09229dc342c0be78ef36a56e7f78':
Fixed bug in x86-atom fast interpreter. Adds guard for potential null pointer. Adds guard for potential null pointer when checking for debugger active on return from method.
5a1fcc8a3bf38f74cd8cdcbfe9a67a87b9ad1054 01-May-2012 Elliott Hughes <enh@google.com> Merge changes I8669dfbc,I0ffb15b7,Ib2b8e87a,Ifc7de30e

* changes:
Use old frame for dvmReportPreNativeInvoke/dvmReportPostNativeInvoke
Restore fp after calling JNI method in allstubs interpreter
Fix the warning emitted by codesourcery compiler 4.5.2
Fix instruction logging messages
4c5f9711c7ade276a93939ccd1cddb1d68092f33 01-May-2012 Elliott Hughes <enh@google.com> Merge "Fix the portable interpreter build"
8b946491bd4d09229dc342c0be78ef36a56e7f78 01-May-2012 Elliott Hughes <enh@google.com> Merge "Fixed bug in x86-atom fast interpreter. Adds guard for potential null pointer. Adds guard for potential null pointer when checking for debugger active on return from method."
d11fb7176a645e8ae74ada2f657cd57346605b1c 25-Apr-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to jb-dev
56211ff5a118af4aeaef2b7f76e07c1143364f25 24-Apr-2012 Elliott Hughes <enh@google.com> am 0cdf3934: am d2a4bb85: Merge "Fix a leak in the JIT."

* commit '0cdf3934d334805fd6f22040fa781a86515ad2bf':
Fix a leak in the JIT.
4c7dcdcfb1c1b9cc7bb95b359fed6c17c2f41fbc 24-Apr-2012 Elliott Hughes <enh@google.com> resolved conflicts for merge of 156f3159 to master

Change-Id: I2f954597257df43d3c6367bbab40f1fdad229502
e3b03b30f40a50afcf455836e78109d2f564d156 22-Apr-2012 Glenn Kasten <gkasten@google.com> apps forked from zygote run in default cgroup

zygote and it's children, including system_server and all app processes,
currently start in root cgroup. Most app threads eventually join either
bg_noninteractive or foreground cgroups, but we can't depend on that.
This change puts system_server and all app processes in the system
default cgroup aka foreground instead.

See also bug 6376294 which will provide a more general way of configuring cgroups.

Excerpt of ps -P -t before fix. Note that app u0_a7 has some threads in root cgroup:
USER PID PPID VSIZE RSS PCY WCHAN PC NAME
root 91 1 441308 35052 ffffffff 400d4bf8 S zygote
root 1838 91 441308 35052 c009c0c4 400d5bdc S ReferenceQueueD
root 1840 91 441308 35052 c009c0c4 400d5bdc S FinalizerDaemon
root 1842 91 441308 35052 c009c0c4 400d5bdc S FinalizerWatchd
u0_a7 1378 91 461036 28676 ffffffff 400d59b0 S com.google.android.calendar
u0_a7 1380 1378 461036 28676 c009c0c4 400d5bdc S GC
u0_a7 1383 1378 461036 28676 c00827fc 400d5494 S Signal Catcher
u0_a7 1384 1378 461036 28676 c0408d14 400d569c S JDWP
u0_a7 1385 1378 461036 28676 c009c0c4 400d5bdc S Compiler
u0_a7 1386 1378 461036 28676 c009c0c4 400d5bdc S ReferenceQueueD
u0_a7 1387 1378 461036 28676 c009c0c4 400d5bdc S FinalizerDaemon
u0_a7 1388 1378 461036 28676 c009c0c4 400d5bdc S FinalizerWatchd
u0_a7 1389 1378 461036 28676 fg c035ac7c 400d4ad4 S Binder_1
u0_a7 1390 1378 461036 28676 fg c035ac7c 400d4ad4 S Binder_2
u0_a7 1393 1378 461036 28676 c009c0c4 400d5bdc S pool-1-thread-1
u0_a7 1395 1378 461036 28676 bg c009c0c4 400d5bdc S AsyncTask #1
u0_a7 1410 1378 461036 28676 c009c0c4 400d5bdc S pool-2-thread-1
u0_a7 1411 1378 461036 28676 bg c009c0c4 400d5bdc S AsyncTask #2
u0_a7 1428 1378 461036 28676 c01258cc 400d59b0 S AsyncQueryWorke
u0_a7 1469 1378 461036 28676 bg c009c0c4 400d5bdc S AsyncTask #3
u0_a7 1563 1378 461036 28676 c009c0c4 400d5bdc S pool-3-thread-1
u0_a7 1564 1378 461036 28676 bg c009c0c4 400d5bdc S AsyncTask #4

After the fix, now only kernel workers and native system services run in root cgroup:
USER PID PPID VSIZE RSS PCY WCHAN PC NAME
root 91 1 441304 35048 ffffffff 4007abf8 S zygote
root 1490 91 441304 35048 c009c0c4 4007bbdc S ReferenceQueueD
root 1491 91 441304 35048 c009c0c4 4007bbdc S FinalizerDaemon
root 1493 91 441304 35048 c009c0c4 4007bbdc S FinalizerWatchd
u0_a7 1335 91 460032 32124 bg ffffffff 4007b9b0 S com.google.android.calendar
u0_a7 1337 1335 460032 32124 bg c009c0c4 4007bbdc S GC
u0_a7 1338 1335 460032 32124 bg c00827fc 4007b494 S Signal Catcher
u0_a7 1341 1335 460032 32124 bg c0408d14 4007b69c S JDWP
u0_a7 1342 1335 460032 32124 bg c009c0c4 4007bbdc S Compiler
u0_a7 1343 1335 460032 32124 bg c009c0c4 4007bbdc S ReferenceQueueD
u0_a7 1344 1335 460032 32124 bg c009c0c4 4007bbdc S FinalizerDaemon
u0_a7 1345 1335 460032 32124 bg c009c0c4 4007bbdc S FinalizerWatchd
u0_a7 1346 1335 460032 32124 fg c035ac7c 4007aad4 S Binder_1
u0_a7 1347 1335 460032 32124 fg c035ac7c 4007aad4 S Binder_2
u0_a7 1351 1335 460032 32124 bg c009c0c4 4007bbdc S AsyncTask #1
u0_a7 1380 1335 460032 32124 bg c01258cc 4007b9b0 S AsyncQueryWorke
u0_a7 1417 1335 460032 32124 bg c009c0c4 4007bbdc S AsyncTask #2
u0_a7 1452 1335 460032 32124 bg c009c0c4 4007bbdc S AsyncTask #3
u0_a7 1555 1335 460032 32124 bg c01258cc 4007b9b0 S Thread-134
u0_a7 1691 1335 460032 32124 bg c009c0c4 4007bbdc S pool-3-thread-1
u0_a7 1692 1335 460032 32124 bg c009c0c4 4007bbdc S AsyncTask #4

Not shown, but system_server also runs in fg (it already did; this change
didn't affect that).

Change-Id: I516960a102c9d59fc9bfb5888d90a7645d178dcf
m/native/dalvik_system_Zygote.cpp
0cdf3934d334805fd6f22040fa781a86515ad2bf 21-Apr-2012 Elliott Hughes <enh@google.com> am d2a4bb85: Merge "Fix a leak in the JIT."

* commit 'd2a4bb85573f20edd751557dfdca2033652b9f36':
Fix a leak in the JIT.
d2a4bb85573f20edd751557dfdca2033652b9f36 20-Apr-2012 Elliott Hughes <enh@google.com> Merge "Fix a leak in the JIT."
156f3159521816ad9127a43881396c35d3aff615 20-Apr-2012 Elliott Hughes <enh@google.com> am 53b07f7b: Merge "Fix a small memory leak."

* commit '53b07f7bc2fb344727511e3a1f7ce8f10e36e7b0':
Fix a small memory leak.
3897bab038a89d09c97eec00653cd3a2870d2c06 20-Apr-2012 Elliott Hughes <enh@google.com> Fix a leak in the JIT.

We should use the JIT's arena rather than explicit allocation/deallocation.

Change-Id: I12b78cb1586222b082b140e4a1db00969ce23e3c
m/compiler/Loop.cpp
53b07f7bc2fb344727511e3a1f7ce8f10e36e7b0 20-Apr-2012 Elliott Hughes <enh@google.com> Merge "Fix a small memory leak."
7e2f0ea6e610787e628635f020b5b6f4e90b59f5 07-Jan-2012 Elliott Hughes <enh@google.com> Fix a small memory leak.

Found by someone reading the code, rather than because we saw a crash. This is
only a small leak, and you'd have to be dumping threads (because of an ANR) or
creating a new thread to provoke it.

(cherry picked from commit 6d1a1dfd0ef006e19067b6ffd927160d0c6d9647)

Change-Id: Id857efca8d34b20d1acaa452c3fe5d2975e2572b
m/Thread.cpp
ed06c06f8811a38b424a1d353d74eae7de2a01ac 17-Apr-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
4006531847d626cfaa60f787a78e947b6d70226e 16-Apr-2012 jeffhao <jeffhao@google.com> Merge "Output number of bytes used by LinearAlloc during dexopt."
cee7f2c85678fa9fa5c0e94130ef135f74d8a82c 16-Apr-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
6ad3f100edffe51b2d4592dce893e1e2bb566161 14-Apr-2012 jeffhao <jeffhao@google.com> Output number of bytes used by LinearAlloc during dexopt.

Maps is exceeding the LinearAlloc limit set in Gingerbread (5MB). They
wanted a way to know how close they were from going over, so this added
output can tell them how much room is left.

Change-Id: I0b78ce24accc05746bc396398086ce695bd7ba57
m/analysis/DexPrepare.cpp
513691130f0c1ab94f52127c40d0018bb7dfc529 14-Apr-2012 Ben Cheng <bccheng@google.com> Fix an array out-of-bound read in the JIT compiler.

Without the fix the compiler is still safe since the offending memory access
is a read, though the hoisted distance is non-deterministic. The easiest and
safest fix is to unconditionally hoist a load when it can reach the
scheduling barrier.

BUG: 6300640
Change-Id: Ic83de6dd1e3f602bda6809bfe840db3a097a5176
m/compiler/codegen/arm/LocalOptimizations.cpp
7222596c216393e5386b260a0b19082cf4a0d0ec 13-Apr-2012 Elliott Hughes <enh@google.com> Add a -XX:mainThreadStackSize= option.

Similar to -Xss, but for the main thread only.

Bug: 6315322
Change-Id: I84bd5974f830f348fd9a0486ae972520b4a02cc4
m/Globals.h
m/Init.cpp
m/Thread.cpp
ce6603b52e6b2ef947cb308b1d7157e357bcba02 13-Apr-2012 Elliott Hughes <enh@google.com> Add a -XX:mainThreadStackSize= option.

Similar to -Xss, but for the main thread only.

Bug: 6315322
Change-Id: I84bd5974f830f348fd9a0486ae972520b4a02cc4
m/Globals.h
m/Init.cpp
m/Thread.cpp
b5f95ddf3c6d9f3fd9cf3ab9a9aab50e0e823272 12-Apr-2012 Bill Buzbee <buzbee@google.com> Merge "Support building Dalvik with AddressSanitizer."
3ca3a08391dc962ce8834c646d511dd35d49816b 11-Apr-2012 Jeff Brown <jeffbrown@google.com> Make sure we rethrow the same exception we started with.

Bug: 6312938
Change-Id: I41d8adf27fd32103c55d9eeafa28a25c37f5029d
ibnativehelper/JNIHelp.cpp
95b0899ad3412596baa600b22ea2ecd7dd1acc43 04-Apr-2012 Evgeniy Stepanov <eugenis@google.com> Support building Dalvik with AddressSanitizer.

Change-Id: I007c5080081a4a66b39fa6b539afd8f00fd8ce0f
m/Android.mk
m/Atomic.cpp
m/mterp/armv5te/debug.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/oo/Object.h
51bb1c02c30b62e416c86b2f6985fe7ea3279603 11-Apr-2012 Jeff Brown <jeffbrown@google.com> Make sure we rethrow the same exception we started with.

Bug: 6312938
Change-Id: I41d8adf27fd32103c55d9eeafa28a25c37f5029d
ibnativehelper/JNIHelp.cpp
c6f97abe8b5ffe7f7c47447e1d3dce2d8257e338 09-Apr-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
deb0790505e6b1d4dccd90fce48585d411f0f006 06-Apr-2012 jeffhao <jeffhao@google.com> Make indexOfCommon clamp start to count when start > count.

This fixes bug http://b/6299423

Change-Id: Ib41166d021eac9cc47830ecce30fe9c58f2cec39
m/InlineNative.cpp
66a6e44bafabc957eb4eaaddbbb21e5f130c8aad 06-Apr-2012 Elliott Hughes <enh@google.com> Throw ArrayStoreException instead of corrupting the heap.

Protect against bad calls to SetObjectArrayElement. Found while debugging
a Chrome crash. (This will make Chrome fail at the point where it does the
invalid operation rather than later, but we already merged the fix upstream.)

Change-Id: Ie7b2238d99f2ee4dde46342eb77cfec0495a30e7
m/Jni.cpp
c628d17bad121d3c302f16de9ab47cec274a7403 06-Apr-2012 Elliott Hughes <enh@google.com> Dump the native stacks of threads in VmWait as well Native.

Mostly these are boring, but when they're boring they're also short.
And sometimes they're interesting.

Bug: 6294717

Change-Id: I1bf9e32a5cc237efda365abe39ad84ac59fd5c8f
m/Thread.cpp
5d31caa851d9cd3306dfc28e109eb6991c591d5e 03-Apr-2012 Mike Lockwood <lockwood@google.com> Merge remote-tracking branch 'goog/ics-aah'
313e702c8897323cf42339b0601e0f7c11543126 02-Apr-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
728c403e16be708e75d5afd4b17a42cc1fdc87a1 31-Mar-2012 Elliott Hughes <enh@google.com> am 6353fe2f: am 2a3cc744: Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"

* commit '6353fe2fbb380551a576fb38ad68dbc1566d250c':
Set SYSTEM_PAGE_SIZE from PAGE_SHIFT
6353fe2fbb380551a576fb38ad68dbc1566d250c 31-Mar-2012 Elliott Hughes <enh@google.com> am 2a3cc744: Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"

* commit '2a3cc744730ec76a05b31df8ac5b6de538d6d70b':
Set SYSTEM_PAGE_SIZE from PAGE_SHIFT
2a3cc744730ec76a05b31df8ac5b6de538d6d70b 31-Mar-2012 Elliott Hughes <enh@google.com> Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"
e86b323484db2441df2fe532be5d9623eb2dbbc5 28-Mar-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
9bffe7cc708802f20bd8790c99cc68a6b721eba8 28-Mar-2012 Elliott Hughes <enh@google.com> am b9f5c7aa: am 3ddb30bd: am 6bcf5d20: Merge "Obvious mix of = and =="

* commit 'b9f5c7aa88c3c731501bd1c61baefa5c761947a1':
Obvious mix of = and ==
874b6e182d68a14181ca8aea5bee3c832ebb1d39 28-Mar-2012 Elliott Hughes <enh@google.com> am 92ab8d50: am 531f7273: am 54ff31a5: Merge "Compact merged dexes on their byte aligned size"

* commit '92ab8d5069c51de75903a5b4768d4d94563bceb1':
Compact merged dexes on their byte aligned size
b9f5c7aa88c3c731501bd1c61baefa5c761947a1 28-Mar-2012 Elliott Hughes <enh@google.com> am 3ddb30bd: am 6bcf5d20: Merge "Obvious mix of = and =="

* commit '3ddb30bd32fd2abe06741f001411479c2d4ee416':
Obvious mix of = and ==
92ab8d5069c51de75903a5b4768d4d94563bceb1 28-Mar-2012 Elliott Hughes <enh@google.com> am 531f7273: am 54ff31a5: Merge "Compact merged dexes on their byte aligned size"

* commit '531f7273925a1de8d13fe89d5b6409d7c64b5b56':
Compact merged dexes on their byte aligned size
3ddb30bd32fd2abe06741f001411479c2d4ee416 28-Mar-2012 Elliott Hughes <enh@google.com> am 6bcf5d20: Merge "Obvious mix of = and =="

* commit '6bcf5d200bc9d1be6c3d766005c19694a325da61':
Obvious mix of = and ==
531f7273925a1de8d13fe89d5b6409d7c64b5b56 28-Mar-2012 Elliott Hughes <enh@google.com> am 54ff31a5: Merge "Compact merged dexes on their byte aligned size"

* commit '54ff31a5f467aea7352b034f37406a6f4fe6a253':
Compact merged dexes on their byte aligned size
6bcf5d200bc9d1be6c3d766005c19694a325da61 27-Mar-2012 Elliott Hughes <enh@google.com> Merge "Obvious mix of = and =="
54ff31a5f467aea7352b034f37406a6f4fe6a253 13-Mar-2012 Elliott Hughes <enh@google.com> Merge "Compact merged dexes on their byte aligned size"
fa76cb555c1683d36ef9d6f6680a0e4e16115679 27-Mar-2012 Mark Gordon <msg555@gmail.com> Obvious mix of = and ==

Change-Id: I52183924c287b80e9ca7c20df6edfe132b43e088
m/jdwp/JdwpEvent.cpp
d60c7cd4338cb785a4b9286a4939c3741948ca14 27-Mar-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
fa3b293a068fd521a6ba6019a051ad502dfaca55 26-Mar-2012 Jesse Wilson <jessewilson@google.com> Transform static values eagerly rather than on use.

Apparently there is some situations where a single static value
may be referenced by multiple sites. Not transforming them eagerly
lead to oversized dex files (and could crash the merge).

Change-Id: I4ac5b9cd621b0fff1e5ba247c9590aa0d562cd65
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
x/src/com/android/dx/merge/IndexMap.java
0492067b571d503fddfcf4f66e2d8014721d8db4 19-Mar-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
231611a78e46c2144f9c88577772b9ae265922da 16-Mar-2012 Jeff Brown <jeffbrown@google.com> Always call the native exit hook, even for halt().

Change-Id: I6990d66175c4075ab3357c9be1486c11eceb41e5
m/native/java_lang_Runtime.cpp
5094108bb410a24a89580d4c64b3440bc13e8110 11-Mar-2012 Charlie Groves <charlie.groves@gmail.com> Compact merged dexes on their byte aligned size

Previously, if a merged dex had too much free space, the compaction step
would subtract the unused space from the section sizes generated by
adding the merged dexes section sizes. The merged sizes weren't 4-byte
aligned, which meant if a section had been bumped in size for the
boundary, the compaction would fail when loading into a section eg
'Section limit 3665072 exceeded by string data'.

This gets the compacted section size from the actual used space instead
of from the non-aligned estimate, so everything fits.

Change-Id: I1aee1abd721ec21998bb3ea78f6f424e7421b614
x/src/com/android/dx/io/DexBuffer.java
x/src/com/android/dx/merge/DexMerger.java
05b50165be074c7161184fa0ad191e3cccd593fd 20-Feb-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
b74e7190e86d559712747e5cdb31a0d390b7af7d 16-Feb-2012 Iliyan Malchev <malchev@google.com> Replace malloc() followed by memset() to zero with calloc()

Bionic's calloc() is smart enough to not zero out memory if it gets that memory
from an anonyous mmap. Thus, if we use malloc for large allocations, we cause
unnecessary memory duplication by following the malloc() with a memset().

An even better approach would be to replace the known large calloc() calls with
dvmAllocRegion() allocation.

Change-Id: Id308f541c9a040d5929bf991b6c2bfdefb823c3c
m/BitVector.cpp
m/Hash.cpp
m/Jni.cpp
m/Profile.cpp
m/alloc/Copying.cpp
m/alloc/HeapSource.cpp
m/hprof/Hprof.cpp
m/hprof/HprofOutput.cpp
m/jdwp/JdwpEvent.cpp
5bac60aaafca855f68e1f8b5527d4a4b7897f234 15-Feb-2012 Iliyan Malchev <malchev@google.com> Replace large calloc() with ashmem-backed anonymous mmap

This change eliminates a large amount of memory duplication arising from the
use of a calloc() to initialize auxiliary data structures. Calloc() calls
memset() to zero out memory after it has been allocated. That memory may
either be gotten via an anonymous mmap (in which case the memset() is
unnecessary, as the kernel zeros out the memory before handing it to user
space), or it can get recycled by the heap (in which case the memset() is
necessary.)

This becomes a problem for large callocs in any case. In addition, when
initializing aux structures, we create a large sparse array for each DEX file.
The data in each array tends to remain mostly zeroed out, which leads to a lot
of duplicated zero pages.

By switching to anonymous mmaps() instead of calloc(), we keep the zeroed-out
pages together and minimize duplication.

Change-Id: Ic38b78e54acc782a863513a7b1972492e50e099c
Signed-off-by: Iliyan Malchev <malchev@google.com>
m/DvmDex.cpp
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>
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
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>
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
68df230d661dbafb117f942f981f8abfc12e552a 31-Jan-2012 Raghu Gandham <raghu@mips.com> Fix the warning emitted by codesourcery compiler 4.5.2

Change-Id: Ib2b8e87afff7af56281d83961edf79c17cbcf940
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
46f3fd49ebda372887192fa32b16040ed6710f58 31-Jan-2012 Chris Dearman <chris@mips.com> Fix instruction logging messages

Change-Id: Ifc7de30ea1c1221f7838523a5ebd269eec622e03
Signed-off-by: Chris Dearman <chris@mips.com>
m/mterp/c/OP_PACKED_SWITCH.cpp
m/mterp/c/OP_SPARSE_SWITCH.cpp
m/mterp/c/opcommon.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
75425b731c514bf90c985275d80aa7886727d83f 01-Feb-2012 Chris Dearman <chris@mips.com> Fix the portable interpreter build

Change-Id: Ibf08d50c7a01a4c30559dd2ee9511c28fb1365a5
Signed-off-by: Chris Dearman <chris@mips.com>
m/Thread.h
m/interp/Interp.cpp
m/mterp/Mterp.h
m/mterp/cstubs/entry.cpp
m/mterp/cstubs/stubdefs.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
7a74b62892b99e35d57a0cffa221276162c2e82f 15-Feb-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
9a05976eec8b0644e7cd9f4d4e4ecd0e73e19dd8 13-Feb-2012 jeffhao <jeffhao@google.com> Fix verifier typing for null float arrays.

Since the array is null, the verifier would get confused about its type.
Now it's treated as zero to allow it to be merged later without conflict.

Bug: http://code.google.com/p/android/issues/detail?id=24814

Change-Id: Id7e96f5d2fd4879c9eaa8535c2b9ae95b0b78cff
m/analysis/CodeVerify.cpp
d3b112e1f9f8563e82f1c3d23dcb424a5f2189a7 31-Jan-2012 Raghu Gandham <raghu@mips.com> Support architectures that require correctly aligned doubles

CTS: tests.api.java.lang.reflect.MethodTest#test_invokeLjava_lang_Object$Ljava_lang_Object

Change-Id: I93c391884d802b8e69fe3e1ced55a2f2c7866d16
Signed-off-by: Nikola Kuzmanovic <nikola.kuzmanovic@rt-rk.com>
Signed-off-by: Chris Dearman <chris@mips.com>
m/reflect/Reflect.cpp
025f9f53947bb016e156dbe39cd17a65c62a6a96 14-Feb-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
d8d1b6d7910375a82b8e723ba7d3ee4544db44ac 13-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am 67feae03: am 4cda226f: am c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."

* commit '67feae038c9e6f076223335aa308f25d24a3a51e':
Add a test for a dalvikvm 'switch' bug.
67feae038c9e6f076223335aa308f25d24a3a51e 13-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am 4cda226f: am c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."

* commit '4cda226f6917845f491aaea6408b23db5d8d3fd6':
Add a test for a dalvikvm 'switch' bug.
4cda226f6917845f491aaea6408b23db5d8d3fd6 13-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."

* commit 'c1052f9a61539f212885555b0b2c110582f11e28':
Add a test for a dalvikvm 'switch' bug.
c1052f9a61539f212885555b0b2c110582f11e28 13-Feb-2012 Jean-Baptiste Queru <jbq@google.com> Merge "Add a test for a dalvikvm 'switch' bug."
13c9f04593842217cd5e687da218ed53d9362c4e 11-Feb-2012 Elliott Hughes <enh@google.com> Add a test for a dalvikvm 'switch' bug.

Bug: http://code.google.com/p/android/issues/detail?id=22344
Change-Id: I3bf9f8a0732876d758bc5378c5d25ad0c8a71684
ests/095-switch-MAX_INT/expected.txt
ests/095-switch-MAX_INT/info.txt
ests/095-switch-MAX_INT/src/Main.java
c40afbeafc19fe6995e5d307314f6f3792b1483b 02-Feb-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
5e67f113bcb63eebd66570efec5439f8f2018b98 01-Feb-2012 The Android Open Source Project <initial-contribution@android.com> am 96ec3f6f: am af140189: Reconcile with ics-mr1-release

* commit '96ec3f6f0748c678201a0f3f63672d46c1b707d0':
96ec3f6f0748c678201a0f3f63672d46c1b707d0 01-Feb-2012 The Android Open Source Project <initial-contribution@android.com> am af140189: Reconcile with ics-mr1-release

* commit 'af140189514d64be270439303eb0f0ab26583af5':
dd92a65c38925e8e30fa52c03b0e4f2f9d632b36 01-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am 81894b3a: am 2fe129bf: Merge "Updates to the VM tests."

* commit '81894b3aa4215d389a0673826a76a1839f578dcb':
Updates to the VM tests.
81894b3aa4215d389a0673826a76a1839f578dcb 01-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am 2fe129bf: Merge "Updates to the VM tests."

* commit '2fe129bf176c32f8b507da813ffa02868ff32604':
Updates to the VM tests.
af140189514d64be270439303eb0f0ab26583af5 01-Feb-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: Ib9dd6f8b4d4f3d978450cf0db6a3a598adad6fea
2fe129bf176c32f8b507da813ffa02868ff32604 01-Feb-2012 Jean-Baptiste Queru <jbq@google.com> Merge "Updates to the VM tests."
aec9c8f142ad839883ae3de7383456a08823a282 01-Feb-2012 Elliott Hughes <enh@google.com> Updates to the VM tests.

Bug: http://code.google.com/p/android/issues/detail?id=21599
Bug: http://code.google.com/p/android/issues/detail?id=21597
Change-Id: I9c6d67cd18943eb6fa68104f0ec2fbec5ea9e0ec
ests/029-assert/src/Main.java
ests/030-bad-finalizer/src/Main.java
ests/031-class-attributes/expected.txt
ests/031-class-attributes/src/ClassAttrs.java
ests/031-class-attributes/src/FancyClass.java
ests/033-class-init-deadlock/expected.txt
ests/033-class-init-deadlock/src/Main.java
ests/034-call-null/expected.txt
ests/034-call-null/src/Main.java
ests/038-inner-null/expected.txt
ests/038-inner-null/src/Main.java
ests/042-new-instance/expected.txt
ests/042-new-instance/src/Main.java
ests/042-new-instance/src/otherpackage/PackageAccess.java
ests/045-reflect-array/expected.txt
ests/045-reflect-array/src/Main.java
ests/046-reflect/expected.txt
ests/046-reflect/src/Main.java
ests/046-reflect/src/otherpackage/Other.java
ests/050-sync-test/src/Main.java
ests/051-thread/expected.txt
ests/051-thread/src/Main.java
ests/061-out-of-memory/src/Main.java
ests/068-classloader/src/FancyLoader.java
ests/070-nio-buffer/expected.txt
ests/070-nio-buffer/src/Main.java
ests/084-class-init/src/Main.java
ests/084-class-init/src/SlowInit.java
ests/086-null-super/src/Main.java
ests/087-gc-after-link/src/Main.java
ests/092-locale/expected.txt
ests/092-locale/info.txt
ests/092-locale/src/Main.java
ests/093-serialization/expected.txt
ests/093-serialization/info.txt
ests/093-serialization/src/Main.java
ests/094-pattern/expected.txt
ests/094-pattern/info.txt
ests/094-pattern/src/Main.java
0895d15584f998a70178f24f1dd7864646c5c438 31-Jan-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
356839bd278d7c7f2675b56755d4a2f0e4a5d88c 31-Jan-2012 Chris Dearman <chris@mips.com> Set SYSTEM_PAGE_SIZE from PAGE_SHIFT

Hardwiring the expected page size is not portable

Signed-off-by: Chris Dearman <chris@mips.com>
ibdex/SysUtil.h
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
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpAsm-x86.S
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/mterp/x86/footer.S
52582ad67645ce013e57ceac6077a110ce803d1c 30-Jan-2012 The Android Automerger <android-build@android.com> merge in jb-release history after reset to master
5da436293b72a28b46a47fb863e1146f3baef42f 27-Jan-2012 Andy McFadden <fadden@android.com> Fix assert

Change-Id: If764fe38e215473590a6fe6be910827a38382054
m/jdwp/JdwpMain.cpp
bd435348a5e4636c1e71cddf5441e80319f45033 25-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
4f78e1225cf16c8acbb8e9d9b849977ec04594df 13-Jan-2012 Stephen Smalley <sds@tycho.nsa.gov> Extend forkAndSpecialize to take additional inputs and to set the SELinux security context.

forkAndSpecialize presently sets the DAC credentials for the app process.
Modify it to invoke libselinux to set the SELinux security context as well.
Extend it to take additional inputs from the caller in order to provide
more selectors for deciding what SELinux security context to use.

Change-Id: I2611671ad6f10ce3d8cbda8471bcacb8c9955546
m/ReconfigureDvm.mk
m/native/dalvik_system_Zygote.cpp
0a6a598b7bcb38a4ca86d6585ae2e3b4933f3a08 24-Jan-2012 Andy McFadden <fadden@android.com> Tweak Dalvik tests

030 - adjust sleep duration so it's not a multiple of the 10-second
timeout (and hence less likely to hit edge)
070 - added tests for all "view buffers", both big and little endian,
plus a quick check for array() on direct buffers
092 - fixed date format test so it doesn't fail late at night, and
added a getISO3Language test

Change-Id: Ibc6f1111861a2ec8c69ded28d5e3de08f4ed2bc2
ests/030-bad-finalizer/src/Main.java
ests/070-nio-buffer/expected.txt
ests/070-nio-buffer/src/Main.java
ests/092-locale/expected.txt
ests/092-locale/src/Main.java
4583b8276f7bace5a4d8c88d69663097d45e0666 23-Jan-2012 The Android Open Source Project <initial-contribution@android.com> am f9d0ce5f: Reconcile with ics-mr1-release

* commit 'f9d0ce5f917adc46d1940425eff9d0f5b8459ff6':
f9d0ce5f917adc46d1940425eff9d0f5b8459ff6 23-Jan-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: Iaa3411a4a3a03f433d2a841b3b48bb6371bd9fba
2cab0464b0cdaa6bbbc43c066a9fa10478e0cc19 23-Jan-2012 jeffhao <jeffhao@google.com> am 7c9027e2: am 1c7e1e14: Fix to dex verifier to handle float types that look like Boolean.

* commit '7c9027e23fd7096d82964961811103469d21b296':
Fix to dex verifier to handle float types that look like Boolean.
b3e14b7663fa0b263abc2c82bf5dbc83bd1d4bc5 23-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
42474c1e646c3171d33fa9dd13acebda509eb4e2 21-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
2484f1848176c2f6244c58837be05f5484baa4d8 21-Jan-2012 The Android Open Source Project <initial-contribution@android.com> am 31856263: Reconcile with ics-mr1-release

* commit '318562634a59d1c027dae121799fe6b1b9984500':
49a49d2fd7c1f899012cd276f9263e2643652458 21-Jan-2012 Ben Cheng <bccheng@google.com> am f9568520: am 232c385b: Bug fix for control-flow construction involving nested loops.

* commit 'f9568520b2196693a41b8703fff0d2ddba31bc8e':
Bug fix for control-flow construction involving nested loops.
7f8905f911f6ee0c57d9eb8bc4d49530633d661b 20-Jan-2012 Andy McFadden <fadden@android.com> Merge "Update and extend Dalvik tests"
5cc74502e62d99d40f5c7a841a57fafde5e7ed33 20-Jan-2012 Andy McFadden <fadden@android.com> Tweak UnsatisfiedLinkError

Change this:

java.lang.UnsatisfiedLinkError: getSuperclass

to this:

java.lang.UnsatisfiedLinkError: Native method not found:
java.lang.Class.getSuperclass:()Ljava/lang/Class;

Change-Id: I23bd4350caf743ad9ba3524da0a10107c63af56a
m/Exception.cpp
m/Exception.h
m/Native.cpp
a5a184892e60a89b564ca7c74e50b2ecb27d9f80 20-Jan-2012 Andy McFadden <fadden@android.com> Update and extend Dalvik tests

029 - exercise setDefaultAssertionStatus
031 - enable some tests that were disabled back when our generics
support didn't exist. Added new FancyClass test.
034 - print success/fail rather than matching exact exception text
038 - (same as 034)
042 - added new test for bug 5861201, currently disabled
045 - added a bunch of new tests, including one that fails
046 - added new tests, including some for bug 5861201 (the latter
are disabled)
068 - loadClass() wants class names with dots, not slashes
086 - (same as 068)
087 - (same as 068)
092 - new test, exercises some locale-specific classes
093 - new test, exercises object serialization
094 - new test, exercises regex code

Test 045 now fails, because it's exercising a feature that should
work but doesn't. All others pass.

Change-Id: I6481bfa88681c4ac8af629cb60797b2708bdeba4
ests/029-assert/src/Main.java
ests/031-class-attributes/expected.txt
ests/031-class-attributes/src/ClassAttrs.java
ests/031-class-attributes/src/FancyClass.java
ests/034-call-null/expected.txt
ests/034-call-null/src/Main.java
ests/038-inner-null/expected.txt
ests/038-inner-null/src/Main.java
ests/042-new-instance/expected.txt
ests/042-new-instance/src/Main.java
ests/042-new-instance/src/otherpackage/PackageAccess.java
ests/045-reflect-array/expected.txt
ests/045-reflect-array/src/Main.java
ests/046-reflect/expected.txt
ests/046-reflect/src/Main.java
ests/046-reflect/src/otherpackage/Other.java
ests/068-classloader/src/FancyLoader.java
ests/086-null-super/src/Main.java
ests/087-gc-after-link/src/Main.java
ests/092-locale/expected.txt
ests/092-locale/info.txt
ests/092-locale/src/Main.java
ests/093-serialization/expected.txt
ests/093-serialization/info.txt
ests/093-serialization/src/Main.java
ests/094-pattern/expected.txt
ests/094-pattern/info.txt
ests/094-pattern/src/Main.java
820c6823a406f0ddcfb2d915097ef969ba102bc5 20-Jan-2012 jeffhao <jeffhao@google.com> am 1c7e1e14: Fix to dex verifier to handle float types that look like Boolean.

* commit '1c7e1e149d3dcf3949c76ae594ca9c1ca20392f9':
Fix to dex verifier to handle float types that look like Boolean.
7c9027e23fd7096d82964961811103469d21b296 20-Jan-2012 jeffhao <jeffhao@google.com> am 1c7e1e14: Fix to dex verifier to handle float types that look like Boolean.

* commit '1c7e1e149d3dcf3949c76ae594ca9c1ca20392f9':
Fix to dex verifier to handle float types that look like Boolean.
1c7e1e149d3dcf3949c76ae594ca9c1ca20392f9 18-Jan-2012 jeffhao <jeffhao@google.com> Fix to dex verifier to handle float types that look like Boolean.

Addresses http://code.google.com/p/android/issues/detail?id=23465, where
a Float value is potentially 0x0 or Float.MIN_VALUE (0x1), which combines
into a Boolean type, which should be allowed to be promoted to Float.

(cherry picked from commit 2a249c50903d669d2a9296f0fe407b67646626c8)

Change-Id: I1b81fad5e1e166246535bdfa4b7a98db3b2531bf
m/analysis/CodeVerify.cpp
8a7b9fd899ea2b89e99fe3d81210fa8349ec2c60 19-Jan-2012 jeffhao <jeffhao@google.com> Merge "Fix to dex verifier to handle float types that look like Boolean."
318562634a59d1c027dae121799fe6b1b9984500 19-Jan-2012 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: I69e3e58260f9a81452ac12d0365c8be2a17edc93
a50e92f13e14a544a536fc96d5a7accc5e0e7ed1 19-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
e79c9916bf73797fe54b313059df7625226d37c9 19-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
5cf1de9af673e03bf4dc2be2a79e12a5398ba50c 19-Jan-2012 Ben Cheng <bccheng@google.com> am 232c385b: Bug fix for control-flow construction involving nested loops.

* commit '232c385b9ece322d677a48947ab1e052c1e2427c':
Bug fix for control-flow construction involving nested loops.
f9568520b2196693a41b8703fff0d2ddba31bc8e 19-Jan-2012 Ben Cheng <bccheng@google.com> am 232c385b: Bug fix for control-flow construction involving nested loops.

* commit '232c385b9ece322d677a48947ab1e052c1e2427c':
Bug fix for control-flow construction involving nested loops.
232c385b9ece322d677a48947ab1e052c1e2427c 18-Jan-2012 Ben Cheng <bccheng@google.com> Bug fix for control-flow construction involving nested loops.

Bug: 5884080
Change-Id: Ic2f42abae3e71f9c0729984902396f92902184a3
ests/083-jit-regressions/expected.txt
ests/083-jit-regressions/info.txt
ests/083-jit-regressions/src/Main.java
m/compiler/Frontend.cpp
m/mterp/common/asm-constants.h
556904e9451c06355357277aea8031e2a2a92f28 18-Jan-2012 Ben Cheng <bccheng@google.com> Merge "Bug fix for control-flow construction involving nested loops."
f36ff048fa354bcc7597a187002728106a8b9346 18-Jan-2012 Ben Cheng <bccheng@google.com> Bug fix for control-flow construction involving nested loops.

Bug: 5884080
Change-Id: Ic2f42abae3e71f9c0729984902396f92902184a3
ests/083-jit-regressions/expected.txt
ests/083-jit-regressions/info.txt
ests/083-jit-regressions/src/Main.java
m/compiler/Frontend.cpp
m/mterp/common/asm-constants.h
3560a2d72e377a36fc0a8ee675b3bf6096dc8f43 18-Jan-2012 buzbee <buzbee@google.com> Remove stale assert

Delete a stale assert that can cause problems when running with
the portable interpreter when debugging or profiling.

Change-Id: I354a1fbe280e1baeb885cb51fed1f3e2c8eef159
m/interp/Interp.cpp
7ad84a5852584b8ae79a64530ce61acbfdbbb641 18-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
09153feb3c522f578a581d8b9d9d29aa00df20fc 18-Jan-2012 Jean-Baptiste Queru <jbq@google.com> am 9e8b05e4: am a669206d: Merge "cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use"

* commit '9e8b05e4529c4f9bf66d3db21ae79ccbbe97a1dc':
cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use
2a249c50903d669d2a9296f0fe407b67646626c8 18-Jan-2012 jeffhao <jeffhao@google.com> Fix to dex verifier to handle float types that look like Boolean.

Addresses http://code.google.com/p/android/issues/detail?id=23465, where
a Float value is potentially 0x0 or Float.MIN_VALUE (0x1), which combines
into a Boolean type, which should be allowed to be promoted to Float.

Change-Id: I1718820dc05719772aa939f3f7830bb86a161d56
m/analysis/CodeVerify.cpp
9e8b05e4529c4f9bf66d3db21ae79ccbbe97a1dc 18-Jan-2012 Jean-Baptiste Queru <jbq@google.com> am a669206d: Merge "cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use"

* commit 'a669206dc91323e664a84b2a4ca170ec0332c926':
cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use
a669206dc91323e664a84b2a4ca170ec0332c926 18-Jan-2012 Jean-Baptiste Queru <jbq@google.com> Merge "cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use"
3e9871d110bdbb33fec19d5f0804c0b32651babd 17-Jan-2012 Nick Kralevich <nnk@google.com> am 516c0968: am 390d7c08: fix personality call.

* commit '516c096823b3e1c06a9875334c2ec3cdcc00d125':
fix personality call.
97eaa5efba8785b1c760386952f83eff9c8cbe62 17-Jan-2012 Nick Kralevich <nnk@google.com> am 390d7c08: fix personality call.

* commit '390d7c08821750d0633435278b2d533fd6b1a7a5':
fix personality call.
516c096823b3e1c06a9875334c2ec3cdcc00d125 17-Jan-2012 Nick Kralevich <nnk@google.com> am 390d7c08: fix personality call.

* commit '390d7c08821750d0633435278b2d533fd6b1a7a5':
fix personality call.
789378ec8b78f11d9a5be2e07db1ddb948466858 17-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
1d7276a3816fddda9f093e2d972680b756efd40a 14-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
390d7c08821750d0633435278b2d533fd6b1a7a5 13-Jan-2012 Nick Kralevich <nnk@google.com> fix personality call.

Change-Id: I25845344494ac15b4a6876784d2b040779892459
m/Android.mk
m/native/dalvik_system_Zygote.cpp
5c80d7d72a54a30abc3bbf2fafb62a06062eccea 13-Jan-2012 Selim Gurun <sgurun@google.com> Fix log macro name

Convert LOGW to ALOGW.

Change-Id: I4096541cfb6f76d6ab3af289288c840f87125dfa
m/native/dalvik_system_Zygote.cpp
6ca52fa214401574887cc5c1a49abbe5b818ec28 13-Jan-2012 Selim Gurun <sgurun@google.com> am ca5d7a30: am 311886c6: Prevent memory fragmentation.

* commit 'ca5d7a300ecb8a96c5751796dff62b007c7095b1':
Prevent memory fragmentation.
fbfc9ff6c509326355a3907068913ba638a18a34 13-Jan-2012 Selim Gurun <sgurun@google.com> am 311886c6: Prevent memory fragmentation.

* commit '311886c6c6fcd3b531531f592d56caab5e2a259c':
Prevent memory fragmentation.
ca5d7a300ecb8a96c5751796dff62b007c7095b1 13-Jan-2012 Selim Gurun <sgurun@google.com> am 311886c6: Prevent memory fragmentation.

* commit '311886c6c6fcd3b531531f592d56caab5e2a259c':
Prevent memory fragmentation.
88e959ed52764b0fa27fa80adebe9c3d8a3b8324 13-Jan-2012 Jean-Baptiste Queru <jbq@google.com> am 6dea1575: Merge "fix dvmDbgOutputAllInterfaces to include only direct super-interfaces"

* commit '6dea1575fd44aeee1dbe4d2bb184357598581652':
fix dvmDbgOutputAllInterfaces to include only direct super-interfaces
311886c6c6fcd3b531531f592d56caab5e2a259c 13-Jan-2012 Selim Gurun <sgurun@google.com> Prevent memory fragmentation.

Bug: 5817320

Prevent memory fragmentation and potential allocation failures. This
change is temporary.

Change-Id: Id1e8f9606687648235ea9e18861125a8c799d812
m/Android.mk
m/native/dalvik_system_Zygote.cpp
6dea1575fd44aeee1dbe4d2bb184357598581652 13-Jan-2012 Jean-Baptiste Queru <jbq@google.com> Merge "fix dvmDbgOutputAllInterfaces to include only direct super-interfaces"
d8a81cfd749c629de84db32eee3703cc5e0dc28f 13-Jan-2012 Johannes Rudolph <johannes.rudolph@gmail.com> cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use

In deep interface hierarchies super-interfaces are recursively concatenated
to create the iftable. There was no checking for duplicated entries so that the
iftable could get pretty large with just a few layers of interfaces up to the
point where the LinearAlloc was exceeded completely.

This change scans the iftable linearly for existing entries before it adds another
one.

Issue: http://code.google.com/p/android/issues/detail?id=22586
Change-Id: Idb4a13ca7a52f390661629cf2539930242526876
Signed-off-by: Johannes Rudolph <johannes.rudolph@gmail.com>
ests/091-deep-interface-hierarchy/expected.txt
ests/091-deep-interface-hierarchy/info.txt
ests/091-deep-interface-hierarchy/src/Main.java
m/oo/Class.cpp
9742ba0b5be92418aed86ffecfe32593c20a8096 12-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
4dfe64e94f153ccd8db56bea7b8cdfb02e5bba08 12-Jan-2012 Jesse Wilson <jessewilson@google.com> Provide detail when methods or fields exceed the limit.

Here's what the new message looks like:

trouble writing output: Too many fields: 88304; max is 65536. By package:
10 dalvik.annotation
278 dalvik.bytecode
81 dalvik.system
94 dalvik.system.profiler
111 java.awt.font
12 java.beans
322 java.io
519 java.lang
20 java.lang.annotation
13 java.lang.ref
72 java.lang.reflect
72 java.math
...

Change-Id: Ieea7efb178522d9ac3cb10c5a6cfb453be3fd72d
x/src/com/android/dx/dex/file/MemberIdsSection.java
x/src/com/android/dx/rop/cst/CstType.java
069df3c06ff155f7cffc2511603320e460455c0f 12-Jan-2012 Johannes Rudolph <johannes.rudolph@gmail.com> fix dvmDbgOutputAllInterfaces to include only direct super-interfaces

As the javadoc and the spec say dvmDbgOutputAllInterfaces should output only
the directly implemented interfaces. This can be achieved by just iterating
over the `clazz->interfaces`.

Issue: http://code.google.com/p/android/issues/detail?id=21422
Change-Id: I1779e2cc2ada7afaaf4a1e2e5c7861d61d9ea014
Signed-off-by: Johannes Rudolph <johannes.rudolph@gmail.com>
m/Debugger.cpp
341c43ba7780a38178f4bd3c1d3a703f605a7c96 10-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
6d1a1dfd0ef006e19067b6ffd927160d0c6d9647 07-Jan-2012 Elliott Hughes <enh@google.com> Fix a small memory leak.

Found by someone reading the code, rather than because we saw a crash. This is
only a small leak, and you'd have to be dumping threads (because of an ANR) or
creating a new thread to provoke it.

Change-Id: I9c660d86056765bcbebbdfa634032885c3f91b82
m/Thread.cpp
b677a36255fb27035ac6cc1186733573f7f920b4 09-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
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
exopt/OptMain.cpp
ibdex/DexDataMap.cpp
ibdex/DexDebugInfo.cpp
ibdex/DexFile.cpp
ibdex/DexOptData.cpp
ibdex/DexSwapVerify.cpp
ibdex/OptInvocation.cpp
ibdex/SysUtil.cpp
ibdex/ZipArchive.cpp
ibnativehelper/JNIHelp.cpp
m/AllocTracker.cpp
m/AtomicCache.cpp
m/BitVector.cpp
m/CheckJni.cpp
m/Common.h
m/Ddm.cpp
m/Debugger.cpp
m/DvmDex.cpp
m/Exception.cpp
m/Hash.cpp
m/IndirectRefTable.cpp
m/Init.cpp
m/InitRefs.cpp
m/InlineNative.cpp
m/JarFile.cpp
m/Jni.cpp
m/LinearAlloc.cpp
m/Misc.cpp
m/Native.cpp
m/PointerSet.cpp
m/Profile.cpp
m/RawDexFile.cpp
m/ReferenceTable.cpp
m/SignalCatcher.cpp
m/StdioConverter.cpp
m/Sync.cpp
m/Thread.cpp
m/UtfString.cpp
m/alloc/Alloc.cpp
m/alloc/CardTable.cpp
m/alloc/Copying.cpp
m/alloc/HeapBitmap.cpp
m/alloc/HeapSource.cpp
m/alloc/TEST/HeapBitmapTest/include/Dalvik.h
m/alloc/Verify.cpp
m/alloc/Visit.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexPrepare.cpp
m/analysis/DexVerify.cpp
m/analysis/Optimize.cpp
m/analysis/RegisterMap.cpp
m/analysis/VerifySubs.cpp
m/arch/generic/Call.cpp
m/compiler/Compiler.cpp
m/compiler/Dataflow.cpp
m/compiler/Frontend.cpp
m/compiler/InlineTransformation.cpp
m/compiler/Loop.cpp
m/compiler/SSATransformation.cpp
m/compiler/Utility.cpp
m/compiler/codegen/RallocUtil.cpp
m/compiler/codegen/arm/ArchFactory.cpp
m/compiler/codegen/arm/Assemble.cpp
m/compiler/codegen/arm/CodegenCommon.cpp
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/arm/Thumb/Factory.cpp
m/compiler/codegen/arm/Thumb2/Gen.cpp
m/compiler/codegen/arm/armv5te-vfp/ArchVariant.cpp
m/compiler/codegen/arm/armv5te/ArchVariant.cpp
m/compiler/codegen/arm/armv5te/MethodCodegenDriver.cpp
m/compiler/codegen/arm/armv7-a-neon/ArchVariant.cpp
m/compiler/codegen/arm/armv7-a-neon/MethodCodegenDriver.cpp
m/compiler/codegen/arm/armv7-a/ArchVariant.cpp
m/compiler/codegen/x86/CodegenDriver.cpp
m/compiler/codegen/x86/ia32/ArchVariant.cpp
m/hprof/Hprof.cpp
m/hprof/HprofOutput.cpp
m/interp/Interp.cpp
m/interp/Jit.cpp
m/interp/Stack.cpp
m/jdwp/ExpandBuf.cpp
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpEvent.cpp
m/jdwp/JdwpHandler.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpSocket.cpp
m/mterp/Mterp.cpp
m/mterp/c/OP_UNUSED_FF.cpp
m/mterp/c/gotoTargets.cpp
m/mterp/c/header.cpp
m/mterp/common/asm-constants.h
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/native/dalvik_system_DexFile.cpp
m/native/dalvik_system_Zygote.cpp
m/native/java_lang_Class.cpp
m/native/java_lang_System.cpp
m/native/java_lang_VMClassLoader.cpp
m/native/java_lang_reflect_Field.cpp
m/oo/Array.cpp
m/oo/Class.cpp
m/reflect/Annotation.cpp
m/reflect/Proxy.cpp
m/reflect/Reflect.cpp
m/test/TestHash.cpp
m/test/TestIndirectRefTable.cpp
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
exopt/OptMain.cpp
ibdex/DexFile.cpp
ibdex/DexSwapVerify.cpp
ibdex/InstrUtils.cpp
ibdex/SysUtil.cpp
ibdex/ZipArchive.cpp
ibnativehelper/JNIHelp.cpp
m/AllocTracker.cpp
m/CheckJni.cpp
m/Ddm.cpp
m/Debugger.cpp
m/Exception.cpp
m/Hash.cpp
m/IndirectRefTable.cpp
m/Init.cpp
m/Jni.cpp
m/LinearAlloc.cpp
m/Misc.cpp
m/Native.cpp
m/Profile.cpp
m/ReferenceTable.cpp
m/StdioConverter.cpp
m/Thread.cpp
m/alloc/Alloc.cpp
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/alloc/Heap.cpp
m/analysis/DexPrepare.cpp
m/analysis/Optimize.cpp
m/analysis/RegisterMap.cpp
m/compiler/Compiler.cpp
m/interp/Interp.cpp
m/interp/Stack.cpp
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpEvent.cpp
m/jdwp/JdwpHandler.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpSocket.cpp
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/native/InternalNative.cpp
m/native/dalvik_system_DexFile.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/dalvik_system_VMStack.cpp
m/native/dalvik_system_Zygote.cpp
m/native/java_lang_Class.cpp
m/native/java_lang_Runtime.cpp
m/native/java_lang_Throwable.cpp
m/native/java_lang_reflect_Array.cpp
m/native/java_lang_reflect_Constructor.cpp
m/oo/Array.cpp
m/oo/Class.cpp
m/oo/Object.cpp
m/oo/Resolve.cpp
m/os/android.cpp
m/reflect/Annotation.cpp
m/reflect/Reflect.cpp
c6284c2f24d180091a824698c0b0869f491ceccc 06-Jan-2012 Elliott Hughes <enh@google.com> Remove misleading and outdated documentation.

Change-Id: Id118f2fc173fc37225a1fb36e8182f54030b1f5f
ocs/libraries.html
57dd2d54fab86a2959f798671fc10c657f44b95c 06-Jan-2012 Elliott Hughes <enh@google.com> Remove documentation that's now in docs/source.android.com.

Change-Id: If6ea32e923a8c7fe99824760d9a09e7eee1ff71b
ocs/dalvik-bytecode.css
ocs/dalvik-bytecode.html
ocs/dex-format.css
ocs/dex-format.html
ocs/instruction-formats.css
ocs/instruction-formats.html
4308417beec548c2b2c06ecec4f7f4a965b09fb2 04-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156801

Bug: 5449033
Change-Id: Ic558031c75b3702d90eb78bd730501ae5d3c077b
exopt/OptMain.cpp
ibdex/DexOptData.cpp
ibdex/SysUtil.cpp
m/AllocTracker.cpp
m/CheckJni.cpp
m/Ddm.cpp
m/Debugger.cpp
m/Exception.cpp
m/Hash.cpp
m/IndirectRefTable.cpp
m/Init.cpp
m/InlineNative.cpp
m/JarFile.cpp
m/Jni.cpp
m/LinearAlloc.cpp
m/Misc.cpp
m/Native.cpp
m/PointerSet.cpp
m/Profile.cpp
m/RawDexFile.cpp
m/SignalCatcher.cpp
m/StdioConverter.cpp
m/Thread.cpp
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexPrepare.cpp
m/analysis/Liveness.cpp
m/analysis/Optimize.cpp
m/analysis/RegisterMap.cpp
m/analysis/VfyBasicBlock.cpp
m/compiler/Utility.cpp
m/hprof/Hprof.cpp
m/interp/Interp.cpp
m/interp/Jit.cpp
m/interp/Stack.cpp
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpEvent.cpp
m/jdwp/JdwpHandler.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpSocket.cpp
m/mterp/Mterp.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/dalvik_system_VMRuntime.cpp
m/native/dalvik_system_VMStack.cpp
m/native/dalvik_system_Zygote.cpp
m/native/java_lang_VMThread.cpp
m/native/org_apache_harmony_dalvik_ddmc_DdmVmInternal.cpp
m/oo/AccessCheck.cpp
m/oo/Class.cpp
m/os/android.cpp
m/reflect/Proxy.cpp
m/test/TestIndirectRefTable.cpp
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
exdump/DexDump.cpp
ocs/dalvik-bytecode.html
ocs/instruction-formats.html
x/src/com/android/dx/dex/code/Dops.java
x/src/com/android/dx/dex/code/InsnFormat.java
x/src/com/android/dx/dex/code/form/Form32s.java
x/src/com/android/dx/dex/code/form/Form33x.java
x/src/com/android/dx/dex/code/form/Form41c.java
x/src/com/android/dx/dex/code/form/Form52c.java
x/src/com/android/dx/dex/code/form/Form5rc.java
x/src/com/android/dx/io/OpcodeInfo.java
x/src/com/android/dx/io/Opcodes.java
x/src/com/android/dx/io/instructions/DecodedInstruction.java
x/src/com/android/dx/io/instructions/InstructionCodec.java
ibdex/DexOpcodes.cpp
ibdex/DexOpcodes.h
ibdex/InstrUtils.cpp
ibdex/InstrUtils.h
pcode-gen/bytecode.txt
pcode-gen/opcode-gen.awk
m/analysis/CodeVerify.cpp
m/analysis/DexVerify.cpp
m/analysis/Liveness.cpp
m/analysis/Optimize.cpp
m/compiler/Dataflow.cpp
m/compiler/Frontend.cpp
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/arm/armv7-a-neon/MethodCodegenDriver.cpp
m/interp/Interp.h
m/mterp/armv5te/ALT_OP_DISPATCH_FF.S
m/mterp/armv5te/OP_CHECK_CAST_JUMBO.S
m/mterp/armv5te/OP_CONST_CLASS_JUMBO.S
m/mterp/armv5te/OP_DISPATCH_FF.S
m/mterp/armv5te/OP_FILLED_NEW_ARRAY_JUMBO.S
m/mterp/armv5te/OP_IGET_BOOLEAN_JUMBO.S
m/mterp/armv5te/OP_IGET_BYTE_JUMBO.S
m/mterp/armv5te/OP_IGET_CHAR_JUMBO.S
m/mterp/armv5te/OP_IGET_JUMBO.S
m/mterp/armv5te/OP_IGET_OBJECT_JUMBO.S
m/mterp/armv5te/OP_IGET_OBJECT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_IGET_SHORT_JUMBO.S
m/mterp/armv5te/OP_IGET_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_IGET_WIDE_JUMBO.S
m/mterp/armv5te/OP_IGET_WIDE_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_INSTANCE_OF_JUMBO.S
m/mterp/armv5te/OP_INVOKE_DIRECT_JUMBO.S
m/mterp/armv5te/OP_INVOKE_INTERFACE_JUMBO.S
m/mterp/armv5te/OP_INVOKE_OBJECT_INIT_JUMBO.S
m/mterp/armv5te/OP_INVOKE_OBJECT_INIT_RANGE.S
m/mterp/armv5te/OP_INVOKE_STATIC_JUMBO.S
m/mterp/armv5te/OP_INVOKE_SUPER_JUMBO.S
m/mterp/armv5te/OP_INVOKE_VIRTUAL_JUMBO.S
m/mterp/armv5te/OP_IPUT_BOOLEAN_JUMBO.S
m/mterp/armv5te/OP_IPUT_BYTE_JUMBO.S
m/mterp/armv5te/OP_IPUT_CHAR_JUMBO.S
m/mterp/armv5te/OP_IPUT_JUMBO.S
m/mterp/armv5te/OP_IPUT_OBJECT_JUMBO.S
m/mterp/armv5te/OP_IPUT_OBJECT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_IPUT_SHORT_JUMBO.S
m/mterp/armv5te/OP_IPUT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_IPUT_WIDE_JUMBO.S
m/mterp/armv5te/OP_IPUT_WIDE_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_NEW_ARRAY_JUMBO.S
m/mterp/armv5te/OP_NEW_INSTANCE_JUMBO.S
m/mterp/armv5te/OP_SGET_BOOLEAN_JUMBO.S
m/mterp/armv5te/OP_SGET_BYTE_JUMBO.S
m/mterp/armv5te/OP_SGET_CHAR_JUMBO.S
m/mterp/armv5te/OP_SGET_JUMBO.S
m/mterp/armv5te/OP_SGET_OBJECT_JUMBO.S
m/mterp/armv5te/OP_SGET_OBJECT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SGET_SHORT_JUMBO.S
m/mterp/armv5te/OP_SGET_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SGET_WIDE_JUMBO.S
m/mterp/armv5te/OP_SGET_WIDE_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SPUT_BOOLEAN_JUMBO.S
m/mterp/armv5te/OP_SPUT_BYTE_JUMBO.S
m/mterp/armv5te/OP_SPUT_CHAR_JUMBO.S
m/mterp/armv5te/OP_SPUT_JUMBO.S
m/mterp/armv5te/OP_SPUT_OBJECT_JUMBO.S
m/mterp/armv5te/OP_SPUT_OBJECT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SPUT_SHORT_JUMBO.S
m/mterp/armv5te/OP_SPUT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SPUT_WIDE_JUMBO.S
m/mterp/armv5te/OP_SPUT_WIDE_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_THROW_VERIFICATION_ERROR_JUMBO.S
m/mterp/armv5te/OP_UNUSED_27FF.S
m/mterp/armv5te/OP_UNUSED_28FF.S
m/mterp/armv5te/OP_UNUSED_29FF.S
m/mterp/armv5te/OP_UNUSED_2AFF.S
m/mterp/armv5te/OP_UNUSED_2BFF.S
m/mterp/armv5te/OP_UNUSED_2CFF.S
m/mterp/armv5te/OP_UNUSED_2DFF.S
m/mterp/armv5te/OP_UNUSED_2EFF.S
m/mterp/armv5te/OP_UNUSED_2FFF.S
m/mterp/armv5te/OP_UNUSED_30FF.S
m/mterp/armv5te/OP_UNUSED_31FF.S
m/mterp/armv5te/OP_UNUSED_32FF.S
m/mterp/armv5te/OP_UNUSED_33FF.S
m/mterp/armv5te/OP_UNUSED_34FF.S
m/mterp/armv5te/OP_UNUSED_35FF.S
m/mterp/armv5te/OP_UNUSED_36FF.S
m/mterp/armv5te/OP_UNUSED_37FF.S
m/mterp/armv5te/OP_UNUSED_38FF.S
m/mterp/armv5te/OP_UNUSED_39FF.S
m/mterp/armv5te/OP_UNUSED_3AFF.S
m/mterp/armv5te/OP_UNUSED_3BFF.S
m/mterp/armv5te/OP_UNUSED_3CFF.S
m/mterp/armv5te/OP_UNUSED_3DFF.S
m/mterp/armv5te/OP_UNUSED_3EFF.S
m/mterp/armv5te/OP_UNUSED_3FFF.S
m/mterp/armv5te/OP_UNUSED_40FF.S
m/mterp/armv5te/OP_UNUSED_41FF.S
m/mterp/armv5te/OP_UNUSED_42FF.S
m/mterp/armv5te/OP_UNUSED_43FF.S
m/mterp/armv5te/OP_UNUSED_44FF.S
m/mterp/armv5te/OP_UNUSED_45FF.S
m/mterp/armv5te/OP_UNUSED_46FF.S
m/mterp/armv5te/OP_UNUSED_47FF.S
m/mterp/armv5te/OP_UNUSED_48FF.S
m/mterp/armv5te/OP_UNUSED_49FF.S
m/mterp/armv5te/OP_UNUSED_4AFF.S
m/mterp/armv5te/OP_UNUSED_4BFF.S
m/mterp/armv5te/OP_UNUSED_4CFF.S
m/mterp/armv5te/OP_UNUSED_4DFF.S
m/mterp/armv5te/OP_UNUSED_4EFF.S
m/mterp/armv5te/OP_UNUSED_4FFF.S
m/mterp/armv5te/OP_UNUSED_50FF.S
m/mterp/armv5te/OP_UNUSED_51FF.S
m/mterp/armv5te/OP_UNUSED_52FF.S
m/mterp/armv5te/OP_UNUSED_53FF.S
m/mterp/armv5te/OP_UNUSED_54FF.S
m/mterp/armv5te/OP_UNUSED_55FF.S
m/mterp/armv5te/OP_UNUSED_56FF.S
m/mterp/armv5te/OP_UNUSED_57FF.S
m/mterp/armv5te/OP_UNUSED_58FF.S
m/mterp/armv5te/OP_UNUSED_59FF.S
m/mterp/armv5te/OP_UNUSED_5AFF.S
m/mterp/armv5te/OP_UNUSED_5BFF.S
m/mterp/armv5te/OP_UNUSED_5CFF.S
m/mterp/armv5te/OP_UNUSED_5DFF.S
m/mterp/armv5te/OP_UNUSED_5EFF.S
m/mterp/armv5te/OP_UNUSED_5FFF.S
m/mterp/armv5te/OP_UNUSED_60FF.S
m/mterp/armv5te/OP_UNUSED_61FF.S
m/mterp/armv5te/OP_UNUSED_62FF.S
m/mterp/armv5te/OP_UNUSED_63FF.S
m/mterp/armv5te/OP_UNUSED_64FF.S
m/mterp/armv5te/OP_UNUSED_65FF.S
m/mterp/armv5te/OP_UNUSED_66FF.S
m/mterp/armv5te/OP_UNUSED_67FF.S
m/mterp/armv5te/OP_UNUSED_68FF.S
m/mterp/armv5te/OP_UNUSED_69FF.S
m/mterp/armv5te/OP_UNUSED_6AFF.S
m/mterp/armv5te/OP_UNUSED_6BFF.S
m/mterp/armv5te/OP_UNUSED_6CFF.S
m/mterp/armv5te/OP_UNUSED_6DFF.S
m/mterp/armv5te/OP_UNUSED_6EFF.S
m/mterp/armv5te/OP_UNUSED_6FFF.S
m/mterp/armv5te/OP_UNUSED_70FF.S
m/mterp/armv5te/OP_UNUSED_71FF.S
m/mterp/armv5te/OP_UNUSED_72FF.S
m/mterp/armv5te/OP_UNUSED_73FF.S
m/mterp/armv5te/OP_UNUSED_74FF.S
m/mterp/armv5te/OP_UNUSED_75FF.S
m/mterp/armv5te/OP_UNUSED_76FF.S
m/mterp/armv5te/OP_UNUSED_77FF.S
m/mterp/armv5te/OP_UNUSED_78FF.S
m/mterp/armv5te/OP_UNUSED_79FF.S
m/mterp/armv5te/OP_UNUSED_7AFF.S
m/mterp/armv5te/OP_UNUSED_7BFF.S
m/mterp/armv5te/OP_UNUSED_7CFF.S
m/mterp/armv5te/OP_UNUSED_7DFF.S
m/mterp/armv5te/OP_UNUSED_7EFF.S
m/mterp/armv5te/OP_UNUSED_7FFF.S
m/mterp/armv5te/OP_UNUSED_80FF.S
m/mterp/armv5te/OP_UNUSED_81FF.S
m/mterp/armv5te/OP_UNUSED_82FF.S
m/mterp/armv5te/OP_UNUSED_83FF.S
m/mterp/armv5te/OP_UNUSED_84FF.S
m/mterp/armv5te/OP_UNUSED_85FF.S
m/mterp/armv5te/OP_UNUSED_86FF.S
m/mterp/armv5te/OP_UNUSED_87FF.S
m/mterp/armv5te/OP_UNUSED_88FF.S
m/mterp/armv5te/OP_UNUSED_89FF.S
m/mterp/armv5te/OP_UNUSED_8AFF.S
m/mterp/armv5te/OP_UNUSED_8BFF.S
m/mterp/armv5te/OP_UNUSED_8CFF.S
m/mterp/armv5te/OP_UNUSED_8DFF.S
m/mterp/armv5te/OP_UNUSED_8EFF.S
m/mterp/armv5te/OP_UNUSED_8FFF.S
m/mterp/armv5te/OP_UNUSED_90FF.S
m/mterp/armv5te/OP_UNUSED_91FF.S
m/mterp/armv5te/OP_UNUSED_92FF.S
m/mterp/armv5te/OP_UNUSED_93FF.S
m/mterp/armv5te/OP_UNUSED_94FF.S
m/mterp/armv5te/OP_UNUSED_95FF.S
m/mterp/armv5te/OP_UNUSED_96FF.S
m/mterp/armv5te/OP_UNUSED_97FF.S
m/mterp/armv5te/OP_UNUSED_98FF.S
m/mterp/armv5te/OP_UNUSED_99FF.S
m/mterp/armv5te/OP_UNUSED_9AFF.S
m/mterp/armv5te/OP_UNUSED_9BFF.S
m/mterp/armv5te/OP_UNUSED_9CFF.S
m/mterp/armv5te/OP_UNUSED_9DFF.S
m/mterp/armv5te/OP_UNUSED_9EFF.S
m/mterp/armv5te/OP_UNUSED_9FFF.S
m/mterp/armv5te/OP_UNUSED_A0FF.S
m/mterp/armv5te/OP_UNUSED_A1FF.S
m/mterp/armv5te/OP_UNUSED_A2FF.S
m/mterp/armv5te/OP_UNUSED_A3FF.S
m/mterp/armv5te/OP_UNUSED_A4FF.S
m/mterp/armv5te/OP_UNUSED_A5FF.S
m/mterp/armv5te/OP_UNUSED_A6FF.S
m/mterp/armv5te/OP_UNUSED_A7FF.S
m/mterp/armv5te/OP_UNUSED_A8FF.S
m/mterp/armv5te/OP_UNUSED_A9FF.S
m/mterp/armv5te/OP_UNUSED_AAFF.S
m/mterp/armv5te/OP_UNUSED_ABFF.S
m/mterp/armv5te/OP_UNUSED_ACFF.S
m/mterp/armv5te/OP_UNUSED_ADFF.S
m/mterp/armv5te/OP_UNUSED_AEFF.S
m/mterp/armv5te/OP_UNUSED_AFFF.S
m/mterp/armv5te/OP_UNUSED_B0FF.S
m/mterp/armv5te/OP_UNUSED_B1FF.S
m/mterp/armv5te/OP_UNUSED_B2FF.S
m/mterp/armv5te/OP_UNUSED_B3FF.S
m/mterp/armv5te/OP_UNUSED_B4FF.S
m/mterp/armv5te/OP_UNUSED_B5FF.S
m/mterp/armv5te/OP_UNUSED_B6FF.S
m/mterp/armv5te/OP_UNUSED_B7FF.S
m/mterp/armv5te/OP_UNUSED_B8FF.S
m/mterp/armv5te/OP_UNUSED_B9FF.S
m/mterp/armv5te/OP_UNUSED_BAFF.S
m/mterp/armv5te/OP_UNUSED_BBFF.S
m/mterp/armv5te/OP_UNUSED_BCFF.S
m/mterp/armv5te/OP_UNUSED_BDFF.S
m/mterp/armv5te/OP_UNUSED_BEFF.S
m/mterp/armv5te/OP_UNUSED_BFFF.S
m/mterp/armv5te/OP_UNUSED_C0FF.S
m/mterp/armv5te/OP_UNUSED_C1FF.S
m/mterp/armv5te/OP_UNUSED_C2FF.S
m/mterp/armv5te/OP_UNUSED_C3FF.S
m/mterp/armv5te/OP_UNUSED_C4FF.S
m/mterp/armv5te/OP_UNUSED_C5FF.S
m/mterp/armv5te/OP_UNUSED_C6FF.S
m/mterp/armv5te/OP_UNUSED_C7FF.S
m/mterp/armv5te/OP_UNUSED_C8FF.S
m/mterp/armv5te/OP_UNUSED_C9FF.S
m/mterp/armv5te/OP_UNUSED_CAFF.S
m/mterp/armv5te/OP_UNUSED_CBFF.S
m/mterp/armv5te/OP_UNUSED_CCFF.S
m/mterp/armv5te/OP_UNUSED_CDFF.S
m/mterp/armv5te/OP_UNUSED_CEFF.S
m/mterp/armv5te/OP_UNUSED_CFFF.S
m/mterp/armv5te/OP_UNUSED_D0FF.S
m/mterp/armv5te/OP_UNUSED_D1FF.S
m/mterp/armv5te/OP_UNUSED_D2FF.S
m/mterp/armv5te/OP_UNUSED_D3FF.S
m/mterp/armv5te/OP_UNUSED_D4FF.S
m/mterp/armv5te/OP_UNUSED_D5FF.S
m/mterp/armv5te/OP_UNUSED_D6FF.S
m/mterp/armv5te/OP_UNUSED_D7FF.S
m/mterp/armv5te/OP_UNUSED_D8FF.S
m/mterp/armv5te/OP_UNUSED_D9FF.S
m/mterp/armv5te/OP_UNUSED_DAFF.S
m/mterp/armv5te/OP_UNUSED_DBFF.S
m/mterp/armv5te/OP_UNUSED_DCFF.S
m/mterp/armv5te/OP_UNUSED_DDFF.S
m/mterp/armv5te/OP_UNUSED_DEFF.S
m/mterp/armv5te/OP_UNUSED_DFFF.S
m/mterp/armv5te/OP_UNUSED_E0FF.S
m/mterp/armv5te/OP_UNUSED_E1FF.S
m/mterp/armv5te/OP_UNUSED_E2FF.S
m/mterp/armv5te/OP_UNUSED_E3FF.S
m/mterp/armv5te/OP_UNUSED_E4FF.S
m/mterp/armv5te/OP_UNUSED_E5FF.S
m/mterp/armv5te/OP_UNUSED_E6FF.S
m/mterp/armv5te/OP_UNUSED_E7FF.S
m/mterp/armv5te/OP_UNUSED_E8FF.S
m/mterp/armv5te/OP_UNUSED_E9FF.S
m/mterp/armv5te/OP_UNUSED_EAFF.S
m/mterp/armv5te/OP_UNUSED_EBFF.S
m/mterp/armv5te/OP_UNUSED_ECFF.S
m/mterp/armv5te/OP_UNUSED_EDFF.S
m/mterp/armv5te/OP_UNUSED_EEFF.S
m/mterp/armv5te/OP_UNUSED_EFFF.S
m/mterp/armv5te/OP_UNUSED_F0FF.S
m/mterp/armv5te/OP_UNUSED_F1FF.S
m/mterp/armv5te/OP_UNUSED_FF.S
m/mterp/armv5te/footer.S
m/mterp/c/OP_CHECK_CAST_JUMBO.cpp
m/mterp/c/OP_CONST_CLASS_JUMBO.cpp
m/mterp/c/OP_DISPATCH_FF.cpp
m/mterp/c/OP_FILLED_NEW_ARRAY.cpp
m/mterp/c/OP_FILLED_NEW_ARRAY_JUMBO.cpp
m/mterp/c/OP_FILLED_NEW_ARRAY_RANGE.cpp
m/mterp/c/OP_IGET_BOOLEAN_JUMBO.cpp
m/mterp/c/OP_IGET_BYTE_JUMBO.cpp
m/mterp/c/OP_IGET_CHAR_JUMBO.cpp
m/mterp/c/OP_IGET_JUMBO.cpp
m/mterp/c/OP_IGET_OBJECT_JUMBO.cpp
m/mterp/c/OP_IGET_OBJECT_VOLATILE_JUMBO.cpp
m/mterp/c/OP_IGET_SHORT_JUMBO.cpp
m/mterp/c/OP_IGET_VOLATILE_JUMBO.cpp
m/mterp/c/OP_IGET_WIDE_JUMBO.cpp
m/mterp/c/OP_IGET_WIDE_VOLATILE_JUMBO.cpp
m/mterp/c/OP_INSTANCE_OF_JUMBO.cpp
m/mterp/c/OP_INVOKE_DIRECT.cpp
m/mterp/c/OP_INVOKE_DIRECT_JUMBO.cpp
m/mterp/c/OP_INVOKE_DIRECT_RANGE.cpp
m/mterp/c/OP_INVOKE_INTERFACE.cpp
m/mterp/c/OP_INVOKE_INTERFACE_JUMBO.cpp
m/mterp/c/OP_INVOKE_INTERFACE_RANGE.cpp
m/mterp/c/OP_INVOKE_OBJECT_INIT_JUMBO.cpp
m/mterp/c/OP_INVOKE_OBJECT_INIT_RANGE.cpp
m/mterp/c/OP_INVOKE_STATIC.cpp
m/mterp/c/OP_INVOKE_STATIC_JUMBO.cpp
m/mterp/c/OP_INVOKE_STATIC_RANGE.cpp
m/mterp/c/OP_INVOKE_SUPER.cpp
m/mterp/c/OP_INVOKE_SUPER_JUMBO.cpp
m/mterp/c/OP_INVOKE_SUPER_QUICK.cpp
m/mterp/c/OP_INVOKE_SUPER_QUICK_RANGE.cpp
m/mterp/c/OP_INVOKE_SUPER_RANGE.cpp
m/mterp/c/OP_INVOKE_VIRTUAL.cpp
m/mterp/c/OP_INVOKE_VIRTUAL_JUMBO.cpp
m/mterp/c/OP_INVOKE_VIRTUAL_QUICK.cpp
m/mterp/c/OP_INVOKE_VIRTUAL_QUICK_RANGE.cpp
m/mterp/c/OP_INVOKE_VIRTUAL_RANGE.cpp
m/mterp/c/OP_IPUT_BOOLEAN_JUMBO.cpp
m/mterp/c/OP_IPUT_BYTE_JUMBO.cpp
m/mterp/c/OP_IPUT_CHAR_JUMBO.cpp
m/mterp/c/OP_IPUT_JUMBO.cpp
m/mterp/c/OP_IPUT_OBJECT_JUMBO.cpp
m/mterp/c/OP_IPUT_OBJECT_VOLATILE_JUMBO.cpp
m/mterp/c/OP_IPUT_SHORT_JUMBO.cpp
m/mterp/c/OP_IPUT_VOLATILE_JUMBO.cpp
m/mterp/c/OP_IPUT_WIDE_JUMBO.cpp
m/mterp/c/OP_IPUT_WIDE_VOLATILE_JUMBO.cpp
m/mterp/c/OP_NEW_ARRAY_JUMBO.cpp
m/mterp/c/OP_NEW_INSTANCE_JUMBO.cpp
m/mterp/c/OP_SGET_BOOLEAN_JUMBO.cpp
m/mterp/c/OP_SGET_BYTE_JUMBO.cpp
m/mterp/c/OP_SGET_CHAR_JUMBO.cpp
m/mterp/c/OP_SGET_JUMBO.cpp
m/mterp/c/OP_SGET_OBJECT_JUMBO.cpp
m/mterp/c/OP_SGET_OBJECT_VOLATILE_JUMBO.cpp
m/mterp/c/OP_SGET_SHORT_JUMBO.cpp
m/mterp/c/OP_SGET_VOLATILE_JUMBO.cpp
m/mterp/c/OP_SGET_WIDE_JUMBO.cpp
m/mterp/c/OP_SGET_WIDE_VOLATILE_JUMBO.cpp
m/mterp/c/OP_SPUT_BOOLEAN_JUMBO.cpp
m/mterp/c/OP_SPUT_BYTE_JUMBO.cpp
m/mterp/c/OP_SPUT_CHAR_JUMBO.cpp
m/mterp/c/OP_SPUT_JUMBO.cpp
m/mterp/c/OP_SPUT_OBJECT_JUMBO.cpp
m/mterp/c/OP_SPUT_OBJECT_VOLATILE_JUMBO.cpp
m/mterp/c/OP_SPUT_SHORT_JUMBO.cpp
m/mterp/c/OP_SPUT_VOLATILE_JUMBO.cpp
m/mterp/c/OP_SPUT_WIDE_JUMBO.cpp
m/mterp/c/OP_SPUT_WIDE_VOLATILE_JUMBO.cpp
m/mterp/c/OP_THROW_VERIFICATION_ERROR_JUMBO.cpp
m/mterp/c/OP_UNUSED_27FF.cpp
m/mterp/c/OP_UNUSED_28FF.cpp
m/mterp/c/OP_UNUSED_29FF.cpp
m/mterp/c/OP_UNUSED_2AFF.cpp
m/mterp/c/OP_UNUSED_2BFF.cpp
m/mterp/c/OP_UNUSED_2CFF.cpp
m/mterp/c/OP_UNUSED_2DFF.cpp
m/mterp/c/OP_UNUSED_2EFF.cpp
m/mterp/c/OP_UNUSED_2FFF.cpp
m/mterp/c/OP_UNUSED_30FF.cpp
m/mterp/c/OP_UNUSED_31FF.cpp
m/mterp/c/OP_UNUSED_32FF.cpp
m/mterp/c/OP_UNUSED_33FF.cpp
m/mterp/c/OP_UNUSED_34FF.cpp
m/mterp/c/OP_UNUSED_35FF.cpp
m/mterp/c/OP_UNUSED_36FF.cpp
m/mterp/c/OP_UNUSED_37FF.cpp
m/mterp/c/OP_UNUSED_38FF.cpp
m/mterp/c/OP_UNUSED_39FF.cpp
m/mterp/c/OP_UNUSED_3AFF.cpp
m/mterp/c/OP_UNUSED_3BFF.cpp
m/mterp/c/OP_UNUSED_3CFF.cpp
m/mterp/c/OP_UNUSED_3DFF.cpp
m/mterp/c/OP_UNUSED_3EFF.cpp
m/mterp/c/OP_UNUSED_3FFF.cpp
m/mterp/c/OP_UNUSED_40FF.cpp
m/mterp/c/OP_UNUSED_41FF.cpp
m/mterp/c/OP_UNUSED_42FF.cpp
m/mterp/c/OP_UNUSED_43FF.cpp
m/mterp/c/OP_UNUSED_44FF.cpp
m/mterp/c/OP_UNUSED_45FF.cpp
m/mterp/c/OP_UNUSED_46FF.cpp
m/mterp/c/OP_UNUSED_47FF.cpp
m/mterp/c/OP_UNUSED_48FF.cpp
m/mterp/c/OP_UNUSED_49FF.cpp
m/mterp/c/OP_UNUSED_4AFF.cpp
m/mterp/c/OP_UNUSED_4BFF.cpp
m/mterp/c/OP_UNUSED_4CFF.cpp
m/mterp/c/OP_UNUSED_4DFF.cpp
m/mterp/c/OP_UNUSED_4EFF.cpp
m/mterp/c/OP_UNUSED_4FFF.cpp
m/mterp/c/OP_UNUSED_50FF.cpp
m/mterp/c/OP_UNUSED_51FF.cpp
m/mterp/c/OP_UNUSED_52FF.cpp
m/mterp/c/OP_UNUSED_53FF.cpp
m/mterp/c/OP_UNUSED_54FF.cpp
m/mterp/c/OP_UNUSED_55FF.cpp
m/mterp/c/OP_UNUSED_56FF.cpp
m/mterp/c/OP_UNUSED_57FF.cpp
m/mterp/c/OP_UNUSED_58FF.cpp
m/mterp/c/OP_UNUSED_59FF.cpp
m/mterp/c/OP_UNUSED_5AFF.cpp
m/mterp/c/OP_UNUSED_5BFF.cpp
m/mterp/c/OP_UNUSED_5CFF.cpp
m/mterp/c/OP_UNUSED_5DFF.cpp
m/mterp/c/OP_UNUSED_5EFF.cpp
m/mterp/c/OP_UNUSED_5FFF.cpp
m/mterp/c/OP_UNUSED_60FF.cpp
m/mterp/c/OP_UNUSED_61FF.cpp
m/mterp/c/OP_UNUSED_62FF.cpp
m/mterp/c/OP_UNUSED_63FF.cpp
m/mterp/c/OP_UNUSED_64FF.cpp
m/mterp/c/OP_UNUSED_65FF.cpp
m/mterp/c/OP_UNUSED_66FF.cpp
m/mterp/c/OP_UNUSED_67FF.cpp
m/mterp/c/OP_UNUSED_68FF.cpp
m/mterp/c/OP_UNUSED_69FF.cpp
m/mterp/c/OP_UNUSED_6AFF.cpp
m/mterp/c/OP_UNUSED_6BFF.cpp
m/mterp/c/OP_UNUSED_6CFF.cpp
m/mterp/c/OP_UNUSED_6DFF.cpp
m/mterp/c/OP_UNUSED_6EFF.cpp
m/mterp/c/OP_UNUSED_6FFF.cpp
m/mterp/c/OP_UNUSED_70FF.cpp
m/mterp/c/OP_UNUSED_71FF.cpp
m/mterp/c/OP_UNUSED_72FF.cpp
m/mterp/c/OP_UNUSED_73FF.cpp
m/mterp/c/OP_UNUSED_74FF.cpp
m/mterp/c/OP_UNUSED_75FF.cpp
m/mterp/c/OP_UNUSED_76FF.cpp
m/mterp/c/OP_UNUSED_77FF.cpp
m/mterp/c/OP_UNUSED_78FF.cpp
m/mterp/c/OP_UNUSED_79FF.cpp
m/mterp/c/OP_UNUSED_7AFF.cpp
m/mterp/c/OP_UNUSED_7BFF.cpp
m/mterp/c/OP_UNUSED_7CFF.cpp
m/mterp/c/OP_UNUSED_7DFF.cpp
m/mterp/c/OP_UNUSED_7EFF.cpp
m/mterp/c/OP_UNUSED_7FFF.cpp
m/mterp/c/OP_UNUSED_80FF.cpp
m/mterp/c/OP_UNUSED_81FF.cpp
m/mterp/c/OP_UNUSED_82FF.cpp
m/mterp/c/OP_UNUSED_83FF.cpp
m/mterp/c/OP_UNUSED_84FF.cpp
m/mterp/c/OP_UNUSED_85FF.cpp
m/mterp/c/OP_UNUSED_86FF.cpp
m/mterp/c/OP_UNUSED_87FF.cpp
m/mterp/c/OP_UNUSED_88FF.cpp
m/mterp/c/OP_UNUSED_89FF.cpp
m/mterp/c/OP_UNUSED_8AFF.cpp
m/mterp/c/OP_UNUSED_8BFF.cpp
m/mterp/c/OP_UNUSED_8CFF.cpp
m/mterp/c/OP_UNUSED_8DFF.cpp
m/mterp/c/OP_UNUSED_8EFF.cpp
m/mterp/c/OP_UNUSED_8FFF.cpp
m/mterp/c/OP_UNUSED_90FF.cpp
m/mterp/c/OP_UNUSED_91FF.cpp
m/mterp/c/OP_UNUSED_92FF.cpp
m/mterp/c/OP_UNUSED_93FF.cpp
m/mterp/c/OP_UNUSED_94FF.cpp
m/mterp/c/OP_UNUSED_95FF.cpp
m/mterp/c/OP_UNUSED_96FF.cpp
m/mterp/c/OP_UNUSED_97FF.cpp
m/mterp/c/OP_UNUSED_98FF.cpp
m/mterp/c/OP_UNUSED_99FF.cpp
m/mterp/c/OP_UNUSED_9AFF.cpp
m/mterp/c/OP_UNUSED_9BFF.cpp
m/mterp/c/OP_UNUSED_9CFF.cpp
m/mterp/c/OP_UNUSED_9DFF.cpp
m/mterp/c/OP_UNUSED_9EFF.cpp
m/mterp/c/OP_UNUSED_9FFF.cpp
m/mterp/c/OP_UNUSED_A0FF.cpp
m/mterp/c/OP_UNUSED_A1FF.cpp
m/mterp/c/OP_UNUSED_A2FF.cpp
m/mterp/c/OP_UNUSED_A3FF.cpp
m/mterp/c/OP_UNUSED_A4FF.cpp
m/mterp/c/OP_UNUSED_A5FF.cpp
m/mterp/c/OP_UNUSED_A6FF.cpp
m/mterp/c/OP_UNUSED_A7FF.cpp
m/mterp/c/OP_UNUSED_A8FF.cpp
m/mterp/c/OP_UNUSED_A9FF.cpp
m/mterp/c/OP_UNUSED_AAFF.cpp
m/mterp/c/OP_UNUSED_ABFF.cpp
m/mterp/c/OP_UNUSED_ACFF.cpp
m/mterp/c/OP_UNUSED_ADFF.cpp
m/mterp/c/OP_UNUSED_AEFF.cpp
m/mterp/c/OP_UNUSED_AFFF.cpp
m/mterp/c/OP_UNUSED_B0FF.cpp
m/mterp/c/OP_UNUSED_B1FF.cpp
m/mterp/c/OP_UNUSED_B2FF.cpp
m/mterp/c/OP_UNUSED_B3FF.cpp
m/mterp/c/OP_UNUSED_B4FF.cpp
m/mterp/c/OP_UNUSED_B5FF.cpp
m/mterp/c/OP_UNUSED_B6FF.cpp
m/mterp/c/OP_UNUSED_B7FF.cpp
m/mterp/c/OP_UNUSED_B8FF.cpp
m/mterp/c/OP_UNUSED_B9FF.cpp
m/mterp/c/OP_UNUSED_BAFF.cpp
m/mterp/c/OP_UNUSED_BBFF.cpp
m/mterp/c/OP_UNUSED_BCFF.cpp
m/mterp/c/OP_UNUSED_BDFF.cpp
m/mterp/c/OP_UNUSED_BEFF.cpp
m/mterp/c/OP_UNUSED_BFFF.cpp
m/mterp/c/OP_UNUSED_C0FF.cpp
m/mterp/c/OP_UNUSED_C1FF.cpp
m/mterp/c/OP_UNUSED_C2FF.cpp
m/mterp/c/OP_UNUSED_C3FF.cpp
m/mterp/c/OP_UNUSED_C4FF.cpp
m/mterp/c/OP_UNUSED_C5FF.cpp
m/mterp/c/OP_UNUSED_C6FF.cpp
m/mterp/c/OP_UNUSED_C7FF.cpp
m/mterp/c/OP_UNUSED_C8FF.cpp
m/mterp/c/OP_UNUSED_C9FF.cpp
m/mterp/c/OP_UNUSED_CAFF.cpp
m/mterp/c/OP_UNUSED_CBFF.cpp
m/mterp/c/OP_UNUSED_CCFF.cpp
m/mterp/c/OP_UNUSED_CDFF.cpp
m/mterp/c/OP_UNUSED_CEFF.cpp
m/mterp/c/OP_UNUSED_CFFF.cpp
m/mterp/c/OP_UNUSED_D0FF.cpp
m/mterp/c/OP_UNUSED_D1FF.cpp
m/mterp/c/OP_UNUSED_D2FF.cpp
m/mterp/c/OP_UNUSED_D3FF.cpp
m/mterp/c/OP_UNUSED_D4FF.cpp
m/mterp/c/OP_UNUSED_D5FF.cpp
m/mterp/c/OP_UNUSED_D6FF.cpp
m/mterp/c/OP_UNUSED_D7FF.cpp
m/mterp/c/OP_UNUSED_D8FF.cpp
m/mterp/c/OP_UNUSED_D9FF.cpp
m/mterp/c/OP_UNUSED_DAFF.cpp
m/mterp/c/OP_UNUSED_DBFF.cpp
m/mterp/c/OP_UNUSED_DCFF.cpp
m/mterp/c/OP_UNUSED_DDFF.cpp
m/mterp/c/OP_UNUSED_DEFF.cpp
m/mterp/c/OP_UNUSED_DFFF.cpp
m/mterp/c/OP_UNUSED_E0FF.cpp
m/mterp/c/OP_UNUSED_E1FF.cpp
m/mterp/c/OP_UNUSED_E2FF.cpp
m/mterp/c/OP_UNUSED_E3FF.cpp
m/mterp/c/OP_UNUSED_E4FF.cpp
m/mterp/c/OP_UNUSED_E5FF.cpp
m/mterp/c/OP_UNUSED_E6FF.cpp
m/mterp/c/OP_UNUSED_E7FF.cpp
m/mterp/c/OP_UNUSED_E8FF.cpp
m/mterp/c/OP_UNUSED_E9FF.cpp
m/mterp/c/OP_UNUSED_EAFF.cpp
m/mterp/c/OP_UNUSED_EBFF.cpp
m/mterp/c/OP_UNUSED_ECFF.cpp
m/mterp/c/OP_UNUSED_EDFF.cpp
m/mterp/c/OP_UNUSED_EEFF.cpp
m/mterp/c/OP_UNUSED_EFFF.cpp
m/mterp/c/OP_UNUSED_F0FF.cpp
m/mterp/c/OP_UNUSED_F1FF.cpp
m/mterp/c/OP_UNUSED_FF.cpp
m/mterp/c/gotoTargets.cpp
m/mterp/c/opcommon.cpp
m/mterp/common/asm-constants.h
m/mterp/config-armv5te
m/mterp/config-armv5te-vfp
m/mterp/config-armv7-a
m/mterp/config-armv7-a-neon
m/mterp/config-x86
m/mterp/config-x86-atom
m/mterp/cstubs/stubdefs.cpp
m/mterp/gen-mterp.py
m/mterp/out/InterpAsm-armv5te-vfp.S
m/mterp/out/InterpAsm-armv5te.S
m/mterp/out/InterpAsm-armv7-a-neon.S
m/mterp/out/InterpAsm-armv7-a.S
m/mterp/out/InterpAsm-x86-atom.S
m/mterp/out/InterpAsm-x86.S
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/mterp/portable/entry.cpp
m/mterp/portable/stubdefs.cpp
m/mterp/x86-atom/OP_CHECK_CAST_JUMBO.S
m/mterp/x86-atom/OP_CONST_CLASS_JUMBO.S
m/mterp/x86-atom/OP_DISPATCH_FF.S
m/mterp/x86-atom/OP_FILLED_NEW_ARRAY_JUMBO.S
m/mterp/x86-atom/OP_IGET_BOOLEAN_JUMBO.S
m/mterp/x86-atom/OP_IGET_BYTE_JUMBO.S
m/mterp/x86-atom/OP_IGET_CHAR_JUMBO.S
m/mterp/x86-atom/OP_IGET_JUMBO.S
m/mterp/x86-atom/OP_IGET_OBJECT_JUMBO.S
m/mterp/x86-atom/OP_IGET_SHORT_JUMBO.S
m/mterp/x86-atom/OP_IGET_WIDE_JUMBO.S
m/mterp/x86-atom/OP_INSTANCE_OF_JUMBO.S
m/mterp/x86-atom/OP_INVOKE_DIRECT_JUMBO.S
m/mterp/x86-atom/OP_INVOKE_INTERFACE_JUMBO.S
m/mterp/x86-atom/OP_INVOKE_STATIC_JUMBO.S
m/mterp/x86-atom/OP_INVOKE_SUPER_JUMBO.S
m/mterp/x86-atom/OP_INVOKE_VIRTUAL_JUMBO.S
m/mterp/x86-atom/OP_IPUT_BOOLEAN_JUMBO.S
m/mterp/x86-atom/OP_IPUT_BYTE_JUMBO.S
m/mterp/x86-atom/OP_IPUT_CHAR_JUMBO.S
m/mterp/x86-atom/OP_IPUT_JUMBO.S
m/mterp/x86-atom/OP_IPUT_OBJECT_JUMBO.S
m/mterp/x86-atom/OP_IPUT_SHORT_JUMBO.S
m/mterp/x86-atom/OP_IPUT_WIDE_JUMBO.S
m/mterp/x86-atom/OP_NEW_ARRAY_JUMBO.S
m/mterp/x86-atom/OP_NEW_INSTANCE_JUMBO.S
m/mterp/x86-atom/OP_SGET_BOOLEAN_JUMBO.S
m/mterp/x86-atom/OP_SGET_BYTE_JUMBO.S
m/mterp/x86-atom/OP_SGET_CHAR_JUMBO.S
m/mterp/x86-atom/OP_SGET_JUMBO.S
m/mterp/x86-atom/OP_SGET_OBJECT_JUMBO.S
m/mterp/x86-atom/OP_SGET_SHORT_JUMBO.S
m/mterp/x86-atom/OP_SGET_WIDE_JUMBO.S
m/mterp/x86-atom/OP_SPUT_BOOLEAN_JUMBO.S
m/mterp/x86-atom/OP_SPUT_BYTE_JUMBO.S
m/mterp/x86-atom/OP_SPUT_CHAR_JUMBO.S
m/mterp/x86-atom/OP_SPUT_JUMBO.S
m/mterp/x86-atom/OP_SPUT_OBJECT_JUMBO.S
m/mterp/x86-atom/OP_SPUT_SHORT_JUMBO.S
m/mterp/x86-atom/OP_SPUT_WIDE_JUMBO.S
m/mterp/x86-atom/OP_THROW_VERIFICATION_ERROR_JUMBO.S
m/mterp/x86-atom/OP_UNUSED_27FF.S
m/mterp/x86-atom/OP_UNUSED_28FF.S
m/mterp/x86-atom/OP_UNUSED_29FF.S
m/mterp/x86-atom/OP_UNUSED_2AFF.S
m/mterp/x86-atom/OP_UNUSED_2BFF.S
m/mterp/x86-atom/OP_UNUSED_2CFF.S
m/mterp/x86-atom/OP_UNUSED_2DFF.S
m/mterp/x86-atom/OP_UNUSED_2EFF.S
m/mterp/x86-atom/OP_UNUSED_2FFF.S
m/mterp/x86-atom/OP_UNUSED_30FF.S
m/mterp/x86-atom/OP_UNUSED_31FF.S
m/mterp/x86-atom/OP_UNUSED_32FF.S
m/mterp/x86-atom/OP_UNUSED_33FF.S
m/mterp/x86-atom/OP_UNUSED_34FF.S
m/mterp/x86-atom/OP_UNUSED_35FF.S
m/mterp/x86-atom/OP_UNUSED_36FF.S
m/mterp/x86-atom/OP_UNUSED_37FF.S
m/mterp/x86-atom/OP_UNUSED_38FF.S
m/mterp/x86-atom/OP_UNUSED_39FF.S
m/mterp/x86-atom/OP_UNUSED_3AFF.S
m/mterp/x86-atom/OP_UNUSED_3BFF.S
m/mterp/x86-atom/OP_UNUSED_3CFF.S
m/mterp/x86-atom/OP_UNUSED_3DFF.S
m/mterp/x86-atom/OP_UNUSED_3EFF.S
m/mterp/x86-atom/OP_UNUSED_3FFF.S
m/mterp/x86-atom/OP_UNUSED_40FF.S
m/mterp/x86-atom/OP_UNUSED_41FF.S
m/mterp/x86-atom/OP_UNUSED_42FF.S
m/mterp/x86-atom/OP_UNUSED_43FF.S
m/mterp/x86-atom/OP_UNUSED_44FF.S
m/mterp/x86-atom/OP_UNUSED_45FF.S
m/mterp/x86-atom/OP_UNUSED_46FF.S
m/mterp/x86-atom/OP_UNUSED_47FF.S
m/mterp/x86-atom/OP_UNUSED_48FF.S
m/mterp/x86-atom/OP_UNUSED_49FF.S
m/mterp/x86-atom/OP_UNUSED_4AFF.S
m/mterp/x86-atom/OP_UNUSED_4BFF.S
m/mterp/x86-atom/OP_UNUSED_4CFF.S
m/mterp/x86-atom/OP_UNUSED_4DFF.S
m/mterp/x86-atom/OP_UNUSED_4EFF.S
m/mterp/x86-atom/OP_UNUSED_4FFF.S
m/mterp/x86-atom/OP_UNUSED_50FF.S
m/mterp/x86-atom/OP_UNUSED_51FF.S
m/mterp/x86-atom/OP_UNUSED_52FF.S
m/mterp/x86-atom/OP_UNUSED_53FF.S
m/mterp/x86-atom/OP_UNUSED_54FF.S
m/mterp/x86-atom/OP_UNUSED_55FF.S
m/mterp/x86-atom/OP_UNUSED_56FF.S
m/mterp/x86-atom/OP_UNUSED_57FF.S
m/mterp/x86-atom/OP_UNUSED_58FF.S
m/mterp/x86-atom/OP_UNUSED_59FF.S
m/mterp/x86-atom/OP_UNUSED_5AFF.S
m/mterp/x86-atom/OP_UNUSED_5BFF.S
m/mterp/x86-atom/OP_UNUSED_5CFF.S
m/mterp/x86-atom/OP_UNUSED_5DFF.S
m/mterp/x86-atom/OP_UNUSED_5EFF.S
m/mterp/x86-atom/OP_UNUSED_5FFF.S
m/mterp/x86-atom/OP_UNUSED_60FF.S
m/mterp/x86-atom/OP_UNUSED_61FF.S
m/mterp/x86-atom/OP_UNUSED_62FF.S
m/mterp/x86-atom/OP_UNUSED_63FF.S
m/mterp/x86-atom/OP_UNUSED_64FF.S
m/mterp/x86-atom/OP_UNUSED_65FF.S
m/mterp/x86-atom/OP_UNUSED_66FF.S
m/mterp/x86-atom/OP_UNUSED_67FF.S
m/mterp/x86-atom/OP_UNUSED_68FF.S
m/mterp/x86-atom/OP_UNUSED_69FF.S
m/mterp/x86-atom/OP_UNUSED_6AFF.S
m/mterp/x86-atom/OP_UNUSED_6BFF.S
m/mterp/x86-atom/OP_UNUSED_6CFF.S
m/mterp/x86-atom/OP_UNUSED_6DFF.S
m/mterp/x86-atom/OP_UNUSED_6EFF.S
m/mterp/x86-atom/OP_UNUSED_6FFF.S
m/mterp/x86-atom/OP_UNUSED_70FF.S
m/mterp/x86-atom/OP_UNUSED_71FF.S
m/mterp/x86-atom/OP_UNUSED_72FF.S
m/mterp/x86-atom/OP_UNUSED_73FF.S
m/mterp/x86-atom/OP_UNUSED_74FF.S
m/mterp/x86-atom/OP_UNUSED_75FF.S
m/mterp/x86-atom/OP_UNUSED_76FF.S
m/mterp/x86-atom/OP_UNUSED_77FF.S
m/mterp/x86-atom/OP_UNUSED_78FF.S
m/mterp/x86-atom/OP_UNUSED_79FF.S
m/mterp/x86-atom/OP_UNUSED_7AFF.S
m/mterp/x86-atom/OP_UNUSED_7BFF.S
m/mterp/x86-atom/OP_UNUSED_7CFF.S
m/mterp/x86-atom/OP_UNUSED_7DFF.S
m/mterp/x86-atom/OP_UNUSED_7EFF.S
m/mterp/x86-atom/OP_UNUSED_7FFF.S
m/mterp/x86-atom/OP_UNUSED_80FF.S
m/mterp/x86-atom/OP_UNUSED_81FF.S
m/mterp/x86-atom/OP_UNUSED_82FF.S
m/mterp/x86-atom/OP_UNUSED_83FF.S
m/mterp/x86-atom/OP_UNUSED_84FF.S
m/mterp/x86-atom/OP_UNUSED_85FF.S
m/mterp/x86-atom/OP_UNUSED_86FF.S
m/mterp/x86-atom/OP_UNUSED_87FF.S
m/mterp/x86-atom/OP_UNUSED_88FF.S
m/mterp/x86-atom/OP_UNUSED_89FF.S
m/mterp/x86-atom/OP_UNUSED_8AFF.S
m/mterp/x86-atom/OP_UNUSED_8BFF.S
m/mterp/x86-atom/OP_UNUSED_8CFF.S
m/mterp/x86-atom/OP_UNUSED_8DFF.S
m/mterp/x86-atom/OP_UNUSED_8EFF.S
m/mterp/x86-atom/OP_UNUSED_8FFF.S
m/mterp/x86-atom/OP_UNUSED_90FF.S
m/mterp/x86-atom/OP_UNUSED_91FF.S
m/mterp/x86-atom/OP_UNUSED_92FF.S
m/mterp/x86-atom/OP_UNUSED_93FF.S
m/mterp/x86-atom/OP_UNUSED_94FF.S
m/mterp/x86-atom/OP_UNUSED_95FF.S
m/mterp/x86-atom/OP_UNUSED_96FF.S
m/mterp/x86-atom/OP_UNUSED_97FF.S
m/mterp/x86-atom/OP_UNUSED_98FF.S
m/mterp/x86-atom/OP_UNUSED_99FF.S
m/mterp/x86-atom/OP_UNUSED_9AFF.S
m/mterp/x86-atom/OP_UNUSED_9BFF.S
m/mterp/x86-atom/OP_UNUSED_9CFF.S
m/mterp/x86-atom/OP_UNUSED_9DFF.S
m/mterp/x86-atom/OP_UNUSED_9EFF.S
m/mterp/x86-atom/OP_UNUSED_9FFF.S
m/mterp/x86-atom/OP_UNUSED_A0FF.S
m/mterp/x86-atom/OP_UNUSED_A1FF.S
m/mterp/x86-atom/OP_UNUSED_A2FF.S
m/mterp/x86-atom/OP_UNUSED_A3FF.S
m/mterp/x86-atom/OP_UNUSED_A4FF.S
m/mterp/x86-atom/OP_UNUSED_A5FF.S
m/mterp/x86-atom/OP_UNUSED_A6FF.S
m/mterp/x86-atom/OP_UNUSED_A7FF.S
m/mterp/x86-atom/OP_UNUSED_A8FF.S
m/mterp/x86-atom/OP_UNUSED_A9FF.S
m/mterp/x86-atom/OP_UNUSED_AAFF.S
m/mterp/x86-atom/OP_UNUSED_ABFF.S
m/mterp/x86-atom/OP_UNUSED_ACFF.S
m/mterp/x86-atom/OP_UNUSED_ADFF.S
m/mterp/x86-atom/OP_UNUSED_AEFF.S
m/mterp/x86-atom/OP_UNUSED_AFFF.S
m/mterp/x86-atom/OP_UNUSED_B0FF.S
m/mterp/x86-atom/OP_UNUSED_B1FF.S
m/mterp/x86-atom/OP_UNUSED_B2FF.S
m/mterp/x86-atom/OP_UNUSED_B3FF.S
m/mterp/x86-atom/OP_UNUSED_B4FF.S
m/mterp/x86-atom/OP_UNUSED_B5FF.S
m/mterp/x86-atom/OP_UNUSED_B6FF.S
m/mterp/x86-atom/OP_UNUSED_B7FF.S
m/mterp/x86-atom/OP_UNUSED_B8FF.S
m/mterp/x86-atom/OP_UNUSED_B9FF.S
m/mterp/x86-atom/OP_UNUSED_BAFF.S
m/mterp/x86-atom/OP_UNUSED_BBFF.S
m/mterp/x86-atom/OP_UNUSED_BCFF.S
m/mterp/x86-atom/OP_UNUSED_BDFF.S
m/mterp/x86-atom/OP_UNUSED_BEFF.S
m/mterp/x86-atom/OP_UNUSED_BFFF.S
m/mterp/x86-atom/OP_UNUSED_C0FF.S
m/mterp/x86-atom/OP_UNUSED_C1FF.S
m/mterp/x86-atom/OP_UNUSED_C2FF.S
m/mterp/x86-atom/OP_UNUSED_C3FF.S
m/mterp/x86-atom/OP_UNUSED_C4FF.S
m/mterp/x86-atom/OP_UNUSED_C5FF.S
m/mterp/x86-atom/OP_UNUSED_C6FF.S
m/mterp/x86-atom/OP_UNUSED_C7FF.S
m/mterp/x86-atom/OP_UNUSED_C8FF.S
m/mterp/x86-atom/OP_UNUSED_C9FF.S
m/mterp/x86-atom/OP_UNUSED_CAFF.S
m/mterp/x86-atom/OP_UNUSED_CBFF.S
m/mterp/x86-atom/OP_UNUSED_CCFF.S
m/mterp/x86-atom/OP_UNUSED_CDFF.S
m/mterp/x86-atom/OP_UNUSED_CEFF.S
m/mterp/x86-atom/OP_UNUSED_CFFF.S
m/mterp/x86-atom/OP_UNUSED_D0FF.S
m/mterp/x86-atom/OP_UNUSED_D1FF.S
m/mterp/x86-atom/OP_UNUSED_D2FF.S
m/mterp/x86-atom/OP_UNUSED_D3FF.S
m/mterp/x86-atom/OP_UNUSED_D4FF.S
m/mterp/x86-atom/OP_UNUSED_D5FF.S
m/mterp/x86-atom/OP_UNUSED_D6FF.S
m/mterp/x86-atom/OP_UNUSED_D7FF.S
m/mterp/x86-atom/OP_UNUSED_D8FF.S
m/mterp/x86-atom/OP_UNUSED_D9FF.S
m/mterp/x86-atom/OP_UNUSED_DAFF.S
m/mterp/x86-atom/OP_UNUSED_DBFF.S
m/mterp/x86-atom/OP_UNUSED_DCFF.S
m/mterp/x86-atom/OP_UNUSED_DDFF.S
m/mterp/x86-atom/OP_UNUSED_DEFF.S
m/mterp/x86-atom/OP_UNUSED_DFFF.S
m/mterp/x86-atom/OP_UNUSED_E0FF.S
m/mterp/x86-atom/OP_UNUSED_E1FF.S
m/mterp/x86-atom/OP_UNUSED_E2FF.S
m/mterp/x86-atom/OP_UNUSED_E3FF.S
m/mterp/x86-atom/OP_UNUSED_E4FF.S
m/mterp/x86-atom/OP_UNUSED_E5FF.S
m/mterp/x86-atom/OP_UNUSED_E6FF.S
m/mterp/x86-atom/OP_UNUSED_E7FF.S
m/mterp/x86-atom/OP_UNUSED_E8FF.S
m/mterp/x86-atom/OP_UNUSED_E9FF.S
m/mterp/x86-atom/OP_UNUSED_EAFF.S
m/mterp/x86-atom/OP_UNUSED_EBFF.S
m/mterp/x86-atom/OP_UNUSED_ECFF.S
m/mterp/x86-atom/OP_UNUSED_EDFF.S
m/mterp/x86-atom/OP_UNUSED_EEFF.S
m/mterp/x86-atom/OP_UNUSED_EFFF.S
m/mterp/x86-atom/OP_UNUSED_F0FF.S
m/mterp/x86-atom/OP_UNUSED_F1FF.S
m/mterp/x86-atom/OP_UNUSED_FF.S
m/mterp/x86-atom/TODO.txt
m/mterp/x86-atom/entry.S
m/mterp/x86/ALT_OP_DISPATCH_FF.S
m/mterp/x86/OP_CHECK_CAST_JUMBO.S
m/mterp/x86/OP_CONST_CLASS_JUMBO.S
m/mterp/x86/OP_DISPATCH_FF.S
m/mterp/x86/OP_FILLED_NEW_ARRAY_JUMBO.S
m/mterp/x86/OP_IGET_BOOLEAN_JUMBO.S
m/mterp/x86/OP_IGET_BYTE_JUMBO.S
m/mterp/x86/OP_IGET_CHAR_JUMBO.S
m/mterp/x86/OP_IGET_JUMBO.S
m/mterp/x86/OP_IGET_OBJECT_JUMBO.S
m/mterp/x86/OP_IGET_SHORT_JUMBO.S
m/mterp/x86/OP_IGET_WIDE_JUMBO.S
m/mterp/x86/OP_INSTANCE_OF_JUMBO.S
m/mterp/x86/OP_INVOKE_DIRECT_JUMBO.S
m/mterp/x86/OP_INVOKE_INTERFACE_JUMBO.S
m/mterp/x86/OP_INVOKE_STATIC_JUMBO.S
m/mterp/x86/OP_INVOKE_SUPER_JUMBO.S
m/mterp/x86/OP_INVOKE_VIRTUAL_JUMBO.S
m/mterp/x86/OP_IPUT_BOOLEAN_JUMBO.S
m/mterp/x86/OP_IPUT_BYTE_JUMBO.S
m/mterp/x86/OP_IPUT_CHAR_JUMBO.S
m/mterp/x86/OP_IPUT_JUMBO.S
m/mterp/x86/OP_IPUT_OBJECT_JUMBO.S
m/mterp/x86/OP_IPUT_SHORT_JUMBO.S
m/mterp/x86/OP_IPUT_WIDE_JUMBO.S
m/mterp/x86/OP_NEW_ARRAY_JUMBO.S
m/mterp/x86/OP_NEW_INSTANCE_JUMBO.S
m/mterp/x86/OP_SGET_BOOLEAN_JUMBO.S
m/mterp/x86/OP_SGET_BYTE_JUMBO.S
m/mterp/x86/OP_SGET_CHAR_JUMBO.S
m/mterp/x86/OP_SGET_JUMBO.S
m/mterp/x86/OP_SGET_OBJECT_JUMBO.S
m/mterp/x86/OP_SGET_SHORT_JUMBO.S
m/mterp/x86/OP_SGET_WIDE_JUMBO.S
m/mterp/x86/OP_SPUT_BOOLEAN_JUMBO.S
m/mterp/x86/OP_SPUT_BYTE_JUMBO.S
m/mterp/x86/OP_SPUT_CHAR_JUMBO.S
m/mterp/x86/OP_SPUT_JUMBO.S
m/mterp/x86/OP_SPUT_OBJECT_JUMBO.S
m/mterp/x86/OP_SPUT_SHORT_JUMBO.S
m/mterp/x86/OP_SPUT_WIDE_JUMBO.S
m/mterp/x86/OP_THROW_VERIFICATION_ERROR_JUMBO.S
m/mterp/x86/OP_UNUSED_27FF.S
m/mterp/x86/OP_UNUSED_28FF.S
m/mterp/x86/OP_UNUSED_29FF.S
m/mterp/x86/OP_UNUSED_2AFF.S
m/mterp/x86/OP_UNUSED_2BFF.S
m/mterp/x86/OP_UNUSED_2CFF.S
m/mterp/x86/OP_UNUSED_2DFF.S
m/mterp/x86/OP_UNUSED_2EFF.S
m/mterp/x86/OP_UNUSED_2FFF.S
m/mterp/x86/OP_UNUSED_30FF.S
m/mterp/x86/OP_UNUSED_31FF.S
m/mterp/x86/OP_UNUSED_32FF.S
m/mterp/x86/OP_UNUSED_33FF.S
m/mterp/x86/OP_UNUSED_34FF.S
m/mterp/x86/OP_UNUSED_35FF.S
m/mterp/x86/OP_UNUSED_36FF.S
m/mterp/x86/OP_UNUSED_37FF.S
m/mterp/x86/OP_UNUSED_38FF.S
m/mterp/x86/OP_UNUSED_39FF.S
m/mterp/x86/OP_UNUSED_3AFF.S
m/mterp/x86/OP_UNUSED_3BFF.S
m/mterp/x86/OP_UNUSED_3CFF.S
m/mterp/x86/OP_UNUSED_3DFF.S
m/mterp/x86/OP_UNUSED_3EFF.S
m/mterp/x86/OP_UNUSED_3FFF.S
m/mterp/x86/OP_UNUSED_40FF.S
m/mterp/x86/OP_UNUSED_41FF.S
m/mterp/x86/OP_UNUSED_42FF.S
m/mterp/x86/OP_UNUSED_43FF.S
m/mterp/x86/OP_UNUSED_44FF.S
m/mterp/x86/OP_UNUSED_45FF.S
m/mterp/x86/OP_UNUSED_46FF.S
m/mterp/x86/OP_UNUSED_47FF.S
m/mterp/x86/OP_UNUSED_48FF.S
m/mterp/x86/OP_UNUSED_49FF.S
m/mterp/x86/OP_UNUSED_4AFF.S
m/mterp/x86/OP_UNUSED_4BFF.S
m/mterp/x86/OP_UNUSED_4CFF.S
m/mterp/x86/OP_UNUSED_4DFF.S
m/mterp/x86/OP_UNUSED_4EFF.S
m/mterp/x86/OP_UNUSED_4FFF.S
m/mterp/x86/OP_UNUSED_50FF.S
m/mterp/x86/OP_UNUSED_51FF.S
m/mterp/x86/OP_UNUSED_52FF.S
m/mterp/x86/OP_UNUSED_53FF.S
m/mterp/x86/OP_UNUSED_54FF.S
m/mterp/x86/OP_UNUSED_55FF.S
m/mterp/x86/OP_UNUSED_56FF.S
m/mterp/x86/OP_UNUSED_57FF.S
m/mterp/x86/OP_UNUSED_58FF.S
m/mterp/x86/OP_UNUSED_59FF.S
m/mterp/x86/OP_UNUSED_5AFF.S
m/mterp/x86/OP_UNUSED_5BFF.S
m/mterp/x86/OP_UNUSED_5CFF.S
m/mterp/x86/OP_UNUSED_5DFF.S
m/mterp/x86/OP_UNUSED_5EFF.S
m/mterp/x86/OP_UNUSED_5FFF.S
m/mterp/x86/OP_UNUSED_60FF.S
m/mterp/x86/OP_UNUSED_61FF.S
m/mterp/x86/OP_UNUSED_62FF.S
m/mterp/x86/OP_UNUSED_63FF.S
m/mterp/x86/OP_UNUSED_64FF.S
m/mterp/x86/OP_UNUSED_65FF.S
m/mterp/x86/OP_UNUSED_66FF.S
m/mterp/x86/OP_UNUSED_67FF.S
m/mterp/x86/OP_UNUSED_68FF.S
m/mterp/x86/OP_UNUSED_69FF.S
m/mterp/x86/OP_UNUSED_6AFF.S
m/mterp/x86/OP_UNUSED_6BFF.S
m/mterp/x86/OP_UNUSED_6CFF.S
m/mterp/x86/OP_UNUSED_6DFF.S
m/mterp/x86/OP_UNUSED_6EFF.S
m/mterp/x86/OP_UNUSED_6FFF.S
m/mterp/x86/OP_UNUSED_70FF.S
m/mterp/x86/OP_UNUSED_71FF.S
m/mterp/x86/OP_UNUSED_72FF.S
m/mterp/x86/OP_UNUSED_73FF.S
m/mterp/x86/OP_UNUSED_74FF.S
m/mterp/x86/OP_UNUSED_75FF.S
m/mterp/x86/OP_UNUSED_76FF.S
m/mterp/x86/OP_UNUSED_77FF.S
m/mterp/x86/OP_UNUSED_78FF.S
m/mterp/x86/OP_UNUSED_79FF.S
m/mterp/x86/OP_UNUSED_7AFF.S
m/mterp/x86/OP_UNUSED_7BFF.S
m/mterp/x86/OP_UNUSED_7CFF.S
m/mterp/x86/OP_UNUSED_7DFF.S
m/mterp/x86/OP_UNUSED_7EFF.S
m/mterp/x86/OP_UNUSED_7FFF.S
m/mterp/x86/OP_UNUSED_80FF.S
m/mterp/x86/OP_UNUSED_81FF.S
m/mterp/x86/OP_UNUSED_82FF.S
m/mterp/x86/OP_UNUSED_83FF.S
m/mterp/x86/OP_UNUSED_84FF.S
m/mterp/x86/OP_UNUSED_85FF.S
m/mterp/x86/OP_UNUSED_86FF.S
m/mterp/x86/OP_UNUSED_87FF.S
m/mterp/x86/OP_UNUSED_88FF.S
m/mterp/x86/OP_UNUSED_89FF.S
m/mterp/x86/OP_UNUSED_8AFF.S
m/mterp/x86/OP_UNUSED_8BFF.S
m/mterp/x86/OP_UNUSED_8CFF.S
m/mterp/x86/OP_UNUSED_8DFF.S
m/mterp/x86/OP_UNUSED_8EFF.S
m/mterp/x86/OP_UNUSED_8FFF.S
m/mterp/x86/OP_UNUSED_90FF.S
m/mterp/x86/OP_UNUSED_91FF.S
m/mterp/x86/OP_UNUSED_92FF.S
m/mterp/x86/OP_UNUSED_93FF.S
m/mterp/x86/OP_UNUSED_94FF.S
m/mterp/x86/OP_UNUSED_95FF.S
m/mterp/x86/OP_UNUSED_96FF.S
m/mterp/x86/OP_UNUSED_97FF.S
m/mterp/x86/OP_UNUSED_98FF.S
m/mterp/x86/OP_UNUSED_99FF.S
m/mterp/x86/OP_UNUSED_9AFF.S
m/mterp/x86/OP_UNUSED_9BFF.S
m/mterp/x86/OP_UNUSED_9CFF.S
m/mterp/x86/OP_UNUSED_9DFF.S
m/mterp/x86/OP_UNUSED_9EFF.S
m/mterp/x86/OP_UNUSED_9FFF.S
m/mterp/x86/OP_UNUSED_A0FF.S
m/mterp/x86/OP_UNUSED_A1FF.S
m/mterp/x86/OP_UNUSED_A2FF.S
m/mterp/x86/OP_UNUSED_A3FF.S
m/mterp/x86/OP_UNUSED_A4FF.S
m/mterp/x86/OP_UNUSED_A5FF.S
m/mterp/x86/OP_UNUSED_A6FF.S
m/mterp/x86/OP_UNUSED_A7FF.S
m/mterp/x86/OP_UNUSED_A8FF.S
m/mterp/x86/OP_UNUSED_A9FF.S
m/mterp/x86/OP_UNUSED_AAFF.S
m/mterp/x86/OP_UNUSED_ABFF.S
m/mterp/x86/OP_UNUSED_ACFF.S
m/mterp/x86/OP_UNUSED_ADFF.S
m/mterp/x86/OP_UNUSED_AEFF.S
m/mterp/x86/OP_UNUSED_AFFF.S
m/mterp/x86/OP_UNUSED_B0FF.S
m/mterp/x86/OP_UNUSED_B1FF.S
m/mterp/x86/OP_UNUSED_B2FF.S
m/mterp/x86/OP_UNUSED_B3FF.S
m/mterp/x86/OP_UNUSED_B4FF.S
m/mterp/x86/OP_UNUSED_B5FF.S
m/mterp/x86/OP_UNUSED_B6FF.S
m/mterp/x86/OP_UNUSED_B7FF.S
m/mterp/x86/OP_UNUSED_B8FF.S
m/mterp/x86/OP_UNUSED_B9FF.S
m/mterp/x86/OP_UNUSED_BAFF.S
m/mterp/x86/OP_UNUSED_BBFF.S
m/mterp/x86/OP_UNUSED_BCFF.S
m/mterp/x86/OP_UNUSED_BDFF.S
m/mterp/x86/OP_UNUSED_BEFF.S
m/mterp/x86/OP_UNUSED_BFFF.S
m/mterp/x86/OP_UNUSED_C0FF.S
m/mterp/x86/OP_UNUSED_C1FF.S
m/mterp/x86/OP_UNUSED_C2FF.S
m/mterp/x86/OP_UNUSED_C3FF.S
m/mterp/x86/OP_UNUSED_C4FF.S
m/mterp/x86/OP_UNUSED_C5FF.S
m/mterp/x86/OP_UNUSED_C6FF.S
m/mterp/x86/OP_UNUSED_C7FF.S
m/mterp/x86/OP_UNUSED_C8FF.S
m/mterp/x86/OP_UNUSED_C9FF.S
m/mterp/x86/OP_UNUSED_CAFF.S
m/mterp/x86/OP_UNUSED_CBFF.S
m/mterp/x86/OP_UNUSED_CCFF.S
m/mterp/x86/OP_UNUSED_CDFF.S
m/mterp/x86/OP_UNUSED_CEFF.S
m/mterp/x86/OP_UNUSED_CFFF.S
m/mterp/x86/OP_UNUSED_D0FF.S
m/mterp/x86/OP_UNUSED_D1FF.S
m/mterp/x86/OP_UNUSED_D2FF.S
m/mterp/x86/OP_UNUSED_D3FF.S
m/mterp/x86/OP_UNUSED_D4FF.S
m/mterp/x86/OP_UNUSED_D5FF.S
m/mterp/x86/OP_UNUSED_D6FF.S
m/mterp/x86/OP_UNUSED_D7FF.S
m/mterp/x86/OP_UNUSED_D8FF.S
m/mterp/x86/OP_UNUSED_D9FF.S
m/mterp/x86/OP_UNUSED_DAFF.S
m/mterp/x86/OP_UNUSED_DBFF.S
m/mterp/x86/OP_UNUSED_DCFF.S
m/mterp/x86/OP_UNUSED_DDFF.S
m/mterp/x86/OP_UNUSED_DEFF.S
m/mterp/x86/OP_UNUSED_DFFF.S
m/mterp/x86/OP_UNUSED_E0FF.S
m/mterp/x86/OP_UNUSED_E1FF.S
m/mterp/x86/OP_UNUSED_E2FF.S
m/mterp/x86/OP_UNUSED_E3FF.S
m/mterp/x86/OP_UNUSED_E4FF.S
m/mterp/x86/OP_UNUSED_E5FF.S
m/mterp/x86/OP_UNUSED_E6FF.S
m/mterp/x86/OP_UNUSED_E7FF.S
m/mterp/x86/OP_UNUSED_E8FF.S
m/mterp/x86/OP_UNUSED_E9FF.S
m/mterp/x86/OP_UNUSED_EAFF.S
m/mterp/x86/OP_UNUSED_EBFF.S
m/mterp/x86/OP_UNUSED_ECFF.S
m/mterp/x86/OP_UNUSED_EDFF.S
m/mterp/x86/OP_UNUSED_EEFF.S
m/mterp/x86/OP_UNUSED_EFFF.S
m/mterp/x86/OP_UNUSED_F0FF.S
m/mterp/x86/OP_UNUSED_F1FF.S
m/mterp/x86/OP_UNUSED_FF.S
m/mterp/x86/footer.S
m/mterp/x86/header.S
d04ce3821fb7db99685c653b25397e3ca51e5cfd 05-Jan-2012 Jesse Wilson <jessewilson@google.com> Merge "Remove dexmaker code from dx."
e973bab143e0446ec60531da8d3f633dc7fc4e95 05-Jan-2012 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
1609c0c6ef135b56c156b5f915ed646eb400965b 04-Jan-2012 Jesse Wilson <jessewilson@google.com> Remove dexmaker code from dx.

This now lives as a standalone project:
http://code.google.com/p/dexmaker/

Change-Id: I4f7abff9399d6827082c9af78a015562fdbcdbb3
x/junit-tests/HelloWorldMaker.java
x/junit-tests/com/android/dx/gen/DexGeneratorTest.java
x/junit-tests/com/android/dx/gen/ProxyBuilderTest.java
x/junit-tests/com/android/dx/gen/TypeTest.java
x/src/com/android/dx/gen/BinaryOp.java
x/src/com/android/dx/gen/Code.java
x/src/com/android/dx/gen/Comparison.java
x/src/com/android/dx/gen/Constants.java
x/src/com/android/dx/gen/DexCacheException.java
x/src/com/android/dx/gen/DexGenerator.java
x/src/com/android/dx/gen/FieldId.java
x/src/com/android/dx/gen/Label.java
x/src/com/android/dx/gen/Local.java
x/src/com/android/dx/gen/MethodId.java
x/src/com/android/dx/gen/ProxyBuilder.java
x/src/com/android/dx/gen/Type.java
x/src/com/android/dx/gen/TypeList.java
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
exopt/OptMain.cpp
ibdex/DexFile.cpp
ibdex/SysUtil.cpp
ibdex/ZipArchive.cpp
m/Debugger.cpp
m/DvmDex.cpp
m/Exception.cpp
m/Hash.cpp
m/IndirectRefTable.cpp
m/Init.cpp
m/JarFile.cpp
m/Jni.cpp
m/LinearAlloc.cpp
m/Native.cpp
m/PointerSet.cpp
m/Profile.cpp
m/RawDexFile.cpp
m/SignalCatcher.cpp
m/StdioConverter.cpp
m/Thread.cpp
m/alloc/CardTable.cpp
m/alloc/Copying.cpp
m/alloc/Heap.cpp
m/alloc/Verify.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexPrepare.cpp
m/analysis/DexVerify.cpp
m/analysis/Optimize.cpp
m/analysis/RegisterMap.cpp
m/analysis/VfyBasicBlock.cpp
m/compiler/Compiler.cpp
m/compiler/Frontend.cpp
m/compiler/Utility.cpp
m/compiler/codegen/arm/ArchUtility.cpp
m/compiler/codegen/arm/Assemble.cpp
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/arm/LocalOptimizations.cpp
m/compiler/codegen/x86/CodegenDriver.cpp
m/interp/Interp.cpp
m/interp/Jit.cpp
m/interp/Stack.cpp
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpEvent.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpSocket.cpp
m/mterp/Mterp.cpp
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/native/InternalNative.cpp
m/native/dalvik_system_DexFile.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/java_lang_Class.cpp
m/native/java_lang_Runtime.cpp
m/native/java_lang_System.cpp
m/native/java_lang_reflect_Method.cpp
m/oo/Class.cpp
m/oo/Object.cpp
m/reflect/Annotation.cpp
m/reflect/Proxy.cpp
m/reflect/Reflect.cpp
3b9539a1ff574db9e8f0d34eca14280dff813c86 22-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
26f957278b34144a3f90989ccddb0102fc1fdd62 16-Dec-2011 Hugo Hudson <hugohudson@google.com> Introduces ProxyBuilder and tests.

- ProxyBuilder is to concrete classes what java.lang.reflect.Proxy is to
interfaces.
- Uses a builder pattern to make specifying of the various (optional)
parameters easier.
- Creates a concrete subclass of the supplied input class whose
implementation delegates to the given invocation handler.
- Also provides a fix for the Code#loadConstant method to allow loading
null values.

Change-Id: I3ca6a98b91c64466df03120bc85f095365250aca
x/junit-tests/com/android/dx/gen/ProxyBuilderTest.java
x/src/com/android/dx/gen/Code.java
x/src/com/android/dx/gen/DexCacheException.java
x/src/com/android/dx/gen/ProxyBuilder.java
62f9cee365ce4b145e30678c26180310c84ac28d 19-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
f8fec55f4689b0c54529b2bbf4e25b0c7cfbbe1e 16-Dec-2011 Hugo Hudson <hugohudson@google.com> Merge "DexGenerator: allow specifying dex cache dir."
7adb0bfc638ba2f6ce896975ee49c889e73bad44 30-Nov-2011 Hugo Hudson <hugohudson@google.com> DexGenerator: allow specifying dex cache dir.

- Switches DexGenerator to not use extended opcodes. This allows us to
write suitable files for earlier versions of Android.
- Allows caller to specify optimised dex directory. This allows us to
get around /data/dalvik-cache not being world-writeable.
- Allows caller to specify optimised dex files cache dir. This allows
us to skip the requirement of being able to write to /sdcard.

Change-Id: I2cae2e187ccf5b20b98763cb7eb791383a7d5a59
x/junit-tests/HelloWorldMaker.java
x/junit-tests/com/android/dx/gen/DexGeneratorTest.java
x/src/com/android/dx/gen/DexGenerator.java
75554a107d65f8d6bbac50437e9ce775e3875272 14-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
95f4f019d106a2bb6f9e14e25616f865e8e821ef 12-Dec-2011 Brian Carlstrom <bdc@google.com> DexOptions should default targetApiLevel to API_NO_EXTENDED_OPCODES

Bug: 5738782

(cherry picked from commit b14b69728337cf5808eed4d5652fb9d5be33dff0)

Change-Id: I51991c85c74b41fa51556b369a3724ba9dd0c090
x/src/com/android/dx/dex/DexOptions.java
2797a6d4c7c14c574661414fd448bafcbf4d4ac5 13-Dec-2011 Jesse Wilson <jessewilson@google.com> Merge "Don't throw an AssertionError on invalid input."
2cdb0f99380a09f494977d1799e21e2a79d40a65 13-Dec-2011 Jesse Wilson <jessewilson@google.com> Don't throw an AssertionError on invalid input.

Throwing an AssertionError prevents tools like FindUsages from
recovering.

Bug: http://b/5470168
Change-Id: I6ae99bd29e25f868a739548266cedf85d0b26e90
x/src/com/android/dx/io/instructions/DecodedInstruction.java
3f01a96e54e8e8e0aa0b649e4d4e5b7fde276d3f 13-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
fe81f65203d40da10cf1d6863428159457f1204b 12-Dec-2011 Jesse Wilson <jessewilson@google.com> Merge "Remove dx's copy of JUnit."
8ea8dd2ff3bbb278c8a307db26ca09353a22eae6 12-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
c24d4c0f2fda1908c1edf6e4c95cbc2ff7915c66 09-Dec-2011 The Android Open Source Project <initial-contribution@android.com> am 2ca72c70: Reconcile with ics-mr1-release

* commit '2ca72c704e7462c56f8c4489369b618872b595a0':
4cd7b39876bcec03bb1d0c2afa61cbdb7d119eba 09-Dec-2011 Jesse Wilson <jessewilson@google.com> Remove dx's copy of JUnit.

Instead, use JUnit the same way other code uses JUnit: by depending
on the copy in external. There is no longer a top-level option in
dx to run JUnit tests on itself.

There are two failing tests in dx/junit-tests. Both of these are in
the recently created DexGeneratorTest; I intend to fix these in another
change.

Bug: http://b/2286423
Change-Id: I3a173a0302c7ccc81be3b5a2a4d766000d1c242b
x/Android.mk
x/junit-tests/Android.mk
x/junit-tests/com/android/dx/gen/TypeTest.java
x/junit-tests/com/android/dx/util/BitIntSetTest.java
x/junit-tests/com/android/dx/util/BitsTest.java
x/junit-tests/com/android/dx/util/IntListTest.java
x/junit-tests/com/android/dx/util/ListIntSetTest.java
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/ssa/_tests/_DomFront.java
x/src/com/android/dx/util/_tests/_BitIntSet.java
x/src/com/android/dx/util/_tests/_Bits.java
x/src/com/android/dx/util/_tests/_IntList.java
x/src/com/android/dx/util/_tests/_ListIntSet.java
x/src/junit/extensions/ActiveTestSuite.java
x/src/junit/extensions/ExceptionTestCase.java
x/src/junit/extensions/RepeatedTest.java
x/src/junit/extensions/TestDecorator.java
x/src/junit/extensions/TestSetup.java
x/src/junit/framework/Assert.java
x/src/junit/framework/AssertionFailedError.java
x/src/junit/framework/ComparisonFailure.java
x/src/junit/framework/Protectable.java
x/src/junit/framework/Test.java
x/src/junit/framework/TestCase.java
x/src/junit/framework/TestFailure.java
x/src/junit/framework/TestListener.java
x/src/junit/framework/TestResult.java
x/src/junit/framework/TestSuite.java
x/src/junit/runner/BaseTestRunner.java
x/src/junit/runner/ClassPathTestCollector.java
x/src/junit/runner/FailureDetailView.java
x/src/junit/runner/LoadingTestCollector.java
x/src/junit/runner/ReloadingTestSuiteLoader.java
x/src/junit/runner/SimpleTestCollector.java
x/src/junit/runner/Sorter.java
x/src/junit/runner/StandardTestSuiteLoader.java
x/src/junit/runner/TestCaseClassLoader.java
x/src/junit/runner/TestCollector.java
x/src/junit/runner/TestRunListener.java
x/src/junit/runner/TestSuiteLoader.java
x/src/junit/runner/Version.java
x/src/junit/runner/excluded.properties
x/src/junit/runner/logo.gif
x/src/junit/runner/smalllogo.gif
x/src/junit/textui/ResultPrinter.java
x/src/junit/textui/TestRunner.java
541a4c1b24ebd73e2ecd5f3e010ac4a902a7661b 09-Dec-2011 Jesse Wilson <jessewilson@google.com> Admit to not supporting over 65,536 methods.

This was previously a work in progress, but that work wasn't
completed and the test shouldn't assume the work is complete.

Bug: http://code.google.com/p/android/issues/detail?id=22545

Change-Id: I44a9532d96ab548283278ca3218773ea449f8318
ests/089-jumbo-opcodes/build
ests/089-jumbo-opcodes/expected.txt
ests/089-jumbo-opcodes/info.txt
ests/089-jumbo-opcodes/src/Main.java
ests/089-jumbo-opcodes/src/MaybeAbstract.java
ests/089-jumbo-opcodes/src/other/Mutant.java
ests/089-jumbo-opcodes/src2/MaybeAbstract.java
ests/089-jumbo-opcodes/src2/other/Mutant.java
ests/089-many-methods/build
ests/089-many-methods/expected.txt
ests/089-many-methods/info.txt
2ca72c704e7462c56f8c4489369b618872b595a0 08-Dec-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: I61fc74707db482c4600aaa34b751a665c75ffcec
105a480fd86ad67f6f0e681bd6e0cf7dc432addb 05-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
709fa843320139cb87ad47d84b5cb191818c2ee0 02-Dec-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: I63967a8c63fb1d2f5af167b3a23c848829b01938
2840018283247d7e757abd091c9546020a6edf6b 02-Dec-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
fa12c0ed8b4f2c206f921272dcfdbe8353c9f112 01-Dec-2011 Ben Cheng <bccheng@google.com> am a18e6d13: Initialize the vC field of inlined getters/setters.

* commit 'a18e6d135a869f9c62f9ec8bac8b9e78d92c697f':
Initialize the vC field of inlined getters/setters.
4f3ef8879c8a19dd14db360c89b4da199f009acd 01-Dec-2011 Ben Cheng <bccheng@google.com> am a18e6d13: Initialize the vC field of inlined getters/setters.

* commit 'a18e6d135a869f9c62f9ec8bac8b9e78d92c697f':
Initialize the vC field of inlined getters/setters.
a18e6d135a869f9c62f9ec8bac8b9e78d92c697f 01-Dec-2011 Ben Cheng <bccheng@google.com> Initialize the vC field of inlined getters/setters.

To eliminate a benign Valgrind warning.

Change-Id: I5f0ae53b8c86fe476f0b7ddfb6589191aea464f6
m/compiler/InlineTransformation.cpp
d3af0ceb4b9b8632377c3000423a9a1b20aabc72 01-Dec-2011 Ben Cheng <bccheng@google.com> am ee155d4f: Initialize the JNI indirect ref table to make Valgrind happy.

* commit 'ee155d4fe47fa751262beb43437a339fde8eabe5':
Initialize the JNI indirect ref table to make Valgrind happy.
e203a8a898d4e1ae0b2bd34aeaff803f662ada05 01-Dec-2011 Ben Cheng <bccheng@google.com> am ee155d4f: Initialize the JNI indirect ref table to make Valgrind happy.

* commit 'ee155d4fe47fa751262beb43437a339fde8eabe5':
Initialize the JNI indirect ref table to make Valgrind happy.
ee155d4fe47fa751262beb43437a339fde8eabe5 30-Nov-2011 Ben Cheng <bccheng@google.com> Initialize the JNI indirect ref table to make Valgrind happy.

Specifically, this is to eliminate the benign warning about the
'serial' field being uninitialized.

BUG: 5542417
Change-Id: I8550972e70db94f24c47c4e5dea0b59cc5840b48
m/IndirectRefTable.cpp
bdbd8d1f046913230d23ffd920aa133b23945e84 28-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
69c475676546a97f872df9e19125c0154b40ae0b 22-Nov-2011 Jeff Brown <jeffbrown@google.com> Use libcorkscrew to format the stack trace.

Change-Id: I06ddbb7a8035971b6e1a164adcd00208fae89b1a
m/interp/Stack.cpp
0083c42a76583417303d5795ab60e3653d326c74 18-Nov-2011 Jesse Wilson <jessewilson@google.com> Fix DexMerger to emit dex files without extended op codes.

Certain tools in our tool chain don't like these.

Change-Id: Iaaff85c1b634f647d0105c36f403b2e03aaf0ca7
x/src/com/android/dx/dex/TableOfContents.java
9f0f8b6c64cdff79989be28fff70db39f412de90 17-Nov-2011 Jesse Wilson <jessewilson@google.com> Be humane when there are more methods or fields than Dalvik can handle.

Previously our errors would look like this:
trouble writing output: opcode == null
Or this:
trouble writing output: No expanded opcode for 7f9c1af3

Now our errors look like this:
trouble writing output: Too many methods: 86922; max is 65536

Bug: http://code.google.com/p/android/issues/detail?id=20814

Change-Id: I2d9dc55e188a6ac1661b74af2194b18019859a29
x/src/com/android/dx/dex/file/MemberIdsSection.java
1375a15034498818eef4d6b726ef280e2ee264ce 17-Nov-2011 Hugo Hudson <hugohudson@google.com> Can't set variable to null with loadConstant.

Change-Id: I9349507b8af2b59e03f7542b7589f2dbcdb77711
x/junit-tests/com/android/dx/gen/DexGeneratorTest.java
517db3eddfdb22acab87a576378483971d71d36d 17-Nov-2011 Hugo Hudson <hugohudson@google.com> This test fails with a class not found error.

Change-Id: I7a98cbc30d32a0f19fa3892b58775ba10536c6aa
x/junit-tests/com/android/dx/gen/DexGeneratorTest.java
5e939e957a0e0257950c28ffde80487b1598b5e7 10-Nov-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: I63807d2f883382fa765e5eefe7fd17ac3cbcbe67
02e827f81b1a31abb7f4c8e14757ee641b5815d1 10-Nov-2011 Andy McFadden <fadden@android.com> am cab0fdf8: (-s ours) DO NOT MERGE Further refinement of card table clear

* commit 'cab0fdf82a668e2a1a054cd6506835046218e419':
DO NOT MERGE Further refinement of card table clear
9c96cdc433dc3a26d2b701b0473d057b0a90c932 10-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
6fec43c34ebe4645c60af01424514d2170a34566 10-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
8253a0934294e3a3857720e85fdd1175a5dcc72d 10-Nov-2011 Andy McFadden <fadden@android.com> am cab0fdf8: DO NOT MERGE Further refinement of card table clear

* commit 'cab0fdf82a668e2a1a054cd6506835046218e419':
DO NOT MERGE Further refinement of card table clear
cab0fdf82a668e2a1a054cd6506835046218e419 08-Nov-2011 Andy McFadden <fadden@android.com> DO NOT MERGE Further refinement of card table clear

We're currently using memset() to clear cards out to the growth
limit, which on a device configured for 48MB/128MB process caps
means we're sitting on 384KB or 1MB of pages. We can reduce that
substantially.

This change attempts to reduce the memset() length to the currently
active portion of the card table, based on the placement of objects
in the "live objects" bitmap. This should avoid faulting in card
pages that we don't actually need.

This is suboptimal when parts of the card table are used briefly
and then ignored for a while. An alternative implementation, which
uses madvise(DONTNEED) aggressively, is also included (#ifdefed out).

Bug 5567332

(cherry-pick from master)

Change-Id: I6b181de20a0c8b6307acaebbc5d6dac20422f25d
m/alloc/CardTable.cpp
c0a18856ed67b0e77a8202028f27948e1387243d 08-Nov-2011 Andy McFadden <fadden@android.com> Further refinement of card table clear

We're currently using memset() to clear cards out to the growth
limit, which on a device configured for 48MB/128MB process caps
means we're sitting on 384KB or 1MB of pages. We can reduce that
substantially.

This change attempts to reduce the memset() length to the currently
active portion of the card table, based on the placement of objects
in the "live objects" bitmap. This should avoid faulting in card
pages that we don't actually need.

This is suboptimal when parts of the card table are used briefly
and then ignored for a while. An alternative implementation, which
uses madvise(DONTNEED) aggressively, is also included (#ifdefed out).

Bug 5567332

Change-Id: I7663ae7d15d0aaa8158deed5e331bf05333da6bb
m/alloc/CardTable.cpp
32963aca14598b7b5fd8859bfab14c82556f0159 09-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
2f942b458585539079ef22fa9d7ffc51615522c6 08-Nov-2011 Andy McFadden <fadden@android.com> Merge "Fix reporting of initial pause time"
955c3a08362d6e3d2e6e80c493f19c915bc7ece2 08-Nov-2011 Andy McFadden <fadden@android.com> Fix reporting of initial pause time

The "rootEnd" time was being captured before dvmClearCardTable()
was called.

Bug 5567332

Change-Id: I5499f1648c3e41296c18fa5d95d834c2d2853e8f
m/alloc/Heap.cpp
75f260e07f7c3b7b91c457d2fc8efe4a148a9825 07-Nov-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: I91ffc584e0d2d39aaec9b28ac3cde8b625234968
8fd0366f4b728cdc532a162b15633276a17d63d4 06-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
8768368724154c543558a79fff208ae48996b8c3 06-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
1dfee8bfd76b42976e1cf4ff9521efaa431a7fd3 05-Nov-2011 Elliott Hughes <enh@google.com> am 6cd72bd0: Merge "Don\'t pay for filename/line number lookup unless you need to." into ics-mr1

* commit '6cd72bd0161459e21d496b927967bd0ca6fe0f94':
Don't pay for filename/line number lookup unless you need to.
46a431c9c00867f8c1262e877369e0aaa09c2385 05-Nov-2011 Elliott Hughes <enh@google.com> am 50e01501: Merge "Knock ::self() out of the ParseXml profile." into ics-mr1

* commit '50e015017f091118f0147d02d23140ff9f88daec':
Knock ::self() out of the ParseXml profile.
8e93375e93e417b5aaa29b4cf33456455f53a2a0 05-Nov-2011 Andy McFadden <fadden@android.com> am 4c83f214: Merge "Reduce Dalvik card table overhead" into ics-mr1

* commit '4c83f214932af008cf79aee528ca3f9e66572040':
Reduce Dalvik card table overhead
f86beb9aacabb69c09b5a840efbf6c7a071343ee 05-Nov-2011 Andy McFadden <fadden@android.com> am ccf4c9d9: Don\'t decr profiling count without incr

* commit 'ccf4c9d99fcffbc9bf65066004896745b9dcc340':
Don't decr profiling count without incr
8a306c62b052b4362cf61ed24b14334596f5a91a 05-Nov-2011 Jeff Brown <jeffbrown@google.com> Merge "Slight change to unwinder API."
cc8000750a004f248cb48ee79313aa2a398c5951 05-Nov-2011 Elliott Hughes <enh@google.com> am 6cd72bd0: Merge "Don\'t pay for filename/line number lookup unless you need to." into ics-mr1

* commit '6cd72bd0161459e21d496b927967bd0ca6fe0f94':
Don't pay for filename/line number lookup unless you need to.
0c06becd9600b48ccdf9fe12bf065eaf70ea41ff 05-Nov-2011 Elliott Hughes <enh@google.com> am 50e01501: Merge "Knock ::self() out of the ParseXml profile." into ics-mr1

* commit '50e015017f091118f0147d02d23140ff9f88daec':
Knock ::self() out of the ParseXml profile.
6cd72bd0161459e21d496b927967bd0ca6fe0f94 05-Nov-2011 Elliott Hughes <enh@google.com> Merge "Don't pay for filename/line number lookup unless you need to." into ics-mr1
50e015017f091118f0147d02d23140ff9f88daec 05-Nov-2011 Elliott Hughes <enh@google.com> Merge "Knock ::self() out of the ParseXml profile." into ics-mr1
124e3f877472161ecad61d1a68fb7495e18ba21a 05-Nov-2011 Andy McFadden <fadden@android.com> am 4c83f214: Merge "Reduce Dalvik card table overhead" into ics-mr1

* commit '4c83f214932af008cf79aee528ca3f9e66572040':
Reduce Dalvik card table overhead
ae95a0088df604c30dd118d0eab431fafe46eb37 05-Nov-2011 Andy McFadden <fadden@android.com> am ccf4c9d9: Don\'t decr profiling count without incr

* commit 'ccf4c9d99fcffbc9bf65066004896745b9dcc340':
Don't decr profiling count without incr
4c83f214932af008cf79aee528ca3f9e66572040 05-Nov-2011 Andy McFadden <fadden@android.com> Merge "Reduce Dalvik card table overhead" into ics-mr1
ccf4c9d99fcffbc9bf65066004896745b9dcc340 04-Nov-2011 Andy McFadden <fadden@android.com> Don't decr profiling count without incr

The failure cleanup code in dvmMethodTraceStart() was assuming
that profiling had already been started, which was true until my
previous change. The code in the interpreter isn't too picky, but
updateActiveProfilers() is trying to keep an accurate acount, and
gets upset. If you pass in a bad filename, we disable something that
was never enabled, and the VM gets confused and aborts out of spite.

Related to bug 5564440

Change-Id: I17fd8bf4654c29f49efb10142d222a91c190b6ed
m/Profile.cpp
af6cf54652d1b27885b99e216bee29b955052630 04-Nov-2011 Andy McFadden <fadden@android.com> Reduce Dalvik card table overhead

The VM has a "growth limit" (e.g. 48MB) that is used to cap normal
apps, and a "max heap" (e.g. 128MB) that is used for apps with unusual
high-memory requirements. The Dalvik GC uses a 128:1 "card table"
that spans the entire managed heap, out to the "max heap" limit.

The table is erased during every concurrent GC. The first time
we do that post-zygote, the copy-on-write behavior causes physical
pages to be allocated. We're currently clearing out to the heap max,
not the growth limit, which means we have a bunch of physical memory
allocated for pages that will never be used.

This changes it so we only clear out to the growth limit. If the
growth limit is removed by the app, we clear out to the heap max.
On devices with a 128MB max heap, this reduces the private/dirty
usage for most apps by 640KB.

Bug 5567332

Change-Id: Iac633017c128d63b284d48016e47d40cc46df1de
m/alloc/CardTable.cpp
m/alloc/CardTable.h
m/alloc/Heap.cpp
m/alloc/HeapInternal.h
m/alloc/HeapSource.cpp
38f7b3245be4ebf805afc3390c8e6f58acd669d9 04-Nov-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: Ibae283408ede0f3ff5a297e8d205e976455f3b95
9d420d4ed7b9e5315bc4e4248cef42034ec47530 04-Nov-2011 Elliott Hughes <enh@google.com> Don't pay for filename/line number lookup unless you need to.

This wasn't a regression; the code's always been like this. But this shows up
in profiles of anything doing a lot of synchronized stuff, even when there's
no contention.

There are two awkward cases. One is that the old code used to offer a variety
of special-case messages for failures to find the current frame, save area,
and Method*. I assume this was just to help in debugging and shouldn't happen
in practice, so I don't think we've lost anything there. The other case was
that on unlocking, we used to explicitly say "unlocked". But I'm not sure we
could get into a situation where we'd be reporting contention on a monitor
that wasn't locked when we tried to lock it. So I think that's okay too.

Change-Id: Ib4401c771f717e9c8cc9c4e5346ec7a5f46a1636
m/Sync.cpp
668a92a957517e4cc7ab511d5928a97787e094c2 04-Nov-2011 Jeff Brown <jeffbrown@google.com> Slight change to unwinder API.

Change-Id: If73f01fff9fb56ce9cba70a386d865957eaebe78
m/interp/Stack.cpp
de68817bdae0ca038d824ba79a70ac17cae405e6 03-Nov-2011 Elliott Hughes <enh@google.com> Knock ::self() out of the ParseXml profile.

New profile (>=0.6, which is where the original seems to have cut off):

47 11.0070 dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)
30 7.0258 dvmChangeStatus(Thread*, ThreadStatus)
29 6.7916 addLocalReference(Thread*, Object*)
26 6.0890 dexDecodeDebugInfo(DexFile const*, DexCode const*, char const*, unsigned int, unsigned int, int (*)(void*, unsigned int, unsigned int), void (*)(void*, unsigned short, unsigned int, unsigned int, char const*, char const*, char const*), void*)
22 5.1522 dalvik_inst
15 3.5129 lockMonitor(Thread*, Monitor*)
14 3.2787 dvmLineNumFromPC
13 3.0445 javaLangString_equals(unsigned int, unsigned int, unsigned int, unsigned int, JValue*)
13 3.0445 scanObject(Object const*, GcMarkContext*)
12 2.8103 ScopedJniThreadState::ScopedJniThreadState(_JNIEnv*)
12 2.8103 common_invokeMethodNoRange
12 2.8103 dvmDecodeIndirectRef(Thread*, _jobject*)
9 2.1077 IndirectRefTable::add(unsigned int, Object*)
9 2.1077 ReleasePrimitiveArrayCritical(_JNIEnv*, _jarray*, void*, int)
9 2.1077 markObjectNonNull(Object const*, GcMarkContext*, bool)
9 2.1077 unpinPrimitiveArray(ArrayObject*)
8 1.8735 getCodeAddrCommon(unsigned short const*, bool)
7 1.6393 dexStringByTypeIdx(DexFile const*, unsigned int)
7 1.6393 dvmHeapSourceAlloc(unsigned int)
6 1.4052 GetPrimitiveArrayCritical(_JNIEnv*, _jarray*, unsigned char*)
6 1.4052 dvmPlatformInvoke
6 1.4052 pinPrimitiveArray(ArrayObject*)
6 1.4052 readUnsignedLeb128(unsigned char const**)
6 1.4052 scanFields(Object const*, GcMarkContext*)
5 1.1710 IndirectRefTable::get(void*) const
5 1.1710 dvmFindInReferenceTable(ReferenceTable const*, Object**, Object*)
4 0.9368 common_returnFromMethod
4 0.9368 dvmAddToReferenceTable(ReferenceTable*, Object*)
4 0.9368 dvmHeapBitmapScanWalk(HeapBitmap*, void (*)(Object*, void*, void*), void*)
4 0.9368 dvmInterpret(Thread*, Method const*, JValue*)
4 0.9368 dvmLockObject
4 0.9368 dvmMalloc(unsigned int, int)
4 0.9368 findPackedSwitchIndex(unsigned short const*, int, int)
4 0.9368 readStringIdx(DexFile const*, unsigned char const**)
4 0.9368 unlockMonitor(Thread*, Monitor*)
3 0.7026 dvmSetFinalizable

Change-Id: Ic5c36859f6810413bd0b48aad1d99da7daa6e8ba
m/CheckJni.cpp
m/Jni.cpp
m/JniInternal.h
m/interp/Stack.cpp
a23e5c24e9210cda8affd934723a447a8aae0d6c 03-Nov-2011 Andy McFadden <fadden@android.com> am ab97cd16: Start profiling after state prep

* commit 'ab97cd1634ed4e2c9e5c558a9f88ed9ca8623c8c':
Start profiling after state prep
84ca5b25f1c1a19c5ae7bd774429825fbeefc572 03-Nov-2011 Andy McFadden <fadden@android.com> am ab97cd16: Start profiling after state prep

* commit 'ab97cd1634ed4e2c9e5c558a9f88ed9ca8623c8c':
Start profiling after state prep
ab97cd1634ed4e2c9e5c558a9f88ed9ca8623c8c 03-Nov-2011 Andy McFadden <fadden@android.com> Start profiling after state prep

The updateActiveProfilers() call was happening before the profiler
state setup was completed, creating a race that could lead to a
native crash.

Bug 5564440

Change-Id: I8c030fc87f106aa8b2a67876d604a5bd79e05175
m/Profile.cpp
a3bd1f45ffda5025ff61e47724a1b69b5c16843a 03-Nov-2011 Siva Velusamy <vsiva@google.com> Merge "hprof-conv: Better error message when run on a 1.0.2 file."
4e1205528c6047cd000b6c5617f8ea8ae3ede82a 03-Nov-2011 Siva Velusamy <vsiva@google.com> hprof-conv: Better error message when run on a 1.0.2 file.

Change-Id: I36b14aadc11f6ba8a66543546043280da64e7605
ools/hprof-conv/HprofConv.c
06413eb1c4fbb1371813ad5c84a323f6d3ece878 03-Nov-2011 Jeff Brown <jeffbrown@google.com> Merge "Disable dumping native stacks of non-Dalvik threads. Bug: 5544153"
77b9b34bb7250911af7d7dfd496096f97537cfbe 03-Nov-2011 Elliott Hughes <enh@google.com> am c4102d66: (-s ours) Merge "DO NOT MERGE: Optimize IndirectRefTable." into ics-mr1

* commit 'c4102d6647043591bd89bba75454cc04d23753bd':
DO NOT MERGE: Optimize IndirectRefTable.
39bcc8796e1f8cbcd4a5964572c34eb112e62e55 03-Nov-2011 Elliott Hughes <enh@google.com> am c4102d66: Merge "DO NOT MERGE: Optimize IndirectRefTable." into ics-mr1

* commit 'c4102d6647043591bd89bba75454cc04d23753bd':
DO NOT MERGE: Optimize IndirectRefTable.
c4102d6647043591bd89bba75454cc04d23753bd 03-Nov-2011 Elliott Hughes <enh@google.com> Merge "DO NOT MERGE: Optimize IndirectRefTable." into ics-mr1
a488045bc62f616ba5f579594da828854b64cbd2 03-Nov-2011 Andy McFadden <fadden@android.com> am 63cd4b08: Don\'t malloc between fork and exec

* commit '63cd4b08e623242066c63563bad3a9f414a2bd2d':
Don't malloc between fork and exec
e6a89d8efd7c51c7fe71fb93dc935bfc8427ee55 03-Nov-2011 Andy McFadden <fadden@android.com> am 63cd4b08: Don\'t malloc between fork and exec

* commit '63cd4b08e623242066c63563bad3a9f414a2bd2d':
Don't malloc between fork and exec
16e5edb472c902a2caf6b3f42f9b30dfb8a5c0c1 03-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
fabd01889f6433f02305a0bca81b61a3e868feb6 03-Nov-2011 Jeff Brown <jeffbrown@google.com> Disable dumping native stacks of non-Dalvik threads.
Bug: 5544153

We are seeing cases where dumping certain non-Dalvik threads
causes system instability. Temporarily disable this feature.

Change-Id: I14d7907a90f152bcb15d066f8bd3fdedc578e722
m/Thread.cpp
63cd4b08e623242066c63563bad3a9f414a2bd2d 02-Nov-2011 Andy McFadden <fadden@android.com> Don't malloc between fork and exec

This was causing hangs in DEX file loading.

Bug 5329833

Change-Id: I19e9e0624f3823cc771c71a4b4ac177d57343c58
m/analysis/DexPrepare.cpp
b4af868e45172fcd38d9a526cbc780b8ee4d9c00 02-Nov-2011 Andy McFadden <fadden@android.com> am 5269ef7b: am 3931f798: Fix cleanup (cherry-picked from ics-mr1)

* commit '5269ef7b87c6aa89d86e73f438363661f2f65a04':
Fix cleanup (cherry-picked from ics-mr1)
b353eec6d8635ecd514f9b7ea56497f79786e12d 02-Nov-2011 Ben Cheng <bccheng@android.com> am f51d43f0: am e3d9cde4: Disable JIT single-stepping resume mode.

* commit 'f51d43f0ebfa5739d1ee691d661097dbbad98041':
Disable JIT single-stepping resume mode.
566a832224f09bfc683a987f4fa6d90bd5010efe 02-Nov-2011 Andy McFadden <fadden@android.com> am a78b1255: Fix cleanup

* commit 'a78b1255ad1ce8dcacad21338d4f88db4231c4cd':
Fix cleanup
94b94d85d665ea5ee71551b6eeb69751ca35cc01 02-Nov-2011 The Android Automerger <android-build@android.com> merge in ics-mr1-release history after reset to ics-mr1
3c5011972cc5a3b1338d09006c69725db4314d32 02-Nov-2011 Andy McFadden <fadden@android.com> am 5269ef7b: am 3931f798: Fix cleanup (cherry-picked from ics-mr1)

* commit '5269ef7b87c6aa89d86e73f438363661f2f65a04':
Fix cleanup (cherry-picked from ics-mr1)
5269ef7b87c6aa89d86e73f438363661f2f65a04 02-Nov-2011 Andy McFadden <fadden@android.com> am 3931f798: Fix cleanup (cherry-picked from ics-mr1)

* commit '3931f79801b67577bf8ac12d0b3fb5b4aeaaf766':
Fix cleanup (cherry-picked from ics-mr1)
3931f79801b67577bf8ac12d0b3fb5b4aeaaf766 01-Nov-2011 Andy McFadden <fadden@android.com> Fix cleanup
(cherry-picked from ics-mr1)

The code was attempting to null out a struct member after freeing
the struct.

Also, changed the order of directory permission tests so that
writable comes first. Somehow "dalvik-cache directory not
writable" seems more direct than "not readable", since the code
isn't generally interested in reading the directory.

Bug 5549907

Change-Id: If737ab822b356aae98e47292d21946e33a04342b
m/analysis/DexPrepare.cpp
677db331445cd0c3ad5e62a1d11fd63b0a4554b3 01-Nov-2011 Ben Cheng <bccheng@android.com> am f51d43f0: am e3d9cde4: Disable JIT single-stepping resume mode.

* commit 'f51d43f0ebfa5739d1ee691d661097dbbad98041':
Disable JIT single-stepping resume mode.
f51d43f0ebfa5739d1ee691d661097dbbad98041 01-Nov-2011 Ben Cheng <bccheng@android.com> am e3d9cde4: Disable JIT single-stepping resume mode.

* commit 'e3d9cde40f96bf40dd4ad3d495949869bde5dd1e':
Disable JIT single-stepping resume mode.
e3d9cde40f96bf40dd4ad3d495949869bde5dd1e 01-Nov-2011 Ben Cheng <bccheng@android.com> Disable JIT single-stepping resume mode.

BUG: 5551114
Change-Id: Id8ee75be5e71ee258994235952871ad181024e56
m/interp/Interp.cpp
834765bf92088e153f1017b60a7f62dd82b2b169 01-Nov-2011 Andy McFadden <fadden@android.com> am a78b1255: Fix cleanup

* commit 'a78b1255ad1ce8dcacad21338d4f88db4231c4cd':
Fix cleanup
a78b1255ad1ce8dcacad21338d4f88db4231c4cd 01-Nov-2011 Andy McFadden <fadden@android.com> Fix cleanup

The code was attempting to null out a struct member after freeing
the struct.

Also, changed the order of directory permission tests so that
writable comes first. Somehow "dalvik-cache directory not
writable" seems more direct than "not readable", since the code
isn't generally interested in reading the directory.

Bug 5549907

Change-Id: Ie412ff6c0870357b92e53606f70cb9407e04e7cf
m/analysis/DexPrepare.cpp
68ecde1134a8d05803552fcd82994053ada3e80d 27-Oct-2011 Jeff Brown <jeffbrown@google.com> DO NOT MERGE: Optimize IndirectRefTable.

Removed unused debugging code that maintained pointers to the
4 previous objects in each slot.

Promoted the serial number property of a slot to be first class.
This is a sufficiently cheap and useful check to perform that we
might as well always do it.

Changed get() and remove() so they check the validity of the
references at the same time as they retrieve them. They're
also a bit smarter about checking the reference kind given
that they can assume that the table will only contain references
of one kind. The checks are now much more consistent.
For example, remove() used to check whether an index was
stale only in the case where it was not removing the top entry
(now it always checks).

Made add() return NULL instead of dvmAbort()'ing in the case
where the table overflowed and ensure we don't blow away the
table in that cases. This change resolves an issue with
TestIndirectRefTable.cpp which deliberately overflows the table
and expects add() to return NULL (as documented!). As it
happens, the add() method is called in exactly 3 places in
Jni.cpp. In each of those cases, the code was written to
handle a NULL result and only in the case of adding a weak
global reference did it not abort. Fixed the weak global
reference case to be consistent with the others.

Changed the signature of contains() to take an Object* since
that's what we're actually looking for inside the table.

Added a couple of calls to dump() in TestIndirectRefTable.cpp
for visual inspection of its correctness.

Performance as measured by TestIndirectRefTable on same hardware.

Old implementation:
- Add/remove 100 objects FIFO order, 100000 iterations, 0.023ms / iteration
- Add/remove 100 objects LIFO order, 100000 iterations, 0.020ms / iteration
- Get 100 objects, 100000 iterations, 0.009ms / iteration

New implementation:
- Add/remove 100 objects FIFO order, 100000 iterations, 0.010ms / iteration
- Add/remove 100 objects LIFO order, 100000 iterations, 0.009ms / iteration
- Get 100 objects, 100000 iterations, 0.002ms / iteration

Cherry-pick from master.

Conflicts:

vm/IndirectRefTable.cpp

Change-Id: I157f3c1ba598137222878b8e6a5890efb744fe76
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
m/test/TestIndirectRefTable.cpp
a2a5f7a553a21b030810c8cbe2d899e99b657a99 31-Oct-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with ics-mr1-release

Change-Id: Iaa5f9ff52792e1eff28cf9591a5efca18ac165e3
b656fc9e2ce337c3376842e881c6626644e1a0fb 31-Oct-2011 Ed Heyl <ed@google.com> Merge remote branch 'goog/ics-mr1' into ics-aah
6906e5ddac62127e1e7b3264de488433325a0475 30-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
17d00d5ded5e5b347cbbf92de3f5f8a35d13e115 27-Oct-2011 Ben Cheng <bccheng@android.com> Fix single-stepping resume mode in the interpreter.

(cherry-picked from master)

When a resume attempt is cancelled due to other pending request make sure
the old native resume PC is cleared. Otherwise the JIT code cache may be
re-entered with mismatching Dalvik PC.

Also fix a code bloat problem where single-step count is not set properly
after executing a return instruction.

BUG: 5208786

Change-Id: I39db1633dcda1f464311c878ded4b5695a9b7ffd
m/interp/Interp.cpp
m/interp/Jit.cpp
3eef394f91d47a10fae73e0e99c219d1e1d80caa 29-Oct-2011 Ben Cheng <bccheng@android.com> am f4948cc1: am b1e2271b: Fix single-stepping resume mode in the interpreter.

* commit 'f4948cc1ddb41ed72e5843ffe3d4af4889e6c74c':
Fix single-stepping resume mode in the interpreter.
9cb2e378c890ad7a8b3b6ef394d77c067c31bd79 29-Oct-2011 Ben Cheng <bccheng@android.com> am 8faec7e7: Fix single-stepping resume mode in the interpreter.

* commit '8faec7e782eca1fd6a2ad071c30b939c77c82662':
Fix single-stepping resume mode in the interpreter.
f4948cc1ddb41ed72e5843ffe3d4af4889e6c74c 28-Oct-2011 Ben Cheng <bccheng@android.com> am b1e2271b: Fix single-stepping resume mode in the interpreter.

* commit 'b1e2271b51cfb1f264b8966f1151652767259751':
Fix single-stepping resume mode in the interpreter.
8faec7e782eca1fd6a2ad071c30b939c77c82662 27-Oct-2011 Ben Cheng <bccheng@android.com> Fix single-stepping resume mode in the interpreter.

(cherry-picked from master)

When a resume attempt is cancelled due to other pending request make sure
the old native resume PC is cleared. Otherwise the JIT code cache may be
re-entered with mismatching Dalvik PC.

Also fix a code bloat problem where single-step count is not set properly
after executing a return instruction.

BUG: 5208786

Change-Id: I39db1633dcda1f464311c878ded4b5695a9b7ffd
m/interp/Interp.cpp
m/interp/Jit.cpp
b1e2271b51cfb1f264b8966f1151652767259751 27-Oct-2011 Ben Cheng <bccheng@android.com> Fix single-stepping resume mode in the interpreter.

(cherry-picked from master)

When a resume attempt is cancelled due to other pending request make sure
the old native resume PC is cleared. Otherwise the JIT code cache may be
re-entered with mismatching Dalvik PC.

Also fix a code bloat problem where single-step count is not set properly
after executing a return instruction.

BUG: 5208786

Change-Id: I54775215b11eae29ccdb6111dc0fdfa99e41e08d
m/interp/Interp.cpp
m/interp/Jit.cpp
6738d05cf08a1de3d35e5772ed2b5af40d260d2d 28-Oct-2011 Ed Heyl <ed@google.com> keep previous history after reset to mr1 plus aah changes (ics-aah-wip)
b7b9b2ac7fa1dda807fdadaff80784786aa536e2 28-Oct-2011 Ben Cheng <bccheng@android.com> Merge "Fix single-stepping resume mode in the interpreter."
b1212301d5cffc06907211d243a21d50c4419dc9 27-Oct-2011 Jeff Brown <jeffbrown@google.com> Dump stacks for all native threads, not just those in JNI.

Change-Id: I276f5f448f22f8a926cdfc8c93935da687db5d9b
m/Thread.cpp
m/interp/Stack.cpp
m/interp/Stack.h
0c0624bfad83503547b0226bd2dfac055782582a 27-Oct-2011 Ben Cheng <bccheng@android.com> Fix single-stepping resume mode in the interpreter.

When a resume attempt is cancelled due to other pending request make sure
the old native resume PC is cleared. Otherwise the JIT code cache may be
re-entered with mismatching Dalvik PC.

Also fix a code bloat problem where single-step count is not set properly
after executing a return instruction.

Change-Id: Ia926bc3a87cae1296719a1069838060b181ce54d
m/interp/Interp.cpp
m/interp/Jit.cpp
5552e62455d486d19e5986a67ae2545411d50fbe 27-Oct-2011 Jeff Brown <jeffbrown@google.com> Optimize IndirectRefTable.

Removed unused debugging code that maintained pointers to the
4 previous objects in each slot.

Promoted the serial number property of a slot to be first class.
This is a sufficiently cheap and useful check to perform that we
might as well always do it.

Changed get() and remove() so they check the validity of the
references at the same time as they retrieve them. They're
also a bit smarter about checking the reference kind given
that they can assume that the table will only contain references
of one kind. The checks are now much more consistent.
For example, remove() used to check whether an index was
stale only in the case where it was not removing the top entry
(now it always checks).

Made add() return NULL instead of dvmAbort()'ing in the case
where the table overflowed and ensure we don't blow away the
table in that cases. This change resolves an issue with
TestIndirectRefTable.cpp which deliberately overflows the table
and expects add() to return NULL (as documented!). As it
happens, the add() method is called in exactly 3 places in
Jni.cpp. In each of those cases, the code was written to
handle a NULL result and only in the case of adding a weak
global reference did it not abort. Fixed the weak global
reference case to be consistent with the others.

Changed the signature of contains() to take an Object* since
that's what we're actually looking for inside the table.

Added a couple of calls to dump() in TestIndirectRefTable.cpp
for visual inspection of its correctness.

Performance as measured by TestIndirectRefTable on same hardware.

Old implementation:
- Add/remove 100 objects FIFO order, 100000 iterations, 0.023ms / iteration
- Add/remove 100 objects LIFO order, 100000 iterations, 0.020ms / iteration
- Get 100 objects, 100000 iterations, 0.009ms / iteration

New implementation:
- Add/remove 100 objects FIFO order, 100000 iterations, 0.010ms / iteration
- Add/remove 100 objects LIFO order, 100000 iterations, 0.009ms / iteration
- Get 100 objects, 100000 iterations, 0.002ms / iteration

Change-Id: I1c904eb03bc8dd9822e6d9cce702c696e976974e
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
m/test/TestIndirectRefTable.cpp
476157d87784f48935cb86f01c079db1f9338e36 27-Oct-2011 Jeff Brown <jeffbrown@google.com> Add a simple performance test for IndirectRefTable.

Change-Id: Ib75354508fff1921d8d73eba5e3a3905a362b1e1
m/test/TestIndirectRefTable.cpp
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
m/mterp/c/header.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
dd18335bb024bd01078dc987ebda25ffe1ad05f6 26-Oct-2011 Ed Heyl <ed@google.com> undo reset to ics-mr1 until we have a better method
8aa7d1702366cdb7332c45342f6032e9bebf125b 26-Oct-2011 Ed Heyl <ed@google.com> reset to ics-mr1, but keep history
96973ac3bb77768781a3825434b768b96c4709cc 26-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
3944de34262fcb8c027f9043f1898de1029af5ef 26-Oct-2011 Steve Block <steveblock@google.com> am 92c1f6f1: (-s ours) Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE

* commit '92c1f6f1b4249e4e379452ee7b49f027052bf4ce':
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE
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
exopt/OptMain.cpp
ibdex/DexFile.cpp
ibdex/DexOptData.cpp
ibdex/DexSwapVerify.cpp
ibdex/OptInvocation.cpp
ibdex/SysUtil.cpp
ibdex/ZipArchive.cpp
ibnativehelper/JNIHelp.cpp
m/CheckJni.cpp
m/Common.h
m/Ddm.cpp
m/Debugger.cpp
m/DvmDex.cpp
m/Exception.cpp
m/IndirectRefTable.cpp
m/Init.cpp
m/InlineNative.cpp
m/JarFile.cpp
m/Jni.cpp
m/LinearAlloc.cpp
m/Misc.cpp
m/Native.cpp
m/Profile.cpp
m/RawDexFile.cpp
m/ReferenceTable.cpp
m/SignalCatcher.cpp
m/Sync.cpp
m/Thread.cpp
m/alloc/HeapSource.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexPrepare.cpp
m/analysis/Optimize.cpp
m/analysis/RegisterMap.cpp
m/analysis/VfyBasicBlock.cpp
m/interp/Interp.cpp
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpEvent.cpp
m/jdwp/JdwpHandler.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpSocket.cpp
m/mterp/c/OP_APUT_OBJECT.cpp
m/mterp/c/OP_BREAKPOINT.cpp
m/mterp/c/gotoTargets.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/native/InternalNative.cpp
m/native/dalvik_system_DexFile.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/dalvik_system_Zygote.cpp
m/native/java_lang_Class.cpp
m/native/java_lang_reflect_Array.cpp
m/oo/Array.cpp
m/oo/Class.cpp
m/os/android.cpp
m/reflect/Annotation.cpp
m/reflect/Proxy.cpp
m/reflect/Reflect.cpp
m/test/TestHash.cpp
df937453926a529ed0eb6b324d494f34d940448b 25-Oct-2011 Steve Block <steveblock@google.com> am 1663a6c1: (-s ours) Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGE

* commit '1663a6c12fdf4732d7ea0a0406af6085b3c408e4':
Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGE
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
ibnativehelper/include/nativehelper/JNIHelp.h
m/StdioConverter.cpp
m/alloc/HeapInternal.h
m/interp/Interp.cpp
m/jdwp/JdwpHandler.cpp
m/mterp/c/header.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/native/dalvik_system_Zygote.cpp
m/oo/Class.cpp
1ed5f5e2127196177623446f929c116e848a7473 25-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
b78eab06552c503106eec5dc832a1eb5b1e0205a 20-Oct-2011 Jeff Brown <jeffbrown@google.com> Dump native stack of JNI methods when handling SIGQUIT.

Change-Id: I7da7259f1350e853153ba4dea96797fc86284068
m/ReconfigureDvm.mk
m/Thread.cpp
m/interp/Stack.cpp
m/interp/Stack.h
74a11549351ff84e52e69c5f127aa7804927e960 20-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
b4593f197532419746a0df6d93fb33f8b815affc 19-Oct-2011 Jesse Wilson <jessewilson@google.com> Merge "Provide debugging info should extended opcode lookup fail."
fc785c7597c477af84b273c8f191f33339f7735e 19-Oct-2011 Jesse Wilson <jessewilson@google.com> Provide debugging info should extended opcode lookup fail.

Bug: http://code.google.com/p/android/issues/detail?id=20814
Change-Id: Iedaf07721c29dd3d24827c3f7a953b7371c9735d
x/src/com/android/dx/dex/code/OutputFinisher.java
b577225db84b2aef9bf85f8595eada79227b0f23 18-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
21fefbaa3874c42f8a017c4794add2d7c337643a 14-Oct-2011 Elliott Hughes <enh@google.com> Avoid deadlock.

dvmIsHeapAddress is the pointer validity checker for use outside the GC. If
it doesn't take the heap lock, it risks looking at data structures that are
changing under its feet. If it does take the heap lock, it risks deadlock
between a thread doing an explicit GC and the signal catcher trying to dump
threads (causing the GC thread to be suspended while holding the heap lock).

Calling back into managed code while holding the heap lock and with other
threads resumed sounds like an inherently bad idea to me, but that's a battle
for another day.

With this change, we can handle SIGQUIT while we're in ReferenceQueue.add
as a result of an explicit GC in a system doing concurrent collections, so
the only known problem is fixed.

Bug: 5425802
Change-Id: I42d434d5ea3ffbcb77a4c544b81b08a4c7364a16
m/alloc/Alloc.cpp
m/alloc/Alloc.h
9b2ab4269e3175de1a4017c40b0e24d3f6430970 11-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
98909fbdd4a2bfbb7af0eb62403d7a6ab9f84457 11-Oct-2011 Ben Cheng <bccheng@android.com> Merge "Leave up to 512 chars of gDvm.lastMessage on dvmAbort's stack frame."
f7c18055de6e7ffb3ee16a45680ea0ffd6158fbd 11-Oct-2011 Ben Cheng <bccheng@android.com> Leave up to 512 chars of gDvm.lastMessage on dvmAbort's stack frame.

Bug: 5372634
Change-Id: I019a059e5a989de3dfc9e2f5e78f7caa7168cf75
m/Globals.h
m/Init.cpp
m/oo/Class.cpp
15fec55fa348128a807e681b2398a4db85a2b2ef 10-Oct-2011 jeffhao <jeffhao@google.com> Merge "Reordered some checks and added more to the verifier."
c2fdadcdfc8fd249f646153457f5cffde54d7945 10-Oct-2011 Ben Cheng <bccheng@android.com> Merge "Revert "Use the card table to scan the immune region of the heap.""
b2714082bad44fde247920b9280c1b40c4979c3a 10-Oct-2011 Ben Cheng <bccheng@android.com> Revert "Use the card table to scan the immune region of the heap."

This reverts commit 6c355e53332502314c3d82a7afcf898d66118f27.

Conflicts are resolved in:

vm/alloc/CardTable.cpp
vm/alloc/HeapBitmap.cpp
vm/alloc/HeapInternal.h
vm/alloc/HeapSource.cpp
vm/alloc/MarkSweep.cpp

Tested with overnight monkey runs + Delaunay.

Bug: 5037417
Change-Id: I400eff8542d0bddd865ce570a479f7750c1ba484
m/alloc/CardTable.cpp
m/alloc/Heap.cpp
m/alloc/HeapBitmap.cpp
m/alloc/HeapBitmap.h
m/alloc/HeapInternal.h
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
m/alloc/MarkSweep.cpp
m/alloc/MarkSweep.h
3e64548c03301b2163bfded771fba4735bd8193f 10-Oct-2011 Elliott Hughes <enh@google.com> Merge "Don't say UTF-8 in Dalvik's CheckJNI when we mean Modified UTF-8."
904660c5fa1984f95b43de60ea036feb871cca24 08-Oct-2011 Elliott Hughes <enh@google.com> Don't say UTF-8 in Dalvik's CheckJNI when we mean Modified UTF-8.

Change-Id: I4130e7f92275275a6d6f782e1ad979fbf9197a8e
m/CheckJni.cpp
4b5087ab193735cb4b9a1b9983ce661ede79fb0b 07-Oct-2011 The Android Automerger <android-build@android.com> Revert "GC experiment."

This reverts commit b3fb1d08137ead7b6be016e1bc147cb781e76111.
m/Init.cpp
32c482c90d0ddfaefff623702eb862a77bffa9b2 06-Oct-2011 jeffhao <jeffhao@google.com> Reordered some checks and added more to the verifier.

The verifier checks for 2 errors in put instructions. First, if the
field can't be resolved, the instruction is overwritten to throw a
verifier error. Second, if the data types of the field and instruction
mismatch, the verifier rejects the whole class. This change swaps the
order of the checks, so that if both errors occur, the class is
rejected.

Also, checks were added to prevent float values from being used as array
indexes or arguments to if statements.

Change-Id: I7b122f4ebc4043266be4466e10679c6319a788ef
m/analysis/CodeVerify.cpp
b3fb1d08137ead7b6be016e1bc147cb781e76111 06-Oct-2011 Ben Cheng <bccheng@android.com> GC experiment.

Change-Id: Ifbeec98a796fe8347da25a1be50288d756b40f02
m/Init.cpp
05d6bef6647456e2c94fbe8941aaef1b4668a29e 05-Oct-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5a459d4a923cd2160026cc58e4d3da0858028320 04-Oct-2011 jeffhao <jeffhao@google.com> Fixed dx verifier issue when an error is detected.

The code needed to break out properly when an error was detected to
prevent it from causing even more problems.

Change-Id: If497655a406689aeb1b4aa6523421cc22f2b7593
m/analysis/CodeVerify.cpp
67897efb355793c3f60084583652e81936573efb 30-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5eacf6cf3e70696f1ed28a696cd4e14544462849 29-Sep-2011 Elliott Hughes <enh@google.com> Fix a typo in unused code.

Change-Id: Ied11a79337a3cc795428dfde29e405ec0bbcb98c
m/Atomic.cpp
cc47c8a23202a0478de65cb95c0c21df9c9339c0 29-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
4185972e211b0c84b9fe7d90c56b28cc15e474fa 27-Sep-2011 buzbee <buzbee@google.com> Fix memory barriers (Issue 3338450)

Add extra memory barrier on volatile stores.

Change-Id: Id4a4750cdfc910eda2f0b44ead0af2a569b5735e
m/Atomic.cpp
m/Atomic.h
m/compiler/codegen/arm/CodegenDriver.cpp
m/mterp/armv5te/OP_IPUT.S
m/mterp/armv5te/OP_IPUT_JUMBO.S
m/mterp/armv5te/OP_IPUT_OBJECT.S
m/mterp/armv5te/OP_IPUT_OBJECT_JUMBO.S
m/mterp/armv5te/OP_IPUT_OBJECT_VOLATILE.S
m/mterp/armv5te/OP_IPUT_OBJECT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_IPUT_VOLATILE.S
m/mterp/armv5te/OP_IPUT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_IPUT_WIDE.S
m/mterp/armv5te/OP_IPUT_WIDE_JUMBO.S
m/mterp/armv5te/OP_SPUT.S
m/mterp/armv5te/OP_SPUT_JUMBO.S
m/mterp/armv5te/OP_SPUT_OBJECT.S
m/mterp/armv5te/OP_SPUT_OBJECT_JUMBO.S
m/mterp/armv5te/OP_SPUT_OBJECT_VOLATILE.S
m/mterp/armv5te/OP_SPUT_OBJECT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SPUT_VOLATILE.S
m/mterp/armv5te/OP_SPUT_VOLATILE_JUMBO.S
m/mterp/armv5te/OP_SPUT_WIDE.S
m/mterp/armv5te/OP_SPUT_WIDE_JUMBO.S
m/mterp/out/InterpAsm-armv5te-vfp.S
m/mterp/out/InterpAsm-armv5te.S
m/mterp/out/InterpAsm-armv7-a-neon.S
m/mterp/out/InterpAsm-armv7-a.S
m/oo/ObjectInlines.h
6826df0125c73dabb3eb06845b51bd5e4e0909fd 21-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
927765c9a80a730d73bd40e2ef60ccaa01652449 20-Sep-2011 Jesse Wilson <jessewilson@google.com> Don't spam the logs with thread priority information.

Ten minutes of logs contained 108 lines of 'Elevating priority from 10 to 0'
and 108 lines of 'Reset priority to 10'. This provides little value.

Change-Id: Id96e8304238aa3344af4dd6342ace575534acc0f
m/os/android.cpp
167e062f649c5dd0d811336e8e5734e956ef38dc 06-Sep-2011 Jesse Wilson <jessewilson@google.com> Attempt to fix dalvik heap corruption.

This is bccheng's find, as reported here:
http://b/5208786#ISSUE_HistoryHeader49

Bug: http://b/5208786
Change-Id: I1616bac1ef6c197f723656187a784fc6838975d4
m/interp/Interp.cpp
6e0be609807de9fabe1b63a75f7c7d619bfa2f9f 06-Sep-2011 Jesse Wilson <jessewilson@google.com> Attempt to fix dalvik heap corruption.

This is bccheng's find, as reported here:
http://b/5208786#ISSUE_HistoryHeader49

Bug: http://b/5208786
Change-Id: I1616bac1ef6c197f723656187a784fc6838975d4
m/interp/Interp.cpp
51762ed9cb3d2dec59e90abb0cbf585070ea6a3a 06-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
aea7f1168ce156e0772002a123fb112765c4c798 05-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
9c545d1fba17504e41155b48e12ed04262868e43 05-Sep-2011 Logan Chien <loganchien@google.com> Fix document formatting error (html tags)

Change-Id: I57d10b69f400ce3ffda1a26dc632a4122a4f3d70
ocs/dalvik-constraints.html
90a4da426011497917aaf7af08c353bedf7b98ff 03-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
9c236131409ecb0afd0c14185ed9bcead6f8b02d 02-Sep-2011 jeffhao <jeffhao@google.com> Merge "Dx reg allocator fix for accidental long/double clobbering."
ed6fb32989d5ae5129121924bad4889e9452aa9e 02-Sep-2011 Shih-wei Liao <sliao@google.com> Merge "Rename register to conform to instruction format"
79ac6f54b2a197ab1694332d3b30601f446fc769 01-Sep-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
b0688fe79e760b2fb469712bdb1eaa747395ecb1 01-Sep-2011 Logan Chien <loganchien@google.com> Rename register to conform to instruction format

For instruction format 35c, 41c, 52c, and 5rc, the register
name was different from the Dalvik Instruction Format document,
and InstrUtils.cpp of libdex. This commit updates the name,
so that they will look consistent.

Change-Id: I857b1f9c1ac7178dc147d0019df589c9c6d102e1
ocs/dalvik-bytecode.html
83a8a3b50e274b4f01a4c81a63940c58f939b934 31-Aug-2011 Jesse Wilson <jessewilson@google.com> Fix a corner-case dex merging bug.

When doing a null merge (merging a dex file with an empty file) word-alignment
means that the output may be two bytes longer than the input. Always include the
rounded-up length in the bytes allocated to a section.

com.android.dx.util.DexException: Section limit 669894 exceeded by type list
at com.android.dx.io.DexBuffer$Section.ensureCapacity(DexBuffer.java:541)
at com.android.dx.io.DexBuffer$Section.writeShort(DexBuffer.java:574)
at com.android.dx.io.DexBuffer$Section.writeTypeList(DexBuffer.java:636)
at com.android.dx.merge.DexMerger$3.write(DexMerger.java:439)
at com.android.dx.merge.DexMerger$3.write(DexMerger.java:424)
at com.android.dx.merge.DexMerger$IdMerger.mergeUnsorted(DexMerger.java:321)

Change-Id: I67b81ba8c837b0307e313f4012a051b022b25db2
x/src/com/android/dx/io/DexBuffer.java
a5d276cce0e2caeefc0ba3b8b30f7db17831d7df 31-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
798048412112aae95e15783b78a722f8a9020b5c 30-Aug-2011 Raphael Moll <ralf@android.com> am 4130f726: am 1dd1d924: am e4e76feb: Merge "Set DX stack size to 1M by default on Windows."

* commit '4130f726d82493748bf7252da631e1f315f2538c':
Set DX stack size to 1M by default on Windows.
4130f726d82493748bf7252da631e1f315f2538c 30-Aug-2011 Raphael Moll <ralf@android.com> am 1dd1d924: am e4e76feb: Merge "Set DX stack size to 1M by default on Windows."

* commit '1dd1d9246c0804d1b4fda955c56a6d89c989ec6a':
Set DX stack size to 1M by default on Windows.
1dd1d9246c0804d1b4fda955c56a6d89c989ec6a 30-Aug-2011 Raphael Moll <ralf@android.com> am e4e76feb: Merge "Set DX stack size to 1M by default on Windows."

* commit 'e4e76feb6aad0d0161fabe12cb7d97e665f7b109':
Set DX stack size to 1M by default on Windows.
e4e76feb6aad0d0161fabe12cb7d97e665f7b109 27-Aug-2011 Raphael Moll <ralf@android.com> Merge "Set DX stack size to 1M by default on Windows."
7debb9113af41a38a6f5ecbda1a2c28c5e5a17af 27-Aug-2011 jeffhao <jeffhao@google.com> Dx reg allocator fix for accidental long/double clobbering.

Addresses this bug: http://b/issue?id=5215643.

Change-Id: I82613c38b0a6247d071aa6c5cc90bf8b60d5d84b
x/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
f23d9bf98e020bc8e75ddb4c9f16c8d3dddbc229 26-Aug-2011 Raphael Moll <ralf@android.com> Set DX stack size to 1M by default on Windows.

Bug: http://code.google.com/p/android/issues/detail?id=15181

Summary of bug: some user reported issues running dx.bat and
Fadden figured out the VM's stack size default was too small.
Using -Xss1m fixed it.

This CL introduces a default of -Xss1m and the usual mechanism
to override it using -JXssNm (like for -JXmx...)

Change-Id: I9769316c1708f08c91b93e07bd6d713a10561ea2
x/etc/dx.bat
078fa659808ef4dfa9e0f6df0f4387529052cf62 24-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
36db01eeaa04e3af3401c5bd6a399d3fb7b040e3 23-Aug-2011 jeffhao <jeffhao@google.com> Removed parsing and output for unused --target-api switch in dx.

This is cherry-picked from dalvik-dev.

Change-Id: I74627e4c261e086e8c2c7cf38591cd3e9f5707e6
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/command/dexer/Main.java
0d3a4bfa6eea04a88a7e789da83a6b06e5595248 23-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
046b8cc955141c5e624c0e5d64e30b837606e58a 22-Aug-2011 Elliott Hughes <enh@google.com> Merge "Fix JNIEXPORT now people are using -fvisibility."
e556e06fbd5b2a5ab540f29d27c7774ca6098d02 22-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
a6264bd14e66bd05f98d0b1b98ee9e044b93faf9 19-Aug-2011 Jesse Wilson <jessewilson@google.com> Permit code size to grow when merging dex files.

The throws clauses use variable-length encodings (sleb and uleb)
which will have different lengths when the number of types grows.

Bug: http://b/5127963
Change-Id: I50598a807596955e458d4ec87a730e62e12168d9
x/src/com/android/dx/merge/DexMerger.java
59a6912e1999826037b4266f926f84f86e4cc776 19-Aug-2011 Elliott Hughes <enh@google.com> Fix JNIEXPORT now people are using -fvisibility.

This is a backport from dalvik-dev.

Change-Id: If6001b580bd9b36f3845aaa115333d69682f3a92
ibnativehelper/include/nativehelper/jni.h
a039d4e986349fabfbd9e92ea4760c1e80db6274 17-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
af8707c759e296b7523c89c63207bae54667b6da 16-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
f28000dc9b6f596921b1a4387746bea4c8cd207f 02-Aug-2011 Carl Shapiro <cshapiro@google.com> Fix two data races in the monitor code.

First, the release of a lock was not preceded by a memory barrier.
This would allow stores within the critical section to move outside
the critical section violating the monitor invariant.

Second, the thin lock value was often not loaded through volatile
pointer. This provides the compiler with the freedom to reload the
thin lock with a different value causing erroneous updates to the lock
word.

Bug: 5107390
m/Sync.cpp
b25e56e5e578220734f6f75b810fe7a94c69793d 15-Aug-2011 jeffhao <jeffhao@google.com> Merge "Dexopt verifier checks that int/float and double/long uses do not mix."
668e86be1c1ff4ee14b0f17899c414f9eba4c9ee 15-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
3eb978998db281d704ec9146efb06ae3420ac3c6 14-Aug-2011 Elliott Hughes <enh@google.com> Enhance CheckJNI to recognize when an type-incompatible jfieldID is used to get/set a field.

This would have found a bug that broke setSoTimeout in libcore, and did find
a hitherto-unknown bug in android.text.format.Time.

Bug: 5162851
Change-Id: I62f2a0db3adb1cd0e4616075f6d4efaee393de30
m/CheckJni.cpp
3ff838ee3920ef819d207cbf4148cc9c7939ef69 14-Aug-2011 Jesse Wilson <jessewilson@google.com> Don't wrap the actual type in parens if its null.

Otherwise the exception message has unnecessary parens:
"expected receiver of type java.lang.String, but got (null)"

Change-Id: Iacd806d018019784afa6e9f25f7c039d9ca18fae
m/Misc.cpp
m/interp/Stack.cpp
43b06bc2d11c5fcd69c3554c0e525abad8480fab 10-Aug-2011 jeffhao <jeffhao@google.com> Dexopt verifier checks that int/float and double/long uses do not mix.

Added new types to dexopt indicating a type is derived from a constant,
which may or may not be floating point. After such a value is used, its
type can be determined, and the verifier enforces that it is always used
that way afterwards.

Change-Id: I150deaa162aec17bcc9c3e3200bc0350ae5b3f24
m/analysis/CodeVerify.cpp
m/analysis/CodeVerify.h
ad5f9b89f738c2697e8565f40c1e1d76e480003e 11-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
e0f535816f10de5062586d7b2be2e9540bfc147c 10-Aug-2011 Jeff Brown <jeffbrown@android.com> am be3942f2: (-s ours) am 3245c2e4: am 5017f3f2: Merge "Support wrapping app processes to inject debug instrumentation. Bug: 4437846"

* commit 'be3942f2179d5f2270b757a792ed021eb2521b46':
Support wrapping app processes to inject debug instrumentation. Bug: 4437846
10f84ea8e8fa559f1d23e58de4c86416e51cf10f 10-Aug-2011 Jeff Brown <jeffbrown@android.com> am 8ddfe8b4: (-s ours) am a0533621: am 9df264db: Merge "Add a dual clock profiler tracing mode."

* commit '8ddfe8b44e0794a0c182046144af8c3c842686c2':
Add a dual clock profiler tracing mode.
be3942f2179d5f2270b757a792ed021eb2521b46 10-Aug-2011 Jeff Brown <jeffbrown@android.com> am 3245c2e4: am 5017f3f2: Merge "Support wrapping app processes to inject debug instrumentation. Bug: 4437846"

* commit '3245c2e4008b40e05db44ef7c897d0aa7b88c1d7':
Support wrapping app processes to inject debug instrumentation. Bug: 4437846
8ddfe8b44e0794a0c182046144af8c3c842686c2 10-Aug-2011 Jeff Brown <jeffbrown@android.com> am a0533621: am 9df264db: Merge "Add a dual clock profiler tracing mode."

* commit 'a05336218332abf2753c63a50ede7551afdab6b5':
Add a dual clock profiler tracing mode.
3245c2e4008b40e05db44ef7c897d0aa7b88c1d7 10-Aug-2011 Jeff Brown <jeffbrown@android.com> am 5017f3f2: Merge "Support wrapping app processes to inject debug instrumentation. Bug: 4437846"

* commit '5017f3f2b7c178761b919f22c02617fe6fe9468d':
Support wrapping app processes to inject debug instrumentation. Bug: 4437846
a05336218332abf2753c63a50ede7551afdab6b5 10-Aug-2011 Jeff Brown <jeffbrown@android.com> am 9df264db: Merge "Add a dual clock profiler tracing mode."

* commit '9df264db156d091f7c1de30295f4c5d330ca3694':
Add a dual clock profiler tracing mode.
5017f3f2b7c178761b919f22c02617fe6fe9468d 10-Aug-2011 Jeff Brown <jeffbrown@android.com> Merge "Support wrapping app processes to inject debug instrumentation. Bug: 4437846"
9df264db156d091f7c1de30295f4c5d330ca3694 10-Aug-2011 Jeff Brown <jeffbrown@android.com> Merge "Add a dual clock profiler tracing mode."
da866eadb221236c2d46b790489a15ac829bd61e 10-Aug-2011 Elliott Hughes <enh@google.com> Take the heap lock in dvmIsHeapAddress.

Bug: 5049447
Change-Id: I9df6e4116efa44088d37ac0ff4455a7876535e1e
m/alloc/Alloc.cpp
76166696d18dc019b9ab6ccf212f9420df143c51 02-Aug-2011 The Android Open Source Project <initial-contribution@android.com> Reconcile with honeycomb-mr2-release

Change-Id: I67bdc33aeb248a10c08e1a9bbc1938101304f29d
0e002d447f73dfbad6cecd2657152cfce08d4335 02-Aug-2011 jeffhao <jeffhao@google.com> Rollback of dx change to prevent methods from being overwritten.

Rolls back: I999013858501e7de3df27f82199d377fb1d034ea

Change-Id: Id67611b0153d49a81a2fbe0aaa8a7c9a9784987c
x/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
adb1446cc9ee4b27b053854b54f34ec1b595c727 02-Aug-2011 jeffhao <jeffhao@google.com> Dx fit to prevent method arguments from being overwritten by temps.

This change keeps code debuggable by preventing method arguments from
being reused to hold temporary values. This was a problem especially for
static methods.

Change-Id: I999013858501e7de3df27f82199d377fb1d034ea
x/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
36751dbc07a7122d36efefc1a2648f97eeb33259 01-Aug-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
4d06ee5ab07ed08d050b17c945577492a5ba3a25 28-Jul-2011 Jeff Brown <jeffbrown@android.com> Support wrapping app processes to inject debug instrumentation.
Bug: 4437846
m/native/dalvik_system_Zygote.c
db57ab15e5235d9ec916464d5c54452c99508c2c 27-Jul-2011 Mike Lockwood <lockwood@android.com> Remove "adbd disconnected" log spam

Change-Id: I532433a5ee3f23bad8dc5fdb0f398253f2b6eb8b
Signed-off-by: Mike Lockwood <lockwood@android.com>
m/jdwp/JdwpAdb.cpp
d6b7e7404f9f38c2a3faf894d4efa46b6a7717d3 21-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
b27341588c31ede077762de4c200049abc0417aa 21-Jul-2011 Elliott Hughes <enh@google.com> Only allocate slot_data_ as needed.

Bug: 5052119
Change-Id: I41434b111c1f91cf1beb3125af6e81cab258cb92
m/IndirectRefTable.cpp
m/IndirectRefTable.h
b792ee20f51e89e8d00fc96c4f1c63904720eaa7 20-Jul-2011 Elliott Hughes <enh@google.com> Merge "Don't use dvmIsValidObject outside the GC."
9367706af8e9041293694d052129bb4d049f475e 20-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
d48cf5c57a850dd4b712efeeb35a09e3d5390f5e 20-Jul-2011 Jeff Brown <jeffbrown@google.com> Fix memory leak in mapCentralDirectory.
Bug: 4984352

mapCentralDirectory was allocating a buffer of size 65557
that it passed to mapCentralDirectory0. Then mapCentralDirectory0
was reallocating a new buffer which it failed to free.

This patch rearranges the code a little to ensure that only
buffer gets allocated and it gets freed.

Change-Id: I3b22e2b904f6e7584ab8a3af49c8f1350a40be87
ibdex/ZipArchive.cpp
9f640af99bebc6e96f6e1e9903557e2c8f567483 20-Jul-2011 Jeff Brown <jeffbrown@android.com> Add a dual clock profiler tracing mode.

Dalvik previously supported using either the thread-cpu clock
or the real time clock as the timebase for profiler traces.
This change adds a dual clock mode where both thread-cpu time
and real time timestamps are collected.

Using dual clock mode significantly improves TraceView ability
to accurately reconstruct the global timeline of events,
particularly on SMP systems.

For now, thread-cpu mode remains the default.

Dual clock mode can be enabled by running the following command
and restarting the system server.
adb shell setprop dalvik.vm.extra-opts -Xprofile:dualclock

Change-Id: I14db2ae93325ac01efcc8ed02e8747cc0e834e29
ools/dmtracedump/TraceDump.c
m/Globals.h
m/Init.c
m/Profile.c
m/Profile.h
fe9052edaf6bebbccaac5a9fb607012778d0dd74 20-Jul-2011 Jeff Brown <jeffbrown@google.com> Trim the heap when idle after concurrent GC's.
Bug: 4984352

When applied system-wide, trimming the heap can help recover
multiple megabytes worth of pages that are no longer used.
This is especially useful for applications that periodically
allocate large objects during initialization that they then
discard when running in the background.

Change-Id: Iafffd65a70ae62022f0c74f836a84a7afbe23c3c
m/alloc/Copying.cpp
m/alloc/HeapSource.cpp
m/alloc/HeapSource.h
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
m/CheckJni.cpp
m/Debugger.cpp
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
m/ReferenceTable.cpp
m/alloc/Alloc.h
m/alloc/Heap.h
m/analysis/CodeVerify.cpp
m/interp/Interp.cpp
m/interp/Stack.cpp
m/mterp/c/header.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
969563bd32ac7dcd6777e95664667e2ebf8bbfe3 19-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5b298a2a95dfb3562ee297d284bef565e595a70c 18-Jul-2011 Elliott Hughes <enh@google.com> Fix the sense of a conditional in the JNI compatibility mode.

Bug: 4772166
Bug: 5041646
Change-Id: I3fb517972920dd518ae1bbe9e3616cb28bb24d4c
m/CheckJni.cpp
e64e2369a55bd169affefca33139f6ea1347152d 18-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
58e1b919e04016b78705fa7188966ccf6d5cac95 17-Jul-2011 Elliott Hughes <enh@google.com> Stop advertising the removed -Xdeadlockpredict option.

Bug: 5038293
Change-Id: Ibb4ee3f68a1e3abababc09a51424c5d1c7b1ea0c
m/Init.cpp
d71c2022c08a377dd83e9618056ded82d8ad57b5 15-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
5b8000554ff0935e6c1823470a2635cd4ce25edb 14-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
9910d7e004c7452a6a1b934f19dc87bb4d61d8bc 14-Jul-2011 Raphael <raphael@google.com> resolved conflicts for merge of 72b7c617 to master

Change-Id: I8c3a32d9ee0dea08cca79031cda870141aacdb17
b7eaaa93789386e89dc8a64e9270f7ae1d888445 13-Jul-2011 Raphael Moll <ralf@android.com> am 68e8f6c0: am 53015360: am 5a57e766: Merge "Change dx.bat to Windows EOL."

* commit '68e8f6c07d1d875dab74f85dcfe0c0d7ac813e29':
Change dx.bat to Windows EOL.
1265458c62e66f6b9f271e7d72c00a729005b8f9 13-Jul-2011 David 'Digit' Turner <digit@google.com> am f54c7016: am c8d71801: resolved conflicts for merge of d0d351b2 to gingerbread-plus-aosp

* commit 'f54c7016261fefdf146137d50b63ca91ac21b80e':
Only use O_BINARY if it is defined (windows compatibility)
Update to allow x86-atom build for FI on Gingerbread
Combined patch from master branch
951e729abd1260590a84971908bcbf78728cd884 13-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
4c8b7b0df73540fc3a93305914ba841cd43d3997 12-Jul-2011 Elliott Hughes <enh@google.com> Merge "Tidying of the jweak fix."
aa6bb5bc88a511efa8a1421d76c6533776074cac 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Remove the simulator target from all makefiles. Bug: 5010576"
363e154170d0879ccebf4160f8d57433d40673a2 12-Jul-2011 Elliott Hughes <enh@google.com> Tidying of the jweak fix.

Bug: 4260055
Change-Id: I1fd56f6c0ea1e2a7245fb2551daf2099bec99709
m/CheckJni.cpp
0ab051020302e9f973ef312557e231aee278bebf 12-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
737e7c2b77b026ab44c6bbf775b77e953b6f79c6 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Remove the simulator target from all makefiles.
Bug: 5010576

Change-Id: I544b54b673d9fd42197a5c97a291578a0bd0db5f
exdump/Android.mk
exlist/Android.mk
exopt/Android.mk
m/Android.mk
m/Dvm.mk
m/ReconfigureDvm.mk
72b7c6179a6ab44b60735f9c4411faa5fce9649d 12-Jul-2011 Raphael <raphael@google.com> resolved conflicts for merge of c3ff6a0b to honeycomb-plus-aosp

Change-Id: I6b9cfdc27b2654bd832cfd06678a173449f992bc
c3ff6a0bea3834cafe914289d0881da1942eaedf 12-Jul-2011 Raphael Moll <ralf@android.com> am bf62959b: Merge "Dex for Windows: Support paths with spaces."

* commit 'bf62959bd8382e458a1aee6b491cb7da703984fb':
Dex for Windows: Support paths with spaces.
bf62959bd8382e458a1aee6b491cb7da703984fb 12-Jul-2011 Raphael Moll <ralf@android.com> Merge "Dex for Windows: Support paths with spaces."
259a8a5154c63a793ea0ee438d146acda7d990b6 12-Jul-2011 Elliott Hughes <enh@google.com> Fix the jweak implementation.

We need to distinguish between "cleared weak global" and "deleted weak global".
Previously we used NULL for both. Now we add a magic value for cleared weak
globals. I've also switched the GC over to using iterators, so IndirectRefTable
itself becomes responsible for not showing bad pointers to the GC.

I've also improved the reference table dumping to cope with the new scheme and
to be a bit easier to read (through extra indentation).

Bug: 4260055
Change-Id: I26af301fb2b46d014c6f6b0915a8f8a7fb6d7c5b
m/CheckJni.cpp
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
m/ReferenceTable.cpp
m/alloc/MarkSweep.cpp
m/alloc/Visit.cpp
68e8f6c07d1d875dab74f85dcfe0c0d7ac813e29 12-Jul-2011 Raphael Moll <ralf@android.com> am 53015360: am 5a57e766: Merge "Change dx.bat to Windows EOL."

* commit '53015360753df7325e3cc84c44bee5b48b497436':
Change dx.bat to Windows EOL.
53015360753df7325e3cc84c44bee5b48b497436 12-Jul-2011 Raphael Moll <ralf@android.com> am 5a57e766: Merge "Change dx.bat to Windows EOL."

* commit '5a57e766a662184902e215b52cb943e02d9fa827':
Change dx.bat to Windows EOL.
5a57e766a662184902e215b52cb943e02d9fa827 12-Jul-2011 Raphael Moll <ralf@android.com> Merge "Change dx.bat to Windows EOL."
1e4c4bebc1feb4b68155e9c2e7e6f2c056ef8e3b 12-Jul-2011 Raphael Moll <ralf@android.com> Dex for Windows: Support paths with spaces.

1- Change the format of the command line parsed by dx.jar.
Parameters with values are usually specified with one
single argument e.g.
--output=/some/path with spaces
That breaks for a variety of reasons on windows, so the first
step is to allow a new 2-parameter form:
--output "/some/path with spaces"

2- The next step is fixing the way the dx.bat wrapper
extracts the -J parameters to be able to cope with
arguments that contain spaces.

SDK bugs: 4567, 18388

Change-Id: Ia837e7307998c0bf41ae39abb36abebfc27da104
x/etc/dx.bat
x/src/com/android/dx/command/dexer/Main.java
f54c7016261fefdf146137d50b63ca91ac21b80e 12-Jul-2011 David 'Digit' Turner <digit@google.com> am c8d71801: resolved conflicts for merge of d0d351b2 to gingerbread-plus-aosp

* commit 'c8d718012b0ac4abf668a9f494c33d2dd8a314e5':
Only use O_BINARY if it is defined (windows compatibility)
Update to allow x86-atom build for FI on Gingerbread
Combined patch from master branch
6b9626d56c3ff84a6db7c15ea8bdcd62d11666d1 12-Jul-2011 Raphael Moll <ralf@android.com> Change dx.bat to Windows EOL.

Change-Id: I0adc6101297e8491814599d345b3cfd3278837cd
x/etc/dx.bat
c8d718012b0ac4abf668a9f494c33d2dd8a314e5 11-Jul-2011 David 'Digit' Turner <digit@google.com> resolved conflicts for merge of d0d351b2 to gingerbread-plus-aosp

Change-Id: I1594c21fb3dd761b1e2275be2019ec139cf64174
ea333384b92db9c400be1b4c8cb6992d9ba5f14d 11-Jul-2011 Elliott Hughes <enh@google.com> Add JNI app bug workarounds.

Specifically, this hands out direct pointers for all local references,
and lets you use a JNIEnv* on the wrong thread. This is off by default,
but enabled for apps that don't have ICS as their targetSdkVersion.

Bug: 4772166
Change-Id: I20c403a8e63481a35d579d2bd3b121c80ec08f89
m/CheckJni.cpp
m/Globals.h
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
m/native/dalvik_system_VMRuntime.cpp
06ccc5926eebbb6a128799c579dcb3277e29b44d 10-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
0846f4ad3f3dacbceacd1617a2c4c194e8d28e98 09-Jul-2011 Elliott Hughes <enh@google.com> Merge "Allow an app's targetSdkVersion to be set by the zygote."
191a799160fe811d8558724bb86cfe543b7efc2f 08-Jul-2011 Elliott Hughes <enh@google.com> Allow an app's targetSdkVersion to be set by the zygote.

Bug: 4772166
Change-Id: I7dbfdc2f2856efe608f0474d83326e6f0ba17658
m/native/dalvik_system_VMRuntime.cpp
22fb6666da25497693fe260660b5d487c175ed10 08-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
d0d351b2ef726ff1b76a3efb4aad91e4d1436f6a 08-Jul-2011 David 'Digit' Turner <digit@google.com> merge intel x86 patches into gingerbread branch
7aa9563279627b2ff5413bc895381fc170df9f12 07-Jul-2011 Doug Kwan <dougkwan@google.com> Remove dead code/unused variables to avoid gcc-4.6 warnings.

Change-Id: I291fd42e91085c51772f560d424334874bef8add
m/Exception.cpp
m/Jni.cpp
m/alloc/Heap.cpp
m/analysis/CodeVerify.cpp
m/hprof/HprofHeap.cpp
m/interp/Jit.cpp
m/native/java_lang_System.cpp
bcf2818378cba6f40a6a460905b2b2ed191f48bb 07-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
03ad7826711ac4e7af6a81ba6f833741444ee621 07-Jul-2011 Elliott Hughes <enh@google.com> Improve a comment.

Change-Id: If6636879dcdc15a33a083a19284de5fe8056e797
m/Jni.cpp
e51f5babdf9d406d4cce86bdab2f24b265973cc9 07-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
71224c80518ba89362f48b84f00900cda6d513ba 07-Jul-2011 Elliott Hughes <enh@google.com> Turn on third-party JNI logging if the relevant bit is set.

Change-Id: I3260233516fa2d57c4876056168d31881d8666a9
m/native/dalvik_system_Zygote.cpp
ddbd6f44af283415162ea7bb1b4e7ef77c8de492 06-Jul-2011 Elliott Hughes <enh@google.com> Don't abort when a weak global's referent is cleared.

This also makes us less likely to output spurious warnings when
dealing with nulled-out weak globals, and lets us provide more
helpful warnings when warnings are called for.

Bug: 4991942
Change-Id: I99b88e66e07f79562da2cd9d594b93bff218d595
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
98d1b73a48bb1cebf71609ed0bd9fcbcc7732da8 04-Jul-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
128689844fda7f9287cc7494ec357397b6d59576 01-Jul-2011 jeffhao <jeffhao@google.com> Added mutex for jdwp socket writes to prevent interleaving.

This commit includes a following change: Clean up jdwp adb/socket
and fix initialization issues.

Change-Id: I79461b92d690e42d8d1d82d31fbcacb4d5650a74
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpPriv.h
m/jdwp/JdwpSocket.cpp
a6e94ff55517438569d207e3ed552c8c127bcac9 30-Jun-2011 Elliott Hughes <enh@google.com> Fix native method logging to show local references rather than direct pointers.

This is necessary (but not sufficient) for debugging third-party JNI bugs.
It's the second half of the logging story, but still doesn't address the
question of "how does the developer turn on the logging?".

This removes the variant JNI bridges at the cost of adding a couple of
booleans to struct Method. Performance is about the same, except synchronized
native methods are quite a bit faster after the change.

Before:
benchmark ns linear runtime
_emptyJniMethod0 333 ==========
_emptyJniMethod6 367 ===========
_emptyJniMethod6L 921 ==============================
_emptyJniStaticMethod0 259 ========
_emptyJniStaticMethod6 287 =========
_emptyJniStaticMethod6L 873 ============================
_emptyJniStaticSynchronizedMethod0 404 =============
_emptyJniSynchronizedMethod0 452 ==============

After:
benchmark ns linear runtime
_emptyJniMethod0 344 ==========
_emptyJniMethod6 348 ==========
_emptyJniMethod6L 969 ==============================
_emptyJniStaticMethod0 265 ========
_emptyJniStaticMethod6 293 =========
_emptyJniStaticMethod6L 968 =============================
_emptyJniStaticSynchronizedMethod0 265 ========
_emptyJniSynchronizedMethod0 323 ==========

A better optimization for the case where there are reference arguments
would be to keep a list of argument indexes in the struct Method, so we
could iterate directly over those arguments that need converting to
local references. That would also let us do something about the overhead
of repeatedly looking up which local reference table and cookie to use.

But now is not the time.

Change-Id: Ie32daca1b31be057a44f1ed4b5d28d1634380e1d
m/CheckJni.cpp
m/Jni.cpp
m/JniInternal.h
m/Native.cpp
m/Native.h
m/oo/Object.h
9a4c89ff46c9006d24594bc774a24db84f9c595c 30-Jun-2011 Elliott Hughes <enh@google.com> Merge "Add two new JNI debugging options."
3f04fa049734772a945243d64d6ce9a34b39b730 30-Jun-2011 Elliott Hughes <enh@google.com> Add two new JNI debugging options.

The alwaysCheckThread option provides some backwards compatibility for apps
that misuse JNIEnv*s across threads. The logThirdPartyJni is a step towards
making it easier for third-party developers to debug their JNI errors.

Change-Id: I134374da0fe94f3fbc6b6d5aef52e3eef658aff9
m/Globals.h
m/Jni.cpp
22e4d610c05ffbb9eb31b9a1c3fe441e7989616e 30-Jun-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
db7d27bf88146ed20d2c8f3c424c998dae3b9971 29-Jun-2011 Doug Kwan <dougkwan@google.com> Mark a variable as volatile to suppress a gcc warning.

Change-Id: Ic5263e2d7e52c72d35bf706d86bba2ad6548ce58
m/compiler/Compiler.cpp
4676d0d83c717e179ae5bd4b1b013d71bfb1101d 29-Jun-2011 Elliott Hughes <enh@google.com> Merge "Make it easier to recognize JNI reference bugs."
24c57f1d575fccc11239cf71089c7d04270a21c3 29-Jun-2011 Elliott Hughes <enh@google.com> Make it easier to recognize JNI reference bugs.

CheckJNI is still your best choice, but now, even without CheckJNI, you'll get
a strong clue:

E/dalvikvm( 4168): JNI ERROR (app bug): accessed stale local reference at index 10 (top=8)
E/dalvikvm( 4168): VM aborting

Change-Id: Ia65e1e430bc53509add19816ef06cc5dbd1b3e98
m/IndirectRefTable.cpp
c4dcfb4ccadd139e842749d0c497fb50481b8304 29-Jun-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
97151d9c02bee29162a6c7ef69a5a75739af18a8 29-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Make dual clock mode the default."
dfd446f606b3177a132fd0833641d33fb99705f9 25-Jun-2011 Elliott Hughes <enh@google.com> Improve JNI tracing even further.

This adds return values and general support for the primitive types.

For example:

JNI: libcore.io.Posix.writeBytes -> GetIntField((JNIEnv*)0x9ebf9a8, 0x3e00005, java.io.FileDescriptor.descriptor)
JNI: <- GetIntField returned 13

Although we still decode jclass, when a jclass is a return value we also
include the pointer. This makes it easier to follow call sequences like
this:

JNI: dalvik.system.NativeStart.main -> FindClass((JNIEnv*)0x9e3e458, "java/text/Bidi$Run")
JNI: <- FindClass returned java.lang.Class<java.text.Bidi$Run> (0x100001)
JNI: dalvik.system.NativeStart.main -> NewGlobalRef((JNIEnv*)0x9e3e458, 0x100001)
JNI: <- NewGlobalRef returned 0x100002

Here, the argument to NewGlobalRef is clearly the jclass local reference.

(Cherry-pick of 047cab15c4cb967568b25b616f02ed0f9a169430 from dalvik-dev.)

Change-Id: Ie8997b11a9cc9a0bc8f11ab3fc43f4892921316b
m/CheckJni.cpp
5719d5c79558ffdbbb863ddcf61836221aba922d 22-Jun-2011 Elliott Hughes <enh@google.com> Improve -verbose:jni.

The old output just told you what functions were being called and made no
attempt to show you their arguments. The new output was sufficient to debug
an actual problem with an app we don't have the source to.

Still to do:
0. an easier way for third-party developers to enable this.
1. the primitive type arguments to SetIntField and so forth.
2. return values.

A few examples of the new output...

A decoded jclass:
JNI: libcore.io.Posix.readBytes called IsInstanceOf((JNIEnv*)0x9618470, 0x28100015, java.lang.Class<byte[]>)

A decoded jfieldID:
JNI: libcore.io.Posix.ioctlInt called GetIntField((JNIEnv*)0x9618470, 0x5cb00011, java.io.FileDescriptor.descriptor)

A decoded jmethodID (the FileDescriptor constructor):
JNI: libcore.io.Posix.open called NewObject((JNIEnv*)0x9780480, java.lang.Class<java.io.FileDescriptor>, java.io.FileDescriptor.<init>()V, ...)

A const char*:
JNI: libcore.io.Posix.getsockoptLinger called NewStringUTF((JNIEnv*)0x9618470, "getsockopt")

A jint release mode:
JNI: libcore.io.Posix.writeBytes called ReleaseByteArrayElements((JNIEnv*)0x9780480, 0x2700009, (void*) 0xf5f623c4, JNI_ABORT)

The -verbose:jni option now turns on a bit more output about JNI_OnLoad calls
but no longer causes any logging of calls to JNIEnv or JavaVM functions. The
old -Xjnitrace: option has been extended to enable this new tracing for the
native methods that it covers. They go very well together for debugging
purposes.

I've also made us a bit more verbose if we fail to initialize. In the longer
term I think we want to just abort if we hit any failure during startup, but
my extra logging will save us a bit of time next time we have one of these
failures (this one was caused for me by only having one half of the finalizer
watchdog change; I was missing the libcore side).

(Cherry pick of 6734b8224fb869c94e42e704ec03f2ce8483af2b from dalvik-dev.)

Change-Id: I69b7620b20620e9f06576da244520d9d83f89ab8
m/CheckJni.cpp
m/Init.cpp
m/Init.h
m/Jni.cpp
m/Misc.cpp
m/Misc.h
m/Native.cpp
m/interp/Stack.cpp
2e31bb77dccb07315ad1a794c064a52633adfa34 29-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Add a dual clock profiler tracing mode."
8dd602f0c99702fa205559b3f80e6e8d1c816dee 28-Jun-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
b221d25ff3a8ee542f9284f18a3741b6d7016c49 28-Jun-2011 jeffhao <jeffhao@google.com> Fix debugger output of floats and doubles.

Change-Id: Idd839eef0ecb023fc4cdec20648bebbe5756d399
m/Debugger.cpp
120994d2a647aab2e06818cd1e40ec0194033ab5 25-Jun-2011 Jeff Brown <jeffbrown@google.com> Make dual clock mode the default.

Change-Id: Ic2f7cb8a8055319472d16be03c7ca242bf915af0
m/Init.cpp
949c3ec207a7720fb47f7b3ca1f84dfcfd70aaa9 25-Jun-2011 Jeff Brown <jeffbrown@google.com> Add a dual clock profiler tracing mode.

Dalvik previously supported using either the thread-cpu clock
or the real time clock as the timebase for profiler traces.
This change adds a dual clock mode where both thread-cpu time
and real time timestamps are collected.

Using dual clock mode significantly improves TraceView ability
to accurately reconstruct the global timeline of events,
particularly on SMP systems.

For now, thread-cpu mode remains the default.

Dual clock mode can be enabled by running the following command
and restarting the system server.
adb shell setprop dalvik.vm.extra-opts -Xprofile:dualclock

Change-Id: I8c0d91a99aa6829dadea328e54dc1225d9827391
ools/dmtracedump/TraceDump.c
m/Globals.h
m/Init.cpp
m/Profile.cpp
m/Profile.h
cb90f1cf3872a77ed8ca1c02d15311a330ffbd40 27-Jun-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
cdf3acffe82f14753b59bcda77f9e0e92261d36e 27-Jun-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
8402bdf3308aac0743e2c3af248c48202b8b2dc1 26-Jun-2011 Doug Kwan <dougkwan@google.com> Fix a use of uninitialized variable found by gcc-4.6. I don't think this is a
real problem as we will only see an undefined value if the list has no instructions other than NOPs.

Change-Id: I055510831ca1c566e2daa2b4b2acbaa655fa735a
m/compiler/codegen/arm/LocalOptimizations.cpp
8bd8e5ba33a920a1dbad67b390e316ac0aebb0bb 25-Jun-2011 Doug Kwan <dougkwan@google.com> Merge "Fix gcc-4.6 warnings."
7a921948c597d72a6db9ec6f3a0f1fbdfd3e49c8 25-Jun-2011 Doug Kwan <dougkwan@google.com> Fix gcc-4.6 warnings.

Change-Id: I62cfb8b1a39499366ee18c1904e6991567f78571
m/IndirectRefTable.cpp
m/jdwp/JdwpConstants.cpp
m/jdwp/JdwpConstants.h
29527c9db5fcaac8ae4c567304d8b7160110214b 24-Jun-2011 Brett Chabot <brettchabot@android.com> Fix for adb shell hang after adb root.

Abort JDWP thread if netstate is shutting down.

Bug 4731499

Change-Id: I4e1ec9cf64d00682b1dd10e448c3665a4fc77ba8
m/jdwp/JdwpAdb.cpp
457c87baf7a5c831c3c8f5fa6026a6c9e14af74e 24-Jun-2011 The Android Automerger <android-build@android.com> merge in ics-release history after reset to master
a8b4a0eec5e3ab181b3d26223c84c556bead06c8 24-Jun-2011 Elliott Hughes <enh@google.com> Throw NullPointerExceptions with detail messages.

Bug: 4905110
Change-Id: Iebcc45049c1ea14ceef6d44a19dd8cb618392101
m/Jni.cpp
m/native/InternalNative.cpp
m/native/dalvik_system_DexFile.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/dalvik_system_VMRuntime.cpp
m/native/java_lang_Class.cpp
m/native/java_lang_System.cpp
m/native/java_lang_VMClassLoader.cpp
m/native/java_lang_VMThread.cpp
4fbac870c762d30be14a2b88238ef8df63918f87 24-Jun-2011 Elliott Hughes <enh@google.com> Merge "Remove an unused internal native."
a688e1236c7a3d66a4dfccff492122fcb4232fb2 24-Jun-2011 Elliott Hughes <enh@google.com> Remove an unused internal native.

Change-Id: I9a8976e7e505dfa6b641a76edc1e65be68b73339
m/native/dalvik_system_VMStack.cpp
4f25d17c6ac97c1ec1b6e8cdd877774a126924ac 24-Jun-2011 buzbee <buzbee@google.com> Merge "[JIT] Fix uninitialized read (issue #4929028)"
ba8b04458867cc0c4de45f409b2df566b2b8577c 24-Jun-2011 buzbee <buzbee@google.com> [JIT] Fix uninitialized read (issue #4929028)

Found via Valgrind. This should not have caused any bad code to be
generated in this case, but good to fix. Use arrays cleared on creation.

Change-Id: I5f87c6ec74e12b9c99835695b71b6ee49505503a
m/compiler/SSATransformation.cpp
eba95c1c0b552d5dd18a7520e3dcc081cfac621c 23-Jun-2011 Elliott Hughes <enh@google.com> Fix native methods that weren't registered via RegisterNatives.

Cherry pick of a64af4aabf261d34eac8b5a9d92992ee70051829.

Change-Id: I43df4e33e39ccaf9e26c842f22da3391cfa17e2b
m/Jni.cpp
m/oo/Object.h
61e50bdecb9161ab87fbeb1d20da1a86ff7e8f59 23-Jun-2011 Elliott Hughes <enh@google.com> resolved conflicts for merge of cc8c750a to master

(The transition to C++ requires an additional cast.)

Change-Id: I736f6533511d5ab2d1f05903b06d8f333adba492
1a87dec67db6c5a37442c1338d9b8c626c95a545 23-Jun-2011 Elliott Hughes <enh@google.com> Fix native methods that weren't registered via RegisterNatives.

Cherry pick of a64af4aabf261d34eac8b5a9d92992ee70051829.

Change-Id: I43df4e33e39ccaf9e26c842f22da3391cfa17e2b
m/Jni.cpp
m/oo/Object.h
585536275618a37d6e91393ec2b82e8b98632656 22-Jun-2011 Brian Carlstrom <bdc@google.com> Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master
cc8c750a30dee0b7bac1281533581e86d07b9c8e 22-Jun-2011 Elliott Hughes <enh@google.com> am 03c60a44: Merge "Undecoded jobject leaking in through attachThread"

* commit '03c60a44861951126affa75ba8ee4233c136fe92':
Undecoded jobject leaking in through attachThread
03c60a44861951126affa75ba8ee4233c136fe92 22-Jun-2011 Elliott Hughes <enh@google.com> Merge "Undecoded jobject leaking in through attachThread"
f741a814683cd66a338afaa8add443e8b16340c9 21-Jun-2011 Elliott Hughes <enh@google.com> Merge "Clean up IndirectRefTable a bit." into dalvik-dev
ce0968340f9ddd54f20e38d4946bfd2ef8f1f343 21-Jun-2011 Elliott Hughes <enh@google.com> Clean up IndirectRefTable a bit.

The main purpose here was to have slightly less unclear warnings for
JNI local reference abuse.

Change-Id: I2c6378dd0a94d8afb96a8e409f7460205e3cd315
m/CheckJni.cpp
m/IndirectRefTable.cpp
m/IndirectRefTable.h
m/Jni.cpp
m/Thread.cpp
m/alloc/MarkSweep.cpp
m/alloc/Visit.cpp
m/test/TestIndirectRefTable.cpp
b87442a4e64235f633672bc41fb32d640857c24e 21-Jun-2011 Jesse Wilson <jessewilson@google.com> am bea345e1: Fix the watchdog test to handle the failure from managed code.

* commit 'bea345e1cd8acd993758366df42af7c6c9cf76d6':
Fix the watchdog test to handle the failure from managed code.
bea345e1cd8acd993758366df42af7c6c9cf76d6 21-Jun-2011 Jesse Wilson <jessewilson@google.com> Fix the watchdog test to handle the failure from managed code.

Change-Id: I9691f414b953c7e11791069a574441b993611238
http://b/4144865
ests/030-bad-finalizer/expected.txt
ests/030-bad-finalizer/info.txt
ests/030-bad-finalizer/run
bcfee6a73ce4c8e47d43bc3e04c7abba3da0c81d 21-Jun-2011 Jesse Wilson <jessewilson@google.com> am 0c632a84: Merge "Add isDebuggerActive API for the finalizer watchdog."

* commit '0c632a8484839ceeffc6fdf04c310c02c7531530':
Add isDebuggerActive API for the finalizer watchdog.
0c632a8484839ceeffc6fdf04c310c02c7531530 21-Jun-2011 Jesse Wilson <jessewilson@google.com> Merge "Add isDebuggerActive API for the finalizer watchdog."
e58a9b5d443cd3fcc22abc887cf0739a4b6bc145 21-Jun-2011 Jesse Wilson <jessewilson@google.com> Add isDebuggerActive API for the finalizer watchdog.

Change-Id: Ib0afcd15327c0a3dd8c565036a8f010e318adc9e
http://b/4144865
m/alloc/Alloc.cpp
m/native/dalvik_system_VMRuntime.cpp
7c08071765cb134e4c0b18bf8fd6a7060e145212 20-Jun-2011 Elliott Hughes <enh@google.com> Don't be too specific in reference table summaries.

Implying that the examplar Class' specific type was true of all
the classes was misleading; we should just say "Class" in the
summary:

W/dalvikvm( 801): JNI local reference table summary (23 entries):
W/dalvikvm( 801): 20 of java.lang.Class (19 unique instances)
W/dalvikvm( 801): 2 of java.lang.String (2 unique instances)
W/dalvikvm( 801): 1 of java.lang.String[] (2 elements)

Change-Id: Ia961cfc689aa390c84ecbc96e44bdd64448ac051
m/ReferenceTable.cpp
e1e7b718196f3c1012eb24aa83766d7c54e3db40 20-Jun-2011 Elliott Hughes <enh@google.com> Remove incorrect comment.

Change-Id: I3d1d84f8d36b8ee3d07e0af7e29faa72f3615e92
m/IndirectRefTable.h
8b987b351a5e2addd1adee2707ab97eb3918e26d 18-Jun-2011 Elliott Hughes <enh@google.com> Fix build: rebase went wrong.

Change-Id: I390edcb3ddd52d2fb9285d2de42617dff68fdcf2
m/ReferenceTable.cpp
d8a3f9fa1951e552f5f65c2914689083cc0c46c2 18-Jun-2011 Elliott Hughes <enh@google.com> Make some of the StringObject functions member functions.

Change-Id: I72ed13c16f0cb24498772c453ba268a0f65f208a
m/CheckJni.cpp
m/Ddm.cpp
m/Jni.cpp
m/ReferenceTable.cpp
m/UtfString.cpp
m/UtfString.h
m/oo/Object.h
837eabb829417c1542037423c55536649de404b8 17-Jun-2011 Elliott Hughes <enh@google.com> Add and use StringAppendF.

I've also removed the dvm prefix from the existing StringPrintf.

Change-Id: I3d01f676c876957b6c6e032c674e1a06c3670021
m/Misc.cpp
m/Misc.h
m/ReferenceTable.cpp
m/interp/Stack.cpp
e88cce67ddb18f2dc5a7f7ee1883e79e8830fac6 17-Jun-2011 Elliott Hughes <enh@google.com> Merge "Improve reference table dumping." into dalvik-dev
fe7f2b3920bf5d66eda262e643245b03df3e57c8 17-Jun-2011 Elliott Hughes <enh@google.com> Improve reference table dumping.

1. Show the newest entry first; I always assume the top is the newest.
2. Use human-readable type names.
3. Improve the human-readable type name code to show _which_ Class (i.e.
java.lang.Class<java.lang.String> rather than just java.lang.Class).
4. Make it clear when we're reporting the number of elements in an array.
5. Show the first few characters of a string.
6. Show the length of a string if we truncate it.

(I've also removed some redundant casts and improved const-correctness.)

Example:

Last 10 entries in JNI local reference table:
16: 0x40f8ec70 java.lang.String "android.permissi... (41 chars)
15: 0x40f8d450 android.os.Parcel
14: 0x40f8eb90 java.lang.String "BlackSurface"
13: 0x408caca0 android.view.SurfaceSession
12: 0x40f8eb60 android.view.Surface
11: 0x406bc6f0 java.lang.Class<com.android.server.SystemServer>
10: 0x406c0278 java.lang.String "com/android/serv... (31 chars)
9: 0x4015d488 dalvik.system.PathClassLoader
8: 0x40148de8 java.lang.Class<java.lang.ClassLoader>
7: 0x406bc560 java.lang.String[]
JNI local reference table summary (17 entries):
6 of java.lang.Class<com.android.server.SystemServer> (5 unique instances)
5 of java.lang.String (5 unique instances)
1 of java.lang.String[]
1 of java.lang.String[] (2 elements)
1 of dalvik.system.PathClassLoader
1 of android.os.Parcel
1 of android.view.SurfaceSession
1 of android.view.Surface

Change-Id: I56494104cd0daada3ecc1e610f1c94df1e11c640
m/Misc.cpp
m/Misc.h
m/ReferenceTable.cpp
m/UtfString.cpp
m/UtfString.h
m/interp/Stack.cpp
m/native/InternalNative.cpp
439834aadbd3e2260d9276880da3e619be7bb036 16-Jun-2011 Elliott Hughes <enh@google.com> am a7ab2182: Fix unbundled apps on pre-ICS devices.

* commit 'a7ab2182266fb9ea1e4e8d1347fc6d6da35760d4':
Fix unbundled apps on pre-ICS devices.
a7ab2182266fb9ea1e4e8d1347fc6d6da35760d4 16-Jun-2011 Elliott Hughes <enh@google.com> Fix unbundled apps on pre-ICS devices.

Change-Id: I4aa58b5395423ec2f05be3dcb1783d0e35eabb2c
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/command/dexer/Main.java
e6c0ef210ee6c62cf4c63d50c04f451d5fa505f5 15-Jun-2011 Elliott Hughes <enh@google.com> Break a dependency on frameworks/base when building a host VM.

These aren't necessarily good abstractions, but they're no worse than what
we had, and having them factored out is a step in the right direction.

Change-Id: I5b839608317d2ca1ca54d8a38624fb686f2c37de
alvikvm/Android.mk
exopt/Android.mk
ibnativehelper/Android.mk
nit-tests/Android.mk
m/Android.mk
m/Dvm.mk
m/Thread.cpp
m/alloc/Heap.cpp
m/os/android.cpp
m/os/linux.cpp
m/os/os.h
8c8d1594ae9c7b588bb990e7407f4baa6185ecb9 15-Jun-2011 Elliott Hughes <enh@google.com> Better comments for yesterday's change.

Change-Id: I1e05fb0e209d44874101b5ca8b7c8efec6810d5f
m/Jni.cpp
8ccc48eeb26e4c33d5948f562b72bcd0d15058de 15-Jun-2011 Carl Shapiro <cshapiro@google.com> am cd10c009: am f682dd64: (-s ours) am 1dd6e412: am a028d87f: Always grow the limit address of the a heap along with its size.

* commit 'cd10c0092f7056f4d0b42bf734f8badf75d84fb9':
Always grow the limit address of the a heap along with its size.
cd10c0092f7056f4d0b42bf734f8badf75d84fb9 15-Jun-2011 Carl Shapiro <cshapiro@google.com> am f682dd64: (-s ours) am 1dd6e412: am a028d87f: Always grow the limit address of the a heap along with its size.

* commit 'f682dd646a92f53221981a434abc06da5d249404':
Always grow the limit address of the a heap along with its size.
f682dd646a92f53221981a434abc06da5d249404 15-Jun-2011 Carl Shapiro <cshapiro@google.com> am 1dd6e412: am a028d87f: Always grow the limit address of the a heap along with its size.

* commit '1dd6e4124b5ec8b7392163cb055028678aaf042d':
Always grow the limit address of the a heap along with its size.
1dd6e4124b5ec8b7392163cb055028678aaf042d 15-Jun-2011 Carl Shapiro <cshapiro@google.com> am a028d87f: Always grow the limit address of the a heap along with its size.

* commit 'a028d87fb310eae8cac821183aa91567ec8cb0f9':
Always grow the limit address of the a heap along with its size.
a028d87fb310eae8cac821183aa91567ec8cb0f9 15-Jun-2011 Carl Shapiro <cshapiro@google.com> Always grow the limit address of the a heap along with its size.

Previously, clearing the growth limit only updated the maximumSize of
the unlimited heap without updating the limit value. This caused any
operations iterated over the extent of the heap to ignore allocations
beyond the original heap size. With this change the limit is always
kept in agreement with the maximumSize.

Bug: 4539441
Change-Id: I08c8004e724549d196e1fd5d6ad22efc85b0c8d2
m/alloc/HeapSource.c
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
ibdex/CmdUtils.h
ibdex/DexCatch.h
ibdex/DexClass.h
ibdex/DexDataMap.h
ibdex/DexDebugInfo.h
ibdex/DexFile.h
ibdex/DexOpcodes.h
ibdex/DexProto.h
ibdex/DexUtf.h
ibdex/InstrUtils.h
ibdex/Leb128.h
ibdex/OptInvocation.h
ibdex/SysUtil.h
ibdex/ZipArchive.h
ibdex/sha1.h
ibnativehelper/include/nativehelper/JNIHelp.h
ibnativehelper/include/nativehelper/jni.h
m/AllocTracker.h
m/Atomic.h
m/AtomicCache.h
m/BitVector.h
m/Bits.h
m/Common.h
m/Dalvik.h
m/DalvikVersion.h
m/Ddm.h
m/Debugger.h
m/DvmDex.h
m/Exception.h
m/Globals.h
m/Hash.h
m/IndirectRefTable.h
m/Init.h
m/InlineNative.h
m/Intern.h
m/JarFile.h
m/JniInternal.h
m/LinearAlloc.h
m/Misc.h
m/Native.h
m/PointerSet.h
m/Profile.h
m/RawDexFile.h
m/ReferenceTable.h
m/SignalCatcher.h
m/StdioConverter.h
m/Sync.h
m/Thread.h
m/UtfString.h
m/alloc/Alloc.h
m/alloc/CardTable.h
m/alloc/DdmHeap.h
m/alloc/Heap.h
m/alloc/HeapBitmap.h
m/alloc/HeapBitmapInlines.h
m/alloc/HeapDebug.h
m/alloc/HeapInternal.h
m/alloc/HeapSource.h
m/alloc/MarkSweep.h
m/alloc/Verify.h
m/alloc/Visit.h
m/alloc/VisitInlines.h
m/alloc/WriteBarrier.h
m/analysis/CodeVerify.h
m/analysis/DexPrepare.h
m/analysis/DexVerify.h
m/analysis/Liveness.h
m/analysis/Optimize.h
m/analysis/RegisterMap.h
m/analysis/VerifySubs.h
m/analysis/VfyBasicBlock.h
m/compiler/Compiler.h
m/compiler/CompilerIR.h
m/compiler/CompilerInternals.h
m/compiler/CompilerUtility.h
m/compiler/Dataflow.h
m/compiler/Loop.h
m/compiler/codegen/CompilerCodegen.h
m/compiler/codegen/Optimizer.h
m/compiler/codegen/arm/ArmLIR.h
m/compiler/codegen/arm/CalloutHelper.h
m/compiler/codegen/arm/armv5te-vfp/ArchVariant.h
m/compiler/codegen/arm/armv5te/ArchVariant.h
m/compiler/codegen/arm/armv7-a-neon/ArchVariant.h
m/compiler/codegen/arm/armv7-a/ArchVariant.h
m/compiler/codegen/x86/CalloutHelper.h
m/compiler/codegen/x86/X86LIR.h
m/compiler/codegen/x86/ia32/ArchVariant.h
m/hprof/Hprof.h
m/interp/Interp.h
m/interp/InterpDefs.h
m/interp/InterpState.h
m/interp/Jit.h
m/interp/Stack.h
m/jdwp/ExpandBuf.h
m/jdwp/Jdwp.h
m/jdwp/JdwpConstants.h
m/jdwp/JdwpEvent.h
m/jdwp/JdwpHandler.h
m/jdwp/JdwpPriv.h
m/mterp/Mterp.h
m/native/InternalNative.h
m/native/InternalNativePriv.h
m/oo/AccessCheck.h
m/oo/Array.h
m/oo/Class.h
m/oo/Object.h
m/oo/ObjectInlines.h
m/oo/Resolve.h
m/oo/TypeCheck.h
m/reflect/Reflect.h
m/test/Test.h
7baeded82e40352ebfb43b716e0b1dd752e72e7e 15-Jun-2011 jeffhao <jeffhao@google.com> Dx defaults to emitting dexfiles without jumbo opcodes.

There's compatibility issues with going back and forth between versions,
and it's best to have dx default to a stable point and allow
optimizations to be controlled by switches. For jumbo opcodes to be
enabled, dx can be given the switch "--target-api=14".

Change-Id: I824092c795638ca329325b14c435bc41c1ab56d5
x/src/com/android/dx/command/Main.java
x/src/com/android/dx/command/dexer/Main.java
65852761e37f938409b85a901a0fb1d98d361023 14-Jun-2011 Elliott Hughes <enh@google.com> Allow native methods to declare they don't need a JNIEnv*.

Bug: 3069458
Change-Id: Ic9a6c562c5abf9607dd4c8a71b0d1e389e6d340b
m/Jni.cpp
m/oo/Object.h
9884429bf15ea2fdeafb81b840663273321960f2 14-Jun-2011 Carl Shapiro <cshapiro@google.com> Merge "Fix an issue regarding FindClass and threads without native methods." into dalvik-dev
fd594debde6c5703cdfe7233d400e289a4492148 10-Jun-2011 Carl Shapiro <cshapiro@google.com> Merge "Always grow the limit address of the a heap along with its size." into dalvik-dev
fd31cc071c83bdbe45e6f9db41fd76375e7ac310 10-Jun-2011 Carl Shapiro <cshapiro@google.com> Do not initiate a concurrent collection if one is already running.

It is possible to cause a recursive garbage collection by writing a
program that triggers a concurrent garbage collection and initiates a
concurrent garbage collection before the garbage collection thread is
scheduled. For example

for (;;) { new byte[16 << 20]; System.gc(); }

When this condition occurs a warning is logged although such warnings
ought to be upgraded to fatal errors. With this change, when the
garbage collection thread is scheduled it first checks to see if there
is a running collection before calling down to start the collection.

Change-Id: Ia7baf5eba245bbf3fe053d3bad3f90876cad2459
m/alloc/HeapSource.cpp
0c13923b0616dc79fcfc41b63119268273bdc8be 10-Jun-2011 Carl Shapiro <cshapiro@google.com> Always grow the limit address of the a heap along with its size.

Previously, clearing the growth limit only updated the maximumSize of
the unlimited heap without updating the limit value. This caused any
operations iterated over the extent of the heap to ignore allocations
beyond the original heap size. With this change the limit is always
kept in agreement with the maximumSize.

Bug: 4539441
Change-Id: I08c8004e724549d196e1fd5d6ad22efc85b0c8d2
m/alloc/HeapSource.cpp
00feda9a6a12b3a894fbe10876636973d2a03ac2 10-Jun-2011 Carl Shapiro <cshapiro@google.com> Fix an issue regarding FindClass and threads without native methods.

Chapter 4 of the JNI specification states that when FindClass is called
through the Invocation Interface and there is no associated method, the
result of ClassLoader.getBaseClassLoader() is used as the class loader.

Previously, the case where FindClass is called from a main thread was
special cased to ensure this behavior. However, threads which attach to
the VM but are not the main thread require similar treatment. With this
change those threads are similarly treated as a special case.

Change-Id: Idbe33e02a10d248262b9e9f089b033ffe05c4706
m/Jni.cpp
372191f2b87d90acfb25db5c938ac96f861c2c04 06-Jun-2011 Bruce Beare <bruce.j.beare@intel.com> Only use O_BINARY if it is defined (windows compatibility)

Change-Id: Iaa3c0812ef4d90d46b4031be7f4faca84c7d7200
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
ibdex/CmdUtils.c
ibdex/ZipArchive.c
a3394df8d7e5a6b2f1ee61d8a61b8baac255eff1 18-Feb-2011 Johnnie Birch <jlbirch> Update to allow x86-atom build for FI on Gingerbread

Also handles most TODO.txt items and contains some rewriting of the dispatch code.
Also adds a newline to the end of files that did not previously end with a newline.

Change-Id: Ifa627ac3d493447013524eb0be178b5b6d952612
m/mterp/config-x86-atom
m/mterp/out/InterpAsm-x86-atom.S
m/mterp/out/InterpC-x86-atom.c
m/mterp/x86-atom/OP_ADD_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_ADD_INT.S
m/mterp/x86-atom/OP_ADD_INT_2ADDR.S
m/mterp/x86-atom/OP_ADD_INT_LIT16.S
m/mterp/x86-atom/OP_AGET.S
m/mterp/x86-atom/OP_AGET_BOOLEAN.S
m/mterp/x86-atom/OP_AGET_BYTE.S
m/mterp/x86-atom/OP_AGET_CHAR.S
m/mterp/x86-atom/OP_AGET_SHORT.S
m/mterp/x86-atom/OP_AGET_WIDE.S
m/mterp/x86-atom/OP_AND_INT.S
m/mterp/x86-atom/OP_AND_INT_2ADDR.S
m/mterp/x86-atom/OP_AND_INT_LIT16.S
m/mterp/x86-atom/OP_APUT.S
m/mterp/x86-atom/OP_APUT_BYTE.S
m/mterp/x86-atom/OP_APUT_CHAR.S
m/mterp/x86-atom/OP_APUT_OBJECT.S
m/mterp/x86-atom/OP_APUT_SHORT.S
m/mterp/x86-atom/OP_APUT_WIDE.S
m/mterp/x86-atom/OP_ARRAY_LENGTH.S
m/mterp/x86-atom/OP_BREAKPOINT.S
m/mterp/x86-atom/OP_CMPG_DOUBLE.S
m/mterp/x86-atom/OP_CMPL_DOUBLE.S
m/mterp/x86-atom/OP_CMPL_FLOAT.S
m/mterp/x86-atom/OP_CONST.S
m/mterp/x86-atom/OP_CONST_16.S
m/mterp/x86-atom/OP_CONST_4.S
m/mterp/x86-atom/OP_CONST_CLASS.S
m/mterp/x86-atom/OP_CONST_STRING_JUMBO.S
m/mterp/x86-atom/OP_CONST_WIDE_16.S
m/mterp/x86-atom/OP_CONST_WIDE_32.S
m/mterp/x86-atom/OP_EXECUTE_INLINE.S
m/mterp/x86-atom/OP_FILLED_NEW_ARRAY.S
m/mterp/x86-atom/OP_GOTO.S
m/mterp/x86-atom/OP_GOTO_16.S
m/mterp/x86-atom/OP_GOTO_32.S
m/mterp/x86-atom/OP_IF_EQ.S
m/mterp/x86-atom/OP_IF_EQZ.S
m/mterp/x86-atom/OP_IF_GE.S
m/mterp/x86-atom/OP_IF_GEZ.S
m/mterp/x86-atom/OP_IF_GT.S
m/mterp/x86-atom/OP_IF_GTZ.S
m/mterp/x86-atom/OP_IF_LE.S
m/mterp/x86-atom/OP_IF_LEZ.S
m/mterp/x86-atom/OP_IF_LT.S
m/mterp/x86-atom/OP_IF_LTZ.S
m/mterp/x86-atom/OP_IF_NE.S
m/mterp/x86-atom/OP_IF_NEZ.S
m/mterp/x86-atom/OP_IGET_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_IGET_VOLATILE.S
m/mterp/x86-atom/OP_INT_TO_BYTE.S
m/mterp/x86-atom/OP_INVOKE_DIRECT.S
m/mterp/x86-atom/OP_INVOKE_DIRECT_EMPTY.S
m/mterp/x86-atom/OP_IPUT_OBJECT.S
m/mterp/x86-atom/OP_IPUT_OBJECT_QUICK.S
m/mterp/x86-atom/OP_IPUT_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_IPUT_VOLATILE.S
m/mterp/x86-atom/OP_LONG_TO_INT.S
m/mterp/x86-atom/OP_MOVE.S
m/mterp/x86-atom/OP_MOVE_OBJECT.S
m/mterp/x86-atom/OP_MOVE_OBJECT_FROM16.S
m/mterp/x86-atom/OP_MOVE_WIDE.S
m/mterp/x86-atom/OP_MUL_FLOAT.S
m/mterp/x86-atom/OP_MUL_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_MUL_INT.S
m/mterp/x86-atom/OP_MUL_INT_2ADDR.S
m/mterp/x86-atom/OP_MUL_INT_LIT16.S
m/mterp/x86-atom/OP_NEG_INT.S
m/mterp/x86-atom/OP_OR_INT.S
m/mterp/x86-atom/OP_OR_INT_2ADDR.S
m/mterp/x86-atom/OP_OR_INT_LIT16.S
m/mterp/x86-atom/OP_PACKED_SWITCH.S
m/mterp/x86-atom/OP_REM_INT.S
m/mterp/x86-atom/OP_RETURN_OBJECT.S
m/mterp/x86-atom/OP_RSUB_INT.S
m/mterp/x86-atom/OP_SGET_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_SGET_VOLATILE.S
m/mterp/x86-atom/OP_SHL_INT.S
m/mterp/x86-atom/OP_SHL_INT_2ADDR.S
m/mterp/x86-atom/OP_SHL_INT_LIT8.S
m/mterp/x86-atom/OP_SHR_INT.S
m/mterp/x86-atom/OP_SHR_INT_2ADDR.S
m/mterp/x86-atom/OP_SHR_INT_LIT8.S
m/mterp/x86-atom/OP_SPUT_OBJECT.S
m/mterp/x86-atom/OP_SPUT_OBJECT_VOLATILE.S
m/mterp/x86-atom/OP_SPUT_VOLATILE.S
m/mterp/x86-atom/OP_SUB_FLOAT.S
m/mterp/x86-atom/OP_SUB_FLOAT_2ADDR.S
m/mterp/x86-atom/OP_SUB_INT.S
m/mterp/x86-atom/OP_SUB_INT_2ADDR.S
m/mterp/x86-atom/OP_THROW.S
m/mterp/x86-atom/OP_THROW_VERIFICATION_ERROR.S
m/mterp/x86-atom/OP_USHR_INT_LIT8.S
m/mterp/x86-atom/OP_XOR_INT.S
m/mterp/x86-atom/OP_XOR_INT_2ADDR.S
m/mterp/x86-atom/OP_XOR_INT_LIT16.S
m/mterp/x86-atom/TODO.txt
m/mterp/x86-atom/bincmp.S
m/mterp/x86-atom/binop.S
m/mterp/x86-atom/binop2addr.S
m/mterp/x86-atom/binopD.S
m/mterp/x86-atom/binopD2addr.S
m/mterp/x86-atom/binopDLit16.S
m/mterp/x86-atom/binopDLit8.S
m/mterp/x86-atom/binopDivRemLong2Addr.S
m/mterp/x86-atom/binopF.S
m/mterp/x86-atom/binopF2addr.S
m/mterp/x86-atom/binopLit16.S
m/mterp/x86-atom/binopLit8.S
m/mterp/x86-atom/binopLit8S.S
m/mterp/x86-atom/binopS.S
m/mterp/x86-atom/binopS2addr.S
m/mterp/x86-atom/binopWide.S
m/mterp/x86-atom/binopWide2addr.S
m/mterp/x86-atom/entry.S
m/mterp/x86-atom/footer.S
m/mterp/x86-atom/header.S
m/mterp/x86-atom/unop.S
m/mterp/x86-atom/zcmp.S
f9d2cdf4762f818678f668cdff64294dbce131f1 02-Jun-2011 Bruce Beare <bruce.j.beare@intel.com> Combined patch from master branch

From: Jack Ren <jack.ren@intel.com>
Date: Tue, 1 Mar 2011 21:10:42 +0800
Subject: [PATCH 1/2] sync with korg/master commit dd19f5b91a1032e60871febb143850fd81000c5a

following patches are applied in one time:

commit dd19f5b91a1032e60871febb143850fd81000c5a
Merge: 2b3d7e8 a62c84f
Author: Romain Guy <romainguy@android.com>
Date: Thu Feb 24 11:24:47 2011 -0800

Merge "Fix for a crash when GC weak references."

commit 2b3d7e8eccd7cbf64b2ac41c05073a9191d0d3b3
Merge: ef4b061 b4719ed
Author: Raphael Moll <ralf@android.com>
Date: Tue Feb 22 14:55:59 2011 -0800

Merge "Open dexdump files in binary mode."

commit b4719eda048c4dc4a4b6e5280c7a2b8299051078
Author: Raphael Moll <ralf@android.com>
Date: Wed Feb 16 13:39:27 2011 -0800

Open dexdump files in binary mode.

Requires change Ia5c0a59e from system/core
(which defines O_BINARY globally.)

commit a62c84f62a27a08d6bef6da0b96913d616dd659f
Author: Mattias Petersson <mattias.petersson@sonyericsson.com>
Date: Tue Dec 21 09:28:04 2010 +0100

Fix for a crash when GC weak references.

When a weak reference had been cleared there was a small risk that
the VM crashed when the cleared reference was garbage collected.

This is an example of code that can cause the problem:
Integer referent = new Integer(10);
wref = new WeakReference<Integer>(referent);
wref.clear(); //set the referent to null

When a garbage collection starts, all objects are scanned, looking
for objects that can be collected. During this phase, a list of
weak references is created. A check is performed to ensure that
only references with a non-null referent are added to this list.
In most cases, for the example above, the referent will be null
at this point, and it will never be added to the list. But if
the timing is extremely bad it looks like it is possible for the
reference to end up on the list before the referent has been set
to null, and the referent is set to null a little while later.
This means that we now have a reference on the list with a null
referent.

A bit later in the garbage collection flow, the list of weak

s is traversed in order to clear the references that
can be collected. Here we got the crash because the code asserted
that the referent of the references in the list should be
non-null. And in some rare cases it actually was null. The fix
is simply to remove the assert.

commit ef4b0613d6952770aefac07d503955eb7b962d2b
Merge: 464104b e9503ef
Author: Andy McFadden <fadden@android.com>
Date: Mon Nov 8 19:38:19 2010 -0800

am e9503ef8: am 886130bc: (-s ours) Two patches.

* commit 'e9503ef8c460f4818062ecc80a9e0b4f8c6745b8':
Two patches.

Change-Id: I04c1c9204af8197a4352358d805af40f1312d2ea
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
x/etc/dx
ibdex/CmdUtils.c
ibdex/ZipArchive.c
m/Debugger.c
m/Init.c
m/arch/x86-atom/Call386ABI.S
m/mterp/config-x86-atom
m/mterp/out/InterpAsm-x86-atom.S
m/mterp/out/InterpC-x86-atom.c
m/mterp/x86-atom/OP_BREAKPOINT.S
m/mterp/x86-atom/OP_EXECUTE_INLINE.S
m/mterp/x86-atom/OP_EXECUTE_INLINE_RANGE.S
m/mterp/x86-atom/OP_GOTO_32.S
m/mterp/x86-atom/OP_MONITOR_EXIT.S
m/mterp/x86-atom/footer.S
c0ad55114857ec38000afd30b9fe60e7ea8e1398 09-Jun-2011 Carl Shapiro <cshapiro@google.com> Merge "Fix a minor leaks caused by failed initializations." into dalvik-dev
0c32ebc544b8dd1528dc007090abda0be5f31174 09-Jun-2011 Carl Shapiro <cshapiro@google.com> Fix a minor leaks caused by failed initializations.

Change-Id: Ie0939bce7422b224f4cfde9781470f2237ede497
m/Globals.h
m/StdioConverter.cpp
m/compiler/Compiler.cpp
ac518bce0e538749b12c09d4400cb0d30c350391 09-Jun-2011 Elliott Hughes <enh@google.com> Tidy up some includes.

Change-Id: I5abd4f8ab06db0c77fa369fcd97d8f1259b343df
exopt/OptMain.cpp
ibnativehelper/JNIHelp.cpp
ibnativehelper/include/nativehelper/JNIHelp.h
m/Common.h
m/Dvm.mk
d492aa1846ba97c5f64d608e427be80cd0a3cf73 08-Jun-2011 Carl Shapiro <cshapiro@google.com> Merge "Favor Object* over void* for the heap bitmap interfaces." into dalvik-dev
eebf7c690a6aabd50d70779d72685090a1eb84ff 08-Jun-2011 Carl Shapiro <cshapiro@google.com> Fix two issues with the card table.

Several tricks are used to adjust the base of the card table to save
instructions in the write barrier. This change corrects two
situtations where the card table did not properly account for the
effects of these tricks.

First, the card table is over allocated to ensure that the start
address can be magically aligned. When releasing the allocation these
additional bytes were not supplied to munmap creating a potential
leak.

Second, the valid card check did not use the right base address for a
containment check. The check used the allocation base which is may be
lower than the actual starting address. This would cause valid cards
at the high end of the heap to be considered invalid and invalid cards
at the low end of the heap to be considered valid.

Change-Id: I83bf4167b7c081c8626b6ff504342f42d0e776a2
m/alloc/CardTable.cpp
m/alloc/HeapInternal.h
689cc333b7be28b8b312f91999a31a2b0bd60c62 08-Jun-2011 Elliott Hughes <enh@google.com> Fix regular exit.

Change-Id: I653658f3b6e533a235f1108d0b625b9bdff7630c
m/Globals.h
m/Init.cpp
m/native/dalvik_system_VMRuntime.cpp
0d92a4072c00434e95a03642a4944acf81a81cc3 08-Jun-2011 Carl Shapiro <cshapiro@google.com> Favor Object* over void* for the heap bitmap interfaces.

Change-Id: I615dbff3e81a1128dc3ba43d6d426c370ae3abcf
m/alloc/Alloc.cpp
m/alloc/CardTable.cpp
m/alloc/HeapBitmap.cpp
m/alloc/HeapBitmap.h
m/alloc/MarkSweep.cpp
m/alloc/Verify.cpp
m/hprof/Hprof.cpp
708f143f318bb2167c810f9506102f4ad656545c 08-Jun-2011 Elliott Hughes <enh@google.com> Improve "waiting on"/"waiting to lock" SIGQUIT dump info.

In particular, when we're waiting on a Class, say which class:

I(16573) - waiting on <0xf5ed54f8> (java.lang.Class<java.lang.ref.ReferenceQueue>)

versus:

I(16573) - waiting on <0xf5feda38> (a java.util.LinkedList)

Bug: http://code.google.com/p/android/issues/detail?id=17349
Change-Id: I844d02c008b1499adb02995ff3da25ba8cad0e0a
m/Misc.cpp
m/Misc.h
m/Profile.cpp
m/Sync.cpp
m/Thread.cpp
m/Thread.h
m/interp/Stack.cpp
a0f945f21dd38df48946fcea57d798a9692734b8 08-Jun-2011 Elliott Hughes <enh@google.com> Fix gunit test build.

Change-Id: I409e75202cc6af0b0a48b81602f2ac322da7f404
nit-tests/Android.mk
nit-tests/dvmHumanReadableDescriptor_test.cpp
b08e2b6017770e887f6072c1520b2d7f2ef6916c 07-Jun-2011 Elliott Hughes <enh@google.com> Switch dvmHumanReadableDescriptor over to std::string.

(Prep work before making a change to stack dumps.)

Change-Id: I0af49b920f450fd2611e4b96e717a637483122d6
nit-tests/dvmHumanReadableDescriptor_test.cpp
m/Exception.cpp
m/Misc.cpp
m/Misc.h
m/Native.cpp
m/analysis/CodeVerify.cpp
m/analysis/VerifySubs.cpp
m/hprof/HprofClass.cpp
m/interp/Interp.cpp
m/interp/Stack.cpp
m/native/InternalNative.cpp
m/oo/Array.cpp
0fbb7030fff58e25718291811394487d95d95a3e 07-Jun-2011 Elliott Hughes <enh@google.com> Use std::string rather than malloc/free for saneDirName.

Also use std::vector instead of the cutils/array cruft.

Change-Id: I273147335cafbac5d336955f53b0b29d015f0589
exopt/Android.mk
m/Dalvik.h
m/Dvm.mk
m/Globals.h
m/Init.cpp
m/Properties.cpp
m/Properties.h
m/ReconfigureDvm.mk
m/UtfString.cpp
m/UtfString.h
m/analysis/DexPrepare.cpp
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/arm/FP/Thumb2VFP.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/dalvik_system_VMRuntime.cpp
0bb39c2258a1e45bb1142ec89b8ca5d2eaaa6f02 06-Jun-2011 Dan Bornstein <danfuzz@android.com> Note a possible improvement.

This section of code was left commented out because of a bug in
dx. Since the dex format version has since changed, we can now
use detection of the format version to enable the code. This
patch just notes that fact for the record.

Change-Id: I9129bc4420c17fb8c703b424a0bac9437f796210
m/analysis/CodeVerify.cpp
6f9edbe7d3a83f7741c4d56f9f5be1414ecabc9f 02-Jun-2011 Dan Bornstein <danfuzz@android.com> Add some error checking and clean out some cruft.

Error checking #1: When a cached dex file can't be created, do extra
analysis to figure out (and report) why.

Error checking #2: When opening classpath entries, become sensitive
to the file extension, only trying to open files with the right
extensions and complaining explicitly if it's unrecognized.

Cruft cleaning: We've never supported finding class files in directory
hierarchies in Dalvik. Fix some related comments and clean out some
code that tried (in vain) to implement a piece of that.

Bug: 4523201
Change-Id: I05b7a8570f147955cd62229fca72b50d36703752
ibdex/OptInvocation.cpp
m/analysis/DexPrepare.cpp
m/oo/Class.cpp
m/oo/Class.h
0216b58d1027f3bc99f782cc19f809093577868c 27-May-2011 Brian Carlstrom <bdc@google.com> Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master
6f3c21fb026d9489e5046416bcd5a84fa8e4615b 26-May-2011 Dan Bornstein <danfuzz@android.com> More LOG newline cleanup.

This changes all the places I could find where the log string was on the
line after its LOG call.

Change-Id: Iac6a9fcc64f46631fb093824ab60237dce1a5241
ibdex/DexFile.cpp
ibdex/DexSwapVerify.cpp
m/Debugger.cpp
m/Exception.cpp
m/JarFile.cpp
m/Profile.cpp
m/Thread.cpp
m/alloc/Heap.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexVerify.cpp
m/analysis/Liveness.cpp
m/analysis/Optimize.cpp
m/analysis/VfyBasicBlock.cpp
m/interp/Stack.cpp
m/native/dalvik_system_Zygote.cpp
m/oo/Class.cpp
m/oo/Resolve.cpp
m/reflect/Reflect.cpp
291c84f60853d30e1c0d79dd08c5e5164f588e26 26-May-2011 Dan Bornstein <danfuzz@android.com> Prefer printf format "%#x" over "0x%x".

I exist to serve.

Change-Id: I8e2880b20eefd466da8515d5b6b0c5cb75d56169
exopt/OptMain.cpp
ibdex/DexDataMap.cpp
ibdex/DexSwapVerify.cpp
ools/dmtracedump/CreateTestTrace.c
ools/dmtracedump/TraceDump.c
m/CheckJni.cpp
m/Native.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexVerify.cpp
m/analysis/RegisterMap.cpp
m/compiler/Dataflow.cpp
m/compiler/Frontend.cpp
m/compiler/codegen/arm/ArchUtility.cpp
m/compiler/codegen/arm/Assemble.cpp
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/arm/armv7-a-neon/MethodCodegenDriver.cpp
m/interp/Interp.cpp
m/interp/Jit.cpp
m/jdwp/JdwpHandler.cpp
m/mterp/armv5te/footer.S
m/mterp/c/opcommon.cpp
m/mterp/out/InterpAsm-armv5te-vfp.S
m/mterp/out/InterpAsm-armv5te.S
m/mterp/out/InterpAsm-armv7-a-neon.S
m/mterp/out/InterpAsm-armv7-a.S
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/mterp/portable/entry.cpp
m/oo/AccessCheck.cpp
m/test/AtomicTest.cpp
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
exopt/OptMain.cpp
m/AllocTracker.cpp
m/AtomicCache.cpp
m/BitVector.cpp
m/CheckJni.cpp
m/Common.h
m/Ddm.cpp
m/Debugger.cpp
m/DvmDex.cpp
m/Exception.cpp
m/Hash.cpp
m/IndirectRefTable.cpp
m/Init.cpp
m/InitRefs.cpp
m/InlineNative.cpp
m/JarFile.cpp
m/LinearAlloc.cpp
m/Misc.cpp
m/Native.cpp
m/PointerSet.cpp
m/Profile.cpp
m/RawDexFile.cpp
m/ReferenceTable.cpp
m/SignalCatcher.cpp
m/StdioConverter.cpp
m/Sync.cpp
m/Thread.cpp
m/UtfString.cpp
m/alloc/Alloc.cpp
m/alloc/Copying.cpp
m/alloc/DdmHeap.cpp
m/alloc/Heap.cpp
m/alloc/HeapSource.cpp
m/analysis/CodeVerify.cpp
m/analysis/DexPrepare.cpp
m/analysis/DexVerify.cpp
m/analysis/Liveness.cpp
m/analysis/Optimize.cpp
m/analysis/RegisterMap.cpp
m/analysis/VerifySubs.cpp
m/analysis/VfyBasicBlock.cpp
m/arch/generic/Call.cpp
m/compiler/Compiler.cpp
m/compiler/Frontend.cpp
m/compiler/Utility.cpp
m/compiler/codegen/arm/ArchUtility.cpp
m/compiler/codegen/arm/Assemble.cpp
m/compiler/codegen/arm/CodegenDriver.cpp
m/compiler/codegen/arm/armv7-a-neon/MethodCodegenDriver.cpp
m/hprof/Hprof.cpp
m/hprof/HprofOutput.cpp
m/interp/Interp.cpp
m/interp/Stack.cpp
m/jdwp/ExpandBuf.cpp
m/jdwp/JdwpAdb.cpp
m/jdwp/JdwpEvent.cpp
m/jdwp/JdwpHandler.cpp
m/jdwp/JdwpMain.cpp
m/jdwp/JdwpSocket.cpp
m/mterp/Mterp.cpp
m/mterp/c/OP_APUT_OBJECT.cpp
m/mterp/c/OP_BREAKPOINT.cpp
m/mterp/c/OP_MONITOR_ENTER.cpp
m/mterp/c/OP_MONITOR_EXIT.cpp
m/mterp/c/OP_PACKED_SWITCH.cpp
m/mterp/c/OP_SPARSE_SWITCH.cpp
m/mterp/c/OP_THROW.cpp
m/mterp/c/OP_UNUSED_F1FF.cpp
m/mterp/c/gotoTargets.cpp
m/mterp/c/header.cpp
m/mterp/c/opcommon.cpp
m/mterp/common/asm-constants.h
m/mterp/cstubs/entry.cpp
m/mterp/out/InterpC-allstubs.cpp
m/mterp/out/InterpC-armv5te-vfp.cpp
m/mterp/out/InterpC-armv5te.cpp
m/mterp/out/InterpC-armv7-a-neon.cpp
m/mterp/out/InterpC-armv7-a.cpp
m/mterp/out/InterpC-portable.cpp
m/mterp/out/InterpC-x86-atom.cpp
m/mterp/out/InterpC-x86.cpp
m/mterp/portable/entry.cpp
m/native/InternalNative.cpp
m/native/dalvik_system_DexFile.cpp
m/native/dalvik_system_VMDebug.cpp
m/native/dalvik_system_VMStack.cpp
m/native/dalvik_system_Zygote.cpp
m/native/java_lang_Class.cpp
m/native/java_lang_Runtime.cpp
m/native/java_lang_System.cpp
m/native/java_lang_Throwable.cpp
m/native/java_lang_VMClassLoader.cpp
m/native/java_lang_VMThread.cpp
m/native/java_lang_reflect_Array.cpp
m/native/java_lang_reflect_Constructor.cpp
m/native/java_lang_reflect_Field.cpp
m/native/java_lang_reflect_Method.cpp
m/native/org_apache_harmony_dalvik_ddmc_DdmVmInternal.cpp
m/oo/AccessCheck.cpp
m/oo/Array.cpp
m/oo/Class.cpp
m/oo/Object.cpp
m/oo/Resolve.cpp