OSDN Git Service

android-x86/dalvik.git
11 years agoam 69dd411c: Add dx option to always generate const-string/jumbo. do not merge.
jeffhao [Wed, 17 Oct 2012 01:54:58 +0000 (18:54 -0700)]
am 69dd411c: 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.

11 years agoAdd dx option to always generate const-string/jumbo. do not merge.
jeffhao [Tue, 16 Oct 2012 00:04:46 +0000 (17:04 -0700)]
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

11 years agoam 97358651: Revert the fix for incorrect package-private overriding.
Elliott Hughes [Mon, 15 Oct 2012 22:52:55 +0000 (15:52 -0700)]
am 97358651: Revert the fix for incorrect package-private overriding.

* commit '9735865121118f255c4c15183b236f9f30e795f1':
  Revert the fix for incorrect package-private overriding.

11 years agoRevert the fix for incorrect package-private overriding.
Elliott Hughes [Mon, 15 Oct 2012 21:29:23 +0000 (14:29 -0700)]
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

11 years agoam ed94ff79: Revert "Don\'t enforce access checks for overloading for targetSdkVersio...
Elliott Hughes [Sat, 13 Oct 2012 00:53:25 +0000 (17:53 -0700)]
am ed94ff79: Revert "Don\'t enforce access checks for overloading for targetSdkVersion < 17."

* commit 'ed94ff793680873d2c942641ccda9ea81c95b5ad':
  Revert "Don't enforce access checks for overloading for targetSdkVersion < 17."

11 years agoRevert "Don't enforce access checks for overloading for targetSdkVersion < 17."
Elliott Hughes [Sat, 13 Oct 2012 00:47:06 +0000 (17:47 -0700)]
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

11 years agoam 0fe88520: Don\'t enforce access checks for overloading for targetSdkVersion < 17.
Elliott Hughes [Fri, 12 Oct 2012 17:30:03 +0000 (10:30 -0700)]
am 0fe88520: Don\'t enforce access checks for overloading for targetSdkVersion < 17.

* commit '0fe885202fc2d1e7f3d34c99ae3487a9a6387be1':
  Don't enforce access checks for overloading for targetSdkVersion < 17.

11 years agoDon't enforce access checks for overloading for targetSdkVersion < 17.
Elliott Hughes [Fri, 12 Oct 2012 01:17:50 +0000 (18:17 -0700)]
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

11 years agoam 9c789541: Don\'t disable inlining for ARM.
Elliott Hughes [Wed, 10 Oct 2012 02:32:53 +0000 (19:32 -0700)]
am 9c789541: Don\'t disable inlining for ARM.

* commit '9c789541c5a37dc8c5d12d98b8db74def61e26db':
  Don't disable inlining for ARM.

11 years agoDon't disable inlining for ARM.
Elliott Hughes [Wed, 10 Oct 2012 01:07:14 +0000 (18:07 -0700)]
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

11 years agoam 43e44fd5: Merge "Log if dlopen(3) fails." into jb-mr1-dev
Elliott Hughes [Mon, 8 Oct 2012 19:14:19 +0000 (12:14 -0700)]
am 43e44fd5: Merge "Log if dlopen(3) fails." into jb-mr1-dev

* commit '43e44fd5952d0bbad335c54d1f5c3eac920d755b':
  Log if dlopen(3) fails.

11 years agoMerge "Log if dlopen(3) fails." into jb-mr1-dev
Elliott Hughes [Mon, 8 Oct 2012 19:12:13 +0000 (12:12 -0700)]
Merge "Log if dlopen(3) fails." into jb-mr1-dev

11 years agoam 2e3748ed: Final shuffle to make /sdcard work in shell.
Jeff Sharkey [Sun, 30 Sep 2012 20:23:29 +0000 (13:23 -0700)]
am 2e3748ed: Final shuffle to make /sdcard work in shell.

* commit '2e3748ed8161e710d1a4d9f8070e16ce3350209a':
  Final shuffle to make /sdcard work in shell.

11 years agoFinal shuffle to make /sdcard work in shell.
Jeff Sharkey [Sun, 30 Sep 2012 19:46:06 +0000 (12:46 -0700)]
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

11 years agoLog if dlopen(3) fails.
Elliott Hughes [Wed, 26 Sep 2012 23:40:41 +0000 (16:40 -0700)]
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

11 years agoam 9d9919e9: Merge "Allow max free size of heap to be configured." into jb-mr1-dev
Ian Rogers [Tue, 25 Sep 2012 19:50:17 +0000 (12:50 -0700)]
am 9d9919e9: Merge "Allow max free size of heap to be configured." into jb-mr1-dev

* commit '9d9919e93c3af16888cf90c475fff63758d73770':
  Allow max free size of heap to be configured.

11 years agoMerge "Allow max free size of heap to be configured." into jb-mr1-dev
Ian Rogers [Tue, 25 Sep 2012 18:34:18 +0000 (11:34 -0700)]
Merge "Allow max free size of heap to be configured." into jb-mr1-dev

11 years agoAllow max free size of heap to be configured.
Ian Rogers [Sun, 23 Sep 2012 23:33:32 +0000 (16:33 -0700)]
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

11 years agoam 5005743f: Move multi-user OBB under user-specific path.
Jeff Sharkey [Tue, 25 Sep 2012 00:44:40 +0000 (17:44 -0700)]
am 5005743f: Move multi-user OBB under user-specific path.

* commit '5005743f9b35effed87bbd9a9786f1f2e16bebe2':
  Move multi-user OBB under user-specific path.

11 years agoMove multi-user OBB under user-specific path.
Jeff Sharkey [Mon, 24 Sep 2012 21:10:02 +0000 (14:10 -0700)]
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

11 years agoam 74573701: am 9bd5a9db: Reconcile jb-dev and AOSP
Jean-Baptiste Queru [Sat, 22 Sep 2012 00:47:51 +0000 (17:47 -0700)]
am 74573701: am 9bd5a9db: Reconcile jb-dev and AOSP

* commit '74573701ee9863a0d2f1ba638b1c1cce69cdc2b2':
  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.

11 years agoam 9bd5a9db: Reconcile jb-dev and AOSP
Jean-Baptiste Queru [Fri, 21 Sep 2012 20:19:04 +0000 (13:19 -0700)]
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.

11 years agoReconcile jb-dev and AOSP
Jean-Baptiste Queru [Fri, 21 Sep 2012 20:15:15 +0000 (13:15 -0700)]
Reconcile jb-dev and AOSP

Change-Id: If3d2ce0f23b929f92d49649e015386670ed16863

11 years agoam 067c6202: am 74d4652e: am e64cfc1c: am b79d90eb: Merge "Log when the native trace...
Elliott Hughes [Fri, 21 Sep 2012 18:04:56 +0000 (11:04 -0700)]
am 067c6202: am 74d4652e: am e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"

* commit '067c62027dc592224e1ae16f9847b7273d3e4026':
  Log when the native trace is unavailable

11 years agoam 74d4652e: am e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"
Elliott Hughes [Thu, 20 Sep 2012 19:58:45 +0000 (12:58 -0700)]
am 74d4652e: am e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"

* commit '74d4652ebd432295a5442b024f51bce531abea15':
  Log when the native trace is unavailable

11 years agoam e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"
Elliott Hughes [Thu, 20 Sep 2012 19:53:14 +0000 (12:53 -0700)]
am e64cfc1c: am b79d90eb: Merge "Log when the native trace is unavailable"

* commit 'e64cfc1cdacd8a820acce596f6986e17e2f5e330':
  Log when the native trace is unavailable

11 years agoam b79d90eb: Merge "Log when the native trace is unavailable"
Elliott Hughes [Thu, 20 Sep 2012 19:49:45 +0000 (12:49 -0700)]
am b79d90eb: Merge "Log when the native trace is unavailable"

* commit 'b79d90ebd197b9040c06d73f5dc8bbc8fdad1d54':
  Log when the native trace is unavailable

11 years agoMerge "Log when the native trace is unavailable"
Elliott Hughes [Thu, 20 Sep 2012 18:34:32 +0000 (11:34 -0700)]
Merge "Log when the native trace is unavailable"

11 years agoLog when the native trace is unavailable
Andy McFadden [Wed, 19 Sep 2012 00:50:59 +0000 (17:50 -0700)]
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

11 years agoam b3667a19: Log when the native trace is unavailable
Andy McFadden [Thu, 20 Sep 2012 13:19:19 +0000 (06:19 -0700)]
am b3667a19: Log when the native trace is unavailable

* commit 'b3667a19f5c573b7785876979af4781292d27327':
  Log when the native trace is unavailable

11 years agoLog when the native trace is unavailable
Andy McFadden [Wed, 19 Sep 2012 00:50:59 +0000 (17:50 -0700)]
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

11 years agoam 86913b6b: am 90f12e0b: am 4535e29e: am a177aa50: Merge "Use 0xde as the poison...
Elliott Hughes [Mon, 17 Sep 2012 22:57:41 +0000 (15:57 -0700)]
am 86913b6b: am 90f12e0b: am 4535e29e: am a177aa50: Merge "Use 0xde as the poison value after JIT code cache reset."

* commit '86913b6b88b9ad4a1eea14be928da6c9485d53c0':
  Use 0xde as the poison value after JIT code cache reset.

11 years agoam 90f12e0b: am 4535e29e: am a177aa50: Merge "Use 0xde as the poison value after...
Elliott Hughes [Mon, 17 Sep 2012 22:54:47 +0000 (15:54 -0700)]
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.

11 years agoam 4535e29e: am a177aa50: Merge "Use 0xde as the poison value after JIT code cache...
Elliott Hughes [Mon, 17 Sep 2012 22:52:48 +0000 (15:52 -0700)]
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.

11 years agoam a177aa50: Merge "Use 0xde as the poison value after JIT code cache reset."
Elliott Hughes [Mon, 17 Sep 2012 22:50:19 +0000 (15:50 -0700)]
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.

11 years agoMerge "Use 0xde as the poison value after JIT code cache reset."
Elliott Hughes [Mon, 17 Sep 2012 22:47:11 +0000 (15:47 -0700)]
Merge "Use 0xde as the poison value after JIT code cache reset."

11 years agoUse 0xde as the poison value after JIT code cache reset.
Ben Cheng [Mon, 17 Sep 2012 19:17:59 +0000 (12:17 -0700)]
Use 0xde as the poison value after JIT code cache reset.

(cherry-pick of 60497bbcee68d98b2bdcb3fb64682b00d61b942d.)

Change-Id: I4f8c1bac2ac3bdc1d931e91f3e2e8038fe4c2b5a

11 years agoam ae341c38: Merge "Use 0xde as the poison value after JIT code cache reset." into...
Ben Cheng [Mon, 17 Sep 2012 19:25:20 +0000 (12:25 -0700)]
am ae341c38: Merge "Use 0xde as the poison value after JIT code cache reset." into jb-mr1-dev

* commit 'ae341c385bd23d73212e07e8e1c8bb5092c0e585':
  Use 0xde as the poison value after JIT code cache reset.

11 years agoMerge "Use 0xde as the poison value after JIT code cache reset." into jb-mr1-dev
Ben Cheng [Mon, 17 Sep 2012 19:22:40 +0000 (12:22 -0700)]
Merge "Use 0xde as the poison value after JIT code cache reset." into jb-mr1-dev

11 years agoUse 0xde as the poison value after JIT code cache reset.
Ben Cheng [Mon, 17 Sep 2012 19:17:59 +0000 (12:17 -0700)]
Use 0xde as the poison value after JIT code cache reset.

Change-Id: Ic25ede5bcd988f240d8c24df6bc5da81e2b03249

11 years agoam dde72bb4: am 8e80f76a: am d207be35: am f31a0600: Merge "Optimize those StrictMath...
Elliott Hughes [Fri, 14 Sep 2012 21:14:03 +0000 (14:14 -0700)]
am dde72bb4: am 8e80f76a: am d207be35: am f31a0600: Merge "Optimize those StrictMath routines that are identical to Math routines."

* commit 'dde72bb4edd23a319c02be9fcb3ee79757b26869':
  Optimize those StrictMath routines that are identical to Math routines.

11 years agoam 8e80f76a: am d207be35: am f31a0600: Merge "Optimize those StrictMath routines...
Elliott Hughes [Fri, 14 Sep 2012 21:11:53 +0000 (14:11 -0700)]
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.

11 years agoam d207be35: am f31a0600: Merge "Optimize those StrictMath routines that are identica...
Elliott Hughes [Fri, 14 Sep 2012 21:10:03 +0000 (14:10 -0700)]
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.

11 years agoam f31a0600: Merge "Optimize those StrictMath routines that are identical to Math...
Elliott Hughes [Fri, 14 Sep 2012 21:08:24 +0000 (14:08 -0700)]
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.

11 years agoMerge "Optimize those StrictMath routines that are identical to Math routines."
Elliott Hughes [Fri, 14 Sep 2012 20:51:18 +0000 (13:51 -0700)]
Merge "Optimize those StrictMath routines that are identical to Math routines."

11 years agoOptimize those StrictMath routines that are identical to Math routines.
Elliott Hughes [Fri, 14 Sep 2012 18:54:57 +0000 (11:54 -0700)]
Optimize those StrictMath routines that are identical to Math routines.

We can just use the existing Math intinsics.

Bug: 7146208
Change-Id: I9e78d33cf65a5dcc5a7c0133e67bd9c3c1e43f23

11 years agoam c524d17c: Merge "Missing EMULATED_STORAGE_TARGET isn\'t an error." into jb-mr1-dev
Jeff Sharkey [Wed, 12 Sep 2012 18:00:09 +0000 (11:00 -0700)]
am c524d17c: Merge "Missing EMULATED_STORAGE_TARGET isn\'t an error." into jb-mr1-dev

* commit 'c524d17cc39e429e4c6398f6c8f7d428bdc6885a':
  Missing EMULATED_STORAGE_TARGET isn't an error.

11 years agoMerge "Missing EMULATED_STORAGE_TARGET isn't an error." into jb-mr1-dev
Jeff Sharkey [Wed, 12 Sep 2012 17:58:20 +0000 (10:58 -0700)]
Merge "Missing EMULATED_STORAGE_TARGET isn't an error." into jb-mr1-dev

11 years agoam acc6d354: (-s ours) am 91a17e5e: (-s ours) Reconcile with jb-release - do not...
The Android Open Source Project [Wed, 12 Sep 2012 14:54:32 +0000 (07:54 -0700)]
am acc6d354: (-s ours) am 91a17e5e: (-s ours) Reconcile with jb-release - do not merge

* commit 'acc6d354dbe440abdea964e791d826701feba035':
  Test if new build is kicked off.

11 years agoam 91a17e5e: (-s ours) Reconcile with jb-release - do not merge
The Android Open Source Project [Wed, 12 Sep 2012 14:51:45 +0000 (07:51 -0700)]
am 91a17e5e: (-s ours) Reconcile with jb-release - do not merge

* commit '91a17e5e78ddc49b761133151831770379dc777f':
  Test if new build is kicked off.

11 years agoReconcile with jb-release - do not merge
The Android Open Source Project [Wed, 12 Sep 2012 14:49:15 +0000 (07:49 -0700)]
Reconcile with jb-release - do not merge

Change-Id: I20cffa47e360af1eac86d8a04aa53441f9260bc6

11 years agoMissing EMULATED_STORAGE_TARGET isn't an error.
Jeff Sharkey [Wed, 12 Sep 2012 06:40:42 +0000 (23:40 -0700)]
Missing EMULATED_STORAGE_TARGET isn't an error.

Devices without emulated storage should just skip the tmpfs.

Bug: 7131382
Change-Id: I9c697e4faf7864ec3a2695cd3770fbf0c9a5cce3

11 years agoTest if new build is kicked off.
Ben Cheng [Tue, 11 Sep 2012 23:20:25 +0000 (16:20 -0700)]
Test if new build is kicked off.

Change-Id: Ia6a25f00cb28e80111b78d87180575d57c55b062

11 years agoInclude user identifier in external storage paths.
Jeff Sharkey [Sat, 8 Sep 2012 05:58:13 +0000 (22:58 -0700)]
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

11 years agoFix an ugly bug where try/catch offsets weren't being mapped properly. do not merge.
Jesse Wilson [Sat, 1 Sep 2012 04:37:56 +0000 (00:37 -0400)]
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

11 years agoFix a bug where the max blowup of annotations was incorrect. do not merge.
Jesse Wilson [Sat, 1 Sep 2012 05:01:05 +0000 (01:01 -0400)]
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

11 years agoFix a bug where debugInfos' size wasn't being computed. do not merge.
Jesse Wilson [Thu, 23 Aug 2012 06:20:26 +0000 (23:20 -0700)]
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

11 years agoRemove /sdcard hack for shell users.
Jeff Sharkey [Wed, 5 Sep 2012 22:49:39 +0000 (15:49 -0700)]
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: 70948587064600
Change-Id: Id91e3b3e521a3b3e1bb5358920adc66a0a43917f

11 years agoam e599c468: am cfeacbdd: Merge "Remove unnecessary compiler pragma."
Ian Rogers [Wed, 5 Sep 2012 14:52:13 +0000 (07:52 -0700)]
am e599c468: am cfeacbdd: Merge "Remove unnecessary compiler pragma."

* commit 'e599c4684ac47fe6417b9c482b7ff651513988ff':
  Remove unnecessary compiler pragma.

11 years agoam cfeacbdd: Merge "Remove unnecessary compiler pragma."
Ian Rogers [Wed, 5 Sep 2012 14:48:15 +0000 (07:48 -0700)]
am cfeacbdd: Merge "Remove unnecessary compiler pragma."

* commit 'cfeacbdd0cdd71a7974ac623e6534d0221d93ed9':
  Remove unnecessary compiler pragma.

11 years agoMerge "Remove unnecessary compiler pragma."
Ian Rogers [Wed, 5 Sep 2012 14:41:00 +0000 (07:41 -0700)]
Merge "Remove unnecessary compiler pragma."

11 years agoam 86e036a8: am e6516a53: Merge "Fix an ugly bug where try/catch offsets weren\'t...
Jean-Philippe Lesot [Wed, 5 Sep 2012 07:59:27 +0000 (00:59 -0700)]
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.

11 years agoam e6516a53: Merge "Fix an ugly bug where try/catch offsets weren\'t being mapped...
Jean-Philippe Lesot [Wed, 5 Sep 2012 07:51:54 +0000 (00:51 -0700)]
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.

11 years agoMerge "Fix an ugly bug where try/catch offsets weren't being mapped properly."
Jean-Philippe Lesot [Wed, 5 Sep 2012 07:47:38 +0000 (00:47 -0700)]
Merge "Fix an ugly bug where try/catch offsets weren't being mapped properly."

11 years agoam 93ee4913: am f3b60d2f: Merge "Fix a bug where the max blowup of annotations was...
Jean-Philippe Lesot [Wed, 5 Sep 2012 07:39:22 +0000 (00:39 -0700)]
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.

11 years agoam f3b60d2f: Merge "Fix a bug where the max blowup of annotations was incorrect."
Jean-Philippe Lesot [Wed, 5 Sep 2012 07:35:15 +0000 (00:35 -0700)]
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.

11 years agoMerge "Fix a bug where the max blowup of annotations was incorrect."
Jean-Philippe Lesot [Wed, 5 Sep 2012 07:30:46 +0000 (00:30 -0700)]
Merge "Fix a bug where the max blowup of annotations was incorrect."

11 years agoFix a bug where the max blowup of annotations was incorrect.
Jesse Wilson [Sat, 1 Sep 2012 05:01:05 +0000 (01:01 -0400)]
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

11 years agoFix an ugly bug where try/catch offsets weren't being mapped properly.
Jesse Wilson [Sat, 1 Sep 2012 04:37:56 +0000 (00:37 -0400)]
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

11 years agoMake dex merging stateless. do not merge.
Xavier Ducrohet [Mon, 11 Jun 2012 22:17:31 +0000 (15:17 -0700)]
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

11 years agoSupport debug info in dexmerge. do not merge.
Elliott Hughes [Thu, 7 Jun 2012 23:47:38 +0000 (16:47 -0700)]
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

11 years agoMerge "Access to all users' external storage." into jb-mr1-dev
Jeff Sharkey [Thu, 30 Aug 2012 17:38:52 +0000 (10:38 -0700)]
Merge "Access to all users' external storage." into jb-mr1-dev

11 years agoMerge "Shared OBB storage across users." into jb-mr1-dev
Jeff Sharkey [Thu, 30 Aug 2012 17:28:52 +0000 (10:28 -0700)]
Merge "Shared OBB storage across users." into jb-mr1-dev

11 years agoam 8e98f776: am 3e46814d: Merge "Don\'t crash in dvmQuasiAtomicsShutdown if we never...
Elliott Hughes [Wed, 29 Aug 2012 23:35:42 +0000 (16:35 -0700)]
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.

11 years agoam 3e46814d: Merge "Don\'t crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiA...
Elliott Hughes [Wed, 29 Aug 2012 23:31:07 +0000 (16:31 -0700)]
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.

11 years agoMerge "Don't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup."
Elliott Hughes [Wed, 29 Aug 2012 23:24:47 +0000 (16:24 -0700)]
Merge "Don't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup."

11 years agoDon't crash in dvmQuasiAtomicsShutdown if we never ran dvmQuasiAtomicsStartup.
Elliott Hughes [Wed, 29 Aug 2012 22:46:18 +0000 (15:46 -0700)]
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

11 years agoRemove unnecessary compiler pragma.
Ian Rogers [Wed, 29 Aug 2012 21:07:21 +0000 (14:07 -0700)]
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

11 years agoAccess to all users' external storage.
Jeff Sharkey [Tue, 28 Aug 2012 23:23:22 +0000 (16:23 -0700)]
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

11 years agoRevert "Revert "Trim pre-Zygote fork, fix under-estimate of heap limit.""
Ian Rogers [Tue, 28 Aug 2012 22:54:19 +0000 (15:54 -0700)]
Revert "Revert "Trim pre-Zygote fork, fix under-estimate of heap limit.""

This reverts commit 4c7e27186d87ccd40646fd4f514dc982ff5b40b1.

11 years agoRevert "Revert "Upgrade to dlmalloc 2.8.5.""
Ian Rogers [Tue, 28 Aug 2012 22:54:09 +0000 (15:54 -0700)]
Revert "Revert "Upgrade to dlmalloc 2.8.5.""

This reverts commit 729eebbb4e4ec5b826b7230b4c02267da341b70b.

11 years agoShared OBB storage across users.
Jeff Sharkey [Mon, 27 Aug 2012 22:47:24 +0000 (15:47 -0700)]
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

11 years agoam 4014e152: am a5731795: Merge "Correctly handle switches on values in a high register"
Jean-Philippe Lesot [Tue, 28 Aug 2012 17:06:20 +0000 (10:06 -0700)]
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

11 years agoam a5731795: Merge "Correctly handle switches on values in a high register"
Jean-Philippe Lesot [Tue, 28 Aug 2012 17:01:52 +0000 (10:01 -0700)]
am a5731795: Merge "Correctly handle switches on values in a high register"

* commit 'a57317952de3fc37876f97e8655cc773b97df891':
  Correctly handle switches on values in a high register

11 years agoMerge "Correctly handle switches on values in a high register"
Jean-Philippe Lesot [Tue, 28 Aug 2012 16:58:20 +0000 (09:58 -0700)]
Merge "Correctly handle switches on values in a high register"

11 years agoam cc686898: am f6104618: Merge "Fix a bug where debugInfos\' size wasn\'t being...
Elliott Hughes [Mon, 27 Aug 2012 22:17:33 +0000 (15:17 -0700)]
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.

11 years agoam f6104618: Merge "Fix a bug where debugInfos\' size wasn\'t being computed."
Elliott Hughes [Mon, 27 Aug 2012 22:13:56 +0000 (15:13 -0700)]
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.

11 years agoMerge "Fix a bug where debugInfos' size wasn't being computed."
Elliott Hughes [Mon, 27 Aug 2012 21:57:24 +0000 (14:57 -0700)]
Merge "Fix a bug where debugInfos' size wasn't being computed."

11 years agoam f76ab40f: am ecda5d85: Merge "Fix for 6994917 GC is slower since JOO33B per Framew...
Ian Rogers [Fri, 24 Aug 2012 17:35:51 +0000 (10:35 -0700)]
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

11 years agoam ecda5d85: Merge "Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test"
Ian Rogers [Fri, 24 Aug 2012 17:33:41 +0000 (10:33 -0700)]
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

11 years agoMerge "Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test"
Ian Rogers [Fri, 24 Aug 2012 17:15:37 +0000 (10:15 -0700)]
Merge "Fix for 6994917 GC is slower since JOO33B per FrameworkPerf test"

11 years agoRevert "Trim pre-Zygote fork, fix under-estimate of heap limit."
Ian Rogers [Fri, 24 Aug 2012 16:40:26 +0000 (09:40 -0700)]
Revert "Trim pre-Zygote fork, fix under-estimate of heap limit."

This reverts commit 2f8d5e11f735e9ee8e235c31b3f113f6c90ad63c.

11 years agoam 6464661f: am b48569ac: Merge "Fix build warning."
Brian Carlstrom [Fri, 24 Aug 2012 14:30:34 +0000 (07:30 -0700)]
am 6464661f: am b48569ac: Merge "Fix build warning."

* commit '6464661ff5ca7dd83f60f68e7b40af0ed3ec8760':
  Fix build warning.

11 years agoam bd561cbf: am a9dd9337: Merge "Trim pre-Zygote fork, fix under-estimate of heap...
Ian Rogers [Fri, 24 Aug 2012 14:29:48 +0000 (07:29 -0700)]
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.

11 years agoam b48569ac: Merge "Fix build warning."
Brian Carlstrom [Fri, 24 Aug 2012 03:35:43 +0000 (20:35 -0700)]
am b48569ac: Merge "Fix build warning."

* commit 'b48569acbb7b3702f1071befa5ebfeae7a46303b':
  Fix build warning.

11 years agoMerge "Fix build warning."
Brian Carlstrom [Fri, 24 Aug 2012 03:20:47 +0000 (20:20 -0700)]
Merge "Fix build warning."

11 years agoFix build warning.
Ying Wang [Thu, 23 Aug 2012 18:12:12 +0000 (11:12 -0700)]
Fix build warning.

Change-Id: I1f9813c9dc1dfc388f82f37584fe60256b6a8b12

11 years agoam a9dd9337: Merge "Trim pre-Zygote fork, fix under-estimate of heap limit."
Ian Rogers [Thu, 23 Aug 2012 20:48:25 +0000 (13:48 -0700)]
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.

11 years agoMerge "Trim pre-Zygote fork, fix under-estimate of heap limit."
Ian Rogers [Thu, 23 Aug 2012 20:35:23 +0000 (13:35 -0700)]
Merge "Trim pre-Zygote fork, fix under-estimate of heap limit."

11 years agoFix for 6994917 GC is slower since JOO33B per FrameworkPerf test
Mathieu Chartier [Wed, 22 Aug 2012 01:14:19 +0000 (18:14 -0700)]
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