e2f220961759e31c94bfa770b6a6ddbf019c16d9 |
|
01-Mar-2013 |
Elliott Hughes <enh@google.com> |
Fix the HashMap performance regression. Go back to the original cheap (and inline) secondary hash. LinkedHashMap is a subclass of HashMap, so that has to change too. Bug: 8290590 Change-Id: I7959a8ce8b8fc96e7f1d2c8a2a13fe83ef4c0dd5
|
9084e968a10ed230e76940eef60b8f6229cc7b8b |
|
23-Feb-2013 |
Elliott Hughes <enh@google.com> |
Fix HashMap/Hashtable/LinkedHashMap to not allow corruption of the shared table. See the bug for an excellent description of the problem. The test also tests ConcurrentHashMap, IdentityHashMap, and WeakHashMap, even though they never had this bug. Bug: https://code.google.com/p/android/issues/detail?id=48055 Change-Id: Id12880b1a40945c1a7a4c6bc3656b842aad78bf7
|
1424a2a1a9fc53dc8b859a77c02c924d3dc2334d |
|
06-Feb-2013 |
Ian Rogers <irogers@google.com> |
Secondary hash for IdentityHashMap and WeakHashMap. Dalvik's identity hash code is a multiple of 8 meaning that it can cause frequent collisions if a secondary hash isn't applied. This change adds a secondary hash function to IdentityHashMap and WeakHashMap, as is done in HashMap, HashTable and ConcurrentHashMap. There is some other minor clean-up including updating the secondary hash function to match that in ConcurrentHashMap. Change-Id: Id2115b2622ff759bf2f67bd7572c2ecd8f0f0d67
|
e26ba79900d471d02d656f686926918ef7dc751f |
|
08-Feb-2011 |
Elliott Hughes <enh@google.com> |
Use int.class instead of Integer.TYPE (et cetera) for clarity. I've also removed some small amount of duplication and a few unused imports. Change-Id: Ie52477484bade74c80a348ad1261b596f9053cf6
|
6186821cb13f4ac7ff50950c813394367e021eae |
|
08-Feb-2011 |
Jesse Wilson <jessewilson@google.com> |
Move libcore.base classes to libcore.util and libcore.io. Change-Id: I2340a9dbad3561fa681a8ab47d4f406e72c913e3
|
28eb98ecd43c27702e85b0561e040e2da10320a6 |
|
05-Feb-2011 |
Elliott Hughes <enh@google.com> |
Fix serialization of DecimalFormatSymbols. Missing 'final' on the serialPersistentFields declaration meant we were falling back to reflection, and 'exponential' isn't actually a field. I've checked all the other serialPersistentFields fields, and put them in a canonical form. There were no other errors. I'll do two other related changes: I'll replace confusing use of Character.TYPE with char.class (and so forth), and I'll backport the active ingredient from this change so it's fixed in honeycomb-mr1. Bug: http://code.google.com/p/android/issues/detail?id=14495 Change-Id: I954da649ad597450bee54957dc0e3d3aa9d151dd
|
fb0ec0e650bf8be35acb0d47da0311a7c446aa33 |
|
14-Jan-2011 |
Elliott Hughes <enh@google.com> |
Remove useless android-changed comments. I've changed useful ones to regular comments or TODOs, as appropriate. I've left ones in code like java.util.concurrent where we really are tracking an upstream source, making the change markers useful. I've left a handful of others where I intend to actually investigate the implied TODOs before deciding how to resolve them. Change-Id: Iaf71059b818596351cf8ee5a3cf3c85586051fa6
|
b5bde2fd72189192b52e726a2d606d70c3c8a34b |
|
02-Nov-2010 |
Elliott Hughes <enh@google.com> |
More shift removal. A few more customers for OSMemory's peek/poke abilities, and a bunch of shifts that should have been multiplications. Bug: 3032515 Change-Id: Ic518fd8f7565d67523ea10e3f5afca3a9c8501b8
|
e32b21f14d52bac429a9c54fe031f9e92c911d64 |
|
18-Jun-2010 |
Jesse Wilson <jessewilson@google.com> |
Implementing ZoneInfo.hasSameRules(). Moving TimeZoneTest to OldTimeZoneTest and removing test methods that are duplicated between libcore and Harmony. Also adding Objects.equals() to make implementing this easy, and removing redundant time zone tests. I did a few searches to find candidate code that could take advantage of this new utility method and adopted it there. Change-Id: I133298f1b36d755bd35c1ad0dc0ab366fd164270
|
4adff24306c86433ce4f771da8489a574e63318e |
|
27-May-2010 |
Elliott Hughes <enh@google.com> |
Javadoc improvements. Bug: 2718660 Change-Id: Ifae8541d269ac0fa5581802a8d78453af19a0e10
|
f33eae7e84eb6d3b0f4e86b59605bb3de73009f3 |
|
13-May-2010 |
Elliott Hughes <enh@google.com> |
Remove all trailing whitespace from the dalvik team-maintained parts of libcore. Gentlemen, you may now set your editors to "strip trailing whitespace"... Change-Id: I85b2f6c80e5fbef1af6cab11789790b078c11b1b
|
438d9883775e6ee31c097e2103a25571d2426cd9 |
|
09-Mar-2010 |
Elliott Hughes <enh@google.com> |
Minor documentation improvements. Based on user-submitted bugs that were just misunderstandings, plus implementation bugs caused by the intended behavior being somewhat subtle. Change-Id: Ic2606b5e57dadc95a35c2d0a977c01434a2fa28a
|
4fefecee9d4a5d2a4510f516b4015607b19e8d09 |
|
13-Nov-2009 |
Jean-Baptiste Queru <jbq@google.com> |
eclair snapshot
|
9483551bcc25e4df0a27d6548b54e1971fac9aea |
|
21-Sep-2009 |
Joshua Bloch <jjb@google.com> |
Fixed LinkedHashMap bug 2121546 Also made minor improvements in LinkedHashMap and NegativeCache. (The "opportunities for improvement" were discovered while investigating the bug.)
|
8d8cd4cc76b8a93d0de6bb83c85750c8c28ac171 |
|
03-Sep-2009 |
Jesse Wilson <jessewilson@google.com> |
do not merge: Josh's optimized HashMap and Hashtable This commit squashes two changes from master. The only additional change is that I've added "implements Map<K, V>" to the signature of HashMap, which is necessary until we get Josh's Apicheck fix in the master branch. commit 5483e8adebc09b7bc58eb568793868388c240116 Author: Joshua Bloch <jjb@google.com> Date: Mon Aug 31 17:55:19 2009 -0700 Replaced existing Hashtable implementation with fast one. commit 90dbc304086ba1f6f51ed0d0b3a7368cc0fd46cb Author: Joshua Bloch <jjb@google.com> Date: Thu Aug 20 17:34:39 2009 -0700 Replace existing HashMap and LinkedHashMap with faster versions. Among other optimizations, the new versions do no division and use a high-quality defensive hash function to minimize the odds of poor key distribution among buckets. Third time's a charm.
|
c0a4d9b35cbdd33dcc8e6a78a829573f0ed9bf6d |
|
01-Sep-2009 |
Joshua Bloch <jjb@google.com> |
Replaced existing Hashtable implementation with fast one.
|
19ab821c3b1da5812590140a21ad9d551a3a3ec5 |
|
21-Aug-2009 |
Joshua Bloch <jjb@google.com> |
Replace existing HashMap and LinkedHashMap with faster versions. Among other optimizations, the new versions do no division and use a high-quality defensive hash function to minimize the odds of poor key distribution among buckets. Third time's a charm.
|
a389b4a499f40379b0b204d7ba1c2057663d95c0 |
|
11-Aug-2009 |
Jesse Wilson <jessewilson@google.com> |
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.
|
f5597e626ecf7949d249dea08c1a2964d890ec11 |
|
25-Jul-2009 |
Jesse Wilson <jessewilson@google.com> |
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
|
adc854b798c1cfe3bfd4c27d68d5cee38ca617da |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
1c0fed63c71ddb230f3b304aac12caffbedf2f21 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
4351da844f9132d2d801d1a10ccc195091e31a8a |
|
20-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127101
|
dd828f42a5c83b4270d4fbf6fce2da1878f1e84a |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
|
fdb2704414a9ed92394ada0d1395e4db86889465 |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
|