| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| | |
* changes:
Store all IP addresses for a hostname instead of just one.
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
* changes:
Minor tweak (TEQS -> TEQ).
|
| | |
| | |
| | |
| | | |
Avoids "Warning: s suffix on comparison instruction is deprecated".
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
Merge commit 'bd79e4498465381117f2cbc6399a256061f1d144'
* commit 'bd79e4498465381117f2cbc6399a256061f1d144':
Fix an issue where we're adding 4x the intended offset.
|
| | |
| | |
| | |
| | |
| | |
| | | |
We were doing pointer arithmetic of mixed types (jint* and jint),
and the type conversion ended up causing the offset to be converted
an extra time.
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | | |
Merge commit '2932648271e72bad181b293e1fa5945265c7dbed'
* commit '2932648271e72bad181b293e1fa5945265c7dbed':
Removing MD2
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
* changes:
Update bytecode verifier info.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Rewrote last section to describe deferred verification error reporting.
Added note about structured locking checks.
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
* changes:
Fixing some broken links in the concurrent Javadoc.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
There's a bug in droiddoc where links to methods with generic parameters
don't resolve correctly. I'll open a buganizer issue for this; in the
interim I've simply dropped the parameters for the offending links.
|
|/ / /
| | |
| | |
| | | |
Also fixing VMStack to hide the new API method.
|
|\ \ \
| |_|/
|/| |
| | |
| | | |
* changes:
Update concurrent module to Harmony r798021.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
commit 56bcdc2a3b881883409267c3bd16294d80716859
Merge: 903691a f429dca
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon Jul 27 17:33:19 2009 -0700
Merge branch 'concurrent_798021' into concurrent_dalvik
Conflicts:
libcore/concurrent/.classpath
libcore/concurrent/build.xml
libcore/concurrent/make/run-test.xml
libcore/concurrent/src/main/java/java/util/concurrent/ArrayBlockingQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/BlockingQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/ConcurrentHashMap.java
libcore/concurrent/src/main/java/java/util/concurrent/ConcurrentLinkedQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/ConcurrentMap.java
libcore/concurrent/src/main/java/java/util/concurrent/CopyOnWriteArrayList.java
libcore/concurrent/src/main/java/java/util/concurrent/CopyOnWriteArraySet.java
libcore/concurrent/src/main/java/java/util/concurrent/DelayQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/LinkedBlockingQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/PriorityBlockingQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/ScheduledThreadPoolExecutor.java
libcore/concurrent/src/main/java/java/util/concurrent/Semaphore.java
libcore/concurrent/src/main/java/java/util/concurrent/SynchronousQueue.java
libcore/concurrent/src/main/java/java/util/concurrent/ThreadPoolExecutor.java
libcore/concurrent/src/main/java/java/util/concurrent/TimeUnit.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicBoolean.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicInteger.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicIntegerArray.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicLong.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicLongArray.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicLongFieldUpdater.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicReference.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicReferenceArray.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java
libcore/concurrent/src/main/java/java/util/concurrent/atomic/package.html
libcore/concurrent/src/main/java/java/util/concurrent/locks/AbstractQueuedSynchronizer.java
libcore/concurrent/src/main/java/java/util/concurrent/locks/LockSupport.java
libcore/concurrent/src/main/java/java/util/concurrent/locks/ReentrantReadWriteLock.java
libcore/concurrent/src/main/java/java/util/concurrent/locks/package.html
libcore/concurrent/src/main/java/java/util/concurrent/package.html
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/AtomicLongFieldUpdaterTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/AtomicReferenceFieldUpdaterTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/AtomicReferenceTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/ConcurrentHashMapTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/DelayQueueTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/ExecutorsTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/JSR166TestCase.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/LinkedBlockingQueueTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/LockSupportTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/ReentrantLockTest.java
libcore/concurrent/src/test/java/tests/api/java/util/concurrent/ReentrantReadWriteLockTest.java
commit 903691ae71cff640d5487a3d34a20e8767dbfb66
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon Jul 27 16:09:58 2009 -0700
Dalvik Concurrent
commit f429dca21c408ee62e688f60d5e110718374e944
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon Jul 27 16:08:25 2009 -0700
Concurrent 798021
commit b2c76fdd1056113000140bc4af57300c87469d2d
Author: Jesse Wilson <jessewilson@google.com>
Date: Mon Jul 27 16:03:45 2009 -0700
Concurrent 527399
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
* changes:
Fix for 1857865: Need x86 implementation for OP_THROW_VERIFICATION_ERROR
|
| |/ / |
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| | |
Really a workaround for a gcc bug in 4.3. Don't trust the C compiler
to properly clear high bits from < 32-bit JNI return values.
|
|\ \
| | |
| | |
| | |
| | | |
* changes:
Integrate luni module (but not tests) to Harmony r772995.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Notable changes
- Stripped "@since Android 1.0" from many files. Most files
are now 100% the same in Dalvik and Harmony.
- AbstractStringBuilder.reverse() supports surrogates
- AbstractStringBuilder shares less to waste less memory
- Bitset optimized
- BufferedInputStream changed to support unsynchronized close()
- BufferedOutputStream does flushInternal
- BufferedReader supports EBCDIC NEL
- Collections.synchronizedList().indexOf() does a copy for more concurrency
- Classes in nio module changed: DatagramChannelImpl, SocketChannelImpl
and ServerSocketChannelImpl (these depend on internal APIs changed in
this update)
- DataInputStream/DataOutputStream now use a small buffer to limit the
number of times the underlying stream is accessed
- Date now has a minutes offset, more efficient toString()
- ExposedByteArrayInputStream: new internal class
- DeleteOnExit moved to top-level class
- FileDescriptor.isValid() now non-native
- Float, Double lessThan optimized (fix for compare(-0.0F, 0.0F) still pending)
- FileURLConnection now guesses content types from streams
- HashMap iterator changes
- Hashtable iterator changes
- INetworkSystem
- removes bind2(), createMulticastSocket, sendStream(),
- renames createSocket to createStreamSocket
- JarURLConnection rewritten
- LinkedHashMap: new iterator
- Locale, Currency, TimeZone: now use ICU in Harmony, plain Java in Dalvik
- ObjectInputStream: Accessor objects in Harmony, direct native in Dalvik
- ProxyClassFile - many changes
- String - optimized ascii for toLowerCase, toUpperCase, compare
- Timer - rewritten
- TreeMap - rewritten
- URLClassLoader - new
- URLConnection - new guessContentTypeFromStream(), uses org.apache.harmony.awt.www.content
to lookup content type handlers
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
* changes:
First phase of restructuring to support THUMB2 & ARM traces Store some useful info about traces in JitTable entry; some general cleanup
|
| | | |
| | | |
| | | |
| | | | |
Store some useful info about traces in JitTable entry; some general cleanup
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
* changes:
Fix mangling to translate dollar signs.
|
| | | |
| | | |
| | | |
| | | | |
(Manually pulled from external change 10724.)
|
|/ / / |
|
|\ \ \
| | |/
| |/|
| | |
| | |
| | |
| | | |
Merge commit '8e696dc0271299433cb3297e7aafc7bd0ee1b2b7'
* commit '8e696dc0271299433cb3297e7aafc7bd0ee1b2b7':
JNI direct buffer function speedup, part 3.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This caches the effective address in a new field in the base Buffer
object. The first time something calls through one of the various
getEffectiveAddress calls, the value is set. (This seemed easier than
chasing down the constructors and factories, and also prevents bit rot
on the "slow path" in the VM.)
|
|\ \ \
| |/ /
| | /
| |/
|/|
| |
| | |
Merge commit '8e5c78470229fd2f5474574081eaa4a2286aafea'
* commit '8e5c78470229fd2f5474574081eaa4a2286aafea':
JNI direct buffer function speedup, part 2.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This converts the three direct buffer functions from JNI to internal VM
calls. As a bonus, we grab PlatformAddress.osaddr directly instead of
retrieving it with PlatformAddress.toLong().
We're still calling through getEffectiveAddress(), which is where most
of the complexity lies.
Nudged a couple of comments.
|
|\ \
| |/
| |
| |
| |
| |
| | |
Merge commit '828311c1293ba533065895cc375abb143e14b69a'
* commit '828311c1293ba533065895cc375abb143e14b69a':
Minor fixes to CheckJNI.
|
| |\
| | |
| | |
| | |
| | | |
* changes:
Minor fixes to CheckJNI.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We weren't always switching to "running" mode before playing with
objects. Now checkObject() always changes modes, and things that called
checkObject while in "running" mode now do so after switching back to
"native" (which shouldn't matter now, but I don't want to require nested
switching to work if I don't have to).
Vaguely related to internal bug 1943379, since I think we want to do
some updates to CheckJNI there.
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | | |
Merge commit '5f612b82bbc2fcfb13865acd3c3835febab23466'
* commit '5f612b82bbc2fcfb13865acd3c3835febab23466':
JNI direct buffer function speedup, part 1.
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a fairly straightforward improvement to GetDirectBufferAddress,
caching classes and methodIDs instead of looking them up on every call.
This is the best we can do without making the function more vulnerable
to internal changes to Harmony's NIO implementation.
It looks like we need to take this farther, but this way we have a
relatively fast and relatively safe version to fall back on.
For internal bug 1943379.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Sample output:
D/dalvikvm( 400): TRACEPROFILE 0x426d945c 5192426 [0x4(+32), 810] Lcom/android/unit_tests/PerformanceTests$AddMemberVariableTest;testRun;()V
D/dalvikvm( 400): TRACEPROFILE 0x426d955c 263 [0x2(+1), 809] (omitted)
D/dalvikvm( 400): TRACEPROFILE 0x426d9640 0 [0x53(+1), 344] (omitted)
D/dalvikvm( 400): TRACEPROFILE 0x426d960c 0 [0x72(+1), 271] (omitted)
D/dalvikvm( 400): TRACEPROFILE 0x426d9590 0 [0x74(+5), 272] (omitted)
For the first line:
5192426: execution count of this trace
0x4: starting bytecode offset
+32: number of instructions included in the trace
810: line number corresponding to 0x4 in the file containing the method
Also add WITH_JIT_TUNING for now whenever JIT is enabled.
|
|\ \
| | |
| | |
| | |
| | | |
* changes:
Polish JIT trace profiling and fix a unchaining bug when profiling is enabled.
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
* changes:
Fixed a tiny bug in TimSort that slightly affects performance on small arrays Martin Buchholz discovered this bug by running all tests with assertions enabled. That's the only way he could have discovered it, as it doesn't affect correctness:) The assertion that failed was the one at the head of countRunAndMakeAscending. The cause was that I called the method with (a, start, length) instead of (a, start, end).
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Martin Buchholz discovered this bug by running all tests with assertions
enabled. That's the only way he could have discovered it, as it doesn't
affect correctness:) The assertion that failed was the one at the head of
countRunAndMakeAscending. The cause was that I called the method with
(a, start, length) instead of (a, start, end).
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
* changes:
Fixing wakeups caused by Thread.join() interacting with LockSupport.unpark.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This caused several concurrency tests to fail when run with timeouts, since
the tests cause park and unpark to happen frequently.
Also fixing a tiny issue with CoreTestRunnable to use the proper tmp directory
and to include the program of a failed external execution.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
* changes:
Make verifier field/method resolution conformant.
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The VM spec spells out a particular way to look for fields. It assumes
that static and virtual fields are piled together into a single pool,
so it makes sense to scan through both kinds when resolving. In Dalvik,
field definitions are separated by scope, so we can save a little time
by only searching through the appropriate list.
It turns out that you can create a situation where a field with the same
name is available in both static and virtual forms in the same class.
javac won't let you do this in a single class, but with separate
compilation and inheritance you can pull it off. In these situations,
Dalvik can do the wrong thing. For example, if you ask for a static
field, Dalvik will happily use the static field from a superclass without
realizing that there's an instance field with the same name in the current
class. It's supposed to find the instance field, realize that it's not
static, and throw an exception.
This change updates the verifier to do an "untyped" scan like the VM
spec wants. Problematic situations are identifed and result in an
"incompatible class change" exception.
This does not alter "direct" method lookups (constructors, private
methods).
I also altered the annotation "ambiguous" method lookup to use the new
function, since that's probably the desired behavior there as well.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
* changes:
Throw OutOfMemoryError on oversize array allocs.
|