OSDN Git Service

android-x86/dalvik.git
14 years agoam 88a0f970: Enhance the jit profiler to print more statistics and be more verbose.
Ben Cheng [Sun, 28 Feb 2010 09:40:23 +0000 (01:40 -0800)]
am 88a0f970: Enhance the jit profiler to print more statistics and be more verbose.

Merge commit '88a0f970e47dc0091d2c9965aa9bd06667e5f4b7' into dalvik-dev

* commit '88a0f970e47dc0091d2c9965aa9bd06667e5f4b7':
  Enhance the jit profiler to print more statistics and be more verbose.

14 years agoam 59a007be: am cf4e8b02: Merge "This is a contribution of x86-atom targeted assembly...
Andy McFadden [Sun, 28 Feb 2010 09:40:11 +0000 (01:40 -0800)]
am 59a007be: am cf4e8b02: Merge "This is a contribution of x86-atom targeted assembly for the fast byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this cod

Merge commit '59a007be670601e40f036f63904b3f51c91a4d95' into dalvik-dev

* commit '59a007be670601e40f036f63904b3f51c91a4d95':
  This is a contribution of x86-atom targeted assembly for the fast byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expected that there will be a discussion on the potential merge of this code and similar efforts (i.e. the mterp/x86 directory first included with cupcake). While this code is intended to target ATOM and not a generic X-86 processor, we were able to show the following improvements over the c-portable interpreter using the simulator build:

14 years agoam 11834964: Clarify a few items in the dex spec.
Dan Bornstein [Sun, 28 Feb 2010 09:40:02 +0000 (01:40 -0800)]
am 11834964: Clarify a few items in the dex spec.

Merge commit '118349640ffa44bbc55ed355d0aaa2b993de5e5b' into dalvik-dev

* commit '118349640ffa44bbc55ed355d0aaa2b993de5e5b':
  Clarify a few items in the dex spec.

14 years agoam ba05d3b5: Merge "Add class init stats to alloc counters (API change)."
Andy McFadden [Sun, 28 Feb 2010 09:39:53 +0000 (01:39 -0800)]
am ba05d3b5: Merge "Add class init stats to alloc counters (API change)."

Merge commit 'ba05d3b507d5e1de794d00e7e634862c2a7cf8c2' into dalvik-dev

* commit 'ba05d3b507d5e1de794d00e7e634862c2a7cf8c2':
  Add class init stats to alloc counters (API change).

14 years agoam 4795e033: Merge "Implementing still more DOM API for text nodes. - Text.isElementC...
Jesse Wilson [Sun, 28 Feb 2010 09:39:43 +0000 (01:39 -0800)]
am 4795e033: Merge "Implementing still more DOM API for text nodes. - Text.isElementContentWhitespace() - Text.getWholeText() - Text.replaceWholeText()"

Merge commit '4795e033e5d93d72438d5004dd77ea82014f4657' into dalvik-dev

* commit '4795e033e5d93d72438d5004dd77ea82014f4657':
  Implementing still more DOM API for text nodes.

14 years agoam 60a65773: Minor fix for Adb.waitForNonEmptyDirectory so that waiting for /sdcard...
Brian Carlstrom [Sun, 28 Feb 2010 09:39:32 +0000 (01:39 -0800)]
am 60a65773: Minor fix for Adb.waitForNonEmptyDirectory so that waiting for /sdcard after reboot works again.

Merge commit '60a65773a7199f0a6b8f36bba00f11b84f8c0227' into dalvik-dev

* commit '60a65773a7199f0a6b8f36bba00f11b84f8c0227':
  Minor fix for Adb.waitForNonEmptyDirectory so that waiting for /sdcard after reboot works again.

14 years agoam 01961a9d: Merge "Fixed bug 2438465, prevented blocks with move-result from being...
Jeff Hao [Sun, 28 Feb 2010 09:39:21 +0000 (01:39 -0800)]
am 01961a9d: Merge "Fixed bug 2438465, prevented blocks with move-result from being combined."

Merge commit '01961a9d1f152c308b0c372214a1f204b3c0a5cf' into dalvik-dev

* commit '01961a9d1f152c308b0c372214a1f204b3c0a5cf':
  Fixed bug 2438465, prevented blocks with move-result from being combined.

14 years agoam d1ad6ae8: DalvikRunner --tee option to send output to a file or stdout at runtime
Brian Carlstrom [Sun, 28 Feb 2010 09:39:10 +0000 (01:39 -0800)]
am d1ad6ae8: DalvikRunner --tee option to send output to a file or stdout at runtime

Merge commit 'd1ad6ae8509d5890a7175a1dcd0a3f7fceb75d23' into dalvik-dev

* commit 'd1ad6ae8509d5890a7175a1dcd0a3f7fceb75d23':
  DalvikRunner --tee option to send output to a file or stdout at runtime

14 years agoam b0d01b01: Fixed bug 2438465, prevented blocks with move-result from being combined.
jeffhao [Sun, 28 Feb 2010 09:38:58 +0000 (01:38 -0800)]
am b0d01b01: Fixed bug 2438465, prevented blocks with move-result from being combined.

Merge commit 'b0d01b0178081c98b8cdb2fba2d84f275a0c595e' into dalvik-dev

* commit 'b0d01b0178081c98b8cdb2fba2d84f275a0c595e':
  Fixed bug 2438465, prevented blocks with move-result from being combined.

14 years agoam 05c9d91a: Add a test case for the jsr / invoke bug. (See the included info.txt...
Dan Bornstein [Sun, 28 Feb 2010 09:38:44 +0000 (01:38 -0800)]
am 05c9d91a: Add a test case for the jsr / invoke bug. (See the included info.txt for more details.)

Merge commit '05c9d91a7fd80fef3141b832fc8caeef44612c86' into dalvik-dev

* commit '05c9d91a7fd80fef3141b832fc8caeef44612c86':
  Add a test case for the jsr / invoke bug. (See the included

14 years agoBreak the sqlite JDBC driver out from our JDBC implementation.
Elliott Hughes [Fri, 26 Feb 2010 22:46:53 +0000 (14:46 -0800)]
Break the sqlite JDBC driver out from our JDBC implementation.

The JDBC driver is from a different source
(http://www.ch-werner.de/javasqlite/overview-summary.html) and is only
really needed for testing.

Bug 2468870 asks that we don't eagerly register the native methods for
these classes. That bug is fixed by this change.

Bug 2198667 asks that we stop shipping this JDBC driver as part of the
base system. That bug is not addressed by this change: the classes and
native code are now in their own, separate, .jar and .so files -- so
they'll be easier to remove in future -- but for now those files are
still in /system/framework and /system/lib respectively.

Bug: 2468870
Bug: 2198667

14 years agoMerge "Jit: fix typo that caused incorrect def mask for blr's." into dalvik-dev
Bill Buzbee [Fri, 26 Feb 2010 00:10:39 +0000 (16:10 -0800)]
Merge "Jit: fix typo that caused incorrect def mask for blr's." into dalvik-dev

14 years agoJit: fix typo that caused incorrect def mask for blr's.
Bill Buzbee [Thu, 25 Feb 2010 23:38:40 +0000 (15:38 -0800)]
Jit: fix typo that caused incorrect def mask for blr's.

14 years agoMerge "Relocate function declaration out the GC and into the compiler." into dalvik-dev
Carl Shapiro [Thu, 25 Feb 2010 23:54:18 +0000 (15:54 -0800)]
Merge "Relocate function declaration out the GC and into the compiler." into dalvik-dev

14 years agoRelocate function declaration out the GC and into the compiler.
Carl Shapiro [Thu, 25 Feb 2010 23:47:08 +0000 (15:47 -0800)]
Relocate function declaration out the GC and into the compiler.

14 years agoRemove the sole use of WITH_HPROF_STACK_UNREACHABLE macro. This
Carl Shapiro [Thu, 25 Feb 2010 23:13:05 +0000 (15:13 -0800)]
Remove the sole use of WITH_HPROF_STACK_UNREACHABLE macro.  This
feature never seems to have existed.

14 years agoMerge "Eliminate the unused hprof "unreachable" feature. This code dates back to...
Carl Shapiro [Thu, 25 Feb 2010 23:04:55 +0000 (15:04 -0800)]
Merge "Eliminate the unused hprof "unreachable" feature.  This code dates back to the Perforce repository and has never been enabled.  Nobody seems to know what it was once, if ever, used for so it may as well go." into dalvik-dev

14 years agoEliminate the unused hprof "unreachable" feature. This code dates
Carl Shapiro [Thu, 25 Feb 2010 03:47:40 +0000 (19:47 -0800)]
Eliminate the unused hprof "unreachable" feature.  This code dates
back to the Perforce repository and has never been enabled.  Nobody
seems to know what it was once, if ever, used for so it may as well
go.

14 years agoMerge "Fix a test by syncing with upstream." into dalvik-dev
Elliott Hughes [Thu, 25 Feb 2010 16:17:58 +0000 (08:17 -0800)]
Merge "Fix a test by syncing with upstream." into dalvik-dev

14 years agoPrint the self thread id and the owning thread id in the description
Carl Shapiro [Wed, 24 Feb 2010 10:30:55 +0000 (02:30 -0800)]
Print the self thread id and the owning thread id in the description
of the IllegalMonitorExcpetion throw by unlockMonitor.

14 years agoMerge "Allocate an object and mark bitmap which span the entire virtual memory reserv...
Carl Shapiro [Thu, 25 Feb 2010 02:40:54 +0000 (18:40 -0800)]
Merge "Allocate an object and mark bitmap which span the entire virtual memory reservation of the heap.  Eliminates indirection during the marking phase." into dalvik-dev

14 years agoFix a test by syncing with upstream.
Elliott Hughes [Thu, 25 Feb 2010 02:16:28 +0000 (18:16 -0800)]
Fix a test by syncing with upstream.

This test has been failing for us because of a local modification.

14 years agoIf we're in an Android build tree, we should use core.jar as our "SDK".
Elliott Hughes [Thu, 25 Feb 2010 00:58:08 +0000 (16:58 -0800)]
If we're in an Android build tree, we should use core.jar as our "SDK".

This fixes running junit tests for non-public classes, since bdc's --sdk
change went in. While --sdk is perfect for real people, it's probably not
what we want to use ourselves. Since this script is already hard-coded
for use in an Android build tree, this seems like a reasonable place to
apply the fix.

14 years agoAllocate an object and mark bitmap which span the entire virtual
Carl Shapiro [Fri, 19 Feb 2010 08:46:33 +0000 (00:46 -0800)]
Allocate an object and mark bitmap which span the entire virtual
memory reservation of the heap.  Eliminates indirection during the
marking phase.

14 years agoEnhance the jit profiler to print more statistics and be more verbose.
Ben Cheng [Wed, 24 Feb 2010 23:00:40 +0000 (15:00 -0800)]
Enhance the jit profiler to print more statistics and be more verbose.

Specifically, the per-trace invocation percentage is printed now.

D/dalvikvm(  671): TRACEPROFILE 0x42b6eed8   15449863  2.13% [0(+2), 253] Ljava/nio/Buffer;position;()I
D/dalvikvm(  671): TRACEPROFILE 0x42b7b3ac   15410023  2.13% [0x4(+3), 450] Lorg/apache/xml/serializer/CharInfo;shouldMapTextChar;(I)Z
D/dalvikvm(  671): TRACEPROFILE 0x42b7b2cc   15346582  2.12% [0(+2), 449] Lorg/apache/xml/serializer/CharInfo;shouldMapTextChar;(I)Z
D/dalvikvm(  671): TRACEPROFILE 0x42b7b40c   15013650  2.07% [0xb4(+2), 1527] Lorg/apache/xml/serializer/ToStream;characters;([CII)V
D/dalvikvm(  671): TRACEPROFILE 0x42b7b4f0   14907957  2.06% [0xc7(+2), 1537] Lorg/apache/xml/serializer/ToStream;characters;([CII)V
D/dalvikvm(  671): TRACEPROFILE 0x42b7b308   14898588  2.06% [0xad(+3), 1525] Lorg/apache/xml/serializer/ToStream;characters;([CII)V
D/dalvikvm(  671): TRACEPROFILE 0x42b7b52c   14798762  2.04% [0xc4(+2), 1523] Lorg/apache/xml/serializer/ToStream;characters;([CII)V
D/dalvikvm(  671): TRACEPROFILE 0x42b7b570   14763770  2.04% [0xf3(+2), 1577] Lorg/apache/xml/serializer/ToStream;characters;([CII)V

And the top 10 traces will be recompiled in verbose mode to facilitate code
quality analysis.

14 years agoam cf4e8b02: Merge "This is a contribution of x86-atom targeted assembly for the...
Andy McFadden [Wed, 24 Feb 2010 19:18:33 +0000 (11:18 -0800)]
am cf4e8b02: Merge "This is a contribution of x86-atom targeted assembly for the fast byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expe

Merge commit 'cf4e8b02ecfb5ec17a27ed4188dd7a9db14ab7bf'

* commit 'cf4e8b02ecfb5ec17a27ed4188dd7a9db14ab7bf':
  This is a contribution of x86-atom targeted assembly for the fast byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expected that there will be a discussion on the potential merge of this code and similar efforts (i.e. the mterp/x86 directory first included with cupcake). While this code is intended to target ATOM and not a generic X-86 processor, we were able to show the following improvements over the c-portable interpreter using the simulator build:

14 years agoClarify a few items in the dex spec.
Dan Bornstein [Wed, 24 Feb 2010 18:54:08 +0000 (10:54 -0800)]
Clarify a few items in the dex spec.

In particular, do a bit of "may" vs. "must" maintenance, and be specific
about references as arguments to filled-new-array.

Change-Id: Iae4cb734e05cd29230e2c9a343108bbfb3c20193

14 years agoMerge "Add class init stats to alloc counters (API change)."
Andy McFadden [Wed, 24 Feb 2010 17:39:09 +0000 (09:39 -0800)]
Merge "Add class init stats to alloc counters (API change)."

14 years agoRemove a bogus assertion.
Carl Shapiro [Wed, 24 Feb 2010 10:44:53 +0000 (02:44 -0800)]
Remove a bogus assertion.

14 years agoFix DalvikRunner on the dalvik-dev branch.
Elliott Hughes [Wed, 24 Feb 2010 02:05:54 +0000 (18:05 -0800)]
Fix DalvikRunner on the dalvik-dev branch.

(Longer term, we want to package junit, but this gets us running again.)

14 years agoMerge "Implementing still more DOM API for text nodes. - Text.isElementContentWhitesp...
Jesse Wilson [Wed, 24 Feb 2010 01:58:01 +0000 (17:58 -0800)]
Merge "Implementing still more DOM API for text nodes. - Text.isElementContentWhitespace() - Text.getWholeText() - Text.replaceWholeText()"

14 years agoImplementing still more DOM API for text nodes.
Jesse Wilson [Tue, 23 Feb 2010 23:23:26 +0000 (15:23 -0800)]
Implementing still more DOM API for text nodes.
- Text.isElementContentWhitespace()
- Text.getWholeText()
- Text.replaceWholeText()

14 years agoAdd class init stats to alloc counters (API change).
Andy McFadden [Tue, 23 Feb 2010 01:07:23 +0000 (17:07 -0800)]
Add class init stats to alloc counters (API change).

Add calls to retrieve class initialization stats via the allocation
count mechanism.

Also: deprecate a method that is never used, and a redundantly declared
default filename that begins with "/sdcard".

For bug 2461549.

14 years agoMinor fix for Adb.waitForNonEmptyDirectory so that waiting for /sdcard after reboot...
Brian Carlstrom [Wed, 24 Feb 2010 00:39:09 +0000 (16:39 -0800)]
Minor fix for Adb.waitForNonEmptyDirectory so that waiting for /sdcard after reboot works again.

14 years agoFix "HttpUrlConnection.addRequestProperty replaces existing properties instead of...
Elliott Hughes [Wed, 24 Feb 2010 00:20:16 +0000 (16:20 -0800)]
Fix "HttpUrlConnection.addRequestProperty replaces existing properties instead of append them".

The bug was actually that the copy constructor wasn't reconstructing the 'props'
list correctly. Upstream has applied the same fix, so I'm also bringing my
earlier change into sync with theirs, whitespace-wise (and removing no longer
necessary 'android-changed' tags).

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

14 years agoRemove more useless annotations: logging, luni-kernel, and math.
Elliott Hughes [Tue, 23 Feb 2010 22:57:28 +0000 (14:57 -0800)]
Remove more useless annotations: logging, luni-kernel, and math.

(Plus a bonus item: one Android-written test under luni.)

14 years agoMerge "Fixed bug 2438465, prevented blocks with move-result from being combined."
Jeff Hao [Tue, 23 Feb 2010 22:49:38 +0000 (14:49 -0800)]
Merge "Fixed bug 2438465, prevented blocks with move-result from being combined."

14 years agoMerge "This is a contribution of x86-atom targeted assembly for the fast byte-code...
Andy McFadden [Tue, 23 Feb 2010 21:46:14 +0000 (13:46 -0800)]
Merge "This is a contribution of x86-atom targeted assembly for the fast byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expected that there will be a discussion on the potential merge of this code and similar efforts (i.e. the mterp/x86 directory first included with cupcake). While this code is intended to target ATOM and not a generic X-86 processor, we were able to show the following improvements over the c-portable interpreter using the simulator build: Build: TARGET_SIMULATOR: true TARGET_BUILD_TYPE: release TARGET_PRODUCT: sim Environment: Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz PI = Portable Interpreter IA = Fast IA Interpreter Embedded CaffeineMark: (IA-PI)/PI: Average of 70% improvement on overall score SPECjbb2000*: (IA-PI)/PI: Average of 37% improvement on raw score SPECjvm98*: (PI/IA) Speedup: Mtrt: 1.2; Jess: 1.34; Compress: 1.57; Db: 1.46; Jack: 1.28 * SPECjbb2000 - 1 warehouse. Noncompliant - modified to run on Dalvik * SPECjvm98 - Noncompliant - modified to run on Dalivk"

14 years agoDalvikRunner --tee option to send output to a file or stdout at runtime
Brian Carlstrom [Tue, 23 Feb 2010 19:31:46 +0000 (11:31 -0800)]
DalvikRunner --tee option to send output to a file or stdout at runtime

Added --tee option so we can watch test output while the test is
running, as opposed to waiting until all the output is collected.

As part of this, Command.Builder can now optionally specifiy a
PrintStream via tee (name from tee(1)).

Added ADB.waitForFile to accompany ADB.waitForNonEmptyDirectory

Removed gross bash wait loop hack in Activity Mode by replacing
Mode.buildCommands with Mode.runTestCommand.

Fixed bug that out generated APK package names did not contain a
required "." in all cases.

14 years agoFixed bug 2438465, prevented blocks with move-result from being combined.
jeffhao [Tue, 23 Feb 2010 20:29:47 +0000 (12:29 -0800)]
Fixed bug 2438465, prevented blocks with move-result from being combined.

14 years agoFixed bug 2438465, prevented blocks with move-result from being combined.
jeffhao [Tue, 23 Feb 2010 20:29:47 +0000 (12:29 -0800)]
Fixed bug 2438465, prevented blocks with move-result from being combined.

14 years agoThis is a contribution of x86-atom targeted assembly for the fast byte-code interpret...
Johnnie Birch [Mon, 6 Apr 2009 22:26:13 +0000 (15:26 -0700)]
This is a contribution of x86-atom targeted assembly for the fast byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expected that there will be a discussion on the potential merge of this code and similar efforts (i.e. the mterp/x86 directory first included with cupcake). While this code is intended to target ATOM and not a generic X-86 processor, we were able to show the following improvements over the c-portable interpreter using the simulator build:
Build: TARGET_SIMULATOR: true
TARGET_BUILD_TYPE: release
TARGET_PRODUCT: sim
Environment: Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz
PI = Portable Interpreter
IA = Fast IA Interpreter
Embedded CaffeineMark: (IA-PI)/PI: Average of 70% improvement on overall score
SPECjbb2000*: (IA-PI)/PI: Average of 37% improvement on raw score
SPECjvm98*: (PI/IA) Speedup: Mtrt: 1.2; Jess: 1.34; Compress: 1.57; Db: 1.46; Jack: 1.28
* SPECjbb2000 - 1 warehouse. Noncompliant - modified to run on Dalvik
* SPECjvm98 - Noncompliant - modified to run on Dalivk

14 years agoRemove useless annotation cruft from tests for: annotation, archive, concurrent,...
Elliott Hughes [Tue, 23 Feb 2010 00:47:08 +0000 (16:47 -0800)]
Remove useless annotation cruft from tests for: annotation, archive, concurrent, and suncompat.

22 files (and 4 modules) down, 1000 to go...

14 years agoUpdate run-core-tests' documentation, remove the leading : from the classpath, and...
Elliott Hughes [Tue, 23 Feb 2010 00:00:27 +0000 (16:00 -0800)]
Update run-core-tests' documentation, remove the leading : from the classpath, and add the json tests to the classpath.

(I did look at replacing this with a bash script we run on the host, but adb
turns out to have a command-line limit of 1024 bytes, and our classpath alone
is ~850 bytes long!)

14 years agoAdd a test case for the jsr / invoke bug. (See the included
Dan Bornstein [Tue, 23 Feb 2010 00:08:53 +0000 (16:08 -0800)]
Add a test case for the jsr / invoke bug. (See the included
info.txt for more details.)

Change-Id: I6ae5266e3f3371406c366d4f4644a445875adf95

14 years agoFix a stupid mistake in my earlier change.
Elliott Hughes [Mon, 22 Feb 2010 23:01:55 +0000 (15:01 -0800)]
Fix a stupid mistake in my earlier change.

(I removed the unused parameter from the wrong macro!)

14 years agoAdapt jesse's new json tests to the new build scheme.
Elliott Hughes [Mon, 22 Feb 2010 20:45:26 +0000 (12:45 -0800)]
Adapt jesse's new json tests to the new build scheme.

14 years agoMerge remote branch 'goog/master' into mm
Elliott Hughes [Mon, 22 Feb 2010 20:09:51 +0000 (12:09 -0800)]
Merge remote branch 'goog/master' into mm

Conflicts:
libcore/JavaLibrary.mk

14 years agoMerge "Resync a load of tests with upstream, make our build faster." into dalvik-dev
Elliott Hughes [Mon, 22 Feb 2010 19:15:21 +0000 (11:15 -0800)]
Merge "Resync a load of tests with upstream, make our build faster." into dalvik-dev

14 years agoFix build breakage.
Barry Hayes [Mon, 22 Feb 2010 17:39:10 +0000 (09:39 -0800)]
Fix build breakage.
the "HeapChunk" abstraction was removed almost everywhere; but not here
until now.

14 years agoMerge " Add the "-Xgc:[no]overwritefree" flags. When set, the GC will clobber the...
Barry Hayes [Mon, 22 Feb 2010 17:13:28 +0000 (09:13 -0800)]
Merge " Add the "-Xgc:[no]overwritefree" flags. When set, the GC will clobber the memory of freed objects." into dalvik-dev

14 years agoMerge "Removing dead code from BigInt"
Jesse Wilson [Sat, 20 Feb 2010 19:12:12 +0000 (11:12 -0800)]
Merge "Removing dead code from BigInt"

14 years agoMerge "More XML DOM v3 APIs."
Jesse Wilson [Sat, 20 Feb 2010 19:11:40 +0000 (11:11 -0800)]
Merge "More XML DOM v3 APIs."

14 years agoMore XML DOM v3 APIs.
Jesse Wilson [Sat, 20 Feb 2010 18:20:55 +0000 (10:20 -0800)]
More XML DOM v3 APIs.

This adds the following APIs and tests:
- Node.isDefaultNamespace
- DomImplementation.hasFeature
- Node.isSupported
- Node.getFeature
- Node.isEqualNode

14 years agoRemoving dead code from BigInt
Jesse Wilson [Sat, 20 Feb 2010 18:35:21 +0000 (10:35 -0800)]
Removing dead code from BigInt

14 years agoRemove external/jsr305, external/guava, and external/caliper.
Elliott Hughes [Sat, 20 Feb 2010 06:14:19 +0000 (22:14 -0800)]
Remove external/jsr305, external/guava, and external/caliper.

14 years agoMerge "Disable JIT for armv5te for A/B tests."
Ben Cheng [Fri, 19 Feb 2010 23:30:16 +0000 (15:30 -0800)]
Merge "Disable JIT for armv5te for A/B tests."

14 years agoDisable JIT for armv5te for A/B tests.
Ben Cheng [Fri, 19 Feb 2010 22:49:44 +0000 (14:49 -0800)]
Disable JIT for armv5te for A/B tests.

14 years agoDOM setTextContent() tests and implementation fixes.
Jesse Wilson [Fri, 19 Feb 2010 19:18:41 +0000 (11:18 -0800)]
DOM setTextContent() tests and implementation fixes.

14 years agoResync a load of tests with upstream, make our build faster.
Elliott Hughes [Fri, 19 Feb 2010 01:20:15 +0000 (17:20 -0800)]
Resync a load of tests with upstream, make our build faster.

I started off with a mission to remove uses of dalvik.annotation.* (stuff
like @TestTargetNew and other useless junk that just makes it harder to
stay in sync with upstream). I wrote a script to go through tests showing
me the diff between what we have and what upstream has, thinking that in
cases where upstream has also added tests, I may as well pull them in at
the same time...

...but I didn't realize how close we were to having dx fill its 1.5GiB heap.

After trying various alternatives, I decided to bite the bullet and break
core-tests up into one .jar per module. This adds parallelism back into this,
the slowest part of our build. (I can do even better, but I'll do that in a
separate patch, preferably after we've merged recent changes from master.)

Only a couple of dependencies were problematic: the worthless TestSuiteFactory
which already contained a comment suggesting we get rid of it, and the fact
that some tests -- most notably the concurrent ones -- also contained main
methods that started the JUnit tty-based TestRunner.

(In the long run, we want to be running the harmony tests directly from a
pristine "svn co" of upstream, using DalvikRunner. But this will be a big
help in the meantime, and starts the work of getting our current copy of
the tests into a state where we can start to extract any meaningful
changes/additions we've made.)

14 years agoMerge "Removing bogus check to permit on-host debugging."
Jesse Wilson [Fri, 19 Feb 2010 17:30:04 +0000 (09:30 -0800)]
Merge "Removing bogus check to permit on-host debugging."

14 years agoRemoving bogus check to permit on-host debugging.
Jesse Wilson [Fri, 19 Feb 2010 17:28:57 +0000 (09:28 -0800)]
Removing bogus check to permit on-host debugging.

14 years agoMerge "Adding JSON tests to the complete test suite."
Jesse Wilson [Fri, 19 Feb 2010 17:28:28 +0000 (09:28 -0800)]
Merge "Adding JSON tests to the complete test suite."

14 years agoAdding JSON tests to the complete test suite.
Jesse Wilson [Fri, 19 Feb 2010 17:27:27 +0000 (09:27 -0800)]
Adding JSON tests to the complete test suite.

14 years agoMerge "Filling in some gaps in our XML DOM v3 API."
Jesse Wilson [Fri, 19 Feb 2010 17:27:00 +0000 (09:27 -0800)]
Merge "Filling in some gaps in our XML DOM v3 API."

14 years agoFilling in some gaps in our XML DOM v3 API.
Jesse Wilson [Fri, 19 Feb 2010 17:22:21 +0000 (09:22 -0800)]
Filling in some gaps in our XML DOM v3 API.

Specifically, these methods on Node:
 - setTextContent()
 - isSameNode()
 - lookupPrefix()
 - lookupNamespaceURI()
In order to implement the last 2 I needed to fix our KXml parser
to include namespace attributes (ie. xmlns) in the pulled document.
Previously these were being elided.

Added a new testcase to verify our behaviour. It passes the RI. On
Dalvik we have a small issue with entity declarations.

Added a new testcase to verify Node.getBaseURI(). This test fails
because the method isn't implemented. Part of this test required
moving a method out to Support_Resources.java; in order to verify
the BaseURI the XML must be read from a file and not a stream (so
that path information exists).

Also...
 - Style cleanup: changing static calls to look like static calls.
 - Efficiency: avoiding concatenating with "" when unnecessary
 - Duplication: sharing prefix validation between attributes and elements
 - Renaming NodeTests to NodeTest for vogar-friendliness

Outstanding:
 - I need to write a test for setTextContent().

14 years agoMore DalvikRunner cleanup.
Elliott Hughes [Thu, 18 Feb 2010 23:18:41 +0000 (15:18 -0800)]
More DalvikRunner cleanup.

Remove the now-unnecessary jsr305 and guava build dependencies.

Move TestActivity.java -- which is only needed at *run* time -- out into
lib/, which lets us simplify the makefile.

Pass the dalvik.annotation.* source files to javac(1) (at *run* time) so
we don't need the run-time dependency on core-intermediates [that I'd
already removed in a successful attempt to find out why we had the
dependency].

We need to remove all uses of those useless annotations from the harmony
tests so we can get back in sync with upstream, but now also so that we
can clean up this part of DalvikRunner.

14 years agoAdd a simple MD5-based cache to DalvikRunner.
Elliott Hughes [Thu, 18 Feb 2010 01:44:31 +0000 (17:44 -0800)]
Add a simple MD5-based cache to DalvikRunner.

This makes the new simpler scheme pretty much free.

I've also made a start on simplifying the make rules, though there's more we
can do, and I'll look at that next.

14 years agoMerge "Make DalvikRunner work on production devices too."
Elliott Hughes [Thu, 18 Feb 2010 00:25:06 +0000 (16:25 -0800)]
Merge "Make DalvikRunner work on production devices too."

14 years agoMerge "Add a general-purpose scoped pointer for libcore JNI."
Elliott Hughes [Wed, 17 Feb 2010 23:53:05 +0000 (15:53 -0800)]
Merge "Add a general-purpose scoped pointer for libcore JNI."

14 years agoMerge "HTTP headers should be case-insensitive but case-preserving." into dalvik-dev
Elliott Hughes [Wed, 17 Feb 2010 23:51:36 +0000 (15:51 -0800)]
Merge "HTTP headers should be case-insensitive but case-preserving." into dalvik-dev

14 years agoMake DalvikRunner work on production devices too.
Elliott Hughes [Wed, 17 Feb 2010 23:46:05 +0000 (15:46 -0800)]
Make DalvikRunner work on production devices too.

Place pre-built .jar files in our lib/ directory, and dex/push them on demand.

Change DalvikRunner to somewhat reduce the number of different classpaths in
play. My feeling is that we just want one true classpath: we should build with
it on the host, we should run with it on the host, we should dex everything on
it, we should upload everything to the device, and we should run with it on the
device.

Also add a convenience script for running DalvikRunner. ("Vogar" is the
proposed open source name for DalvikRunner, which really isn't as
dalvikvm-specific as the name might imply.)

There's a noticeable performance regression here, so my next change will be to
add a cache.

14 years ago Add the "-Xgc:[no]overwritefree" flags. When set, the GC will clobber the
Barry Hayes [Tue, 2 Feb 2010 22:07:37 +0000 (14:07 -0800)]
 Add the "-Xgc:[no]overwritefree" flags. When set, the GC will clobber the
memory of freed objects.

14 years agoMerge "Eliminate the heap chunk abstraction. This temporarily breaks the hprof featu...
Carl Shapiro [Wed, 17 Feb 2010 22:52:59 +0000 (14:52 -0800)]
Merge "Eliminate the heap chunk abstraction.  This temporarily breaks the hprof feature that allows stack traces to be associated with objects." into dalvik-dev

14 years agoEliminate the heap chunk abstraction. This temporarily breaks the
Carl Shapiro [Wed, 17 Feb 2010 01:40:19 +0000 (17:40 -0800)]
Eliminate the heap chunk abstraction.  This temporarily breaks the
hprof feature that allows stack traces to be associated with objects.

14 years agoMerge "Detect system-wide safe mode and configure the VM accordingly." into dalvik-dev
Ben Cheng [Wed, 17 Feb 2010 20:47:35 +0000 (12:47 -0800)]
Merge "Detect system-wide safe mode and configure the VM accordingly." into dalvik-dev

14 years agoDetect system-wide safe mode and configure the VM accordingly.
Ben Cheng [Mon, 15 Feb 2010 00:17:36 +0000 (16:17 -0800)]
Detect system-wide safe mode and configure the VM accordingly.

Use pthread_cond_wait instead of timed wait for the system_server process to
wait on the go-ahead JIT signal. If the phone is booted under system-wide safe
mode, such signal will never come so all VM instances (including the system
server) will run in the interpreter-only mode.

Bug: 2267590

14 years agoHTTP headers should be case-insensitive but case-preserving.
Elliott Hughes [Wed, 17 Feb 2010 20:18:59 +0000 (12:18 -0800)]
HTTP headers should be case-insensitive but case-preserving.

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

14 years agoMerge "Densely allocate mspaces. New heaps are started on the page following the...
Carl Shapiro [Wed, 17 Feb 2010 20:15:19 +0000 (12:15 -0800)]
Merge "Densely allocate mspaces.  New heaps are started on the page following the break of the previously allocated heap.  In addition, we shrink the reported size of the previous object bitmap so it covers only the committed range of the heap.  We now separately track the size of the bitmap virtual memory reservation so we may unmap it all at shutdown time." into dalvik-dev

14 years agoFixing packages for JSON tests
Jesse Wilson [Wed, 17 Feb 2010 18:44:11 +0000 (10:44 -0800)]
Fixing packages for JSON tests

14 years agoMerge "First round of tests for the subset of the org.json in Android."
Jesse Wilson [Wed, 17 Feb 2010 18:10:36 +0000 (10:10 -0800)]
Merge "First round of tests for the subset of the org.json in Android."

14 years agoFirst round of tests for the subset of the org.json in Android.
Jesse Wilson [Tue, 16 Feb 2010 21:50:32 +0000 (13:50 -0800)]
First round of tests for the subset of the org.json in Android.

14 years agoMerge "Detect system-wide safe mode and configure the VM accordingly."
Ben Cheng [Wed, 17 Feb 2010 06:28:11 +0000 (22:28 -0800)]
Merge "Detect system-wide safe mode and configure the VM accordingly."

14 years agoMerge "Removing unnecessary org.w3c.dom subpackages"
Jesse Wilson [Wed, 17 Feb 2010 05:58:11 +0000 (21:58 -0800)]
Merge "Removing unnecessary org.w3c.dom subpackages"

14 years agoJit: Monitor exit, possible fix for Issue 2396073
Bill Buzbee [Tue, 16 Feb 2010 22:40:01 +0000 (14:40 -0800)]
Jit: Monitor exit, possible fix for Issue 2396073

Two problems with monitor-exit:
   1.  The Jit code wasn't checking for exception thrown following
       unlocks of fat locks using dvmUnlockObject().
   2.  The mterp interpreter unlock code branched to handle exceptions
       thrown during dvmUnlockObject() with the wrong dalvik PC (the
       dPC of the unlock, rather than the instruction following the unlock).

Similar issue with the x86 interpreter fixed.  Also, deleted armv7-a
MONITOR_ENTER template, which turned out to be identical to the armv5te
one.

14 years agoRemoving unnecessary org.w3c.dom subpackages
Jesse Wilson [Fri, 12 Feb 2010 00:08:33 +0000 (16:08 -0800)]
Removing unnecessary org.w3c.dom subpackages

14 years agoMerge "Jit: Monitor exit, possible fix for Issue 2396073"
Bill Buzbee [Wed, 17 Feb 2010 00:12:55 +0000 (16:12 -0800)]
Merge "Jit: Monitor exit, possible fix for Issue 2396073"

14 years agoFix FindBugs' "high" warnings about java.lang.Class.
Elliott Hughes [Wed, 17 Feb 2010 00:06:37 +0000 (16:06 -0800)]
Fix FindBugs' "high" warnings about java.lang.Class.

14 years agoJit: Monitor exit, possible fix for Issue 2396073
Bill Buzbee [Tue, 16 Feb 2010 22:40:01 +0000 (14:40 -0800)]
Jit: Monitor exit, possible fix for Issue 2396073

Two problems with monitor-exit:
   1.  The Jit code wasn't checking for exception thrown following
       unlocks of fat locks using dvmUnlockObject().
   2.  The mterp interpreter unlock code branched to handle exceptions
       thrown during dvmUnlockObject() with the wrong dalvik PC (the
       dPC of the unlock, rather than the instruction following the unlock).

Similar issue with the x86 interpreter fixed.  Also, deleted armv7-a
MONITOR_ENTER template, which turned out to be identical to the armv5te
one.

14 years agoDetect system-wide safe mode and configure the VM accordingly.
Ben Cheng [Mon, 15 Feb 2010 00:17:36 +0000 (16:17 -0800)]
Detect system-wide safe mode and configure the VM accordingly.

Use pthread_cond_wait instead of timed wait for the system_server process to
wait on the go-ahead JIT signal. If the phone is booted under system-wide safe
mode, such signal will never come so all VM instances (including the system
server) will run in the interpreter-only mode.

Bug: 2267590

14 years agoMerge "Reverting our test runner's background building behaviour."
Jesse Wilson [Tue, 16 Feb 2010 22:57:30 +0000 (14:57 -0800)]
Merge "Reverting our test runner's background building behaviour."

14 years agoReverting our test runner's background building behaviour.
Jesse Wilson [Tue, 16 Feb 2010 22:30:31 +0000 (14:30 -0800)]
Reverting our test runner's background building behaviour.

Our continuous build has been failing to complete lately. See:
http://jwilson.mtv.corp.google.com:8080/job/master_passion/274/consoleFull

In addition to this problem the continuous build is compiling many
more tests ahead-of-time than we were originally - previously we
would only have up to 4 tests ready-to-run at any given time. With
this change the ExecutorCompletionService was building and installing
all of the tests eagerly.

I believe the problem might be a mismatch between how the BlockingQueue
and the ExecutorCompletionService select which order to return futures.
By removing the ExecutorCompletionService I remove the opportunity for
such a conflict!

14 years agoFlan -> Froyo
Andy McFadden [Tue, 16 Feb 2010 22:08:29 +0000 (14:08 -0800)]
Flan -> Froyo

14 years agoDensely allocate mspaces. New heaps are started on the page following
Carl Shapiro [Mon, 15 Feb 2010 02:40:47 +0000 (18:40 -0800)]
Densely allocate mspaces.  New heaps are started on the page following
the break of the previously allocated heap.  In addition, we shrink
the reported size of the previous object bitmap so it covers only the
committed range of the heap.  We now separately track the size of the
bitmap virtual memory reservation so we may unmap it all at shutdown
time.

14 years agoEliminate unused variable warnings in the alloc code. In the places
Carl Shapiro [Mon, 15 Feb 2010 07:11:47 +0000 (23:11 -0800)]
Eliminate unused variable warnings in the alloc code.  In the places
where unused attributes have been added, arguably, the return code
should be passed up to the caller or, if the return code indicates an
error, we should fast-fail.

14 years agoMerge "Fix a few of our FindBugs "high" warnings." into dalvik-dev
Elliott Hughes [Sat, 13 Feb 2010 03:52:42 +0000 (19:52 -0800)]
Merge "Fix a few of our FindBugs "high" warnings." into dalvik-dev

14 years agoFix a few of our FindBugs "high" warnings.
Elliott Hughes [Sat, 13 Feb 2010 02:10:26 +0000 (18:10 -0800)]
Fix a few of our FindBugs "high" warnings.

RuleBasedBreakIterator was breaking the equals/hashCode contract.

Various classes were calling toString on arrays, which isn't very useful.

GregorianCalendar was missing a null/instanceof check. (FindBugs complained about
the former, but the super.equals would actually take care of that. The lack of
the explicit "instanceof" did mean that we could throw ClassCastException if you
had a Calendar that wasn't a GregorianCalendar, though. [Not easily testable,
and I hope we'll replace our calendars with ICU4J's before we actually have
another Calendar subclass.])

Collator's cache was broken, but luckily never had anything inserted into it
anyway.

14 years agoMerge "Use one method to create a Locale from a String." into dalvik-dev
Elliott Hughes [Sat, 13 Feb 2010 01:49:41 +0000 (17:49 -0800)]
Merge "Use one method to create a Locale from a String." into dalvik-dev

14 years agoThrow IllegalArgumentException if Currency.getInstance is given an invalid currency...
Elliott Hughes [Sat, 13 Feb 2010 00:51:53 +0000 (16:51 -0800)]
Throw IllegalArgumentException if Currency.getInstance is given an invalid currency code.

This fixes an existing harmony DecimalFormatSymbolsTest failure, but I've added
an explicit test for clarity (and to reduce the likelihood of regression).

14 years agoUse one method to create a Locale from a String.
Elliott Hughes [Fri, 12 Feb 2010 23:33:53 +0000 (15:33 -0800)]
Use one method to create a Locale from a String.

Bug: 2392157