OSDN Git Service

android-x86/dalvik.git
14 years agoMerge "Fix server side SSLEngine ServerKeyExchange signature."
Costin Manolache [Fri, 5 Mar 2010 22:56:05 +0000 (14:56 -0800)]
Merge "Fix server side SSLEngine ServerKeyExchange signature."

14 years agoMerge "Implementing the Java 7 APIs for DeflaterOutputStreams."
Jesse Wilson [Fri, 5 Mar 2010 18:21:16 +0000 (10:21 -0800)]
Merge "Implementing the Java 7 APIs for DeflaterOutputStreams."

14 years agoImplementing the Java 7 APIs for DeflaterOutputStreams.
Jesse Wilson [Fri, 5 Mar 2010 01:18:44 +0000 (17:18 -0800)]
Implementing the Java 7 APIs for DeflaterOutputStreams.

See bug 1729487.

14 years agoFix server side SSLEngine ServerKeyExchange signature.
Costin Manolache [Tue, 2 Mar 2010 21:47:01 +0000 (13:47 -0800)]
Fix server side SSLEngine ServerKeyExchange signature.

Code using SSLEngine for non-blocking SSL can't talk with openssl as a client,
since the signature is computed on different content (and openssl checks it,
unlike java). The fix is to use strip the 0x00 prefix when signing - like
it is done when generating the message, refactored both to use a common
method. We also include the length in the signature, it was also missing.

14 years agoPrevent java.text.Normalizer from getting a default constructor.
Elliott Hughes [Thu, 4 Mar 2010 05:35:41 +0000 (21:35 -0800)]
Prevent java.text.Normalizer from getting a default constructor.

The dalvik continuous build's new jdiff run caught this.

14 years agoMerge "Don't call a method that can be overridden from File's constructors."
Elliott Hughes [Thu, 4 Mar 2010 02:14:40 +0000 (18:14 -0800)]
Merge "Don't call a method that can be overridden from File's constructors."

14 years agoMerge "Update local copy of getSchedulerGroup."
Andy McFadden [Thu, 4 Mar 2010 01:53:00 +0000 (17:53 -0800)]
Merge "Update local copy of getSchedulerGroup."

14 years agoDon't call a method that can be overridden from File's constructors.
Elliott Hughes [Thu, 4 Mar 2010 01:39:14 +0000 (17:39 -0800)]
Don't call a method that can be overridden from File's constructors.

Bug: 2486943

14 years agoUpdate local copy of getSchedulerGroup.
Andy McFadden [Wed, 3 Mar 2010 23:37:10 +0000 (15:37 -0800)]
Update local copy of getSchedulerGroup.

The getSchedulerGroup() in libcutils was updated, but for some reason we
have our own copy in the VM.  This change brings it up to date so we
stop crashing every time something requests a virtual stack (e.g. with a
"kill -3 <pid>").

(The function is now an exact clone -- the previous version was slightly
modified.)

14 years agoMerge "Jit: Sapphire tuning - mostly scheduling."
Bill Buzbee [Wed, 3 Mar 2010 23:30:35 +0000 (15:30 -0800)]
Merge "Jit: Sapphire tuning - mostly scheduling."

14 years agoJit: Sapphire tuning - mostly scheduling.
Bill Buzbee [Wed, 3 Mar 2010 00:14:41 +0000 (16:14 -0800)]
Jit: Sapphire tuning - mostly scheduling.

Re-enabled load/store motion that had inadvertently been turned off for
non-armv7 targets.  Tagged memory references with the kind of memory
they touch (Dalvik frame, literal pool, heap) to enable more aggressive
load hoisting.  Eliminated some largely duplicate code in the target
specific files.  Reworked temp register allocation code to allocate next
temp round-robin (to improve scheduling opportunities).

Overall, nice gain for Sapphire.  Shows 5% to 15% on some benchmarks, and
measurable improvements for Passion.

14 years agoam b16b78db: am 275acdff: Copy Froyo\'s version of MulticastSocketTest to Eclair...
Elliott Hughes [Wed, 3 Mar 2010 21:23:46 +0000 (13:23 -0800)]
am b16b78db: am 275acdff: Copy Froyo\'s version of MulticastSocketTest to Eclair for CTS.

Merge commit 'b16b78db118036d7df2cf5705baa18f34bd42eec'

* commit 'b16b78db118036d7df2cf5705baa18f34bd42eec':
  Copy Froyo's version of MulticastSocketTest to Eclair for CTS.

14 years agoam 275acdff: Copy Froyo\'s version of MulticastSocketTest to Eclair for CTS.
Elliott Hughes [Wed, 3 Mar 2010 21:12:27 +0000 (13:12 -0800)]
am 275acdff: Copy Froyo\'s version of MulticastSocketTest to Eclair for CTS.

Merge commit '275acdff64a58f407cec552e7027cb07414b48ef' into eclair-plus-aosp

* commit '275acdff64a58f407cec552e7027cb07414b48ef':
  Copy Froyo's version of MulticastSocketTest to Eclair for CTS.

14 years agoCopy Froyo's version of MulticastSocketTest to Eclair for CTS. eclair-x86
Elliott Hughes [Wed, 3 Mar 2010 07:58:39 +0000 (23:58 -0800)]
Copy Froyo's version of MulticastSocketTest to Eclair for CTS.

Partners are seeing test failures from the old tests, which were very bogus.

14 years agoMerge "Switch thread's cgroup during spin-on-suspend."
Andy McFadden [Tue, 2 Mar 2010 23:21:18 +0000 (15:21 -0800)]
Merge "Switch thread's cgroup during spin-on-suspend."

14 years agoMerge "Print the self thread id and the owning thread id in the description of the...
Carl Shapiro [Tue, 2 Mar 2010 23:12:53 +0000 (15:12 -0800)]
Merge "Print the self thread id and the owning thread id in the description of the IllegalMonitorExcpetion throw by unlockMonitor."

14 years agoUse assertEquals rather than assertTrue/assertFalse.
Elliott Hughes [Tue, 2 Mar 2010 23:04:09 +0000 (15:04 -0800)]
Use assertEquals rather than assertTrue/assertFalse.

14 years agoSwitch thread's cgroup during spin-on-suspend.
Andy McFadden [Tue, 2 Mar 2010 22:23:04 +0000 (14:23 -0800)]
Switch thread's cgroup during spin-on-suspend.

Dalvik uses a safe-point suspend mechanism, in which threads are asked
to suspend and do so at their earliest convenience.  The thread doing
the asking will sleep-spin until all threads have complied.  If a thread
keeps on running, we get a "spin on suspend" situation.

The VM tries to correct matters by raising the priority of the spinning
thread if it's below normal.  Until now it was just fiddling with the
"nice" value, but it appears that isn't enough (e.g. bug 2467653).  We
now also change the thread's process group from "background" to
"foreground" in an attempt to get it some CPU.

Also includes some changes as part of the Log Reduction Act:

- Don't log the thread stacks on the first spin-on-suspend iteration.
  The act of logging can itself be quite a drag.
- Removed the redundant and unnecessary "dumping state" line, as well
  as some dead glibc-only code.
- While waiting for daemon threads to shut down, only show the "not
  ready yet" message on the first iteration.

14 years agoAdd our home-grown Normalizer tests.
Elliott Hughes [Tue, 2 Mar 2010 21:24:31 +0000 (13:24 -0800)]
Add our home-grown Normalizer tests.

Originally https://android-git.corp.google.com/g/42517.

14 years agoMerge "Implement (but @hide) java.text.Normalizer from Java 6."
Elliott Hughes [Tue, 2 Mar 2010 04:07:07 +0000 (20:07 -0800)]
Merge "Implement (but @hide) java.text.Normalizer from Java 6."

14 years agoMerge "Implementing almost all of Document.normalizeDocument()."
Jesse Wilson [Tue, 2 Mar 2010 03:15:57 +0000 (19:15 -0800)]
Merge "Implementing almost all of Document.normalizeDocument()."

14 years agoImplementing almost all of Document.normalizeDocument().
Jesse Wilson [Tue, 2 Mar 2010 01:31:53 +0000 (17:31 -0800)]
Implementing almost all of Document.normalizeDocument().

This follows the rules specified by DOMConfiguration. In particular:
 - replacing CDATA nodes with text
 - splitting CDATA nodes
 - merging text nodes
 - stripping comments
 - detecting invalid characters

I haven't added the normalization code for XML validation or namespaces.

14 years agoImplement (but @hide) java.text.Normalizer from Java 6.
Elliott Hughes [Tue, 2 Mar 2010 00:28:05 +0000 (16:28 -0800)]
Implement (but @hide) java.text.Normalizer from Java 6.

Based on https://android-git.corp.google.com/g/42516.

Includes the harmony tests from their Java 6 branch.

Bug: 719001

14 years agoMerge "Allow unpriviledged gdbserver to attach to debuggable processes."
David 'Digit' Turner [Mon, 1 Mar 2010 23:45:58 +0000 (15:45 -0800)]
Merge "Allow unpriviledged gdbserver to attach to debuggable processes."

14 years agoAllow unpriviledged gdbserver to attach to debuggable processes.
David 'Digit' Turner [Tue, 23 Feb 2010 00:56:58 +0000 (16:56 -0800)]
Allow unpriviledged gdbserver to attach to debuggable processes.

This patch is used to allow an unprivileged gdbserver binary to
perform a ptrace attach to a debuggable process.

The kernel will only allow the attach to succeed under the following
conditions:

- gdbserver and the process are run under the exact same uids/gids
- the process is dumpable

The second condition requires this patch. The first one is ensured
by different changes to the platform (that don't directly touch Dalvik).

This is part of the work performed to allow native debugging of
applications on production devices.

14 years agoMerge "Added a simple check for stray tracked refs."
Andy McFadden [Mon, 1 Mar 2010 21:39:38 +0000 (13:39 -0800)]
Merge "Added a simple check for stray tracked refs."

14 years agoMerge "Added an x86-atom "TODO" list."
Andy McFadden [Mon, 1 Mar 2010 20:40:06 +0000 (12:40 -0800)]
Merge "Added an x86-atom "TODO" list."

14 years agoAdded an x86-atom "TODO" list.
Andy McFadden [Mon, 1 Mar 2010 20:16:12 +0000 (12:16 -0800)]
Added an x86-atom "TODO" list.

Besides the obvious things (unimplemented opcodes), this points out a
couple of changes that were made to the interpreter and require a
corresponding change for x86-atom.

14 years agoAdded a simple check for stray tracked refs.
Andy McFadden [Mon, 1 Mar 2010 18:52:00 +0000 (10:52 -0800)]
Added a simple check for stray tracked refs.

The idea is to make sure the main thread is getting through the VM init
process with an empty tracked references table.  If we find any, we
print a warning and dump the table, but continue on anyway.

My test was a trivial dvmMalloc(), which turned up a flaw in the ref
table dump code: it didn't deal with "raw" dvmMalloc sections.  So
that's fixed as well.

14 years agoMerge "New implementation for DOMConfiguration."
Jesse Wilson [Mon, 1 Mar 2010 18:21:05 +0000 (10:21 -0800)]
Merge "New implementation for DOMConfiguration."

14 years agoNew implementation for DOMConfiguration.
Jesse Wilson [Sat, 27 Feb 2010 08:00:54 +0000 (00:00 -0800)]
New implementation for DOMConfiguration.

This API is disgusting. Its not regular, not typesafe, sparsely
implemented and overly specific. I'm implementing the minimum I can
get away with - exactly the same route taken by the RI.

The Parameter stuff feels a little bit like overkill, but it allowed
me to group related chunks of code together and avoid long chains of
equalsIgnoreCase if statements.

This is necessary to implement Document.normalize(), one of the
last remaining APIs in DOMv3.

Also fixing our implementation of Node.normalize() and adding tests
to discover a bug in that code. Previously a document like this:
  "<foo>abc<br>def</foo>"
Would be normalized to this:
  "<foo>abcdef<br></foo>"
Which is a horrible bug! Yuck.

Implementation and tests for Document.normalize() are forthcoming.

14 years agoMerge "Fix a FormatFlagsConversionMismatchException bug I introduced in Froyo."
Elliott Hughes [Mon, 1 Mar 2010 18:19:46 +0000 (10:19 -0800)]
Merge "Fix a FormatFlagsConversionMismatchException bug I introduced in Froyo."

14 years agoFix a FormatFlagsConversionMismatchException bug I introduced in Froyo.
Elliott Hughes [Sun, 28 Feb 2010 19:10:10 +0000 (11:10 -0800)]
Fix a FormatFlagsConversionMismatchException bug I introduced in Froyo.

We want to show the characters representing the flags, not the decimal
values of their ASCII representation. "Use overloading judiciously",
as the man says, or cause errors like this.

Seen in FRE56B (see https://android-git.corp.google.com/g/42528).

14 years agoMerge "Don't set x86 arch variant."
Andy McFadden [Fri, 26 Feb 2010 22:25:32 +0000 (14:25 -0800)]
Merge "Don't set x86 arch variant."

14 years agoDon't set x86 arch variant.
Andy McFadden [Fri, 26 Feb 2010 21:34:01 +0000 (13:34 -0800)]
Don't set x86 arch variant.

This was a workaround for a missing bit in the core build.  No longer
needed.

14 years agoMerge "Adding tests to parse document attributes from the DOM."
Jesse Wilson [Fri, 26 Feb 2010 21:16:39 +0000 (13:16 -0800)]
Merge "Adding tests to parse document attributes from the DOM."

14 years agoAdding tests to parse document attributes from the DOM.
Jesse Wilson [Fri, 26 Feb 2010 20:17:32 +0000 (12:17 -0800)]
Adding tests to parse document attributes from the DOM.

This adds implementation and tests for these methods:
getInputEncoding(), getDocumentURI().

And tests for these methods:
getXmlEncoding(), getXmlVersion(), getXmlStandalone().

14 years agoMerge "Update a few things in x86-atom."
Andy McFadden [Fri, 26 Feb 2010 18:16:38 +0000 (10:16 -0800)]
Merge "Update a few things in x86-atom."

14 years agoUpdate a few things in x86-atom.
Andy McFadden [Fri, 26 Feb 2010 15:35:20 +0000 (07:35 -0800)]
Update a few things in x86-atom.

This replaced unuses opcodes EC and EF with C stubs for the breakpoint
and execute-inline/range instructions, which were added after the last
bunch of stuff we rolled out to eclair open-source.  I also rebuilt the
"out" dir to pick up the various other changes.

14 years agoTweak the interpreter entries and 2nd level trace filter to capture more traces.
Ben Cheng [Thu, 25 Feb 2010 04:58:44 +0000 (20:58 -0800)]
Tweak the interpreter entries and 2nd level trace filter to capture more traces.

Real changes:
1) Add a new entry point from JIT to the interpreter to request hot traces w/o
   doing chaining.
2) Increase the granularity of the secondary profile filter to match 64-byte
   chunks using 64 entries.

The remaining are just cosmetic changes.

14 years agoMerge "First pass at reorganizing org.apache.harmony.xnet.provider.jsse native code...
Brian Carlstrom [Fri, 26 Feb 2010 00:15:50 +0000 (16:15 -0800)]
Merge "First pass at reorganizing org.apache.harmony.xnet.provider.jsse native code into a single file."

14 years agoMerge "Fix a couple of typos in JIT function names."
Elliott Hughes [Fri, 26 Feb 2010 00:04:11 +0000 (16:04 -0800)]
Merge "Fix a couple of typos in JIT function names."

14 years agoFirst pass at reorganizing org.apache.harmony.xnet.provider.jsse native code into...
Brian Carlstrom [Thu, 11 Feb 2010 06:56:47 +0000 (22:56 -0800)]
First pass at reorganizing org.apache.harmony.xnet.provider.jsse native code into a single file.

At enh's suggestion, I'm consoldiating the OpenSSL related native code
into a single wrapper class NativeCrypto. This changes is the firs
step, combining the cpp code into a single NativeCode.cpp. The next
step will involved introducting a single SSL_CTX in NativeCode and
cleaning up SSL_CTX use. As part of this, I'll start moving the native
wrappers to from various OpenSSL*.java classes into NativeCode.

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

14 years agoFix a couple of typos in JIT function names.
Elliott Hughes [Thu, 25 Feb 2010 23:41:42 +0000 (15:41 -0800)]
Fix a couple of typos in JIT function names.

(I saw these the other day, but preferred a separate patch.)

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 "Document that Class.getSigners() always returns null."
Elliott Hughes [Thu, 25 Feb 2010 22:59:44 +0000 (14:59 -0800)]
Merge "Document that Class.getSigners() always returns null."

14 years agoDocument that Class.getSigners() always returns null.
Elliott Hughes [Thu, 25 Feb 2010 22:42:17 +0000 (14:42 -0800)]
Document that Class.getSigners() always returns null.

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

14 years agoMerge "Rearrange JDWP cleanup."
Andy McFadden [Thu, 25 Feb 2010 22:12:32 +0000 (14:12 -0800)]
Merge "Rearrange JDWP cleanup."

14 years agoRearrange JDWP cleanup.
Andy McFadden [Thu, 25 Feb 2010 20:31:04 +0000 (12:31 -0800)]
Rearrange JDWP cleanup.

This moves the "get rid of the breakpoints" part before the "tell the
rest of the VM that there's no debugger attached" part.  Hitting a
breakpoint when there's no debugger attached is not expected.

For bug 2461667.

14 years agoMerge "Keep the order from getaddrinfo() unchanged if preferIPv6Addresses() is true."
Elliott Hughes [Thu, 25 Feb 2010 16:22:52 +0000 (08:22 -0800)]
Merge "Keep the order from getaddrinfo() unchanged if preferIPv6Addresses() is true."

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 "Print "JIT" in the thread dump if the top frame is in JIT'ed code."
Ben Cheng [Thu, 25 Feb 2010 02:34:25 +0000 (18:34 -0800)]
Merge "Print "JIT" in the thread dump if the top frame is in JIT'ed code."

14 years agoMerge "Added printf attribute to exception function."
Andy McFadden [Thu, 25 Feb 2010 02:28:14 +0000 (18:28 -0800)]
Merge "Added printf attribute to exception function."

14 years agoPrint "JIT" in the thread dump if the top frame is in JIT'ed code.
Ben Cheng [Thu, 25 Feb 2010 01:27:01 +0000 (17:27 -0800)]
Print "JIT" in the thread dump if the top frame is in JIT'ed code.

14 years agoOptimize more easy multiplications by constants.
Elliott Hughes [Thu, 25 Feb 2010 00:36:18 +0000 (16:36 -0800)]
Optimize more easy multiplications by constants.

Rather than make these changes in the libraries (*10 being a common case),
let's do them once and for all in the JIT.

The 2^n-1 case could be better if we generated RSB instructions, but the
current "fake" RSB is still better than a full multiply.

Thumb doesn't support reg/reg/reg/shift instructions, so we can't optimize
the "population count <= 2" cases (such as *10) there.

Tested on sholes, passion, and passion-running-sapphire (and visually
inspected to check we weren't trying to generate Thumb2 instructions there).
Also tested with the self-verifier.

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 agoAdded printf attribute to exception function.
Andy McFadden [Wed, 24 Feb 2010 17:39:52 +0000 (09:39 -0800)]
Added printf attribute to exception function.

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 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 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 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 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 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 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 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 agoKeep the order from getaddrinfo() unchanged if preferIPv6Addresses() is true.
Steinar H. Gunderson [Fri, 12 Feb 2010 16:10:52 +0000 (17:10 +0100)]
Keep the order from getaddrinfo() unchanged if preferIPv6Addresses() is true.

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 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 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.