OSDN Git Service

android-x86/dalvik.git
13 years agoBe more explicit in our -Xms == -Xmx message, and stop pretending we'll fix it.
Elliott Hughes [Sun, 26 Sep 2010 22:12:21 +0000 (15:12 -0700)]
Be more explicit in our -Xms == -Xmx message, and stop pretending we'll fix it.

This is only going to be fixed by removing the notion of external allocations.
I'll add a note to that bug that we should remove this check entirely.

Bug: 2714377
Change-Id: If84bd98676fcc1e2d4f9f234d547553d256f5785

13 years agoFix OP_USHR_LONG in x86 mterp (Issue 3038137)
buzbee [Sun, 26 Sep 2010 19:59:33 +0000 (12:59 -0700)]
Fix OP_USHR_LONG in x86 mterp (Issue 3038137)

Change https://android-git.corp.google.com/g/#change,67744 introduced
bad hand-scheduling in 64-bit unsigned 3-operand right shifts which
clobbered the result before storing it.

Change-Id: Ic862fa683092d09476510d78e5edd1735f09f8c2

13 years agoam 7b252cae: am 50672515: am 60cc993e: Support -Xbootclasspath/a and /p for dvmProces...
Norris, Lee [Sun, 26 Sep 2010 16:35:59 +0000 (09:35 -0700)]
am 7b252cae: am 50672515: am 60cc993e: Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

Merge commit '7b252cae6d8f4f3e47e37cb10b5c29827ac5a440' into dalvik-dev

* commit '7b252cae6d8f4f3e47e37cb10b5c29827ac5a440':
  Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

13 years agoam 50672515: am 60cc993e: Support -Xbootclasspath/a and /p for dvmProcessOptions...
Norris, Lee [Sun, 26 Sep 2010 16:13:21 +0000 (09:13 -0700)]
am 50672515: am 60cc993e: Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

Merge commit '506725152f92738218823ed52e437458a043c7cb'

* commit '506725152f92738218823ed52e437458a043c7cb':
  Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

13 years agoam 60cc993e: Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm...
Norris, Lee [Sun, 26 Sep 2010 16:09:47 +0000 (09:09 -0700)]
am 60cc993e: Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

Merge commit '60cc993e5afb3327482b172cc7e54c469b231741' into gingerbread-plus-aosp

* commit '60cc993e5afb3327482b172cc7e54c469b231741':
  Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

13 years agoam 1037155d: am 4f85bfce: am 35b0f486: Merge "Wait for the GC to quiesce before attem...
Carl Shapiro [Sat, 25 Sep 2010 00:54:37 +0000 (17:54 -0700)]
am 1037155d: am 4f85bfce: am 35b0f486: Merge "Wait for the GC to quiesce before attempting foreground GCs." into gingerbread

Merge commit '1037155d53566c3bc1cfb89176767d2349282a74' into dalvik-dev

* commit '1037155d53566c3bc1cfb89176767d2349282a74':
  Wait for the GC to quiesce before attempting foreground GCs.

13 years agoam 4f85bfce: am 35b0f486: Merge "Wait for the GC to quiesce before attempting foregro...
Carl Shapiro [Sat, 25 Sep 2010 00:52:39 +0000 (17:52 -0700)]
am 4f85bfce: am 35b0f486: Merge "Wait for the GC to quiesce before attempting foreground GCs." into gingerbread

Merge commit '4f85bfcebb2617b8776a07ed0c030aba40d2314a'

* commit '4f85bfcebb2617b8776a07ed0c030aba40d2314a':
  Wait for the GC to quiesce before attempting foreground GCs.

13 years agoam 35b0f486: Merge "Wait for the GC to quiesce before attempting foreground GCs....
Carl Shapiro [Sat, 25 Sep 2010 00:49:51 +0000 (17:49 -0700)]
am 35b0f486: Merge "Wait for the GC to quiesce before attempting foreground GCs." into gingerbread

Merge commit '35b0f486feb23a5c199c02ab45bfa613503e2b8f' into gingerbread-plus-aosp

* commit '35b0f486feb23a5c199c02ab45bfa613503e2b8f':
  Wait for the GC to quiesce before attempting foreground GCs.

13 years agoMerge "Wait for the GC to quiesce before attempting foreground GCs." into gingerbread
Carl Shapiro [Sat, 25 Sep 2010 00:47:37 +0000 (17:47 -0700)]
Merge "Wait for the GC to quiesce before attempting foreground GCs." into gingerbread

13 years agoMerge "JIT: Remove stray (but harmless) line of code" into dalvik-dev
buzbee [Sat, 25 Sep 2010 00:40:11 +0000 (17:40 -0700)]
Merge "JIT: Remove stray (but harmless) line of code" into dalvik-dev

13 years agoWait for the GC to quiesce before attempting foreground GCs.
Carl Shapiro [Sat, 25 Sep 2010 00:36:53 +0000 (17:36 -0700)]
Wait for the GC to quiesce before attempting foreground GCs.

Previously, dvmTrackExternalAllocation waited for the GC to complete
before retrying its allocation.  However, there is no guarantee that
the GC will not be active at the time we are woken.  Furthermore, the
code did not revalidate that the external allocation is still
possible, an assumption made by all externalAlloc calls.

With this change, the code loops until the GC is no longer active,
validates that the allocation is still possible, and then proceeds
with its routine for allocating additional storage.  In addition, if
we try a few heroic measures to establish the externalAllocPossible
invariant rather than immediately failing the call.

Change-Id: I2e3b8a6c9fab617990edc085f52d0df35ad6d0f6

13 years agoMerge "JIT: Source code reorganization to isolate target independent code" into dalvi...
buzbee [Sat, 25 Sep 2010 00:32:58 +0000 (17:32 -0700)]
Merge "JIT: Source code reorganization to isolate target independent code" into dalvik-dev

13 years agoam a342c5a9: am ddd9d0b3: Show errors from getSchedulerGroup().
Andy McFadden [Fri, 24 Sep 2010 23:03:02 +0000 (16:03 -0700)]
am a342c5a9: am ddd9d0b3: Show errors from getSchedulerGroup().

Merge commit 'a342c5a9a3c475cfe0ebe579af4250b71d952cbf'

* commit 'a342c5a9a3c475cfe0ebe579af4250b71d952cbf':
  Show errors from getSchedulerGroup().

13 years agoam ddd9d0b3: Show errors from getSchedulerGroup().
Andy McFadden [Fri, 24 Sep 2010 22:54:54 +0000 (15:54 -0700)]
am ddd9d0b3: Show errors from getSchedulerGroup().

Merge commit 'ddd9d0b3527072f83db00105e28fa88c47bd763b' into gingerbread-plus-aosp

* commit 'ddd9d0b3527072f83db00105e28fa88c47bd763b':
  Show errors from getSchedulerGroup().

13 years agoJIT: Source code reorganization to isolate target independent code
buzbee [Fri, 24 Sep 2010 22:37:12 +0000 (15:37 -0700)]
JIT: Source code reorganization to isolate target independent code

Much of the register utility code is target independent.  Move it up
a level so the x86 JIT can use it.

Change-Id: Id9895a42281fd836cb1a2c942e106de94df62a9a

13 years agoShow errors from getSchedulerGroup().
Andy McFadden [Fri, 24 Sep 2010 21:18:03 +0000 (14:18 -0700)]
Show errors from getSchedulerGroup().

If we failed to get the cgroup info, we were showing "unknown" in the
stack trace, and sometimes showing an error message in the log file.
Now we put a very brief error description into the cgroup text field,
so it shows up in the stack trace itself.

Also, replaced three strsep() calls with two strchr() calls.

Also, check return value from pthread_kill() calls.

Bug 3032532.

Change-Id: I3730cfb8a5c59048d35d746d8bffb4fa61bd5a6c

13 years agoMerge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master
Brian Carlstrom [Fri, 24 Sep 2010 21:14:21 +0000 (14:14 -0700)]
Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master

13 years agoJIT: Remove stray (but harmless) line of code
buzbee [Fri, 24 Sep 2010 16:52:17 +0000 (09:52 -0700)]
JIT: Remove stray (but harmless) line of code

Change-Id: I5319418678b5390b75267af9cc2c9fa6f35f3bdb

13 years agoam 9b55721f: am 85a3c66f: am b14f405c: Turn off verbose chatter about libs in /vendor
Dima Zavin [Fri, 24 Sep 2010 06:45:57 +0000 (23:45 -0700)]
am 9b55721f: am 85a3c66f: am b14f405c: Turn off verbose chatter about libs in /vendor

Merge commit '9b55721ff026fe0d8aa2b9d2c71255151b15ca52' into dalvik-dev

* commit '9b55721ff026fe0d8aa2b9d2c71255151b15ca52':
  Turn off verbose chatter about libs in /vendor

13 years agoam 85a3c66f: am b14f405c: Turn off verbose chatter about libs in /vendor
Dima Zavin [Fri, 24 Sep 2010 06:42:02 +0000 (23:42 -0700)]
am 85a3c66f: am b14f405c: Turn off verbose chatter about libs in /vendor

Merge commit '85a3c66f556ef3a4f6cf64bf1d7c1bafe60795d6'

* commit '85a3c66f556ef3a4f6cf64bf1d7c1bafe60795d6':
  Turn off verbose chatter about libs in /vendor

13 years agoam b14f405c: Turn off verbose chatter about libs in /vendor
Dima Zavin [Fri, 24 Sep 2010 06:34:41 +0000 (23:34 -0700)]
am b14f405c: Turn off verbose chatter about libs in /vendor

Merge commit 'b14f405c4492f770c14c9252e81ff4df4401c0ef' into gingerbread-plus-aosp

* commit 'b14f405c4492f770c14c9252e81ff4df4401c0ef':
  Turn off verbose chatter about libs in /vendor

13 years agoam 72a1940f: am 6634a3c3: am 629e6923: Print the JIT codegen type in the VM configura...
Ben Cheng [Fri, 24 Sep 2010 06:01:09 +0000 (23:01 -0700)]
am 72a1940f: am 6634a3c3: am 629e6923: Print the JIT codegen type in the VM configuration list.

Merge commit '72a1940f5169b2af6d25a8bb0059edaaa951a96a' into dalvik-dev

* commit '72a1940f5169b2af6d25a8bb0059edaaa951a96a':
  Print the JIT codegen type in the VM configuration list.

13 years agoam 6634a3c3: am 629e6923: Print the JIT codegen type in the VM configuration list.
Ben Cheng [Fri, 24 Sep 2010 05:50:18 +0000 (22:50 -0700)]
am 6634a3c3: am 629e6923: Print the JIT codegen type in the VM configuration list.

Merge commit '6634a3c373ae46893234f0d92264e1d7d97f083d'

* commit '6634a3c373ae46893234f0d92264e1d7d97f083d':
  Print the JIT codegen type in the VM configuration list.

13 years agoTurn off verbose chatter about libs in /vendor
Dima Zavin [Fri, 24 Sep 2010 05:38:45 +0000 (22:38 -0700)]
Turn off verbose chatter about libs in /vendor

Change-Id: I243d538d342b5e0424321b09b2b17555ef6343dd
Signed-off-by: Dima Zavin <dima@android.com>
13 years agoam 629e6923: Print the JIT codegen type in the VM configuration list.
Ben Cheng [Fri, 24 Sep 2010 03:16:50 +0000 (20:16 -0700)]
am 629e6923: Print the JIT codegen type in the VM configuration list.

Merge commit '629e692379a8b12641a4402ff1c9f67af879f68e' into gingerbread-plus-aosp

* commit '629e692379a8b12641a4402ff1c9f67af879f68e':
  Print the JIT codegen type in the VM configuration list.

13 years agoPrint the JIT codegen type in the VM configuration list.
Ben Cheng [Thu, 23 Sep 2010 08:23:14 +0000 (01:23 -0700)]
Print the JIT codegen type in the VM configuration list.

Example:
Configured with: debugger profiler hprof jit(armv7-a-neon) show_exception=1

So that the CPU capability on JIT-enabled devices can be exposed.

(cherry-picked from dalvik-dev)

Change-Id: I887201e7023ca94cd9c3d690f03b7b042175e6ed

13 years agoMerge "Print the JIT codegen type in the VM configuration list." into dalvik-dev
Ben Cheng [Fri, 24 Sep 2010 02:06:02 +0000 (19:06 -0700)]
Merge "Print the JIT codegen type in the VM configuration list." into dalvik-dev

13 years agoam 4cd5f4e3: Merge "Add user-friendly constructors to StdField"
Brett Chabot [Thu, 23 Sep 2010 23:56:56 +0000 (16:56 -0700)]
am 4cd5f4e3: Merge "Add user-friendly constructors to StdField"

Merge commit '4cd5f4e3732f5fc5f4f13aeefc1a479f2bf77618' into dalvik-dev

* commit '4cd5f4e3732f5fc5f4f13aeefc1a479f2bf77618':
  Add user-friendly constructors to StdField

13 years agoMerge "Add user-friendly constructors to StdField"
Brett Chabot [Thu, 23 Sep 2010 23:51:18 +0000 (16:51 -0700)]
Merge "Add user-friendly constructors to StdField"

13 years agoAdd user-friendly constructors to StdField
Piotr Gurgul [Thu, 23 Sep 2010 18:30:14 +0000 (11:30 -0700)]
Add user-friendly constructors to StdField

This is to simplify programmatic use of StdField to create dex fields
dynamically without knowledge of the dex internal format.

Change-Id: Ib11980509e0336d1e0253b6d480240d6832b73dd

13 years agoFix the dalvik-dev build
buzbee [Thu, 23 Sep 2010 18:04:05 +0000 (11:04 -0700)]
Fix the dalvik-dev build

Looks like some code got duplicated.

Change-Id: Ia304dbf41172fa940db848324acc4f6ed7917fee

13 years agoam 7232f715: am ce3de859: am 4934b377: Several fixes for JIT and self-verification...
Ben Cheng [Thu, 23 Sep 2010 16:57:11 +0000 (09:57 -0700)]
am 7232f715: am ce3de859: am 4934b377: Several fixes for JIT and self-verification under corner cases.

Merge commit '7232f7150c2757c6784171cd0c96f90d0e438bca' into dalvik-dev

* commit '7232f7150c2757c6784171cd0c96f90d0e438bca':
  Several fixes for JIT and self-verification under corner cases.

13 years agoPrint the JIT codegen type in the VM configuration list.
Ben Cheng [Thu, 23 Sep 2010 08:23:14 +0000 (01:23 -0700)]
Print the JIT codegen type in the VM configuration list.

Example:
Configured with: debugger profiler hprof jit(armv7-a-neon) show_exception=1

So that the CPU capability on JIT-enabled devices can be exposed.

Change-Id: Id35c0f68e0b9885279917ddef00b74f5c92a6786

13 years agoam ce3de859: am 4934b377: Several fixes for JIT and self-verification under corner...
Ben Cheng [Thu, 23 Sep 2010 07:10:45 +0000 (00:10 -0700)]
am ce3de859: am 4934b377: Several fixes for JIT and self-verification under corner cases.

Merge commit 'ce3de859ef352e91d6cfd368014e4ccfe95595d9'

* commit 'ce3de859ef352e91d6cfd368014e4ccfe95595d9':
  Several fixes for JIT and self-verification under corner cases.

13 years agoam 4934b377: Several fixes for JIT and self-verification under corner cases.
Ben Cheng [Thu, 23 Sep 2010 06:21:00 +0000 (23:21 -0700)]
am 4934b377: Several fixes for JIT and self-verification under corner cases.

Merge commit '4934b377d9cf5df6f80da7caab4f2178c6cec307' into gingerbread-plus-aosp

* commit '4934b377d9cf5df6f80da7caab4f2178c6cec307':
  Several fixes for JIT and self-verification under corner cases.

13 years agoSeveral fixes for JIT and self-verification under corner cases.
Ben Cheng [Tue, 21 Sep 2010 05:20:31 +0000 (22:20 -0700)]
Several fixes for JIT and self-verification under corner cases.

1) Fix the self-verification mode to handle backward chaining cell
properly when a single-step instruction is in the middle of the cyclic
portion of the trace. Then found issue 2 when changing the JIT
threshold to 1.
2) When the code cache is full, the VM may stop making forward progress
and bounces back and forth between the debug and fast intepreters as the
translation request is constantly rejected. The fix is to stay in the
debug interpreter until the corner case condition is cleared. Then found
issue 3.
3) Under self-verification mode, the code cache reset request may get
delayed indefinitely due to spurious indication that a thread is
running JIT'ed code. Trivial fix - make sure the inJitCodeCache flag is
cleared.

(cherry-picked from dalvik-dev)

Change-Id: Ic0b9952c0ae545f68f7eb2ae06a82a634ab62e9e

13 years agoMerge "Fix x86 mterp "longjmp"" into dalvik-dev
buzbee [Wed, 22 Sep 2010 21:57:50 +0000 (14:57 -0700)]
Merge "Fix x86 mterp "longjmp"" into dalvik-dev

13 years agoam 419215fa: am 8f6d07fa: am 95a884f7: Fix computation of primitive array widths.
Andy McFadden [Wed, 22 Sep 2010 21:55:17 +0000 (14:55 -0700)]
am 419215fa: am 8f6d07fa: am 95a884f7: Fix computation of primitive array widths.

Merge commit '419215faf3ba03185960095cab1a5eec9aab05e9' into dalvik-dev

* commit '419215faf3ba03185960095cab1a5eec9aab05e9':
  Fix computation of primitive array widths.

13 years agoam 8f6d07fa: am 95a884f7: Fix computation of primitive array widths.
Andy McFadden [Wed, 22 Sep 2010 21:41:56 +0000 (14:41 -0700)]
am 8f6d07fa: am 95a884f7: Fix computation of primitive array widths.

Merge commit '8f6d07fa2d6ec4828e824cb89052341171a4b978'

* commit '8f6d07fa2d6ec4828e824cb89052341171a4b978':
  Fix computation of primitive array widths.

13 years agoam 95a884f7: Fix computation of primitive array widths.
Andy McFadden [Wed, 22 Sep 2010 21:29:30 +0000 (14:29 -0700)]
am 95a884f7: Fix computation of primitive array widths.

Merge commit '95a884f7844a6e7bdd820489742254f3fd002f6d' into gingerbread-plus-aosp

* commit '95a884f7844a6e7bdd820489742254f3fd002f6d':
  Fix computation of primitive array widths.

13 years agoMerge "Fail early rather than crippling the GC if -Xms == -Xmx." into dalvik-dev
Elliott Hughes [Wed, 22 Sep 2010 21:27:22 +0000 (14:27 -0700)]
Merge "Fail early rather than crippling the GC if -Xms == -Xmx." into dalvik-dev

13 years agoFail early rather than crippling the GC if -Xms == -Xmx.
Elliott Hughes [Wed, 22 Sep 2010 21:09:07 +0000 (14:09 -0700)]
Fail early rather than crippling the GC if -Xms == -Xmx.

We should revert this when the bug is fixed.

Bug: 2714377
Change-Id: Ie3600ef60fea5e4e5988680042c7e2e595bdc622

13 years agoFix computation of primitive array widths.
Andy McFadden [Wed, 22 Sep 2010 19:13:29 +0000 (12:13 -0700)]
Fix computation of primitive array widths.

The code was comparing class pointers, but the class objects for arrays
of primitives are initialized on demand.  If the class wasn't yet
instantiated, the array width code was returning a default value of 4.
This meant the "write values to an array of longs through the unsafe
methods" code was actually scribbling on the wrong part of the array,
which went unnoticed until recently.  (The new-ish ldrexd/strexd code
requires 64-bit alignment.)

We now use the existing array element width computation function.  The
code needed a bit of rearranging since it expected an instance of the
class rather than the class.

Bug 3023981.

(cherry-pick from dalvik-dev)

Change-Id: Ife3258eb6798f8e7eaee7c7b6793a16137de389b

13 years agoMerge "Fix computation of primitive array widths." into dalvik-dev
Andy McFadden [Wed, 22 Sep 2010 21:21:43 +0000 (14:21 -0700)]
Merge "Fix computation of primitive array widths." into dalvik-dev

13 years agoFix x86 mterp "longjmp"
buzbee [Wed, 22 Sep 2010 21:05:11 +0000 (14:05 -0700)]
Fix x86 mterp "longjmp"

The recent x86 mterp update failed to properly restore callee save
registers when returning from the call to dvmMterpStdRun.

Change-Id: Ied73cc5fb380a6375d1f71ce679003fbc293d08d

13 years agoFix getExceptionMessage().
Andy McFadden [Wed, 22 Sep 2010 19:37:49 +0000 (12:37 -0700)]
Fix getExceptionMessage().

dvmAddTrackedAlloc() doesn't like NULL objects.

Bug 3023981.

Change-Id: I181e4dab841b063d9e2f450292732d808e70aaba

13 years agoFix computation of primitive array widths.
Andy McFadden [Wed, 22 Sep 2010 19:13:29 +0000 (12:13 -0700)]
Fix computation of primitive array widths.

The code was comparing class pointers, but the class objects for arrays
of primitives are initialized on demand.  If the class wasn't yet
instantiated, the array width code was returning a default value of 4.
This meant the "write values to an array of longs through the unsafe
methods" code was actually scribbling on the wrong part of the array,
which went unnoticed until recently.  (The new-ish ldrexd/strexd code
requires 64-bit alignment.)

We now use the existing array element width computation function.  The
code needed a bit of rearranging since it expected an instance of the
class rather than the class.

Bug 3023981.

Change-Id: I51462978362b6a4fce26e13eda17e1bbc0eac192

13 years agoMerge "Several fixes for JIT and self-verification under corner cases." into dalvik-dev
Ben Cheng [Wed, 22 Sep 2010 01:57:20 +0000 (18:57 -0700)]
Merge "Several fixes for JIT and self-verification under corner cases." into dalvik-dev

13 years agoam ce12a935: am a6199972: am 69259715: Merge "Fix a minor formatting discrepancy...
Carl Shapiro [Tue, 21 Sep 2010 20:49:59 +0000 (13:49 -0700)]
am ce12a935: am a6199972: am 69259715: Merge "Fix a minor formatting discrepancy in the GC log message." into gingerbread

Merge commit 'ce12a93560050501ca0d395afe3620d8fcfdbad3' into dalvik-dev

* commit 'ce12a93560050501ca0d395afe3620d8fcfdbad3':
  Fix a minor formatting discrepancy in the GC log message.

13 years agoam a6199972: am 69259715: Merge "Fix a minor formatting discrepancy in the GC log...
Carl Shapiro [Tue, 21 Sep 2010 20:39:18 +0000 (13:39 -0700)]
am a6199972: am 69259715: Merge "Fix a minor formatting discrepancy in the GC log message." into gingerbread

Merge commit 'a61999728447ee91e5d4a8937b84f19561d17361'

* commit 'a61999728447ee91e5d4a8937b84f19561d17361':
  Fix a minor formatting discrepancy in the GC log message.

13 years agoam 69259715: Merge "Fix a minor formatting discrepancy in the GC log message." into...
Carl Shapiro [Tue, 21 Sep 2010 20:36:47 +0000 (13:36 -0700)]
am 69259715: Merge "Fix a minor formatting discrepancy in the GC log message." into gingerbread

Merge commit '692597158c3e17fbafe80ec21895754017d4e9f1' into gingerbread-plus-aosp

* commit '692597158c3e17fbafe80ec21895754017d4e9f1':
  Fix a minor formatting discrepancy in the GC log message.

13 years agoMerge "Fix a minor formatting discrepancy in the GC log message." into gingerbread
Carl Shapiro [Tue, 21 Sep 2010 20:34:42 +0000 (13:34 -0700)]
Merge "Fix a minor formatting discrepancy in the GC log message." into gingerbread

13 years agoFix a minor formatting discrepancy in the GC log message.
Carl Shapiro [Tue, 21 Sep 2010 20:28:21 +0000 (13:28 -0700)]
Fix a minor formatting discrepancy in the GC log message.

Change-Id: Ia0233c78f11d5270eefd2b28c6ea239b7ff0de50

13 years agoMerge "Fix 64-bit 3-operand multiplication in x86 mterp." into dalvik-dev
buzbee [Tue, 21 Sep 2010 18:26:02 +0000 (11:26 -0700)]
Merge "Fix 64-bit 3-operand multiplication in x86 mterp." into dalvik-dev

13 years agoFix 64-bit 3-operand multiplication in x86 mterp.
buzbee [Tue, 21 Sep 2010 18:03:12 +0000 (11:03 -0700)]
Fix 64-bit 3-operand multiplication in x86 mterp.

rPC was being unspilled a bit late.

Change-Id: Idf73b9eeeb972f3fb1861224397d0592c6d3bb2f

13 years agoSeveral fixes for JIT and self-verification under corner cases.
Ben Cheng [Tue, 21 Sep 2010 05:20:31 +0000 (22:20 -0700)]
Several fixes for JIT and self-verification under corner cases.

1) Fix the self-verification mode to handle backward chaining cell
properly when a single-step instruction is in the middle of the cyclic
portion of the trace. Then found issue 2 when changing the JIT
threshold to 1.
2) When the code cache is full, the VM may stop making forward progress
and bounces back and forth between the debug and fast intepreters as the
translation request is constantly rejected. The fix is to stay in the
debug interpreter until the corner case condition is cleared. Then found
issue 3.
3) Under self-verification mode, the code cache reset request may get
delayed indefinitely due to spurious indication that a thread is
running JIT'ed code. Trivial fix - make sure the inJitCodeCache flag is
cleared.

Change-Id: I107eb23102940df07c27c7f2b5cc22e30fbdcd1c

13 years agoam 2984bb58: am 6ea9db55: am 7099d194: Insert "/./" into the input file path when...
Dan Bornstein [Tue, 21 Sep 2010 02:45:31 +0000 (19:45 -0700)]
am 2984bb58: am 6ea9db55: am 7099d194: Insert "/./" into the input file path when necessary.

Merge commit '2984bb58fb8ee2e9bb59ef9780975ef9afc203ae' into dalvik-dev

* commit '2984bb58fb8ee2e9bb59ef9780975ef9afc203ae':
  Insert "/./" into the input file path when necessary.

13 years agoam 6ea9db55: am 7099d194: Insert "/./" into the input file path when necessary.
Dan Bornstein [Tue, 21 Sep 2010 02:32:54 +0000 (19:32 -0700)]
am 6ea9db55: am 7099d194: Insert "/./" into the input file path when necessary.

Merge commit '6ea9db556fcb716f3b420154c0032a4983be7380'

* commit '6ea9db556fcb716f3b420154c0032a4983be7380':
  Insert "/./" into the input file path when necessary.

13 years agoam 7099d194: Insert "/./" into the input file path when necessary.
Dan Bornstein [Mon, 20 Sep 2010 23:27:39 +0000 (16:27 -0700)]
am 7099d194: Insert "/./" into the input file path when necessary.

Merge commit '7099d194aeb7d0524108aa3d4ed8a8da0595c007' into gingerbread-plus-aosp

* commit '7099d194aeb7d0524108aa3d4ed8a8da0595c007':
  Insert "/./" into the input file path when necessary.

13 years agoInsert "/./" into the input file path when necessary.
Dan Bornstein [Mon, 20 Sep 2010 23:13:54 +0000 (16:13 -0700)]
Insert "/./" into the input file path when necessary.

This is necessary, in particular, when the input file is on the
boot classpath.

Change-Id: I18822d7b2eceba0eb15d5548a87bff5bb641788f

13 years agoam 1191f662: am 60d48755: am 43c54c0b: Ensure that an explicit GC request initiates...
Carl Shapiro [Mon, 20 Sep 2010 19:48:18 +0000 (12:48 -0700)]
am 1191f662: am 60d48755: am 43c54c0b: Ensure that an explicit GC request initiates a GC.

Merge commit '1191f6626e93a569b90692ca4c85602739a7f4d0' into dalvik-dev

* commit '1191f6626e93a569b90692ca4c85602739a7f4d0':
  Ensure that an explicit GC request initiates a GC.

13 years agoam 60d48755: am 43c54c0b: Ensure that an explicit GC request initiates a GC.
Carl Shapiro [Mon, 20 Sep 2010 19:12:51 +0000 (12:12 -0700)]
am 60d48755: am 43c54c0b: Ensure that an explicit GC request initiates a GC.

Merge commit '60d487552319a1921629978806fdffc8fe90dc8a'

* commit '60d487552319a1921629978806fdffc8fe90dc8a':
  Ensure that an explicit GC request initiates a GC.

13 years agoam 43c54c0b: Ensure that an explicit GC request initiates a GC.
Carl Shapiro [Mon, 20 Sep 2010 19:10:33 +0000 (12:10 -0700)]
am 43c54c0b: Ensure that an explicit GC request initiates a GC.

Merge commit '43c54c0b3a5161dedfee9c255e60788627ed8505' into gingerbread-plus-aosp

* commit '43c54c0b3a5161dedfee9c255e60788627ed8505':
  Ensure that an explicit GC request initiates a GC.

13 years agox86 mterp: reduce x86/x86-atom differences
buzbee [Sun, 12 Sep 2010 21:20:01 +0000 (14:20 -0700)]
x86 mterp: reduce x86/x86-atom differences

To ease future x86 development, elminate unnecessary differences
between x86 and x86-atom targets.

1.  Macros instead of defines (cosmetic change)
2.  Register naming convention (cosmetic change)
3.  Register usage convention
    - Drop rIBASE, freeing %edx for general usage
    - use %edi for rPC (callee-save) & eliminate spills
4.  Spill & temp frame layout
5.  rGLUE usage 0(%ebp) instead of -24(%ebp)
6.  Jump table transition between instruction interpretations
    instead of computed goto.
7.  Change entry convention for instruction handlers:
    Previously:
       %bl contains 8-bit Dalvik opcode
       %bh contains 2nd half of 16-bit Dalvik insn (usually AA or BA)
       upper 16 bits of %ebx are zero
    Now:
       %bl contains 2nd half of 16-bit Dalvik insn (usually AA or BA)
       upper 24 bits of %ebx are zero
8.  Include copies of x86-atom macros and defines into x86 build.  This
    allows the x86 build to mix-and-match x86 and x86-atom handlers
    via the normal config mechanism.  [Note - only for non-control-flow
    instructions.  There are still some conflicts in the footer.S
    main loop re-entry points].

Change-Id: Ib9d549b56f7ffd7420f9dbf97b2169f65603ee83

13 years agoMerge "I gave some bad advice." into dalvik-dev
Andy McFadden [Mon, 20 Sep 2010 17:23:46 +0000 (10:23 -0700)]
Merge "I gave some bad advice." into dalvik-dev

13 years agoI gave some bad advice.
Andy McFadden [Mon, 20 Sep 2010 17:22:20 +0000 (10:22 -0700)]
I gave some bad advice.

Change-Id: I155da7b5dd3a3f450a904ccf33a1c01c6949ea18

13 years agoAdd source code skeletons for x86 work. No actual JIT'ng yet.
buzbee [Fri, 17 Sep 2010 23:01:49 +0000 (16:01 -0700)]
Add source code skeletons for x86 work.  No actual JIT'ng yet.

Change-Id: Ic94a916e777e9bc5163cf205899daf9c18dcafe1

13 years agoMerge "Provide "ordered" put calls." into dalvik-dev
Andy McFadden [Mon, 20 Sep 2010 14:45:14 +0000 (07:45 -0700)]
Merge "Provide "ordered" put calls." into dalvik-dev

13 years agoMerge "Staticify." into dalvik-dev
Andy McFadden [Mon, 20 Sep 2010 14:44:42 +0000 (07:44 -0700)]
Merge "Staticify." into dalvik-dev

13 years agoam 3fc70b4b: am ac347a94: am 18131c2e: Merge "Add more context to the garbage collect...
Carl Shapiro [Sat, 18 Sep 2010 07:23:41 +0000 (00:23 -0700)]
am 3fc70b4b: am ac347a94: am 18131c2e: Merge "Add more context to the garbage collection log messages." into gingerbread

Merge commit '3fc70b4bcb20ff9cff3cdd3179ee4d5e1923a31b' into dalvik-dev

* commit '3fc70b4bcb20ff9cff3cdd3179ee4d5e1923a31b':
  Add more context to the garbage collection log messages.

13 years agoam ac347a94: am 18131c2e: Merge "Add more context to the garbage collection log messa...
Carl Shapiro [Sat, 18 Sep 2010 07:14:48 +0000 (00:14 -0700)]
am ac347a94: am 18131c2e: Merge "Add more context to the garbage collection log messages." into gingerbread

Merge commit 'ac347a94098d4563686152471b694a2be6e3d2e4'

* commit 'ac347a94098d4563686152471b694a2be6e3d2e4':
  Add more context to the garbage collection log messages.

13 years agoam 18131c2e: Merge "Add more context to the garbage collection log messages." into...
Carl Shapiro [Sat, 18 Sep 2010 02:29:15 +0000 (19:29 -0700)]
am 18131c2e: Merge "Add more context to the garbage collection log messages." into gingerbread

Merge commit '18131c2e1426ba836b5a508842cd370d95d0a964' into gingerbread-plus-aosp

* commit '18131c2e1426ba836b5a508842cd370d95d0a964':
  Add more context to the garbage collection log messages.

13 years agoEnsure that an explicit GC request initiates a GC.
Carl Shapiro [Sat, 18 Sep 2010 00:10:48 +0000 (17:10 -0700)]
Ensure that an explicit GC request initiates a GC.

Previously, if a concurrent GC was in-flight when an explicit GC was
requested a warning would be logged about a recursive GC attempt.  Now,
the requesting thread will block until the GC is inactive and afterward
initiate its foreground collection.

Change-Id: Ibc4cef83315ffe7ccf822a32beb4cce5b1c816bd

13 years agoam 5cd3265c: am 10d11e92: am 49f62de0: Add --dexopt option to explicitly specify...
Dan Bornstein [Fri, 17 Sep 2010 23:22:13 +0000 (16:22 -0700)]
am 5cd3265c: am 10d11e92: am 49f62de0: Add --dexopt option to explicitly specify the dexopt binary.

Merge commit '5cd3265caa673e140575d167c1d90fe3d3f29e4e' into dalvik-dev

* commit '5cd3265caa673e140575d167c1d90fe3d3f29e4e':
  Add --dexopt option to explicitly specify the dexopt binary.

13 years agoam 0ff6a7cf: am aa09711b: am 2b9e8c1d: Modify dex-preopt to take better arguments...
Dan Bornstein [Fri, 17 Sep 2010 23:22:10 +0000 (16:22 -0700)]
am 0ff6a7cf: am aa09711b: am 2b9e8c1d: Modify dex-preopt to take better arguments for the build process.

Merge commit '0ff6a7cf52865c2ba9c8fc8c78a22cf1e2873631' into dalvik-dev

* commit '0ff6a7cf52865c2ba9c8fc8c78a22cf1e2873631':
  Modify dex-preopt to take better arguments for the build process.

13 years agoam 10d11e92: am 49f62de0: Add --dexopt option to explicitly specify the dexopt binary.
Dan Bornstein [Fri, 17 Sep 2010 23:10:52 +0000 (16:10 -0700)]
am 10d11e92: am 49f62de0: Add --dexopt option to explicitly specify the dexopt binary.

Merge commit '10d11e9205d9277e274d28801d881964ac092aea'

* commit '10d11e9205d9277e274d28801d881964ac092aea':
  Add --dexopt option to explicitly specify the dexopt binary.

13 years agoam aa09711b: am 2b9e8c1d: Modify dex-preopt to take better arguments for the build...
Dan Bornstein [Fri, 17 Sep 2010 23:10:34 +0000 (16:10 -0700)]
am aa09711b: am 2b9e8c1d: Modify dex-preopt to take better arguments for the build process.

Merge commit 'aa09711bd901c1eac9b2860609a56650f2dd3bb7'

* commit 'aa09711bd901c1eac9b2860609a56650f2dd3bb7':
  Modify dex-preopt to take better arguments for the build process.

13 years agoMerge "Add more context to the garbage collection log messages." into gingerbread
Carl Shapiro [Fri, 17 Sep 2010 23:05:35 +0000 (16:05 -0700)]
Merge "Add more context to the garbage collection log messages." into gingerbread

13 years agoAdd more context to the garbage collection log messages.
Carl Shapiro [Fri, 17 Sep 2010 22:53:16 +0000 (15:53 -0700)]
Add more context to the garbage collection log messages.

With this change, the heap size, number of bytes allocated, the
percentage of free heap, the external allocation limit, and the number
of external bytes allocated are logged.  The number of objects freed
and suspend times are no longer logged but are still included in the
event log records.

Change-Id: I5d5a9d623ae8cb72ad7d4bc5014e218c61a33561

13 years agoStaticify.
Andy McFadden [Fri, 17 Sep 2010 22:48:38 +0000 (15:48 -0700)]
Staticify.

Mark some functions "static".

Change-Id: Ia80bccab1f72690729e43f99783d34fe366108b2

13 years agoProvide "ordered" put calls.
Andy McFadden [Fri, 17 Sep 2010 21:54:24 +0000 (14:54 -0700)]
Provide "ordered" put calls.

Implement "ordered" Unsafe "put" calls, which are less expensive than
the volatile puts but provide more guarantees that plain puts.  The
implementation is just a clone of the basic "put" functions with the
new store fence macro inserted.

Bug 2579452

Change-Id: If08f5d51d3ea47a4ff0925a86ad8e168721c9e55

13 years agoMerge "Check at startup that we can resolve all the inline natives." into dalvik-dev
Elliott Hughes [Fri, 17 Sep 2010 21:41:00 +0000 (14:41 -0700)]
Merge "Check at startup that we can resolve all the inline natives." into dalvik-dev

13 years agoam 49f62de0: Add --dexopt option to explicitly specify the dexopt binary.
Dan Bornstein [Fri, 17 Sep 2010 21:22:06 +0000 (14:22 -0700)]
am 49f62de0: Add --dexopt option to explicitly specify the dexopt binary.

Merge commit '49f62de02d20143f73d7afbb4c5e36a6b7082c3a' into gingerbread-plus-aosp

* commit '49f62de02d20143f73d7afbb4c5e36a6b7082c3a':
  Add --dexopt option to explicitly specify the dexopt binary.

13 years agoAdd --dexopt option to explicitly specify the dexopt binary.
Dan Bornstein [Fri, 17 Sep 2010 21:11:19 +0000 (14:11 -0700)]
Add --dexopt option to explicitly specify the dexopt binary.

Also, cleaned up the docs and usage message a little.

Change-Id: I5bb0ce1b4f8153c19da69fca05cd9318c7e02536

13 years agoCheck at startup that we can resolve all the inline natives.
Elliott Hughes [Wed, 15 Sep 2010 00:42:07 +0000 (17:42 -0700)]
Check at startup that we can resolve all the inline natives.

Also fix a bug where we'd dereference NULL if an inline native's class failed
to resolve.

Also merge this method lookup with Optimize.c's (superior) near-duplicate.

Change-Id: Ic7a95e1f7445b6c9964ddd5e2e1d14d70792a622

13 years agoam 2b9e8c1d: Modify dex-preopt to take better arguments for the build process.
Dan Bornstein [Fri, 17 Sep 2010 20:53:33 +0000 (13:53 -0700)]
am 2b9e8c1d: Modify dex-preopt to take better arguments for the build process.

Merge commit '2b9e8c1db0e886a57a13f778c01469713a8f5985' into gingerbread-plus-aosp

* commit '2b9e8c1db0e886a57a13f778c01469713a8f5985':
  Modify dex-preopt to take better arguments for the build process.

13 years agoModify dex-preopt to take better arguments for the build process.
Dan Bornstein [Fri, 17 Sep 2010 19:54:07 +0000 (12:54 -0700)]
Modify dex-preopt to take better arguments for the build process.

In particular, it now takes a --product-dir that doesn't assume any
particular build tree structure, and it takes a --boot-dir for the
target path (which will be under the product-dir) for the boot
classpath files.

Change-Id: I8986f1d4d37330ab32ebe8b55d38bdd5e24d4aaf

13 years agoam 0cd73fed: am 7c73c80e: am 42929e15: Add optional tags to dalvik.
Jesse Wilson [Fri, 17 Sep 2010 06:22:44 +0000 (23:22 -0700)]
am 0cd73fed: am 7c73c80e: am 42929e15: Add optional tags to dalvik.

Merge commit '0cd73fed767e2d6f6f6147789b2b24bbaffa6670' into dalvik-dev

* commit '0cd73fed767e2d6f6f6147789b2b24bbaffa6670':
  Add optional tags to dalvik.

13 years agoam a7f5cee6: Merge "Add type name conversion methods for dexgen"
Piotr Gurgul [Fri, 17 Sep 2010 05:59:45 +0000 (22:59 -0700)]
am a7f5cee6: Merge "Add type name conversion methods for dexgen"

Merge commit 'a7f5cee6539fbfd6fd145614a5970f05439a648f' into dalvik-dev

* commit 'a7f5cee6539fbfd6fd145614a5970f05439a648f':
  Add type name conversion methods for dexgen

13 years agoam 808380c0: am 806a5160: am 4c5d26bc: Make the app processing variant of dex-preopt...
Dan Bornstein [Fri, 17 Sep 2010 05:59:38 +0000 (22:59 -0700)]
am 808380c0: am 806a5160: am 4c5d26bc: Make the app processing variant of dex-preopt more consistent.

Merge commit '808380c0917481886203e4c8c2c2177487ca3441' into dalvik-dev

* commit '808380c0917481886203e4c8c2c2177487ca3441':
  Make the app processing variant of dex-preopt more consistent.

13 years agoam e4a815d5: Merge "Move up inner class definition"
Piotr Gurgul [Fri, 17 Sep 2010 05:59:31 +0000 (22:59 -0700)]
am e4a815d5: Merge "Move up inner class definition"

Merge commit 'e4a815d57632c806b4627636efbb38ec6e04c008' into dalvik-dev

* commit 'e4a815d57632c806b4627636efbb38ec6e04c008':
  Move up inner class definition

13 years agoam b23451d0: am 3a9aa008: am def30fc2: Clarify the use of --boot-dirs in the header...
Dan Bornstein [Fri, 17 Sep 2010 05:59:21 +0000 (22:59 -0700)]
am b23451d0: am 3a9aa008: am def30fc2: Clarify the use of --boot-dirs in the header comment.

Merge commit 'b23451d0c40d6a8f49b47ce57601fafc23b4958c' into dalvik-dev

* commit 'b23451d0c40d6a8f49b47ce57601fafc23b4958c':

13 years agoSupport -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c
Norris, Lee [Thu, 16 Sep 2010 06:06:26 +0000 (14:06 +0800)]
Support -Xbootclasspath/a and /p for dvmProcessOptions in dalvik/vm/Init.c

Change-Id: I5549031ae6d6414797a22421e6bf62d1be08ac9a

13 years agoam 7c73c80e: am 42929e15: Add optional tags to dalvik.
Jesse Wilson [Fri, 17 Sep 2010 00:38:46 +0000 (17:38 -0700)]
am 7c73c80e: am 42929e15: Add optional tags to dalvik.

Merge commit '7c73c80e187012b57872df0c16a42bde27d5be73'

* commit '7c73c80e187012b57872df0c16a42bde27d5be73':
  Add optional tags to dalvik.

13 years agoam 42929e15: Add optional tags to dalvik.
Jesse Wilson [Fri, 17 Sep 2010 00:37:21 +0000 (17:37 -0700)]
am 42929e15: Add optional tags to dalvik.

Merge commit '42929e15765640324d9181ec1159effd22aa86ca' into gingerbread-plus-aosp

* commit '42929e15765640324d9181ec1159effd22aa86ca':
  Add optional tags to dalvik.

13 years agoAdd optional tags to dalvik.
Jesse Wilson [Thu, 16 Sep 2010 22:56:25 +0000 (15:56 -0700)]
Add optional tags to dalvik.

Change-Id: I29a78ccb6312d12b3ef0ed02cfbc638a5b01db9c

13 years agoMerge "Use store barrier instead of full barrier." into dalvik-dev
Andy McFadden [Fri, 17 Sep 2010 00:21:37 +0000 (17:21 -0700)]
Merge "Use store barrier instead of full barrier." into dalvik-dev

13 years agoMerge "Use Throwable.getMessage() when logging exceptions." into dalvik-dev
Andy McFadden [Thu, 16 Sep 2010 23:03:37 +0000 (16:03 -0700)]
Merge "Use Throwable.getMessage() when logging exceptions." into dalvik-dev

13 years agoUse Throwable.getMessage() when logging exceptions.
Andy McFadden [Thu, 16 Sep 2010 22:32:43 +0000 (15:32 -0700)]
Use Throwable.getMessage() when logging exceptions.

The VM's internal exception logger was pulling the exception's detail
message out of a field in Throwable.  This gets the wrong answer when
the exception overrides getMessage().

The VM now invokes the appropriate getMessage() method and displays
that instead.  This is of particular interest in CheckJNI failure
messages.

Also, don't assert that switching from "running" to "running" is
a problem.  It's a bit weird, but there's nothing wrong with it,
and there's a fair chance that the updated exception log function
will do it.

Bug 2845581

Change-Id: Id8d77221129ae7b45473e700a79a335164049362

13 years agoMerge "Make exception logging a little prettier." into dalvik-dev
Andy McFadden [Thu, 16 Sep 2010 20:45:14 +0000 (13:45 -0700)]
Merge "Make exception logging a little prettier." into dalvik-dev