OSDN Git Service
Nagendra Modadugu [Thu, 3 Sep 2009 18:14:53 +0000 (11:14 -0700)]
am
ce90979d: Merge change 23480 into eclair
Merge commit '
ce90979d06ae2e0832f3a11a7a4a0c0281de75df' into eclair-plus-aosp
* commit '
ce90979d06ae2e0832f3a11a7a4a0c0281de75df':
Add Entrust root and intermediate certs.
Android (Google) Code Review [Thu, 3 Sep 2009 18:12:12 +0000 (11:12 -0700)]
Merge change 23480 into eclair
* changes:
Add Entrust root and intermediate certs.
Elliott Hughes [Thu, 3 Sep 2009 17:42:09 +0000 (10:42 -0700)]
am
91191d3e: Merge change 22771 into eclair
Merge commit '
91191d3e208d3a7c25c03e40018729877f954926' into eclair-plus-aosp
* commit '
91191d3e208d3a7c25c03e40018729877f954926':
Don't mutate input in OSMemory.setIntArray/setShortArray.
Android (Google) Code Review [Thu, 3 Sep 2009 17:39:52 +0000 (10:39 -0700)]
Merge change 22771 into eclair
* changes:
Don't mutate input in OSMemory.setIntArray/setShortArray.
Andy McFadden [Thu, 3 Sep 2009 14:38:41 +0000 (07:38 -0700)]
am
4b8a5527: Merge change 23683 into eclair
Merge commit '
4b8a55273e4cdc9d17d5c0e4eef1384ceb20c571' into eclair-plus-aosp
* commit '
4b8a55273e4cdc9d17d5c0e4eef1384ceb20c571':
DO NOT MERGE: Fix implementation of Thread.isAlive
Android (Google) Code Review [Thu, 3 Sep 2009 14:35:35 +0000 (07:35 -0700)]
Merge change 23683 into eclair
* changes:
DO NOT MERGE: Fix implementation of Thread.isAlive
Marco Nelissen [Wed, 2 Sep 2009 23:49:59 +0000 (16:49 -0700)]
am
ed974e9e: Merge change 23724 into eclair
Merge commit '
ed974e9ea6220b363d2f093d1a2d4bf4b8f3c429' into eclair-plus-aosp
* commit '
ed974e9ea6220b363d2f093d1a2d4bf4b8f3c429':
Fix x86 call bridge
Android (Google) Code Review [Wed, 2 Sep 2009 23:47:51 +0000 (16:47 -0700)]
Merge change 23724 into eclair
* changes:
Fix x86 call bridge
Marco Nelissen [Wed, 2 Sep 2009 23:23:07 +0000 (16:23 -0700)]
Fix x86 call bridge
Lorenzo Colitti [Wed, 2 Sep 2009 22:16:40 +0000 (15:16 -0700)]
am
793f1423: Merge change 23675 into eclair
Merge commit '
793f142323c49818ad022a05cbfb931eefddae5b' into eclair-plus-aosp
* commit '
793f142323c49818ad022a05cbfb931eefddae5b':
Unbreak Dalvik VM initialization due to a native method that expects to be able
Android (Google) Code Review [Wed, 2 Sep 2009 22:14:38 +0000 (15:14 -0700)]
Merge change 23675 into eclair
* changes:
Unbreak Dalvik VM initialization due to a native method that expects to be able to call an InetAddress no-args constructor. This constructor was package-private and was recently removed. This method is horribly complex and should go away (it probably doesn't even work, due to it attempting to find a class known as "java/io/FielDescriptor"), but it needs to be fixed for now.
Lorenzo Colitti [Wed, 2 Sep 2009 20:52:54 +0000 (13:52 -0700)]
Unbreak Dalvik VM initialization due to a native method that expects to be able
to call an InetAddress no-args constructor. This constructor was package-private
and was recently removed. This method is horribly complex and should go away (it
probably doesn't even work, due to it attempting to find a class known as
"java/io/FielDescriptor"), but it needs to be fixed for now.
Change-Id: I56b1e0e07f4c97af82e0a4f14dfd2d8af16f6b82
Andy McFadden [Tue, 1 Sep 2009 19:20:13 +0000 (12:20 -0700)]
DO NOT MERGE: Fix implementation of Thread.isAlive
(Originally submitted to master, pulling over to eclair.)
The implementation of Thread.isAlive() was changed a couple of years ago
as part of the Harmony integration. The current version relies on the
thread's state value to determine its liveness, but the VM was
originally written to be like JamVM, which used GNU ClassPath, which
uses the vmThread field instead.
It looks like it's possible for Thread.join() to get stuck, though as
far as I know this hasn't happened.
We're essentially rolling back part of 27774-p9. For internal bug
1966734.
Also: ran --update on test 044.
Elliott Hughes [Wed, 2 Sep 2009 20:58:29 +0000 (13:58 -0700)]
am
c19d2a1d: Fix two calls to memset(3) whose arguments were reversed.
Merge commit '
c19d2a1d798d8626f196d878abcf23a14bee40af' into eclair-plus-aosp
* commit '
c19d2a1d798d8626f196d878abcf23a14bee40af':
Fix two calls to memset(3) whose arguments were reversed.
Elliott Hughes [Wed, 2 Sep 2009 20:37:17 +0000 (13:37 -0700)]
Fix two calls to memset(3) whose arguments were reversed.
External bug 3358 reported the libcore/x-net instance. Manual inspection
turned up another instance in vm, but nothing else in the dalvik package.
Tested by booting sapphire-eng and running the x-net tests.
Bug:
1999244
Elliott Hughes [Wed, 2 Sep 2009 19:38:55 +0000 (12:38 -0700)]
am
5ca29e14: Merge change 22629 into eclair
Merge commit '
5ca29e142032b6559824e4f7d526bbc037b90c93' into eclair-plus-aosp
* commit '
5ca29e142032b6559824e4f7d526bbc037b90c93':
Fix "whatever".split(".") behavior.
Android (Google) Code Review [Wed, 2 Sep 2009 18:53:49 +0000 (11:53 -0700)]
Merge change 22629 into eclair
* changes:
Fix "whatever".split(".") behavior.
Lorenzo Colitti [Tue, 1 Sep 2009 23:42:44 +0000 (16:42 -0700)]
am
94e11fc4: InetAddress refactoring.
Merge commit '
94e11fc41d9bb7648932a21be7fa895c2432f610' into eclair-plus-aosp
* commit '
94e11fc41d9bb7648932a21be7fa895c2432f610':
InetAddress refactoring.
Lorenzo Colitti [Tue, 25 Aug 2009 23:56:27 +0000 (16:56 -0700)]
InetAddress refactoring.
1. Refactor all protocol-specific methods from InetAddress into Inet[46]Address.
2. Move all protocol-specific constants from InetAddress into Inet[46]Address.
This change should have no effect on the stack's behaviour but makes it easy to
find parts of the code that still have dependencies on IPv4 so they can be
examined and fixed.
Change-Id: I70860ee04cf7c01bffaa35c8c64199f69d99826f
Nagendra Modadugu [Tue, 1 Sep 2009 19:49:04 +0000 (12:49 -0700)]
Add Entrust root and intermediate certs.
Jean-Baptiste Queru [Tue, 1 Sep 2009 17:08:49 +0000 (10:08 -0700)]
merge from open-source master
Jesse Wilson [Mon, 31 Aug 2009 17:52:23 +0000 (10:52 -0700)]
Update prefs to Harmony r772995.
Notable changes:
- exception handling has changed to cleanup more reliably
- calls to Collection.toArray() size the array properly
- lots of style tweaks (rewrapping Javadoc, reintending wrapped code, whitespace)
- new PrefsTester class ensures tests store prefs in the tmp directory
Squashed commit of the following:
commit
2157269d8ed39ccb8a71d735c12bbabcfd548243
Merge:
d287282 97818bf
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 5 11:14:26 2009 -0700
Merge branch 'prefs_772995' into prefs_dalvik
Conflicts:
libcore/prefs/.classpath
libcore/prefs/.settings/org.eclipse.jdt.core.prefs
libcore/prefs/build.xml
libcore/prefs/make/exclude.linux.x86_64.drl
libcore/prefs/make/exclude.windows.x86.drl
libcore/prefs/make/exclude.windows.x86_64.drl
libcore/prefs/src/main/java/java/util/prefs/AbstractPreferences.java
libcore/prefs/src/main/java/java/util/prefs/BackingStoreException.java
libcore/prefs/src/main/java/java/util/prefs/FilePreferencesFactoryImpl.java
libcore/prefs/src/main/java/java/util/prefs/FilePreferencesImpl.java
libcore/prefs/src/main/java/java/util/prefs/InvalidPreferencesFormatException.java
libcore/prefs/src/main/java/java/util/prefs/NodeChangeEvent.java
libcore/prefs/src/main/java/java/util/prefs/NodeChangeListener.java
libcore/prefs/src/main/java/java/util/prefs/PreferenceChangeEvent.java
libcore/prefs/src/main/java/java/util/prefs/PreferenceChangeListener.java
libcore/prefs/src/main/java/java/util/prefs/Preferences.java
libcore/prefs/src/main/java/java/util/prefs/PreferencesFactory.java
libcore/prefs/src/main/java/java/util/prefs/RegistryPreferencesFactoryImpl.java
libcore/prefs/src/main/java/java/util/prefs/RegistryPreferencesImpl.java
libcore/prefs/src/main/java/java/util/prefs/XMLParser.java
libcore/prefs/src/main/java/org/apache/harmony/prefs/internal/nls/Messages.java
libcore/prefs/src/main/native/prefs/windows/PreferencesImpl.c
libcore/prefs/src/main/native/prefs/windows/hyprefs.rc
libcore/prefs/src/main/native/prefs/windows/makefile
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/AbstractPreferencesTest.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/AllTests.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/FilePreferencesImplTest.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockAbstractPreferences.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockPreferencesFactory.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockSecurityManager.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/NodeChangeListenerTest.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferenceChangeListenerTest.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesFactoryTest.java
libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java
libcore/prefs/src/test/java/tests/prefs/AllTests.java
commit
d287282b550d4a5d262f1d1703344ed61bdc6d15
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 4 14:36:36 2009 -0700
Dalvik Prefs
commit
97818bf21cfde744eeb5fbf1f9c31d9bd66f5a2e
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 4 14:35:52 2009 -0700
Prefs 772995
commit
9a506f93947938dad3b41e1393f53b766ba0319f
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 4 14:22:40 2009 -0700
Prefs 527399
Android (Google) Code Review [Mon, 31 Aug 2009 14:23:31 +0000 (07:23 -0700)]
Merge change 23193 into eclair
* changes:
Expand indirect reference ifdefs.
Andy McFadden [Fri, 28 Aug 2009 21:45:12 +0000 (14:45 -0700)]
Expand indirect reference ifdefs.
This excludes some things that used to be common between the direct and
indirect reference implementations. The goal is to restore the original
method call performance. In particular, we no longer convert native
method arguments to local references when USE_INDIRECT_REF is not
defined.
Android (Google) Code Review [Fri, 28 Aug 2009 21:01:15 +0000 (14:01 -0700)]
Merge change 22992 into eclair
* changes:
Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.
Andy McFadden [Fri, 28 Aug 2009 17:38:37 +0000 (10:38 -0700)]
Fix reporting of certain verify errors.
The code was assuming that the reference type could always be inferred
from the error code, but in two cases it couldn't. This resulted in a
weird string appearing where the class name should be in the exception.
The type is now explicitly stuffed into the replacement instruction.
I added one additional test to 075; with this, plus 003 and 077, I think
we have full coverage.
For bug
2084560.
Android Code Review [Fri, 28 Aug 2009 15:41:53 +0000 (08:41 -0700)]
Merge change 9368
* changes:
libcore/.../rg_apache_harmony_xml_ExpatParser: in C++, the return type of strchr(const char*) is 'const char*' instead of 'char *'.
Elliott Hughes [Wed, 26 Aug 2009 16:37:48 +0000 (09:37 -0700)]
Don't mutate input in OSMemory.setIntArray/setShortArray.
We now take a copy and then swap bytes in the copy if necessary,
rather than swapping the input, copying, and swapping the input
back.
I've switched to GetShortArrayRegion/GetIntArrayRegion instead
of GetPrimitiveArrayCritical because the latter makes life
unnecessarily hard for the VM/GC, and requires a second JNI call
to undo.
I've also renamed the native functions to match the Java methods
they implement.
(Tested by running the nio tests on the emulator, with added
logging to check that all four variants are called.)
Bug:
2019584
Lorenzo Colitti [Thu, 27 Aug 2009 22:32:55 +0000 (15:32 -0700)]
Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.
Change-Id: Ifdf236450007866f24c8b23d52617c41d4e9c324
Android (Google) Code Review [Thu, 27 Aug 2009 21:28:38 +0000 (14:28 -0700)]
Merge change 22965 into eclair
* changes:
Fix some JNI indirect reference stuff.
Jesse Wilson [Tue, 25 Aug 2009 23:30:17 +0000 (16:30 -0700)]
Update x-net to Harmony r802921.
Notable changes
- synchronization added where it was needed!
- try/finally added to reliably tear down in DefaultSSLContext
- ContextImpl deleted, it wasn't necessary
- methods reordered to make statics first in the class
- PrivilegedActions parameterized with <Void>
- DigitalSignature now throws AssertionErrors in impossible states
and throws AlertExceptions on invalid keys (rather than dumping
a stacktrace)
- ValueKeys added to SSLSessionImpl instead of TwoKeyMaps
- SSLSessionImpl.clone() simplified to do a traditional clone
Squashed commit of the following:
commit
2d9e43d542ab7086af271bf52e847c582decbab1
Merge:
8b79eb4 a8dc377
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 25 15:25:21 2009 -0700
Merge branch 'x-net_802921' into x-net_dalvik
Conflicts:
libcore/x-net/.classpath
libcore/x-net/.settings/org.eclipse.jdt.core.prefs
libcore/x-net/build.xml
libcore/x-net/src/main/java/javax/net/DefaultServerSocketFactory.java
libcore/x-net/src/main/java/javax/net/DefaultSocketFactory.java
libcore/x-net/src/main/java/javax/net/ServerSocketFactory.java
libcore/x-net/src/main/java/javax/net/SocketFactory.java
libcore/x-net/src/main/java/javax/net/ssl/CertPathTrustManagerParameters.java
libcore/x-net/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java
libcore/x-net/src/main/java/javax/net/ssl/DefaultSSLContext.java
libcore/x-net/src/main/java/javax/net/ssl/DefaultSSLSocketFactory.java
libcore/x-net/src/main/java/javax/net/ssl/HandshakeCompletedEvent.java
libcore/x-net/src/main/java/javax/net/ssl/HandshakeCompletedListener.java
libcore/x-net/src/main/java/javax/net/ssl/HostnameVerifier.java
libcore/x-net/src/main/java/javax/net/ssl/HttpsURLConnection.java
libcore/x-net/src/main/java/javax/net/ssl/KeyManager.java
libcore/x-net/src/main/java/javax/net/ssl/KeyManagerFactory.java
libcore/x-net/src/main/java/javax/net/ssl/KeyManagerFactorySpi.java
libcore/x-net/src/main/java/javax/net/ssl/KeyStoreBuilderParameters.java
libcore/x-net/src/main/java/javax/net/ssl/ManagerFactoryParameters.java
libcore/x-net/src/main/java/javax/net/ssl/SSLContext.java
libcore/x-net/src/main/java/javax/net/ssl/SSLContextSpi.java
libcore/x-net/src/main/java/javax/net/ssl/SSLEngine.java
libcore/x-net/src/main/java/javax/net/ssl/SSLEngineResult.java
libcore/x-net/src/main/java/javax/net/ssl/SSLException.java
libcore/x-net/src/main/java/javax/net/ssl/SSLHandshakeException.java
libcore/x-net/src/main/java/javax/net/ssl/SSLKeyException.java
libcore/x-net/src/main/java/javax/net/ssl/SSLPeerUnverifiedException.java
libcore/x-net/src/main/java/javax/net/ssl/SSLPermission.java
libcore/x-net/src/main/java/javax/net/ssl/SSLProtocolException.java
libcore/x-net/src/main/java/javax/net/ssl/SSLServerSocket.java
libcore/x-net/src/main/java/javax/net/ssl/SSLServerSocketFactory.java
libcore/x-net/src/main/java/javax/net/ssl/SSLSession.java
libcore/x-net/src/main/java/javax/net/ssl/SSLSessionBindingEvent.java
libcore/x-net/src/main/java/javax/net/ssl/SSLSessionBindingListener.java
libcore/x-net/src/main/java/javax/net/ssl/SSLSessionContext.java
libcore/x-net/src/main/java/javax/net/ssl/SSLSocket.java
libcore/x-net/src/main/java/javax/net/ssl/SSLSocketFactory.java
libcore/x-net/src/main/java/javax/net/ssl/TrustManager.java
libcore/x-net/src/main/java/javax/net/ssl/TrustManagerFactory.java
libcore/x-net/src/main/java/javax/net/ssl/TrustManagerFactorySpi.java
libcore/x-net/src/main/java/javax/net/ssl/X509ExtendedKeyManager.java
libcore/x-net/src/main/java/javax/net/ssl/X509KeyManager.java
libcore/x-net/src/main/java/javax/net/ssl/X509TrustManager.java
libcore/x-net/src/main/java/javax/net/ssl/package-info.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/ClientHandshakeImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/HandshakeProtocol.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/JSSEProvider.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/KeyManagerImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLSocketImplWrapper.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLContextImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLServerSocketFactoryImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLServerSocketImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSessionContextImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSessionImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketFactoryImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketImpl.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketInputStream.java
libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketOutputStream.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/CertPathTrustManagerParametersTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/HandshakeCompletedEventTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/HttpsURLConnectionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/KeyStoreBuilderParametersTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLContext1Test.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLEngineTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLPermissionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLServerSocketTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLSocketTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/TrustManagerFactory1Test.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/HandshakeCompletedEventTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLExceptionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLHandshakeExceptionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLKeyExceptionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLPeerUnverifiedExceptionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLProtocolExceptionTest.java
libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLSessionBindingEventTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/ServerSocketFactoryTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/SocketFactoryTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/ssl/DefaultSSLServerSocketFactoryTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/ssl/DefaultSSLSocketFactoryTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/ssl/HttpsURLConnection_ImplTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/ssl/SSLServerSocketFactoryTest.java
libcore/x-net/src/test/impl/java.injected/javax/net/ssl/SSLSocketFactoryTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/CipherSuiteTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/DigitalSignatureTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/HandshakeProtocolTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/KeyManagerImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLEngineImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLServerSocketImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSessionContextImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSessionImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketFactoriesTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketFunctionalTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLStreamedInputTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/ServerHandshakeImplTest.java
libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/TrustManagerImplTest.java
libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/DigitalSignatureTest.java
libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/KeyManagerFactoryImplTest.java
libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/ProtocolVersionTest.java
libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/TrustManagerFactoryImplTest.java
libcore/x-net/src/test/java/javax/net/ssl/KeyManagerFactorySpiTests.java
libcore/x-net/src/test/java/javax/net/ssl/MyKeyManagerFactorySpi.java
libcore/x-net/src/test/java/javax/net/ssl/MySSLContextSpi.java
libcore/x-net/src/test/java/javax/net/ssl/MyTrustManagerFactorySpi.java
libcore/x-net/src/test/java/javax/net/ssl/SSLContextSpiTests.java
libcore/x-net/src/test/java/javax/net/ssl/TrustManagerFactorySpiTests.java
libcore/x-net/src/test/java/tests/api/javax/net/ssl/KeyManagerFactory1Test.java
libcore/x-net/src/test/java/tests/api/javax/net/ssl/KeyManagerFactory2Test.java
libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLContext2Test.java
libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLSessionBindingEventTest.java
libcore/x-net/src/test/java/tests/api/javax/net/ssl/TrustManagerFactory2Test.java
libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MyKeyManagerFactorySpi.java
libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MySSLContextSpi.java
libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MyTrustManagerFactorySpi.java
commit
8b79eb40a27f0b336d5516606d43162ecead09ca
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 25 12:58:17 2009 -0700
x-net_dalvik
commit
a8dc3778cd2a1a5d6d0cfff6eec22e7bfbdb9c14
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 25 12:56:55 2009 -0700
x-net_802921
commit
07ca0ed8aa5927c909f880559c17d162c111608e
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 25 12:56:07 2009 -0700
x-net_527399
commit
9b44ccfc38c2fc2a6cf2c3cc39a13cc5bce635ba
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 25 11:14:01 2009 -0700
Small changes missed in the original submission of 22482.
Andy McFadden [Wed, 26 Aug 2009 14:21:53 +0000 (07:21 -0700)]
Fix some JNI indirect reference stuff.
Convert where needed, don't convert where not needed, and make sure
we're using the right one.
With this, my ad-hoc tests pass, and the boot proceeds until we hit a
failure that looks like it might be due to logic outside the VM.
Android Code Review [Thu, 27 Aug 2009 18:40:51 +0000 (11:40 -0700)]
Merge change 10635
* changes:
Add a bit-map encoding of Object-reference field offsets to ClassObject.
Android (Google) Code Review [Thu, 27 Aug 2009 17:38:52 +0000 (10:38 -0700)]
Merge change 22845 into eclair
* changes:
IPv6 fixes to java.net.InetAddress.
Lorenzo Colitti [Tue, 25 Aug 2009 23:56:27 +0000 (16:56 -0700)]
IPv6 fixes to java.net.InetAddress.
1. Make hashCode() do something that makes sense for IPv6 addresses.
2. Expand coverage of hashCode unit test.
3. Fix failing regression test for getAllByName().
4. Document that the getByName test is broken. I will fix it in a future change.
5. Expand test coverage of the isMulticastAddress test to include IPv6 and
non-multicast addresses.
All tests now pass.
Change-Id: I6f52c7c3213dd01bf773228b1ed5d44df813f877
Bob Lee [Thu, 27 Aug 2009 00:28:52 +0000 (17:28 -0700)]
am
dfd0afbc: Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we\'re looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).
Merge commit '
dfd0afbcb08b871e224a28ecb4ed427a7693545c' into eclair
* commit '
dfd0afbcb08b871e224a28ecb4ed427a7693545c':
Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).
Jesse Wilson [Wed, 26 Aug 2009 23:09:16 +0000 (16:09 -0700)]
Update sql to Harmony 802921.
Notable changes
- ConnectionEvent field changed for serialization
- Date toString classes no longer use SimpleDateFormat
- Timestamp doesn't call through an overridable method in its constructor
- Timestamp now checks the String passed to valueOf() using a regex
- Properties now specifies a buffer size to avoid a user-inescapable warning
Squashed commit of the following:
commit
dd9926cddda4db0227adbc174070791e5a9afa72
Merge:
8be3b27 4bed1fc
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 12 10:34:56 2009 -0700
Merge branch 'sql_802921' into sql_dalvik
Conflicts:
libcore/sql/.classpath
libcore/sql/META-INF/MANIFEST.MF
libcore/sql/build.xml
libcore/sql/src/main/java/java/sql/Array.java
libcore/sql/src/main/java/java/sql/BatchUpdateException.java
libcore/sql/src/main/java/java/sql/Blob.java
libcore/sql/src/main/java/java/sql/CallableStatement.java
libcore/sql/src/main/java/java/sql/Clob.java
libcore/sql/src/main/java/java/sql/Connection.java
libcore/sql/src/main/java/java/sql/DataTruncation.java
libcore/sql/src/main/java/java/sql/DatabaseMetaData.java
libcore/sql/src/main/java/java/sql/Date.java
libcore/sql/src/main/java/java/sql/Driver.java
libcore/sql/src/main/java/java/sql/DriverManager.java
libcore/sql/src/main/java/java/sql/DriverPropertyInfo.java
libcore/sql/src/main/java/java/sql/ParameterMetaData.java
libcore/sql/src/main/java/java/sql/PreparedStatement.java
libcore/sql/src/main/java/java/sql/Ref.java
libcore/sql/src/main/java/java/sql/ResultSet.java
libcore/sql/src/main/java/java/sql/ResultSetMetaData.java
libcore/sql/src/main/java/java/sql/SQLData.java
libcore/sql/src/main/java/java/sql/SQLException.java
libcore/sql/src/main/java/java/sql/SQLInput.java
libcore/sql/src/main/java/java/sql/SQLOutput.java
libcore/sql/src/main/java/java/sql/SQLPermission.java
libcore/sql/src/main/java/java/sql/SQLWarning.java
libcore/sql/src/main/java/java/sql/Savepoint.java
libcore/sql/src/main/java/java/sql/Statement.java
libcore/sql/src/main/java/java/sql/Struct.java
libcore/sql/src/main/java/java/sql/Time.java
libcore/sql/src/main/java/java/sql/Timestamp.java
libcore/sql/src/main/java/java/sql/Types.java
libcore/sql/src/main/java/javax/sql/ConnectionEvent.java
libcore/sql/src/main/java/javax/sql/ConnectionEventListener.java
libcore/sql/src/main/java/javax/sql/ConnectionPoolDataSource.java
libcore/sql/src/main/java/javax/sql/DataSource.java
libcore/sql/src/main/java/javax/sql/PooledConnection.java
libcore/sql/src/main/java/javax/sql/RowSet.java
libcore/sql/src/main/java/javax/sql/RowSetEvent.java
libcore/sql/src/main/java/javax/sql/RowSetInternal.java
libcore/sql/src/main/java/javax/sql/RowSetListener.java
libcore/sql/src/main/java/javax/sql/RowSetMetaData.java
libcore/sql/src/main/java/javax/sql/RowSetReader.java
libcore/sql/src/main/java/javax/sql/RowSetWriter.java
libcore/sql/src/main/java/javax/sql/rowset/BaseRowSet.java
libcore/sql/src/main/java/javax/sql/rowset/WebRowSet.java
libcore/sql/src/main/java/javax/sql/rowset/serial/SerialClob.java
libcore/sql/src/main/java/javax/sql/rowset/serial/SerialDatalink.java
libcore/sql/src/main/java/javax/sql/rowset/serial/SerialException.java
libcore/sql/src/main/java/javax/sql/rowset/serial/SerialJavaObject.java
libcore/sql/src/main/java/javax/sql/rowset/serial/SerialRef.java
libcore/sql/src/main/java/javax/sql/rowset/serial/SerialStruct.java
libcore/sql/src/main/java/javax/sql/rowset/spi/SyncFactory.java
libcore/sql/src/main/java/javax/sql/rowset/spi/SyncProvider.java
libcore/sql/src/main/java/javax/transaction/xa/XAException.java
libcore/sql/src/main/java/org/apache/harmony/sql/internal/nls/Messages.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/BatchUpdateExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ConnectionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DataTruncationTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DatabaseMetaDataTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DateTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DriverManagerTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DriverPropertyInfoTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ParameterMetaDataTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ResultSetMetaDataTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ResultSetTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLPermissionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLWarningTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/StatementTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TestHelper_ClassLoader.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TestHelper_DriverManager.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TimeTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TimestampTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TypesTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/ConnectionEventTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/BaseRowSetTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialClobTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialJavaObjectTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialRefTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialStructTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/InvalidTransactionExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/TransactionRequiredExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/TransactionRolledbackExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XAExceptionTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XAResourceTest.java
libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XidTest.java
commit
8be3b27082122a5c5b650ad5aad6a70b45fd58d4
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 12 09:39:01 2009 -0700
Dalvik SQL
commit
4bed1fc3972b50198299137dc152d46dd9d5d532
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 12 09:38:11 2009 -0700
SQL 802921
commit
82f57ed5049955585aecfae659310b6bde3354d8
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 12 09:36:42 2009 -0700
SQL 527399
Bob Lee [Wed, 26 Aug 2009 05:32:37 +0000 (22:32 -0700)]
Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).
Barry Hayes [Wed, 8 Jul 2009 17:01:56 +0000 (10:01 -0700)]
Add a bit-map encoding of Object-reference field offsets to ClassObject.
Class.c populates a new field with a bit for each of the first 32 instance
fields, to show if it is a reference or not, and an escape value if there is a
reference field beyond 32.
The GC uses the encoded bitmap -- if available -- to extract Object refererences
from DataObjects.
Android (Google) Code Review [Wed, 26 Aug 2009 14:19:51 +0000 (07:19 -0700)]
Merge change 22659 into eclair
* changes:
Another round of scary indirect ref changes.
Elliott Hughes [Tue, 25 Aug 2009 19:55:27 +0000 (12:55 -0700)]
Fix "whatever".split(".") behavior.
Two special cases in Pattern.split's behavior had been incorrectly combined
into one. Separate the two cases, and add tests. I've run the tests against
Java 1.5 and 1.6 too.
Bug:
1957900
Andy McFadden [Tue, 25 Aug 2009 14:19:34 +0000 (07:19 -0700)]
Another round of scary indirect ref changes.
This change adds a not-really-working implementation to Jni.c, with
various changes #ifdefed throughout the code. The ifdef is currently
disabled, so the old behavior should continue. Eventually the old
version will be stripped out and the ifdefs removed.
This renames the stack's "localRefTop" field, which nudged a bunch of
code. The name wasn't really right before (it's the *bottom* of the
local references), and it's even less right now. This and one other
mterp-visible constant were changed, which caused some ripples through
mterp and the JIT, but the ifdeffing was limited to one in
asm-constants.h (and the constant is the same both ways, so toggling the
ifdef won't require rebuilding asm sources).
Some comments and arg names in ReferenceTable were updated for the
correct orientation of bottom vs. top.
Some adjustments were made to the JNI code, e.g. dvmCallMethod now needs
to understand if it needs to convert reference arguments from
local/global refs to pointers (it's called from various places
throughout the VM).
Jesse Wilson [Tue, 25 Aug 2009 18:14:01 +0000 (11:14 -0700)]
Small changes missed in the original submission of 22482.
Android (Google) Code Review [Tue, 25 Aug 2009 18:07:15 +0000 (11:07 -0700)]
Merge change 22482 into eclair
* changes:
Update java.text to Harmony r802921.
Dan Bornstein [Wed, 12 Aug 2009 19:16:40 +0000 (12:16 -0700)]
Be more POSIXly correct in the use of expr.
Andy McFadden [Fri, 21 Aug 2009 21:44:04 +0000 (14:44 -0700)]
Use local references for native method args.
This changes the JNI method call mechanism to register all reference
arguments as local refs, as well as the "this" argument (for virtual
calls) and the class object (for static calls).
Before now we skipped this part, because we're handing raw object
pointers around, and we know that all of the arguments can be found by
the GC on the interpreted stack. In fact, there's no need to add the
arguments for GC-correctness; rather, we need to do this to rewrite the
pointers we hand to native code.
This change impacts JNI method call performance, especially for functions
with a large number of reference arguments. To improve things a little,
there are now four "call bridge" functions:
(1) general handler
(2) synchronized method handler (grabs lock, calls #1)
(3) virtual method, no reference args
(4) static method, no reference args
While booting the system, the virtual/static no-ref handlers are used
for about 70% of calls. Since these don't have to scan the method
signature to look for reference arguments, they're a bit faster.
At this point we're still passing raw pointers around, so nothing should
really change.
Jesse Wilson [Mon, 24 Aug 2009 21:05:44 +0000 (14:05 -0700)]
Update java.text to Harmony r802921.
Notable changes:
- Replaced some StringBuffers with StringBuilders
- Harmony moved to ICU, we stayed with ResourceBundles
- Harmony now uses ICU's Bidi, we continue to use BidiWrapper
- Fixed DateFormat.readResolve()
- Fixed DecimalFormat serialization for setMaximumIntegerDigits
- Fixed currency to support "XXX" for null
- Support for null in MessageFormat.format()
- Rearranged methods in SimpleDateFormat. Body is the same.
- Fixed tests for Bidi.getRunLimit(). These are new failures.
commit
112ab830475bc1a1fab9c7a16589b5525892e6a0
Merge:
39b03a1 62c2b2e
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon Aug 24 14:03:31 2009 -0700
Merge dalvik and Harmony for java.text
Conflicts:
libcore/text/.classpath
libcore/text/META-INF/MANIFEST.MF
libcore/text/build.xml
libcore/text/make/exclude.common
libcore/text/make/run-test.xml
libcore/text/src/main/java/java/text/Annotation.java
libcore/text/src/main/java/java/text/AttributedCharacterIterator.java
libcore/text/src/main/java/java/text/AttributedString.java
libcore/text/src/main/java/java/text/Bidi.java
libcore/text/src/main/java/java/text/BreakIterator.java
libcore/text/src/main/java/java/text/CharacterIterator.java
libcore/text/src/main/java/java/text/ChoiceFormat.java
libcore/text/src/main/java/java/text/CollationElementIterator.java
libcore/text/src/main/java/java/text/CollationKey.java
libcore/text/src/main/java/java/text/Collator.java
libcore/text/src/main/java/java/text/DateFormat.java
libcore/text/src/main/java/java/text/DateFormatSymbols.java
libcore/text/src/main/java/java/text/DecimalFormat.java
libcore/text/src/main/java/java/text/DecimalFormatSymbols.java
libcore/text/src/main/java/java/text/FieldPosition.java
libcore/text/src/main/java/java/text/Format.java
libcore/text/src/main/java/java/text/MessageFormat.java
libcore/text/src/main/java/java/text/NumberFormat.java
libcore/text/src/main/java/java/text/ParseException.java
libcore/text/src/main/java/java/text/ParsePosition.java
libcore/text/src/main/java/java/text/RuleBasedCollator.java
libcore/text/src/main/java/java/text/SimpleDateFormat.java
libcore/text/src/main/java/java/text/StringCharacterIterator.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/AttributedCharacterIteratorAttributeTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/CollationElementIteratorTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DateFormatSymbolsTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DateFormatTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/FieldPositionTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/MessageFormatTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/ParsePositionTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java
commit
39b03a1b2b150d468cc15d8ff8a92a07c9098a5c
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 19 17:00:36 2009 -0700
text_dalvik
commit
62c2b2e932da51858998820fe2558631999c1241
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 19 17:00:23 2009 -0700
text_802921
commit
2da8bc3457b9db827d96652e2bf159b7d5040ad1
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Aug 19 17:00:08 2009 -0700
text_527399
Android Code Review [Mon, 24 Aug 2009 21:00:21 +0000 (14:00 -0700)]
Merge change 10758
* changes:
Fix broken link in docstring. issue 1194
Andy McFadden [Fri, 21 Aug 2009 20:03:31 +0000 (13:03 -0700)]
Set os.arch property from uname().machine.
Not sure why we didn't just do this in the first place. I get "x86_64"
on desktop and "armv6l" on a sapphire.
Andy McFadden [Fri, 21 Aug 2009 19:01:31 +0000 (12:01 -0700)]
Move array pinning out of global references table.
We have to pin primitive arrays for certain JNI operations (it's that or
return a copy of the contents). We don't move objects around in the
virtual heap, so simply creating a global reference is enough to ensure
the correct behavior of the calls.
The global reference implementation is changing in a way that makes
this approach inconvenient, so we now have a separate table for pinned
primitive arrays.
As a bonus, if GREF tracking is enabled, we will scan through the table
when a pin entry is added. If there are 10 or more entries for the same
array, a complaint is logged. This should allow us to find mismatched
Get/Release sequences much more easily (before you had to wait until the
global reference table exploded).
We currently scan pin table entries at the same time as the JNI global
references, so they'll still show up in hprof dumps as such. (Could
also add a new Android-specific hprof root category, but that seems like
more trouble than it's worth.)
Android (Google) Code Review [Fri, 21 Aug 2009 14:24:25 +0000 (07:24 -0700)]
Merge change 22183 into eclair
* changes:
Progress toward indirect JNI references.
Bob Lee [Fri, 21 Aug 2009 02:33:27 +0000 (19:33 -0700)]
am
2b2e488b: Exposed default trust manager.
Merge commit '
2b2e488b25922b0b34094305cac084073ffbd03c' into eclair
* commit '
2b2e488b25922b0b34094305cac084073ffbd03c':
Exposed default trust manager.
Bob Lee [Fri, 21 Aug 2009 00:34:58 +0000 (17:34 -0700)]
Exposed default trust manager.
Andy McFadden [Wed, 19 Aug 2009 14:21:41 +0000 (07:21 -0700)]
Progress toward indirect JNI references.
Switch from simple typecasts to conversion functions for the objects
passed in and out of JNI calls. No real change here; object references
are still just pointers.
Use explicit pin/unpin calls for primitive arrays. For GetStringChars
we now pin the char[] rather than the String object. (Which doesn't
make much difference in the grand scheme of things, since you need to
keep the String to pass into the release function anyway.)
Android (Google) Code Review [Thu, 20 Aug 2009 23:16:35 +0000 (16:16 -0700)]
Merge change 22152 into eclair
* changes:
Fix a couple of compiler warnings.
Andy McFadden [Thu, 20 Aug 2009 23:13:05 +0000 (16:13 -0700)]
Fix a couple of compiler warnings.
Android (Google) Code Review [Wed, 19 Aug 2009 18:03:58 +0000 (11:03 -0700)]
Merge change 21907 into eclair
* changes:
Update storage size after expansion.
Android (Google) Code Review [Wed, 19 Aug 2009 17:33:42 +0000 (10:33 -0700)]
Merge change 21833 into eclair
* changes:
Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.
Andy McFadden [Wed, 19 Aug 2009 17:32:01 +0000 (10:32 -0700)]
Update storage size after expansion.
We allow expansion in dvmSetBit(), but failed to update the capacity
after doing so.
Jesse Wilson [Wed, 19 Aug 2009 00:21:31 +0000 (17:21 -0700)]
Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.
Also tests for Unsafe.getUnsafe() and all the requisite AllTests files
to make that show up in the continuous build.
Lorenzo Colitti [Tue, 18 Aug 2009 23:14:33 +0000 (16:14 -0700)]
Enable IPv6.
If the system has IPv6 connectivity, query the DNS for IPv6 addresses as well
as IPv4 addresses. If IPv6 addresses are returned, prefer them by default.
Impact of this change:
- If the device is on a network with IPv6 configured, is using wifi, and has
obtained an IPv6 address using autoconfiguration, the network stack will
request IPv6 addresses as well as IPv4 addresses when making DNS queries. This
allows the device to connect to websites and services that declare themselves
to be reachable over IPv6. If an IPv6 connection fails, the stack will fall
back to IPv4. This is what Windows Vista, Mac OS 10.4 and above, and most
Linux distributions do by default.
- If the device is not on a network that supports IPv6, or is using 3G/EVDO,
nothing will change.
I have been testing this change on self-compiled builds of master and eclair on
Dream and Sholes for several weeks with no breakage that I can see.
Android (Google) Code Review [Tue, 18 Aug 2009 22:37:06 +0000 (15:37 -0700)]
Merge change 21796 into eclair
* changes:
Turn down RegisterMap paranoia.
Andy McFadden [Tue, 18 Aug 2009 22:32:27 +0000 (15:32 -0700)]
Minor tweaks to JNI logging.
Reduced a LOGI to LOGD, normalized format, added a similar message for a
field ID lookup that was failing (due to a bad flash, as it turns out).
Andy McFadden [Tue, 18 Aug 2009 22:11:35 +0000 (15:11 -0700)]
Turn down RegisterMap paranoia.
This disables verification of RegisterMap contents and compressed
output, as well as a GC-time check that double-checked the validity of a
register known to hold a reference.
For internal bug
1896437.
Brett Chabot [Tue, 18 Aug 2009 17:59:02 +0000 (10:59 -0700)]
am
affecd77: Cleanup CTS core failing tests.
Merge commit '
affecd7714e14fabff011ad61d436df3698bf7eb' into eclair
* commit '
affecd7714e14fabff011ad61d436df3698bf7eb':
Cleanup CTS core failing tests.
Brett Chabot [Fri, 14 Aug 2009 04:37:47 +0000 (21:37 -0700)]
Cleanup CTS core failing tests.
BUG
2053939
Bill Buzbee [Tue, 11 Aug 2009 00:06:51 +0000 (17:06 -0700)]
Continuing evolution of Thumb2 support.
Bug fix for local optimization
Enable partial floating point store sinking (with significant perf gain!)
Dan Bornstein [Wed, 12 Aug 2009 19:16:40 +0000 (12:16 -0700)]
Be more POSIXly correct in the use of expr.
Jesse Wilson [Tue, 11 Aug 2009 01:43:30 +0000 (18:43 -0700)]
Update Luni to Harmony r802921.
Notable changes:
- replaced StringBuffer with StringBuilder in several places
- fixed a problem with BufferedInputStream's newline characters (EBCDIC)
- cleanup Timer's finalizer helper object
- new cache for the canonical path of a file
- fixed concurrency issue with ArrayList
- floating point parsing now trims length for very small numbers
- encoding specified "UTF-8" when converting some byte[]s to strings (JarURLConnection, Util, OSFileSystem)
- Harmony now implements floor and ceil in Java. We continue to use native code.
Android (Google) Code Review [Mon, 10 Aug 2009 23:44:10 +0000 (16:44 -0700)]
Merge change 8107
* changes:
First parts of enabling a host Dalvik build.
Dan Bornstein [Tue, 21 Jul 2009 23:08:39 +0000 (16:08 -0700)]
First parts of enabling a host Dalvik build.
Most of this is just factoring out common make defs to include both on
the host and device side, though there is a little bit of code change
to be slightly POSIX friendlier and to avoid unnecessary sanity checks
when compiling without an asm version of the interpreter.
This patch should cause no difference in build results, except if you
turn on the newly-defined WITH_HOST_DALVIK build flag. If you do turn
it on, at this point you should probably expect the build to fail due
to insufficient dependencies, which I of course expect to address in
upcoming patches.
Jean-Baptiste Queru [Mon, 10 Aug 2009 20:41:39 +0000 (13:41 -0700)]
merge from open-source master
Barry Hayes [Wed, 20 May 2009 19:10:36 +0000 (12:10 -0700)]
Change strategy for freeing objects in the sweep.
dlfree() in dlmalloc.c is fairly expensive. It checks the previous and
next block to see if the curent block can be merged into one of the
free blocks, and if it does merge, that involves manipulating the
internal free lists.
The sweep phase of the GC is already visiting free objects in address
order, and has a list of objects to be freed. The new strategy is:
Loop over the list of objects to be freed, merging when possible, and
only calling free() when a either the list has run out or a
non-adjacent free object is found.
Andy McFadden [Fri, 7 Aug 2009 18:41:35 +0000 (11:41 -0700)]
Increase priority of unresponsive threads.
The VM uses a safe-pointing thread suspension mechanism, which currently
means that the GC can't do its work until the various threads enter a
non-running state. This can be a problem if a low-priority thread was
scheduled out and other processes in the system are running flat out.
This changes the "spin on suspend" mechanism to increase the priority of
unresponsive threads. Currently we just boost the "nice" value, since
that seems to be enough to do the trick in my tests, but we may have to
shift the cgroup around as well (assuming other recent changes don't
simply render this unnecessary).
Andy McFadden [Fri, 7 Aug 2009 21:49:40 +0000 (14:49 -0700)]
Read thread priority as an int, not a boolean.
We were using the wrong field get function. After our change to
stdbool.h, the thread priority was always 0 or 1.
Andy McFadden [Fri, 7 Aug 2009 18:37:44 +0000 (11:37 -0700)]
Correct the type of a pointer.
Should've been part of change 20178.
Android (Google) Code Review [Fri, 7 Aug 2009 14:21:08 +0000 (07:21 -0700)]
Merge change 20378
* changes:
Suspend daemon threads before exiting.
Andy McFadden [Fri, 7 Aug 2009 00:56:14 +0000 (17:56 -0700)]
Suspend daemon threads before exiting.
The VM wasn't dealing with daemon threads very well, allowing them to
run unchecked while the city burned around them. Now we carefully
suspend them before shutdown is allowed to continue.
Android (Google) Code Review [Thu, 6 Aug 2009 19:49:34 +0000 (12:49 -0700)]
Merge change 8538
* changes:
A sampling profiler for Dalvik.
Bob Lee [Fri, 31 Jul 2009 01:17:37 +0000 (18:17 -0700)]
A sampling profiler for Dalvik.
Andy McFadden [Wed, 5 Aug 2009 22:20:27 +0000 (15:20 -0700)]
Switch to <stdbool.h> in the VM.
We were using an enum that made the compiler unhappy on MacOS X. This
switches us to using <stdbool.h> when it's available.
The size of a "bool" is either sizeof(_Bool) or sizeof(enum bool), and
the assembly sources dislike ambiguity, so this also changes
gDvm.debuggerActive to always be a single byte. The ARM and x86 code
was already assuming that -- held over from when enums were
variable-width, and never fixed because we get the right answer on
little-endian platforms -- so it doesn't look like we need to change
anything in mterp.
Android (Google) Code Review [Wed, 5 Aug 2009 21:11:05 +0000 (14:11 -0700)]
Merge change 9641
* changes:
Added thread profile to dmtracedump output
Android (Google) Code Review [Wed, 5 Aug 2009 20:41:28 +0000 (13:41 -0700)]
Merge change 20002
* changes:
Updating math to Harmony r772995.
Andy McFadden [Wed, 5 Aug 2009 20:20:16 +0000 (13:20 -0700)]
Regenerate mterp.
Whoops! Should've been part of
d33b0c3fbd81ae96c5d5c034030d62caac33c310.
Andy McFadden [Tue, 4 Aug 2009 23:38:40 +0000 (16:38 -0700)]
Don't assert that all threads have stopped.
If assertions were enabled and we had a daemon thread running, the VM
would fail on exit.
Android (Google) Code Review [Wed, 5 Aug 2009 14:22:20 +0000 (07:22 -0700)]
Merge change 20020
* changes:
Improvements to cgroup stuff.
Rodrigo Ipince [Tue, 4 Aug 2009 04:34:47 +0000 (21:34 -0700)]
Added thread profile to dmtracedump output
The thread profile lists all the running threads, sorted by elapsed time.
Andy McFadden [Tue, 4 Aug 2009 22:02:12 +0000 (15:02 -0700)]
Improvements to cgroup stuff.
When a thread is created or changes priority via Thread.setPriority(),
the cgroup value was being set incorrectly -- the code was comparing
the priority vs. the "nice" values we use in the rest of Android.
This was preventing threads from being moved into the background group
when first created. (It's not clear whether this matters in most cases,
since the system appears to move threads in and out of the background
cgroup without regard to their "nice" value in Process.setProcessGroup.)
The code that changed the cgroup wasn't really checking the return
value, though this is only meaningful if the verbose error logging is
compiled in.
The above have been fixed, and in addition the thread dump now displays
the cgroup value next to the other priority information.
Jesse Wilson [Tue, 4 Aug 2009 20:50:38 +0000 (13:50 -0700)]
Updating math to Harmony r772995.
Notable changes:
- lots of trailing whitespace and "@since Android 1.0" tags removed
- shiftLeft(1) replaced with shiftLeftOneBit(). That case can be optimized
more aggressively than the general case. The new method exists in BigInteger
and calls through to a new method in BitLevel in the same way as Harmony.
This is a squashed commit of the following:
commit
3f071487bdb8fff0b4a71ce0219ee7e1e16369fb
Merge:
4fda354 10640b6
Author: Jesse Wilson <jessewilson@google.com>
Date: Tue Aug 4 12:02:25 2009 -0700
Merge branch 'math_772995' into math_dalvik
Conflicts:
libcore/math/.classpath
libcore/math/build.xml
libcore/math/src/main/java/java/math/BigDecimal.java
libcore/math/src/main/java/java/math/BigInteger.java
libcore/math/src/main/java/java/math/Division.java
libcore/math/src/main/java/java/math/Elementary.java
libcore/math/src/main/java/java/math/Logical.java
libcore/math/src/main/java/java/math/MathContext.java
libcore/math/src/main/java/java/math/Multiplication.java
libcore/math/src/main/java/java/math/Primality.java
libcore/math/src/main/java/java/math/RoundingMode.java
libcore/math/src/test/java/tests/api/java/math/BigDecimalTest.java
libcore/math/src/test/java/tests/api/java/math/BigIntegerTest.java
commit
4fda354bd7d2c0ee918c86fa89852310cc8f2af7
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Jul 29 17:12:27 2009 -0700
Dalvik Math
commit
10640b6b254200f1c89553072e50137f6ad46c84
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Jul 29 17:11:07 2009 -0700
Math 772995
commit
15302f6d09b3547f1018e3d228f233f8f72c7de9
Author: Jesse Wilson <jessewilson@google.com>
Date: Wed Jul 29 17:08:19 2009 -0700
Math 527399
Andy McFadden [Tue, 4 Aug 2009 19:09:29 +0000 (12:09 -0700)]
Throw an exception instead of aborting in DexFile.
If presented with an invalid DexFile cookie -- perhaps because somebody
called DexFile.close() twice -- the VM would unceremoniously abort.
This was reported as a bug (external #2443). We now throw a simple
exception.
For internal bug
1794406.
Lorenzo Colitti [Wed, 29 Jul 2009 00:54:40 +0000 (17:54 -0700)]
Try to connect to all the IP addresses of a host instead of just the first.
Jean-Baptiste Queru [Mon, 3 Aug 2009 14:45:27 +0000 (07:45 -0700)]
merge from donut
Bill Buzbee [Sat, 1 Aug 2009 18:32:36 +0000 (11:32 -0700)]
Fixed 2 floating point bugs; improved debug output; armv7-a thumb2 inline sqrt
Android (Google) Code Review [Sat, 1 Aug 2009 16:04:06 +0000 (09:04 -0700)]
Merge change 9395
* changes:
Stage 3 of Thumb2 support. armv7-a now generates vfp code inline.
Bill Buzbee [Thu, 30 Jul 2009 17:52:29 +0000 (10:52 -0700)]
Stage 3 of Thumb2 support. armv7-a now generates vfp code inline.
Android (Google) Code Review [Fri, 31 Jul 2009 23:26:37 +0000 (16:26 -0700)]
Merge change 9414
* changes:
Fix a LOGVV.
Android (Google) Code Review [Fri, 31 Jul 2009 23:24:13 +0000 (16:24 -0700)]
Merge change 9384
* changes:
Added VMDebug.crash() (hidden).
Andy McFadden [Fri, 31 Jul 2009 23:24:12 +0000 (16:24 -0700)]
Fix a LOGVV.
Somebody on android-porting stumbled over this.
Andy McFadden [Fri, 31 Jul 2009 20:54:59 +0000 (13:54 -0700)]
Added VMDebug.crash() (hidden).
This call prints the stack trace for the current thread, and then
crashes the VM so you can see the native stack trace too. Useful for
figuring out "how did I get here?" situations.
Andy McFadden [Fri, 17 Jul 2009 01:11:22 +0000 (18:11 -0700)]
Indirect reference table implementation.
This change introduces the "indirect" reference table, which will be
replacing ReferenceTable for local and global JNI references. The key
difference is that, instead of handing raw Object pointers to JNI, we
will be giving them a magic value that can be converted back to an
Object. The goal is to avoid having to pin every object that native
code is aware of.
The code is not actually used anywhere yet.
Also bundled up here:
- added detail to a log message
- fixed a string format issue in the internal assert() definition
- very minor optimization in "remove" function in ReferenceTable
- quiet a gcc complaint
- only include the hash table regression test in builds that invoke it