OSDN Git Service

android-x86/dalvik.git
12 years agoam 3492e8ab: Merge " Trim after explicit gc."
Elliott Hughes [Sat, 12 May 2012 04:56:02 +0000 (21:56 -0700)]
am 3492e8ab: Merge "  Trim after explicit gc."

* commit '3492e8ab5939ebdbec642ad284bce015937e60d9':
  Trim after explicit gc.

12 years agoMerge " Trim after explicit gc."
Elliott Hughes [Fri, 11 May 2012 22:29:32 +0000 (15:29 -0700)]
Merge "  Trim after explicit gc."

12 years ago Trim after explicit gc.
SangWook Han [Fri, 11 May 2012 11:58:01 +0000 (20:58 +0900)]
  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

12 years agoam 0cea134b: Fix: Issue 26627: Dalvik Heap Trim timer value after GC
SangWook Han [Fri, 11 May 2012 22:18:21 +0000 (15:18 -0700)]
am 0cea134b:  Fix: Issue 26627: Dalvik Heap Trim timer value after GC

* commit '0cea134bef68f348225178dacf03716d4907bdbe':
  Fix: Issue 26627: Dalvik Heap Trim timer value after GC

12 years ago Fix: Issue 26627: Dalvik Heap Trim timer value after GC
SangWook Han [Fri, 11 May 2012 11:45:33 +0000 (20:45 +0900)]
 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

12 years agoam 07cfd74d: Merge " Fix: Issue 26627: Dalvik Heap Trim timer value after GC"
Elliott Hughes [Fri, 11 May 2012 21:14:07 +0000 (14:14 -0700)]
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

12 years agoMerge " Fix: Issue 26627: Dalvik Heap Trim timer value after GC"
Elliott Hughes [Fri, 11 May 2012 18:56:15 +0000 (11:56 -0700)]
Merge " Fix: Issue 26627: Dalvik Heap Trim timer value after GC"

12 years ago Fix: Issue 26627: Dalvik Heap Trim timer value after GC
SangWook Han [Fri, 11 May 2012 11:45:33 +0000 (20:45 +0900)]
 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

12 years agoam 259298d9: Make sure we have room for future Maps builds.
Elliott Hughes [Thu, 10 May 2012 16:25:55 +0000 (09:25 -0700)]
am 259298d9: Make sure we have room for future Maps builds.

* commit '259298d964e55be9f2afbd9e145311895ed920da':
  Make sure we have room for future Maps builds.

12 years agoMake sure we have room for future Maps builds.
Elliott Hughes [Thu, 10 May 2012 00:45:01 +0000 (17:45 -0700)]
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

12 years agoam 2b02fef4: Lose libnativehelper to its own project for the PDK.
Elliott Hughes [Fri, 4 May 2012 23:59:59 +0000 (16:59 -0700)]
am 2b02fef4: Lose libnativehelper to its own project for the PDK.

* commit '2b02fef409ebf91d3a9e6a624ab4f60ef540dbc9':
  Lose libnativehelper to its own project for the PDK.

12 years agoam 20aeca6e: Merge "Pad the 8 and 16 bit Jvalue members"
Elliott Hughes [Fri, 4 May 2012 04:50:07 +0000 (21:50 -0700)]
am 20aeca6e: Merge "Pad the 8 and 16 bit Jvalue members"

* commit '20aeca6e2b18c07d3840f4b09f09186511148d8c':
  Pad the 8 and 16 bit Jvalue members

12 years agoresolved conflicts for merge of 93a44a28 to jb-dev-plus-aosp
Elliott Hughes [Fri, 4 May 2012 01:35:53 +0000 (18:35 -0700)]
resolved conflicts for merge of 93a44a28 to jb-dev-plus-aosp

Change-Id: I9c1f2e37602bea86e70333d2b274665e99fcbd92

12 years agoLose libnativehelper to its own project for the PDK.
Elliott Hughes [Fri, 4 May 2012 00:18:25 +0000 (17:18 -0700)]
Lose libnativehelper to its own project for the PDK.

Bug: 6369821
Change-Id: Iae06cf1570a14ddefad6b31eec904d9fa598d89f

12 years agoMerge "Pad the 8 and 16 bit Jvalue members"
Elliott Hughes [Thu, 3 May 2012 17:49:51 +0000 (10:49 -0700)]
Merge "Pad the 8 and 16 bit Jvalue members"

12 years agoPad the 8 and 16 bit Jvalue members
Chris Dearman [Tue, 31 Jan 2012 02:10:35 +0000 (18:10 -0800)]
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>
12 years agoMerge "[MIPS] Dalvik fast interpreter support and JIT implementation"
Elliott Hughes [Thu, 3 May 2012 16:42:38 +0000 (09:42 -0700)]
Merge "[MIPS] Dalvik fast interpreter support and JIT implementation"

12 years agoam e6bdc430: Merge "Fix a bug in dvmQuasiAtomicsShutdown."
Elliott Hughes [Thu, 3 May 2012 14:20:21 +0000 (07:20 -0700)]
am e6bdc430: Merge "Fix a bug in dvmQuasiAtomicsShutdown."

* commit 'e6bdc430f38ef9c2e74ecdb0cee5aa04848e71fc':
  Fix a bug in dvmQuasiAtomicsShutdown.

12 years agoMerge "Fix a bug in dvmQuasiAtomicsShutdown."
Elliott Hughes [Thu, 3 May 2012 06:21:27 +0000 (23:21 -0700)]
Merge "Fix a bug in dvmQuasiAtomicsShutdown."

12 years agoam a14639df: Merge "Support architectures that require correctly aligned doubles"
Elliott Hughes [Thu, 3 May 2012 00:06:58 +0000 (17:06 -0700)]
am a14639df: Merge "Support architectures that require correctly aligned doubles"

* commit 'a14639df65cc0aefafcddda5aae8b591204e45f9':
  Support architectures that require correctly aligned doubles

12 years agoFix a bug in dvmQuasiAtomicsShutdown.
Elliott Hughes [Wed, 2 May 2012 23:07:36 +0000 (16:07 -0700)]
Fix a bug in dvmQuasiAtomicsShutdown.

Spotted visually when merging to an internal branch.

Change-Id: Ic130608bfa46036cec0684cd50706178cfefd2a0

12 years agoresolved conflicts for merge of 323d9152 to jb-dev-plus-aosp
Elliott Hughes [Wed, 2 May 2012 22:08:08 +0000 (15:08 -0700)]
resolved conflicts for merge of 323d9152 to jb-dev-plus-aosp

Change-Id: Ie94542150dad725ca09ad2824cddd034cd6a149b

12 years ago[MIPS] Dalvik fast interpreter support and JIT implementation
Raghu Gandham [Wed, 2 May 2012 21:27:16 +0000 (14:27 -0700)]
[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>
12 years agoMerge "Support architectures that require correctly aligned doubles"
Elliott Hughes [Wed, 2 May 2012 20:47:18 +0000 (13:47 -0700)]
Merge "Support architectures that require correctly aligned doubles"

12 years agoMerge "Simplify the quasi-atomic stuff and add MIPS support."
Elliott Hughes [Wed, 2 May 2012 17:25:07 +0000 (10:25 -0700)]
Merge "Simplify the quasi-atomic stuff and add MIPS support."

12 years agoSimplify the quasi-atomic stuff and add MIPS support.
Elliott Hughes [Wed, 2 May 2012 00:24:51 +0000 (17:24 -0700)]
Simplify the quasi-atomic stuff and add MIPS support.

Change-Id: Iac896c03ef707c998cc714628adea0255f21c035

12 years agoresolved conflicts for merge of 5a1fcc8a to jb-dev-plus-aosp
Elliott Hughes [Tue, 1 May 2012 05:46:12 +0000 (22:46 -0700)]
resolved conflicts for merge of 5a1fcc8a to jb-dev-plus-aosp

Change-Id: I229e532e3c2892251244bde61290ff40e7b95b4e

12 years agoresolved conflicts for merge of 4c5f9711 to jb-dev-plus-aosp
Elliott Hughes [Tue, 1 May 2012 05:15:31 +0000 (22:15 -0700)]
resolved conflicts for merge of 4c5f9711 to jb-dev-plus-aosp

Change-Id: I4c724c3df990a5abf42cec748bbbba25ee5bc112

12 years agoam 8b946491: Merge "Fixed bug in x86-atom fast interpreter. Adds guard for potential...
Elliott Hughes [Tue, 1 May 2012 04:04:50 +0000 (21:04 -0700)]
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.

12 years agoMerge changes I8669dfbc,I0ffb15b7,Ib2b8e87a,Ifc7de30e
Elliott Hughes [Tue, 1 May 2012 01:43:30 +0000 (18:43 -0700)]
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

12 years agoMerge "Fix the portable interpreter build"
Elliott Hughes [Tue, 1 May 2012 01:42:05 +0000 (18:42 -0700)]
Merge "Fix the portable interpreter build"

12 years agoMerge "Fixed bug in x86-atom fast interpreter. Adds guard for potential null pointer...
Elliott Hughes [Tue, 1 May 2012 00:47:55 +0000 (17:47 -0700)]
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."

12 years agoam 0cdf3934: am d2a4bb85: Merge "Fix a leak in the JIT."
Elliott Hughes [Tue, 24 Apr 2012 21:31:33 +0000 (14:31 -0700)]
am 0cdf3934: am d2a4bb85: Merge "Fix a leak in the JIT."

* commit '0cdf3934d334805fd6f22040fa781a86515ad2bf':
  Fix a leak in the JIT.

12 years agoresolved conflicts for merge of 156f3159 to master
Elliott Hughes [Tue, 24 Apr 2012 21:25:11 +0000 (14:25 -0700)]
resolved conflicts for merge of 156f3159 to master

Change-Id: I2f954597257df43d3c6367bbab40f1fdad229502

12 years agoapps forked from zygote run in default cgroup
Glenn Kasten [Sun, 22 Apr 2012 18:26:01 +0000 (11:26 -0700)]
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

12 years agoam d2a4bb85: Merge "Fix a leak in the JIT."
Elliott Hughes [Fri, 20 Apr 2012 23:47:54 +0000 (16:47 -0700)]
am d2a4bb85: Merge "Fix a leak in the JIT."

* commit 'd2a4bb85573f20edd751557dfdca2033652b9f36':
  Fix a leak in the JIT.

12 years agoMerge "Fix a leak in the JIT."
Elliott Hughes [Fri, 20 Apr 2012 17:11:41 +0000 (10:11 -0700)]
Merge "Fix a leak in the JIT."

12 years agoam 53b07f7b: Merge "Fix a small memory leak."
Elliott Hughes [Fri, 20 Apr 2012 05:56:08 +0000 (22:56 -0700)]
am 53b07f7b: Merge "Fix a small memory leak."

* commit '53b07f7bc2fb344727511e3a1f7ce8f10e36e7b0':
  Fix a small memory leak.

12 years agoFix a leak in the JIT.
Elliott Hughes [Fri, 20 Apr 2012 00:16:08 +0000 (17:16 -0700)]
Fix a leak in the JIT.

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

Change-Id: I12b78cb1586222b082b140e4a1db00969ce23e3c

12 years agoMerge "Fix a small memory leak."
Elliott Hughes [Thu, 19 Apr 2012 22:45:10 +0000 (15:45 -0700)]
Merge "Fix a small memory leak."

12 years agoFix a small memory leak.
Elliott Hughes [Sat, 7 Jan 2012 01:25:14 +0000 (17:25 -0800)]
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

12 years agoMerge "Output number of bytes used by LinearAlloc during dexopt."
jeffhao [Mon, 16 Apr 2012 18:12:46 +0000 (11:12 -0700)]
Merge "Output number of bytes used by LinearAlloc during dexopt."

12 years agoOutput number of bytes used by LinearAlloc during dexopt.
jeffhao [Fri, 13 Apr 2012 23:55:01 +0000 (16:55 -0700)]
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

12 years agoFix an array out-of-bound read in the JIT compiler.
Ben Cheng [Fri, 13 Apr 2012 23:35:41 +0000 (16:35 -0700)]
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

12 years agoAdd a -XX:mainThreadStackSize= option.
Elliott Hughes [Thu, 12 Apr 2012 23:01:09 +0000 (16:01 -0700)]
Add a -XX:mainThreadStackSize= option.

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

Bug: 6315322
Change-Id: I84bd5974f830f348fd9a0486ae972520b4a02cc4

12 years agoMerge "Support building Dalvik with AddressSanitizer."
Bill Buzbee [Thu, 12 Apr 2012 18:04:13 +0000 (11:04 -0700)]
Merge "Support building Dalvik with AddressSanitizer."

12 years agoSupport building Dalvik with AddressSanitizer.
Evgeniy Stepanov [Wed, 4 Apr 2012 16:23:54 +0000 (20:23 +0400)]
Support building Dalvik with AddressSanitizer.

Change-Id: I007c5080081a4a66b39fa6b539afd8f00fd8ce0f

12 years agoMake sure we rethrow the same exception we started with.
Jeff Brown [Wed, 11 Apr 2012 03:34:39 +0000 (20:34 -0700)]
Make sure we rethrow the same exception we started with.

Bug: 6312938
Change-Id: I41d8adf27fd32103c55d9eeafa28a25c37f5029d

12 years agoMake indexOfCommon clamp start to count when start > count.
jeffhao [Fri, 6 Apr 2012 17:53:11 +0000 (10:53 -0700)]
Make indexOfCommon clamp start to count when start > count.

This fixes bug http://b/6299423

Change-Id: Ib41166d021eac9cc47830ecce30fe9c58f2cec39

12 years agoThrow ArrayStoreException instead of corrupting the heap.
Elliott Hughes [Thu, 5 Apr 2012 23:27:26 +0000 (16:27 -0700)]
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

12 years agoDump the native stacks of threads in VmWait as well Native.
Elliott Hughes [Thu, 5 Apr 2012 22:30:42 +0000 (15:30 -0700)]
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

12 years agoMerge remote-tracking branch 'goog/ics-aah'
Mike Lockwood [Tue, 3 Apr 2012 17:34:41 +0000 (10:34 -0700)]
Merge remote-tracking branch 'goog/ics-aah'

12 years agoam 6353fe2f: am 2a3cc744: Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"
Elliott Hughes [Sat, 31 Mar 2012 05:35:24 +0000 (22:35 -0700)]
am 6353fe2f: am 2a3cc744: Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"

* commit '6353fe2fbb380551a576fb38ad68dbc1566d250c':
  Set SYSTEM_PAGE_SIZE from PAGE_SHIFT

12 years agoam 2a3cc744: Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"
Elliott Hughes [Sat, 31 Mar 2012 05:33:22 +0000 (22:33 -0700)]
am 2a3cc744: Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"

* commit '2a3cc744730ec76a05b31df8ac5b6de538d6d70b':
  Set SYSTEM_PAGE_SIZE from PAGE_SHIFT

12 years agoMerge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"
Elliott Hughes [Sat, 31 Mar 2012 03:02:23 +0000 (20:02 -0700)]
Merge "Set SYSTEM_PAGE_SIZE from PAGE_SHIFT"

12 years agoam b9f5c7aa: am 3ddb30bd: am 6bcf5d20: Merge "Obvious mix of = and =="
Elliott Hughes [Wed, 28 Mar 2012 01:00:47 +0000 (18:00 -0700)]
am b9f5c7aa: am 3ddb30bd: am 6bcf5d20: Merge "Obvious mix of = and =="

* commit 'b9f5c7aa88c3c731501bd1c61baefa5c761947a1':
  Obvious mix of = and ==

12 years agoam 92ab8d50: am 531f7273: am 54ff31a5: Merge "Compact merged dexes on their byte...
Elliott Hughes [Wed, 28 Mar 2012 01:00:46 +0000 (18:00 -0700)]
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

12 years agoam 3ddb30bd: am 6bcf5d20: Merge "Obvious mix of = and =="
Elliott Hughes [Wed, 28 Mar 2012 00:57:43 +0000 (17:57 -0700)]
am 3ddb30bd: am 6bcf5d20: Merge "Obvious mix of = and =="

* commit '3ddb30bd32fd2abe06741f001411479c2d4ee416':
  Obvious mix of = and ==

12 years agoam 531f7273: am 54ff31a5: Merge "Compact merged dexes on their byte aligned size"
Elliott Hughes [Wed, 28 Mar 2012 00:57:42 +0000 (17:57 -0700)]
am 531f7273: am 54ff31a5: Merge "Compact merged dexes on their byte aligned size"

* commit '531f7273925a1de8d13fe89d5b6409d7c64b5b56':
  Compact merged dexes on their byte aligned size

12 years agoam 6bcf5d20: Merge "Obvious mix of = and =="
Elliott Hughes [Wed, 28 Mar 2012 00:53:40 +0000 (17:53 -0700)]
am 6bcf5d20: Merge "Obvious mix of = and =="

* commit '6bcf5d200bc9d1be6c3d766005c19694a325da61':
  Obvious mix of = and ==

12 years agoam 54ff31a5: Merge "Compact merged dexes on their byte aligned size"
Elliott Hughes [Wed, 28 Mar 2012 00:53:39 +0000 (17:53 -0700)]
am 54ff31a5: Merge "Compact merged dexes on their byte aligned size"

* commit '54ff31a5f467aea7352b034f37406a6f4fe6a253':
  Compact merged dexes on their byte aligned size

12 years agoMerge "Obvious mix of = and =="
Elliott Hughes [Tue, 27 Mar 2012 19:25:33 +0000 (12:25 -0700)]
Merge "Obvious mix of = and =="

12 years agoMerge "Compact merged dexes on their byte aligned size"
Elliott Hughes [Tue, 13 Mar 2012 17:30:29 +0000 (10:30 -0700)]
Merge "Compact merged dexes on their byte aligned size"

12 years agoObvious mix of = and ==
Mark Gordon [Tue, 27 Mar 2012 19:16:32 +0000 (15:16 -0400)]
Obvious mix of = and ==

Change-Id: I52183924c287b80e9ca7c20df6edfe132b43e088

12 years agoTransform static values eagerly rather than on use.
Jesse Wilson [Mon, 26 Mar 2012 18:53:18 +0000 (14:53 -0400)]
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

12 years agoAlways call the native exit hook, even for halt().
Jeff Brown [Fri, 16 Mar 2012 00:40:31 +0000 (17:40 -0700)]
Always call the native exit hook, even for halt().

Change-Id: I6990d66175c4075ab3357c9be1486c11eceb41e5

12 years agoCompact merged dexes on their byte aligned size
Charlie Groves [Sun, 11 Mar 2012 07:40:47 +0000 (23:40 -0800)]
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

12 years agoReplace malloc() followed by memset() to zero with calloc()
Iliyan Malchev [Thu, 16 Feb 2012 19:23:36 +0000 (11:23 -0800)]
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

12 years agoReplace large calloc() with ashmem-backed anonymous mmap
Iliyan Malchev [Wed, 15 Feb 2012 18:47:24 +0000 (10:47 -0800)]
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>
12 years agoUse old frame for dvmReportPreNativeInvoke/dvmReportPostNativeInvoke
Chris Dearman [Tue, 31 Jan 2012 01:44:28 +0000 (17:44 -0800)]
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>
12 years agoRestore fp after calling JNI method in allstubs interpreter
Chris Dearman [Tue, 31 Jan 2012 01:44:28 +0000 (17:44 -0800)]
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>
12 years agoFix the warning emitted by codesourcery compiler 4.5.2
Raghu Gandham [Tue, 31 Jan 2012 01:44:28 +0000 (17:44 -0800)]
Fix the warning emitted by codesourcery compiler 4.5.2

Change-Id: Ib2b8e87afff7af56281d83961edf79c17cbcf940

12 years agoFix instruction logging messages
Chris Dearman [Tue, 31 Jan 2012 01:44:28 +0000 (17:44 -0800)]
Fix instruction logging messages

Change-Id: Ifc7de30ea1c1221f7838523a5ebd269eec622e03
Signed-off-by: Chris Dearman <chris@mips.com>
12 years agoFix the portable interpreter build
Chris Dearman [Wed, 1 Feb 2012 01:19:49 +0000 (17:19 -0800)]
Fix the portable interpreter build

Change-Id: Ibf08d50c7a01a4c30559dd2ee9511c28fb1365a5
Signed-off-by: Chris Dearman <chris@mips.com>
12 years agoFix verifier typing for null float arrays.
jeffhao [Mon, 13 Feb 2012 18:54:15 +0000 (10:54 -0800)]
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

12 years agoSupport architectures that require correctly aligned doubles
Raghu Gandham [Tue, 31 Jan 2012 02:25:05 +0000 (18:25 -0800)]
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>
12 years agoam 67feae03: am 4cda226f: am c1052f9a: Merge "Add a test for a dalvikvm \'switch...
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:42:49 +0000 (14:42 -0800)]
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.

12 years agoam 4cda226f: am c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:39:57 +0000 (14:39 -0800)]
am 4cda226f: am c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."

* commit '4cda226f6917845f491aaea6408b23db5d8d3fd6':
  Add a test for a dalvikvm 'switch' bug.

12 years agoam c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:27:37 +0000 (14:27 -0800)]
am c1052f9a: Merge "Add a test for a dalvikvm \'switch\' bug."

* commit 'c1052f9a61539f212885555b0b2c110582f11e28':
  Add a test for a dalvikvm 'switch' bug.

12 years agoMerge "Add a test for a dalvikvm 'switch' bug."
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:23:40 +0000 (14:23 -0800)]
Merge "Add a test for a dalvikvm 'switch' bug."

12 years agoAdd a test for a dalvikvm 'switch' bug.
Elliott Hughes [Fri, 10 Feb 2012 23:15:39 +0000 (15:15 -0800)]
Add a test for a dalvikvm 'switch' bug.

Bug: http://code.google.com/p/android/issues/detail?id=22344
Change-Id: I3bf9f8a0732876d758bc5378c5d25ad0c8a71684

12 years agoam 96ec3f6f: am af140189: Reconcile with ics-mr1-release
The Android Open Source Project [Wed, 1 Feb 2012 18:03:20 +0000 (10:03 -0800)]
am 96ec3f6f: am af140189: Reconcile with ics-mr1-release

* commit '96ec3f6f0748c678201a0f3f63672d46c1b707d0':

12 years agoam af140189: Reconcile with ics-mr1-release
The Android Open Source Project [Wed, 1 Feb 2012 18:00:29 +0000 (10:00 -0800)]
am af140189: Reconcile with ics-mr1-release

* commit 'af140189514d64be270439303eb0f0ab26583af5':

12 years agoam 81894b3a: am 2fe129bf: Merge "Updates to the VM tests."
Jean-Baptiste Queru [Wed, 1 Feb 2012 17:48:38 +0000 (09:48 -0800)]
am 81894b3a: am 2fe129bf: Merge "Updates to the VM tests."

* commit '81894b3aa4215d389a0673826a76a1839f578dcb':
  Updates to the VM tests.

12 years agoam 2fe129bf: Merge "Updates to the VM tests."
Jean-Baptiste Queru [Wed, 1 Feb 2012 17:34:46 +0000 (09:34 -0800)]
am 2fe129bf: Merge "Updates to the VM tests."

* commit '2fe129bf176c32f8b507da813ffa02868ff32604':
  Updates to the VM tests.

12 years agoReconcile with ics-mr1-release
The Android Open Source Project [Wed, 1 Feb 2012 16:49:28 +0000 (08:49 -0800)]
Reconcile with ics-mr1-release

Change-Id: Ib9dd6f8b4d4f3d978450cf0db6a3a598adad6fea

12 years agoMerge "Updates to the VM tests."
Jean-Baptiste Queru [Wed, 1 Feb 2012 16:41:43 +0000 (08:41 -0800)]
Merge "Updates to the VM tests."

12 years agoUpdates to the VM tests.
Elliott Hughes [Wed, 1 Feb 2012 01:55:18 +0000 (17:55 -0800)]
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

12 years agoSet SYSTEM_PAGE_SIZE from PAGE_SHIFT
Chris Dearman [Tue, 31 Jan 2012 02:22:27 +0000 (18:22 -0800)]
Set SYSTEM_PAGE_SIZE from PAGE_SHIFT

Hardwiring the expected page size is not portable

Signed-off-by: Chris Dearman <chris@mips.com>
12 years agox86 mterp debug/profile fix (issue 5938080)
buzbee [Mon, 30 Jan 2012 18:44:57 +0000 (10:44 -0800)]
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

12 years agoFix assert
Andy McFadden [Fri, 27 Jan 2012 21:31:02 +0000 (13:31 -0800)]
Fix assert

Change-Id: If764fe38e215473590a6fe6be910827a38382054

12 years agoTweak Dalvik tests
Andy McFadden [Tue, 24 Jan 2012 19:07:25 +0000 (11:07 -0800)]
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

12 years agoam f9d0ce5f: Reconcile with ics-mr1-release
The Android Open Source Project [Mon, 23 Jan 2012 18:41:32 +0000 (10:41 -0800)]
am f9d0ce5f: Reconcile with ics-mr1-release

* commit 'f9d0ce5f917adc46d1940425eff9d0f5b8459ff6':

12 years agoReconcile with ics-mr1-release
The Android Open Source Project [Mon, 23 Jan 2012 18:15:35 +0000 (10:15 -0800)]
Reconcile with ics-mr1-release

Change-Id: Iaa3411a4a3a03f433d2a841b3b48bb6371bd9fba

12 years agoam 7c9027e2: am 1c7e1e14: Fix to dex verifier to handle float types that look like...
jeffhao [Mon, 23 Jan 2012 17:18:13 +0000 (09:18 -0800)]
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.

12 years agomerge in ics-mr1-release history after reset to ics-mr1
The Android Automerger [Sat, 21 Jan 2012 00:11:41 +0000 (16:11 -0800)]
merge in ics-mr1-release history after reset to ics-mr1

12 years agoam 31856263: Reconcile with ics-mr1-release
The Android Open Source Project [Fri, 20 Jan 2012 23:52:22 +0000 (15:52 -0800)]
am 31856263: Reconcile with ics-mr1-release

* commit '318562634a59d1c027dae121799fe6b1b9984500':

12 years agoam f9568520: am 232c385b: Bug fix for control-flow construction involving nested...
Ben Cheng [Fri, 20 Jan 2012 23:48:14 +0000 (15:48 -0800)]
am f9568520: am 232c385b: Bug fix for control-flow construction involving nested loops.

* commit 'f9568520b2196693a41b8703fff0d2ddba31bc8e':
  Bug fix for control-flow construction involving nested loops.

12 years agoMerge "Update and extend Dalvik tests"
Andy McFadden [Fri, 20 Jan 2012 22:34:05 +0000 (14:34 -0800)]
Merge "Update and extend Dalvik tests"

12 years agoTweak UnsatisfiedLinkError
Andy McFadden [Fri, 20 Jan 2012 22:05:24 +0000 (14:05 -0800)]
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