OSDN Git Service
Andy McFadden [Fri, 12 Jun 2009 14:26:17 +0000 (07:26 -0700)]
Treat some right shifts as narrowing conversions.
Java bytecode optimizers like ProGuard will remove explicit integer
width conversions from certain sequences. For example, after
right-shifting an integer 24 times, an int-to-byte instruction is
redundant.
This change teaches the verifier that right shifts sometimes reduce
(or at least don't increase) the width of an integer. Previously, the
result of a right shift was always a full-sized int.
Android (Google) Code Review [Mon, 15 Jun 2009 14:20:57 +0000 (07:20 -0700)]
Merge change 4123
* changes:
Added a VFP utility function for future use.
Andy McFadden [Fri, 12 Jun 2009 23:58:02 +0000 (16:58 -0700)]
Added a VFP utility function for future use.
Jesse Wilson [Fri, 12 Jun 2009 15:26:16 +0000 (08:26 -0700)]
am
729c7056: Test and fix for the ArrayList.addAll(), bug 2954.
Merge commit '
729c70568dac17c7178bbeccdde39fc21b9d5c1c'
* commit '
729c70568dac17c7178bbeccdde39fc21b9d5c1c':
Test and fix for the ArrayList.addAll(), bug 2954.
Android (Google) Code Review [Fri, 12 Jun 2009 14:27:46 +0000 (07:27 -0700)]
Merge change 3997
* changes:
Rename vfp to arm-vfp.
Jesse Wilson [Fri, 12 Jun 2009 00:35:12 +0000 (17:35 -0700)]
Test and fix for the ArrayList.addAll(), bug 2954.
Android (Google) Code Review [Fri, 12 Jun 2009 00:46:33 +0000 (17:46 -0700)]
Merge change 4006
* changes:
Test and fix for the ArrayList.addAll(), bug 2954.
Jesse Wilson [Fri, 12 Jun 2009 00:35:12 +0000 (17:35 -0700)]
Test and fix for the ArrayList.addAll(), bug 2954.
Andy McFadden [Fri, 12 Jun 2009 00:10:29 +0000 (17:10 -0700)]
Rename vfp to arm-vfp.
Dan Bornstein [Thu, 11 Jun 2009 22:03:11 +0000 (15:03 -0700)]
Give dx a large max heap size by default.
Android (Google) Code Review [Thu, 11 Jun 2009 21:54:36 +0000 (14:54 -0700)]
Merge change 2279
* changes:
Updating archive to Harmony r772995.
Dan Bornstein [Wed, 10 Jun 2009 23:31:46 +0000 (16:31 -0700)]
am
32c0ded2: Fix internal issue #
1898791 ("PlatformAddressFactory PlatformAddress cache causes memory to not be freed in a timely manner.").
Merge commit '
32c0ded21ec8cd40f27015b4e65ec6a1bd78ef9a'
* commit '
32c0ded21ec8cd40f27015b4e65ec6a1bd78ef9a':
Fix internal issue #
1898791 ("PlatformAddressFactory PlatformAddress cache
Android (Google) Code Review [Wed, 10 Jun 2009 22:13:32 +0000 (15:13 -0700)]
Merge change 3764
* changes:
Allow {iput,sput}-boolean on a byte value.
Andy McFadden [Wed, 10 Jun 2009 21:11:07 +0000 (14:11 -0700)]
Allow {iput,sput}-boolean on a byte value.
javac generates code that can only be understood as storing a byte value
into a boolean field. The verifier now allows this.
Dan Bornstein [Wed, 10 Jun 2009 20:05:51 +0000 (13:05 -0700)]
Fix internal issue #
1898791 ("PlatformAddressFactory PlatformAddress cache
causes memory to not be freed in a timely manner.").
The change makes the two PlatformAddressFactory.alloc() methods always
allocate separate PlatformAddress objects instead of looking for them
in the cache. This means that, should they have auto-free turned on,
there won't be a reference in the cache that prevents the freeing from
happening. And since we're talking about freshly-allocated memory anyway,
it would be surprising that either a matching address would be found in
cache *or* that a subsequent call to on() would ever happen with the
same address. So, it's a win on several fronts.
Android (Google) Code Review [Wed, 10 Jun 2009 17:46:30 +0000 (10:46 -0700)]
Merge change 3512
* changes:
At least mostly-fix internal issue #
1898095 / public issue #2868.
Android (Google) Code Review [Tue, 9 Jun 2009 23:37:04 +0000 (16:37 -0700)]
Merge change 3625
* changes:
Bump from 1.0.1 to 1.1.0.
Dan Bornstein [Tue, 9 Jun 2009 00:21:06 +0000 (17:21 -0700)]
At least mostly-fix internal issue #
1898095 / public issue #2868.
The problem is that Scala code may have two variables with the same
name that are simultaneously active, and dx didn't expect that ever to
be the case. The fix is simply to catch another case where a local
variable might be considered to become superfluous due to having an
empty extent. However, this is really more of a workaround, as the
result will be that such code when attached to a debugger will only
show one of the two (or more) same-named variables as being active at
any given time.
The thing that prevents a more satisfactory solution is that the
optimization code can end up "splitting up" a single local into
multiple registers, and the only way we have to track them is by
name/type. So, even without Scala's rules, it was already possible to
find a same-named local in multiple registers, but with the status
quo, finding that really meant that a local was moving from one
register to another. The local variable table code handles that case
by automatically "ending" variables that appear to move, and the Scala
case looks just like that.
In the long run, we probably want to have a way to tag local variables
that isn't just name/type, but that will have to come later.
(As a bonus, I did some minor renaming for clarity while I was in the
territory.)
Jesse Wilson [Fri, 22 May 2009 00:39:08 +0000 (17:39 -0700)]
Updating archive to Harmony r772995.
Squashed commit of the following:
Adding @TestTargetNew tags
Initial merge of branch 'archive_772995' into archive_dalvik.
Fixed some problems, including InflaterInputStream.available()
and JarFile.skip() bugs.
Conflicts:
libcore/archive/.classpath
libcore/archive/META-INF/MANIFEST.MF
libcore/archive/build.xml
libcore/archive/make/hyproperties.xml
libcore/archive/src/main/java/java/util/jar/Attributes.java
libcore/archive/src/main/java/java/util/jar/JarEntry.java
libcore/archive/src/main/java/java/util/jar/JarException.java
libcore/archive/src/main/java/java/util/jar/JarFile.java
libcore/archive/src/main/java/java/util/jar/JarInputStream.java
libcore/archive/src/main/java/java/util/jar/JarVerifier.java
libcore/archive/src/main/java/java/util/jar/Manifest.java
libcore/archive/src/main/java/java/util/jar/Pack200.java
libcore/archive/src/main/java/java/util/zip/Adler32.java
libcore/archive/src/main/java/java/util/zip/CRC32.java
libcore/archive/src/main/java/java/util/zip/Checksum.java
libcore/archive/src/main/java/java/util/zip/DataFormatException.java
libcore/archive/src/main/java/java/util/zip/Deflater.java
libcore/archive/src/main/java/java/util/zip/DeflaterOutputStream.java
libcore/archive/src/main/java/java/util/zip/GZIPInputStream.java
libcore/archive/src/main/java/java/util/zip/GZIPOutputStream.java
libcore/archive/src/main/java/java/util/zip/Inflater.java
libcore/archive/src/main/java/java/util/zip/InflaterInputStream.java
libcore/archive/src/main/java/java/util/zip/ZipEntry.java
libcore/archive/src/main/java/java/util/zip/ZipException.java
libcore/archive/src/main/java/java/util/zip/ZipFile.java
libcore/archive/src/main/java/java/util/zip/ZipInputStream.java
libcore/archive/src/main/java/java/util/zip/ZipOutputStream.java
libcore/archive/src/main/java/org/apache/harmony/archive/internal/nls/Messages.java
libcore/archive/src/main/native/archive/shared/archiveglob.c
libcore/archive/src/main/native/archive/shared/jarfile.c
libcore/archive/src/main/native/archive/shared/zip.c
libcore/archive/src/main/native/archive/shared/zip.h
libcore/archive/src/main/native/archive/unix/makefile
libcore/archive/src/main/native/archive/windows/makefile
libcore/archive/src/main/native/java_util_zip_Adler32.c
libcore/archive/src/main/native/java_util_zip_CRC32.c
libcore/archive/src/main/native/java_util_zip_Deflater.c
libcore/archive/src/main/native/java_util_zip_Inflater.c
libcore/archive/src/main/native/zip/shared/hyzip.nls
libcore/archive/src/main/native/zip/unix/makefile
libcore/archive/src/main/native/zipsup.h
libcore/archive/src/main/native/zlib/unix/makefile
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/AttributesNameTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/AttributesTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/JarEntryTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/JarFileTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/JarInputStreamTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/JarOutputStreamTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/ManifestTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/GZIPInputStreamTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/GZIPOutputStreamTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/InflaterTest.java
libcore/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/ZipFileTest.java
commit
946f165f5b592f4453fd8f2c19766921544d38dd
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 15:12:55 2009 -0700
Strip @Since Android 1.0 from Archive
commit
3498f216d7e826bfc9c4cc7c0da35830ca239367
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 15:09:05 2009 -0700
Dalvik archive
commit
62e9db90bc6aa6b5d1c897cccdd616d812672677
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 15:07:51 2009 -0700
Archive 772995
commit
d1bf618681d6badf1b50edaf204a083d3912213d
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 15:06:36 2009 -0700
Archive 527399
Andy McFadden [Tue, 9 Jun 2009 21:15:53 +0000 (14:15 -0700)]
Bump from 1.0.1 to 1.1.0.
Give it a bump for JIT and precise GC.
Bill Buzbee [Tue, 9 Jun 2009 16:20:16 +0000 (09:20 -0700)]
Makes the primary Jit table growable. Also includes a change suggested earlier by Dan to use a pre-defined mask in the hash function. Reduce the default JitTable size from 2048 entries to 512 entries.
Update per Ben's comments.
Android (Google) Code Review [Tue, 9 Jun 2009 17:30:24 +0000 (10:30 -0700)]
Merge change 3531
* changes:
Fix two codegen problems: out-of-bound PC-relative addresses and missing branch to the chaining cell at the end of non-branch-ending basic blocks.
Ben Cheng [Tue, 9 Jun 2009 01:25:27 +0000 (18:25 -0700)]
Fix two codegen problems: out-of-bound PC-relative addresses and missing branch to the chaining cell at the end of non-branch-ending basic blocks.
Andy McFadden [Mon, 8 Jun 2009 17:36:02 +0000 (10:36 -0700)]
Correct instruction width for move-wide/16.
We were advancing the PC by 2 code units instead of 3, which made the VM
crash whenever the instruction was used.
Andy McFadden [Fri, 5 Jun 2009 23:47:44 +0000 (16:47 -0700)]
"resolved conflicts for merge of 3a73bd to master"
Bill Buzbee [Fri, 5 Jun 2009 22:36:06 +0000 (15:36 -0700)]
Support for stopping all threads in a Jit environment.
Android (Google) Code Review [Fri, 5 Jun 2009 23:29:17 +0000 (16:29 -0700)]
Merge change 3378
* changes:
Swap the meaning of r7 and r8.
Andy McFadden [Fri, 5 Jun 2009 23:19:13 +0000 (16:19 -0700)]
Swap the meaning of r7 and r8.
This swaps rIBASE and rINST, so that we can access rINST with 16-bit
THUMB instructions.
Mathias Agopian [Fri, 5 Jun 2009 22:11:57 +0000 (15:11 -0700)]
remove all references to LogSocket.h
Andy McFadden [Fri, 5 Jun 2009 20:36:44 +0000 (13:36 -0700)]
Fix JNI GetDirectBufferAddress.
The GetDirectBufferAddress JNI function was using the buffer's base
address, rather than it's "effective" base address. The difference
becomes important when you create a direct buffer by "slicing" it off
of another at a nonzero offset.
For internal bug
1898762.
Andy McFadden [Fri, 5 Jun 2009 00:00:58 +0000 (17:00 -0700)]
Handle profiling buffer underrun.
In rare circumstances it's possible for the thread executing the "stop
profiling" method to start processing the data before all other threads
have finished writing data. In particular, it's possible for a thread
to be switched out after advancing the offset pointer but before writing
actual data.
This is problematic because the buffer is expected to contain method
pointers. The fill value (0xee) does not yield a valid pointer.
This adds a short usleep() to reduce the likelihood of the problem
occurring, and adds a buffer scan to detect partial records. When
encountered, the rest of the log is truncated.
For internal bug
1861898.
Lorenzo Colitti [Thu, 4 Jun 2009 23:32:29 +0000 (16:32 -0700)]
Fix the sim build on systems that have old versions of the glibc headers.
Android (Google) Code Review [Thu, 4 Jun 2009 22:52:17 +0000 (15:52 -0700)]
Merge change 3242
* changes:
Move LOG_TAG above the includes.
Andy McFadden [Thu, 4 Jun 2009 22:43:57 +0000 (15:43 -0700)]
Move LOG_TAG above the includes.
This avoids a "LOG_TAG redefined" warning from log.h.
Android (Google) Code Review [Thu, 4 Jun 2009 22:23:56 +0000 (15:23 -0700)]
Merge change 3222
* changes:
Unbreak sim build.
Android (Google) Code Review [Thu, 4 Jun 2009 22:10:51 +0000 (15:10 -0700)]
Merge change 2832
* changes:
Initial port of the Dalvik JIT enging to the internal repository. Fixed files with trailing spaces. Addressed review comments from Dan. Addressed review comments from fadden. Addressed review comments from Dan x 2. Addressed review comments from Dan x 3.
Lorenzo Colitti [Thu, 4 Jun 2009 21:55:58 +0000 (14:55 -0700)]
Unbreak sim build.
Ben Cheng [Mon, 1 Jun 2009 20:00:29 +0000 (13:00 -0700)]
Initial port of the Dalvik JIT enging to the internal repository.
Fixed files with trailing spaces.
Addressed review comments from Dan.
Addressed review comments from fadden.
Addressed review comments from Dan x 2.
Addressed review comments from Dan x 3.
Andy McFadden [Wed, 3 Jun 2009 22:53:27 +0000 (15:53 -0700)]
Retry on all ADB failures.
Change 2644 added retries when ADB went away. The VM occasionally
thinks it has reconnected to adbd as it's dying, which caused a
different type of failure, and the JDWP thread went off to sulk.
This rearranges the failure handling some more, so that all failures
are treated equally (with slight differences in logging).
Android (Google) Code Review [Wed, 3 Jun 2009 21:28:30 +0000 (14:28 -0700)]
Merge change 2972
* changes:
Use monotonic clock for HeapWorker trim scheduling.
Android (Google) Code Review [Wed, 3 Jun 2009 21:26:16 +0000 (14:26 -0700)]
Merge change 2920
* changes:
Make native socket code address-independent in preparation for IPv6 support.
Andy McFadden [Tue, 2 Jun 2009 20:42:44 +0000 (13:42 -0700)]
Use monotonic clock for HeapWorker trim scheduling.
We're currently using gettimeofday(), which could get confused if the
wall clock jumps the wrong way.
Lorenzo Colitti [Tue, 26 May 2009 22:51:50 +0000 (15:51 -0700)]
Make native socket code address-independent in preparation for IPv6 support.
Andy McFadden [Wed, 3 Jun 2009 18:32:08 +0000 (11:32 -0700)]
Fix buffer overrun in DDM heap upload.
The HPSG heap upload was using a 4KB buffer. A test provided by an
external developer is creating massive arrays that need more than 12KB,
so we overran the buffer and trashed the native heap.
This change adds a test to prevent the overrun, and increases the buffer
size to 16KB to accomodate the current maximum heap size.
Android (Google) Code Review [Wed, 3 Jun 2009 09:07:55 +0000 (02:07 -0700)]
am
29febc56: Merge change 2454 into donut
Merge commit '
29febc56fd523a7b1684ab04f75d6d213a282f11'
* commit '
29febc56fd523a7b1684ab04f75d6d213a282f11':
Reactivating tests disabled because of ClassLoader loop
Android (Google) Code Review [Wed, 3 Jun 2009 09:06:49 +0000 (02:06 -0700)]
Merge change 2454 into donut
* changes:
Reactivating tests disabled because of ClassLoader loop
Andy McFadden [Tue, 2 Jun 2009 21:15:22 +0000 (14:15 -0700)]
Added an explicit "shutting down" flag.
Change 2644 made the JdwpAdb stuff retry when the remote side went away.
Unfortunately this also made it retry when the VM wanted to shut down.
Since the JDWP thread is a non-daemon thread, this causes the VM to
stall forever.
This adds an explict flag to allow us to drop out of the retry loop.
Android (Google) Code Review [Tue, 2 Jun 2009 07:36:28 +0000 (00:36 -0700)]
am
744ab6b4: Merge change 2619 into donut
Merge commit '
744ab6b47555dab886c90dbc720e207e1edefdc0'
* commit '
744ab6b47555dab886c90dbc720e207e1edefdc0':
InetAddress: Stop logging DNS lookups to logcat.
Android (Google) Code Review [Mon, 1 Jun 2009 23:36:01 +0000 (16:36 -0700)]
Merge change 2619 into donut
* changes:
InetAddress: Stop logging DNS lookups to logcat.
Android (Google) Code Review [Mon, 1 Jun 2009 14:25:49 +0000 (07:25 -0700)]
Merge change 2765
* changes:
Move stuff around in an attempt to make VFP faster.
Mihai Preda [Mon, 1 Jun 2009 13:53:53 +0000 (06:53 -0700)]
am
e406b316: Bug
1844104: Fix buffer overwrite bugs in CharsetEncoderICU and CharsetDecoderICU.
Merge commit '
e406b316295f07d40679ce2372051c3b2bce5de4'
* commit '
e406b316295f07d40679ce2372051c3b2bce5de4':
Bug
1844104: Fix buffer overwrite bugs in CharsetEncoderICU and CharsetDecoderICU.
Andy McFadden [Fri, 29 May 2009 23:52:17 +0000 (16:52 -0700)]
Move stuff around in an attempt to make VFP faster.
No effect on floating-point benchmarks. I suspect I've just moving
instructions from one delay slot to another, but I feel a little better
because the delay is in the VFP co-processor instead of the ARM CPU.
Android (Google) Code Review [Fri, 29 May 2009 20:34:58 +0000 (13:34 -0700)]
Merge change 2710
* changes:
Rename TARGET_ARCH_VERSION into TARGET_ARCH_VARIANT
David 'Digit' Turner [Fri, 29 May 2009 13:23:36 +0000 (15:23 +0200)]
Rename TARGET_ARCH_VERSION into TARGET_ARCH_VARIANT
Andy McFadden [Thu, 28 May 2009 21:55:57 +0000 (14:55 -0700)]
Prevent JDWP thread death when adbd dies.
The handling for "remote side disconnected" was getting folded in with
more severe failures. This separates the two, returning to the connection
retry loop when adbd disappears.
One side-effect is that the JDWP thread will now wake up every couple of
seconds when adbd isn't running. Only affects "debuggable" apps.
This also reduces the priority on a couple of log messages.
For internal bug
1844156.
Mike Lockwood [Thu, 28 May 2009 14:19:17 +0000 (10:19 -0400)]
InetAddress: Stop logging DNS lookups to logcat.
Logging all DNS lookups system wide raises privacy concerns to me
and might make people less likely to include logs in their bug reports.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Urs Grob [Wed, 29 Apr 2009 15:01:24 +0000 (17:01 +0200)]
Reactivating tests disabled because of ClassLoader loop
Since ClassLoader.isAncestorOf has been fixed these tests now succeed.
So they can be reactivated.
BUG=
1732214
Andy McFadden [Wed, 27 May 2009 21:40:12 +0000 (14:40 -0700)]
Correct some things in test 068. Add detail to a verification error message.
Andy McFadden [Wed, 27 May 2009 19:42:38 +0000 (12:42 -0700)]
Another fix for external bug 2711 (over-eager conflicting class rejection).
The validateSuperDescriptors() test also checks for conflicts with
interface classes, and wasn't doing that quite right. We need to compare
every method declared by an interface against the class' implementation
of it. Methods implemented by superclasses are now tested in the context
of the superclass, not the current class.
This is a one-word fix + comments and new/updated tests.
Andy McFadden [Tue, 26 May 2009 23:56:30 +0000 (16:56 -0700)]
Correct handling of certain incompatible class changes.
Tests 065 and 066 depened on the old behavior of the verifier. Updating
them to the new behavior wasn't enough, though, because they weren't
reporting the right error. The verifier's resolution code now examines
the exception to see if the load failure was caused by an incompatible
class change error.
I also updated the description of test 071 to note that it will fail on
the device if you don't have an sdcard.
Added a method to get the exception "cause" field. It handles the
"uninitialized" state, which I keep forgetting about.
Spruced up dvmDumpObject, which hadn't been used in a while. Fixed a
warning in Profile.c.
For internal bug
1866729.
Andy McFadden [Tue, 26 May 2009 20:39:57 +0000 (13:39 -0700)]
Fix for external bug 2711, over-eager conflicting class rejection.
The validateSuperDescriptors() test added in Cupcake (or thereabouts) was
checking things that didn't need to be checked, and rejecting classes that
didn't need to be rejected.
Expanded test 068 to include a doubled-but-okay test.
Updates FancyLoader to use a single copy of the DexFile.
Mihai Preda [Mon, 25 May 2009 20:00:34 +0000 (22:00 +0200)]
Bug
1844104: Fix buffer overwrite bugs in CharsetEncoderICU and CharsetDecoderICU.
And add unit test.
Android (Google) Code Review [Fri, 22 May 2009 19:40:44 +0000 (12:40 -0700)]
Merge change 2346
* changes:
Ignore missing bootstrap class path jars after printing a warning.
Andy McFadden [Fri, 22 May 2009 19:27:20 +0000 (12:27 -0700)]
Ignore missing bootstrap class path jars after printing a warning.
Previous behavior was to print an error and halt. The warning will appear
in the log whenever the VM is started, which means you'll see it on every
"dexopt" invocation but otherwise only once during zygote init.
For internal bug
1812586.
t.mehrvarz [Thu, 21 May 2009 00:36:01 +0000 (17:36 -0700)]
am
84938760: Code to reuse PlatformAddress objects. Minimizing garbage creation on the framework level and reducing the number of runtime GC-hiccups for OpenGL apps and animations. 2nd version: complete rewrite using 8 bit hash, up to 5 probes, cycle through probes cache replacement. (Thank you MichaelDt for your help.) - 1st amend: applied requested modifications - 2nd amend: comment openers, curly bracket
Merge commit '
8493876016e383b59af707cb5184100374f7f353'
* commit '
8493876016e383b59af707cb5184100374f7f353':
Code to reuse PlatformAddress objects. Minimizing garbage creation on the framework level and reducing the number of runtime GC-hiccups for OpenGL apps and animations.
t.mehrvarz [Sat, 28 Feb 2009 06:25:46 +0000 (07:25 +0100)]
Code to reuse PlatformAddress objects. Minimizing garbage creation on the framework level and reducing the number of runtime GC-hiccups for OpenGL apps and animations.
2nd version: complete rewrite using 8 bit hash, up to 5 probes, cycle through probes cache replacement. (Thank you MichaelDt for your help.)
- 1st amend: applied requested modifications
- 2nd amend: comment openers, curly bracket
Android (Google) Code Review [Wed, 20 May 2009 00:36:55 +0000 (17:36 -0700)]
am
d3c6d366: Merge change 1987 into donut
Merge commit '
d3c6d366379142d0784ab5fe973a939d462aca28'
* commit '
d3c6d366379142d0784ab5fe973a939d462aca28':
Add tracing of native function calls to Dalvik.
Android (Google) Code Review [Wed, 20 May 2009 00:33:25 +0000 (17:33 -0700)]
Merge change 1987 into donut
* changes:
Add tracing of native function calls to Dalvik.
Jack Veenstra [Tue, 19 May 2009 21:36:48 +0000 (14:36 -0700)]
Add tracing of native function calls to Dalvik.
Dalvik already traces Java method calls but it doesn't trace JNI calls.
This adds new trace records for JNI calls.
Android (Google) Code Review [Tue, 19 May 2009 22:18:43 +0000 (15:18 -0700)]
Merge change 1981
* changes:
Added basic VFP support to Dalvik interpreter.
Andy McFadden [Mon, 18 May 2009 23:38:01 +0000 (16:38 -0700)]
Added basic VFP support to Dalvik interpreter.
This adds opcode handlers for all instructions that have a VFP equivalent
or (for the compare operations) near-equivalent.
The inclusion of VFP is keyed off of TARGET_ARCH_VERSION, so enabling
this requires setting "TARGET_ARCH_VERSION=armv5te-vfp" in a buildspec.
Dan Bornstein [Mon, 18 May 2009 18:17:39 +0000 (11:17 -0700)]
Fix up the last handful of FindBugs complaints.
And again, also do a bit of whitespace cleanup.
Dan Bornstein [Fri, 15 May 2009 21:49:51 +0000 (14:49 -0700)]
Fix a bunch of little problems noticed by FindBugs, and cleaned up some
spacing issues that I happened to notice along the way.
Andy McFadden [Fri, 8 May 2009 23:50:17 +0000 (16:50 -0700)]
Defer reporting of certain verifier failures.
The verifier currently reports all failures immediately. Certain failures,
such as the failure to resolve a method, or the determination that access
to a field is not allowed, are supposed to deferred until the first time
that executing code does something that could cause the resolution.
With this change, several kinds of verification failures are deferred.
This is done by making a writable copy of the bytecode and replacing the
failing instruction with an "always throw" opcode.
Gory details:
- Added throw-verification-error instruction. Implemented in "portable"
and ARM interpreters. x86 uses portable form through stub.
- Added a function that creates a copy of a DexCode area and makes the
bytecodes writable.
- Added code that replaces a single instruction with an "always throw".
- Replaced runtime check for abstract/interface in new-instance with a
check at verification time.
- Added a test to exercise the deferred error mechanism.
- Minor cleanups (replaced tab, bad valgrind command, ...).
Andy McFadden [Fri, 15 May 2009 23:25:28 +0000 (16:25 -0700)]
am
7ccb7a6a: Increase the number of entries set aside for zygote initiating loader lists.
Merge commit '
7ccb7a6a563396e4b64069dd4e57977d1b5b6180'
* commit '
7ccb7a6a563396e4b64069dd4e57977d1b5b6180':
Increase the number of entries set aside for zygote initiating loader lists.
Fix handling of "--dev" argument in dalvik tests.
Andy McFadden [Fri, 15 May 2009 20:44:29 +0000 (13:44 -0700)]
Increase the number of entries set aside for zygote initiating loader lists.
The number of classes that are present when the zygote finishes
initializing increased in donut/master, above the 2000 we currently
plan for. Exceeding the limit reduces zygote sharing efficiency, so
this change raises the limit.
Andy McFadden [Wed, 13 May 2009 23:44:34 +0000 (16:44 -0700)]
Check object types when native code returns.
Object references returned by native code were not being type checked,
so it was possible to (for example) return a byte[] when an InetAddress
was expected. This sort of thing can lead to extremely strange behavior.
Now, when "check JNI" is enabled, we insert another layer in the JNI call
sequence that verifies the type of the returned object. This makes calls
to native methods returning an object a bit slower on engineering builds,
but the added type safety is helpful.
I found two failures with this. One fairly harmless one was fixed in
master 1594, the other is filed as internal bug
1851257. The latter does
not seem to cause problems for anything other than the socks5 app that
uncovered it (but it does render SOCKS less than useful).
Andy McFadden [Wed, 13 May 2009 22:02:05 +0000 (15:02 -0700)]
Return an Object[][] rather than an Object[].
Android (Google) Code Review [Wed, 13 May 2009 19:46:13 +0000 (12:46 -0700)]
Merge change 1563
* changes:
Strip some cruft from the CheckJNI method invocation macros.
Andy McFadden [Wed, 13 May 2009 19:44:20 +0000 (12:44 -0700)]
Strip some cruft from the CheckJNI method invocation macros.
Android (Google) Code Review [Wed, 13 May 2009 18:23:08 +0000 (11:23 -0700)]
Merge change 1551
* changes:
Added a note in response to external feedback.
Android (Google) Code Review [Wed, 13 May 2009 17:46:55 +0000 (10:46 -0700)]
Merge change 1481
* changes:
Bringing annotation up to Harmony r772995.
Andy McFadden [Wed, 13 May 2009 17:43:08 +0000 (10:43 -0700)]
Fix handling of "--dev" argument in dalvik tests.
This was originally part of p9-144240, which was only made in "master".
Andy McFadden [Wed, 13 May 2009 17:39:24 +0000 (10:39 -0700)]
Added a note in response to external feedback.
Android (Google) Code Review [Wed, 13 May 2009 00:47:45 +0000 (17:47 -0700)]
Merge change 1489
* changes:
Wrote Dalvik "porting guide".
Andy McFadden [Tue, 12 May 2009 22:26:25 +0000 (15:26 -0700)]
Wrote Dalvik "porting guide".
Jesse Wilson [Tue, 12 May 2009 21:00:42 +0000 (14:00 -0700)]
Bringing annotation up to Harmony r772995.
commit
8f52858127fd95abc694f0080438479be3c71ac6
Merge:
68891f9 df17e4f
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 13:59:37 2009 -0700
Merge branch 'annotation_772995' into annotation_dalvik
Conflicts:
libcore/annotation/.classpath
libcore/annotation/build.xml
libcore/annotation/src/main/java/java/lang/annotation/Annotation.java
libcore/annotation/src/main/java/java/lang/annotation/AnnotationFormatError.java
libcore/annotation/src/main/java/java/lang/annotation/AnnotationTypeMismatchException.java
libcore/annotation/src/main/java/java/lang/annotation/Documented.java
libcore/annotation/src/main/java/java/lang/annotation/ElementType.java
libcore/annotation/src/main/java/java/lang/annotation/IncompleteAnnotationException.java
libcore/annotation/src/main/java/java/lang/annotation/Inherited.java
libcore/annotation/src/main/java/java/lang/annotation/Retention.java
libcore/annotation/src/main/java/java/lang/annotation/RetentionPolicy.java
libcore/annotation/src/main/java/java/lang/annotation/Target.java
commit
68891f94f87bea309f92dbe2f9a8eab95fa93614
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 13:46:16 2009 -0700
Stripped @since Android 1.0 from annotation/
commit
e3acecef0db3b85369aaa6f5db7876cde29d7329
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 13:23:06 2009 -0700
Dalvik annotation
commit
df17e4f396151289e7c6c645191fb27be9950f80
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 13:21:33 2009 -0700
Annotation 772995
commit
b89fac88400f17b6ba8be359eacad29d9faf7baf
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue May 12 13:19:55 2009 -0700
Annotation 527399.
Android (Google) Code Review [Tue, 12 May 2009 20:04:13 +0000 (13:04 -0700)]
Merge change 1431
* changes:
Bringing the logging module up to Harmony r772995.
Android (Google) Code Review [Tue, 12 May 2009 16:06:10 +0000 (09:06 -0700)]
Merge change 1401
* changes:
Minor cleanup.
Jesse Wilson [Tue, 12 May 2009 02:08:46 +0000 (19:08 -0700)]
Bringing the logging module up to Harmony r772995.
commit
080ff677c719f1e53ffb544c3fb684bb9ff28677
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon May 11 19:06:05 2009 -0700
Copied test changes over manually.
commit
ea52f28de5378f7dd4eff5c0f83d805e997a98de
Merge:
0c1f753 a6c8255
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon May 11 18:49:28 2009 -0700
Merge branch 'logging_772995' into logging_dalvik
Conflicts:
libcore/logging/.classpath
libcore/logging/META-INF/MANIFEST.MF
libcore/logging/build.xml
libcore/logging/src/main/java/java/util/logging/ConsoleHandler.java
libcore/logging/src/main/java/java/util/logging/FileHandler.java
libcore/logging/src/main/java/java/util/logging/Formatter.java
libcore/logging/src/main/java/java/util/logging/Handler.java
libcore/logging/src/main/java/java/util/logging/Level.java
libcore/logging/src/main/java/java/util/logging/LogManager.java
libcore/logging/src/main/java/java/util/logging/LogRecord.java
libcore/logging/src/main/java/java/util/logging/Logger.java
libcore/logging/src/main/java/java/util/logging/LoggingMXBean.java
libcore/logging/src/main/java/java/util/logging/LoggingPermission.java
libcore/logging/src/main/java/java/util/logging/MemoryHandler.java
libcore/logging/src/main/java/java/util/logging/SimpleFormatter.java
libcore/logging/src/main/java/java/util/logging/SocketHandler.java
libcore/logging/src/main/java/java/util/logging/StreamHandler.java
libcore/logging/src/main/java/java/util/logging/XMLFormatter.java
libcore/logging/src/test/java/org/apache/harmony/logging/tests/java/util/logging/LoggerTest.java
commit
0c1f7538e6fe3091a3d142b2ac14f5bf338b3a55
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon May 11 16:06:59 2009 -0700
Stripped @since Android 1.0
commit
4c715c6c58080b3cbed2928cd1b71b9931e217a3
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon May 11 15:57:59 2009 -0700
Logging Dalvik.
commit
a6c8255dbbad85145a2066d9846d24787df0f75f
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon May 11 15:56:41 2009 -0700
Logging 772995
commit
db77dbdf56e99e3dcced2d758f7150007562c41c
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon May 11 15:54:13 2009 -0700
Logging 527399
Android (Google) Code Review [Mon, 11 May 2009 22:45:13 +0000 (15:45 -0700)]
Merge change 1394
* changes:
Squashed commit of the following:
Dan Bornstein [Mon, 11 May 2009 21:56:37 +0000 (14:56 -0700)]
Minor cleanup.
Android (Google) Code Review [Mon, 11 May 2009 21:52:02 +0000 (14:52 -0700)]
am
4da0525: Merge change 1400 into donut
Merge commit '
4da052510571aea4711d04de25a24b58cab1dadc'
* commit '
4da052510571aea4711d04de25a24b58cab1dadc':
Increase default stack size from 8K to 12K.
Android (Google) Code Review [Mon, 11 May 2009 21:49:39 +0000 (14:49 -0700)]
Merge change 1400 into donut
* changes:
Increase default stack size from 8K to 12K.
Andy McFadden [Mon, 11 May 2009 21:39:13 +0000 (14:39 -0700)]
Increase default stack size from 8K to 12K.
For internal bug
1844105.
Andy Stadler [Mon, 11 May 2009 21:21:10 +0000 (14:21 -0700)]
am
08eacd4: am
64b928e: AI 148694: Manually copied from cupcake_dcm CL 1
Merge commit '
08eacd482ca9988b021a9e9e6c8bec573d6e4057'
* commit '
08eacd482ca9988b021a9e9e6c8bec573d6e4057':
AI 148694: Manually copied from cupcake_dcm CL 148669-p9. When resetting the
Andy Stadler [Mon, 11 May 2009 21:15:32 +0000 (14:15 -0700)]
am
64b928e: AI 148694: Manually copied from cupcake_dcm CL 148669-p9. W
Merge commit '
64b928e82a3b91b339ff9ee980c4a0c020daa251' into donut
* commit '
64b928e82a3b91b339ff9ee980c4a0c020daa251':
AI 148694: Manually copied from cupcake_dcm CL 148669-p9. When resetting the
Jesse Wilson [Mon, 11 May 2009 21:08:03 +0000 (14:08 -0700)]
Squashed commit of the following:
commit
2e4a7b3a3accb25865fb4c5535168b0d6bcebae4
Merge:
81ff13e 6c7f7e7
Author: Jesse Wilson <jessewilson@jessewilson.mtv.corp.google.com>
Date: Mon May 11 13:47:02 2009 -0700
Update our auth/ package to Harmony r772995. This change is just whitespace, plus dropping the newly added GSS tests and sample data (Generic Security services, org.ietf.jgss).
Merge branch 'auth_772995' into auth_dalvik
Conflicts:
libcore/auth/.classpath
libcore/auth/META-INF/MANIFEST.MF
libcore/auth/build.xml
libcore/auth/make/exclude.common
libcore/auth/src/main/java/javax/security/auth/AuthPermission.java
libcore/auth/src/main/java/javax/security/auth/DestroyFailedException.java
libcore/auth/src/main/java/javax/security/auth/Destroyable.java
libcore/auth/src/main/java/javax/security/auth/PrivateCredentialPermission.java
libcore/auth/src/main/java/javax/security/auth/Subject.java
libcore/auth/src/main/java/javax/security/auth/SubjectDomainCombiner.java
libcore/auth/src/main/java/javax/security/auth/callback/CallbackHandler.java
libcore/auth/src/main/java/javax/security/auth/callback/PasswordCallback.java
libcore/auth/src/main/java/javax/security/auth/callback/UnsupportedCallbackException.java
libcore/auth/src/main/java/javax/security/auth/kerberos/KerberosKey.java
libcore/auth/src/main/java/javax/security/auth/login/LoginException.java
libcore/auth/src/main/java/javax/security/auth/x500/X500Principal.java
libcore/auth/src/main/java/org/apache/harmony/auth/login/DefaultConfiguration.java
libcore/auth/src/main/native/auth/unix/exports.txt
libcore/auth/src/main/native/auth/unix/makefile
libcore/auth/src/main/native/auth/windows/makefile
libcore/auth/src/test/java/common/org/ietf/jgss/OidTest.java
commit
81ff13ec7ae480ac783f692f38c845f502b49809
Author: Jesse Wilson <jessewilson@jessewilson.mtv.corp.google.com>
Date: Fri May 8 17:53:27 2009 -0700
Stripped @since tags
commit
8b4d0e9b66d8d674a56a26f0d1bc111f9d2faa8d
Author: Jesse Wilson <jessewilson@jessewilson.mtv.corp.google.com>
Date: Fri May 8 17:40:36 2009 -0700
Auth dalvik.
commit
6c7f7e7d41393869e3900ad224bf32a26378d723
Author: Jesse Wilson <jessewilson@jessewilson.mtv.corp.google.com>
Date: Fri May 8 17:39:48 2009 -0700
Auth 772995
commit
ed7f6150f8235006c59afab862d30d6033b02460
Author: Jesse Wilson <jessewilson@jessewilson.mtv.corp.google.com>
Date: Fri May 8 17:38:12 2009 -0700
Auth 527399
Andy Stadler [Mon, 11 May 2009 21:03:58 +0000 (14:03 -0700)]
AI 148694: Manually copied from cupcake_dcm CL 148669-p9. When resetting the
mode of the encoder, clear the leftover input & output buffers.
This claims to fix buffer overwriting we're seeing during account
sync and message download.
BUG=
1822859
Automated import of CL 148694
Dan Bornstein [Mon, 11 May 2009 20:46:42 +0000 (13:46 -0700)]
am
8cee535: am
974cdcd: AI 148692: Merge change #148679 into Cupcake, si
Merge commit '
8cee535966608f63ab11fe127c9045838974e08f'
* commit '
8cee535966608f63ab11fe127c9045838974e08f':
AI 148692: Merge change #148679 into Cupcake, since we probably want to