summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge "Allow Calendar.getInstance to be called with a null Locale."Narayan Kamath2014-08-139-0/+105
|\
| * Allow Calendar.getInstance to be called with a null Locale.Narayan Kamath2014-08-139-0/+105
|/ | | | | | | | | | | | | LocaleData.get was changed to throw for null locales instead of falling back to the default, so we need to adjust callers accordingly. Turns out all other callers would've thrown anyway (for different reasons) so this change makes those exceptions explicit and adds tests for them. bug: 16938922 Change-Id: I3e77435a6b414b002b96a4f8deb44b51591c5a51
* Merge "Make parameter name match comments for sdk build."Jeff Hao2014-08-111-1/+1
|\
| * Make parameter name match comments for sdk build.Jeff Hao2014-08-111-1/+1
|/ | | | Change-Id: I4dba2cfe07cf0c5ce28a0ff4540aa68d9c664a2a
* Merge "Implements some StrictMath functions for improved performance."Jeff Hao2014-08-112-38/+476
|\
| * Implements some StrictMath functions for improved performance.Emma Meersman2014-08-112-38/+476
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The functions ceil, floor, hypot, IEEEremainder, nextafter, and rint have all been implemented in Java to save the native call. Benchmarking numbers to show this performance improvement are included: Native call (before change): benchmark=Ceil: 97.40 ns; σ=0.02 ns @ 3 trials benchmark=Floor: 98.73 ns; σ=0.02 ns @ 3 trials benchmark=Hypot: 714.62 ns; σ=0.44 ns @ 3 trials benchmark=IEEEremainder: 180.31 ns; σ=0.08 ns @ 3 trials benchmark=NextAfterD: 110.47 ns; σ=0.02 ns @ 3 trials benchmark=NextAfterF: 96.20 ns; σ=0.01 ns @ 3 trials benchmark=Rint: 92.21 ns; σ=0.02 ns @ 3 trials Java implementation (after change): benchmark=Ceil: 47.32 ns; σ=0.01 ns @ 3 trials benchmark=Floor: 42.03 ns; σ=0.00 ns @ 3 trials benchmark=Hypot: 69.42 ns; σ=0.37 ns @ 3 trials benchmark=IEEEremainder: 49.64 ns; σ=0.04 ns @ 3 trials benchmark=NextAfterD: 63.32 ns; σ=0.17 ns @ 3 trials benchmark=NextAfterF: 64.67 ns; σ=0.12 ns @ 3 trials benchmark=Rint: 31.10 ns; σ=0.41 ns @ 10 trials Change-Id: I9ee926514c0661cdb7a1e6ae3acfe5c31a4b9f20
* | Merge "Don't allow Class.class.getDeclaredConstructor().setAccessible()."Mathieu Chartier2014-08-111-0/+7
|\ \
| * | Don't allow Class.class.getDeclaredConstructor().setAccessible().Mathieu Chartier2014-08-111-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | The new behavior is to throw a SecurityException. Bug: 16866726 Bug: https://code.google.com/p/android-developer-preview/issues/detail?id=561 Change-Id: I1fa0d9617f8b25bf4e93a52c4aed22f0be27555b
* | | Merge "Fix TimeZone.getAvailableIDs(int)."Elliott Hughes2014-08-112-13/+45
|\ \ \ | |_|/ |/| |
| * | Fix TimeZone.getAvailableIDs(int).Elliott Hughes2014-08-112-13/+45
|/ / | | | | | | | | | | | | | | | | | | | | | | | | This was broken by the removal of the pre-computed raw offsets from the tzdata file. I think that's still the direction we want to go (with us hopefully using more of icu4j at some point, and eventually relying solely on the icu time zone data), so this patch adds code to lazily evaluate all the offsets by instantiating all the time zones. (cherry-pick of 065d7764ac1dfe74ee94d17ca6c810de37b57d3e.) Bug: 16947622 Change-Id: I6d1dfe5ee6c99338f9807c3af5b6f04539c256c3
* | Merge "Stop keeping iteration prefix around."Piotr Jastrzebski2014-08-071-10/+4
|\ \
| * | Stop keeping iteration prefix around.Piotr Jastrzebski2014-08-111-10/+4
| | | | | | | | | | | | | | | | | | zip archive makes a copy of a prefix and maintains it's lifecycle now. Change-Id: I55adc4c9eefee96b80038fb7dbb95dbe498d5a73
* | | Merge "Remove memory leak."Piotr Jastrzebski2014-08-071-0/+1
|\ \ \ | |/ / | | / | |/ |/|
| * Remove memory leak.Piotr Jastrzebski2014-08-111-0/+1
|/ | | | | | | Call EndIteration in IterationHandle destructor. This will free the memory allocated for cookie in StartIteration. Change-Id: I12c861c7da2437113c669a0c7f41b5585ed94c72
* Merge "Implements some math functions for faster performance"Jeff Hao2014-08-083-129/+1017
|\
| * Implements some math functions for faster performanceMichael Chen2014-07-243-129/+1017
| | | | | | | | | | | | | | | | | | Changes cosh, exp, expm1, log, log10, sinh, cbrt, asin, acos, atan, tanh, log1p These functions are now implemnted in java to save the overhead of a jni call Change-Id: I4d3b70dd1693378af5b04cbbe0fecd95d97c1cff
* | Merge "Variants are case sensitive."Narayan Kamath2014-08-072-6/+13
|\ \
| * | Variants are case sensitive.Narayan Kamath2014-08-082-6/+13
|/ / | | | | | | | | | | | | Yet we were incorrectly upper-casing them inside forLanguageTag. bug: 16811867 Change-Id: I088161c4c7769908f35b9f2b7d945fb1cd1fd7ac
* | Merge "Remove nameLength field from ZipEntry."Piotr Jastrzebski2014-08-072-11/+6
|\ \
| * | Remove nameLength field from ZipEntry.Piotr Jastrzebski2014-08-082-11/+6
|/ / | | | | | | | | | | | | It seems that this field is never used outside the internal constructor so it can be a local variable instead. Change-Id: I2aa26fb3fd13c571224a9aee14c7eea93e5c9591
* | Merge "Revert "Remove nameLength field from ZipEntry.""Narayan Kamath2014-08-072-5/+10
|\ \
| * | Revert "Remove nameLength field from ZipEntry."Narayan Kamath2014-08-072-5/+10
| | | | | | | | | | | | | | | | | | This reverts commit c4da34ca5792e0c73577f868249fdfe8a11a01f6. Change-Id: I1b93ecfcb8a867a670af717eb25c7076b7097d5c
* | | Merge "Track bouncycastle upgrade to 1.51"Kenny Root2014-08-071-2/+2
|\ \ \
| * | | Track bouncycastle upgrade to 1.51Kenny Root2014-08-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The SubjectKeyIdentifierStructure class is no longer in Bouncycastle. Change-Id: Ie5eb91a14ec38f773ef22754d77651a161fd7122
* | | | Merge "Remove nameLength field from ZipEntry."Piotr Jastrzebski2014-08-062-10/+5
|\ \ \ \ | | |/ / | |/| |
| * | | Remove nameLength field from ZipEntry.Piotr Jastrzebski2014-08-072-10/+5
|/ / / | | | | | | | | | | | | | | | | | | It seems that this field is never used outside the internal constructor so it can be a local variable instead. Change-Id: Icd9e009a24ae22da8f5dfd18b9f0ab80913129d4
* | | Merge "Implement equals and hashCode in ParameterizedTypeImpl"Piotr Jastrzebski2014-08-052-4/+40
|\ \ \
| * | | Implement equals and hashCode in ParameterizedTypeImplPiotr Jastrzebski2014-08-072-4/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and GenericArrayTypeImpl. Bug: 14590652 Bug: https://code.google.com/p/android/issues/detail?id=74060 Change-Id: Ib9a30b741a8d5f82d21f37ca8959bf5b2893f8db
* | | | Merge "Use absolute path when opening dex files."Calin Juravle2014-08-051-1/+13
|\ \ \ \ | |/ / / |/| | |
| * | | Use absolute path when opening dex files.Calin Juravle2014-08-061-1/+13
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | The device always sees absolute paths so this will be no-op but on host this enables testing with relative paths (which is much more convenient). Bug: 16644204 Change-Id: Ife8d231a8127ff97f8fd97c745c64b435cdddf02
* | | Merge "Workaround doclava leaking ArtMethod"Brian Carlstrom2014-08-041-0/+8
|\ \ \ | |/ / |/| |
| * | Workaround doclava leaking ArtMethodBrian Carlstrom2014-08-051-0/+8
|/ / | | | | | | | | | | | | | | Bug: 16828157 (cherry picked from commit fe51ef7c7974e33b2ee20457aa16d6aef6cf3485) Change-Id: I271571a7501b9bce03ad1c09e09b5bfe4ffc422b
* | Merge "Make system use patchoat to relocate during runtime."Brian Carlstrom2014-08-051-2/+41
|\ \
| * | Make system use patchoat to relocate during runtime.Alex Light2014-08-051-2/+41
|/ / | | | | | | | | | | | | | | | | | | Change DexFile.isDexOptNeededInternal to new signature so that we can determine if we need to run patchoat. Added constants for each of the different outcomes of isDexOptNeededInternal. Bug: 15358152 Change-Id: Ibe92d8b55a24bbf718b0416a21b76e5df7a2de26
* | Merge "Fix MimeUtils to treat ".flac" as "audio/flac"."Elliott Hughes2014-08-053-25/+56
|\ \
| * | Fix MimeUtils to treat ".flac" as "audio/flac".Elliott Hughes2014-08-053-25/+56
|/ / | | | | | | | | | | | | (cherry-pick of 77926e913a14b9541df38b6175f795f2ca6c5266.) Bug: 15715370 Change-Id: I2d99f070c3debea01621a172d8189951a56736b5
* | Merge "Remove knownfailures for "host""Neil Fuller2014-07-311-33/+0
|\ \
| * | Remove knownfailures for "host"Neil Fuller2014-08-011-33/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | These all appear to work on host now given the correct classpath. Bug: 3041920 Bug: 2931959 Bug: 3032875 Change-Id: Id1687652803df925d529ee4f3250b54d023c3f8f
* | | Merge "Don't account buffer.arrayOffset() twice."Narayan Kamath2014-07-292-2/+2
|\ \ \
| * | | Don't account buffer.arrayOffset() twice.Narayan Kamath2014-07-312-2/+2
|/ / / | | | | | | | | | | | | | | | | | | | | | data[OUTPUT_OFFSET] from the perspective of native code must always be the offset from the start of the buffer passed in to it. Change-Id: I4a5c9595aebd105c57ce2239dc95cf85d5bd6256
* | | Merge "Fix LocaleInternalsTest."Narayan Kamath2014-07-292-4/+5
|\ \ \
| * | | Fix LocaleInternalsTest.Narayan Kamath2014-07-312-4/+5
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - After the new Java forLanguageTag implementation, bogus locales really do result in "und". - Fix a regression in unicode extension parsing, where we would always add a "null" to the keyword set. - Improve test assertions so that the reason for failure is obvious. bug: 15849709 Change-Id: I26fb348b872badb7844587cf290429e15dbb0f0e
* | | Merge "Add ICU.addLikelySubtags(Locale)."Narayan Kamath2014-07-292-0/+22
|\ \ \
| * | | Add ICU.addLikelySubtags(Locale).Narayan Kamath2014-07-312-0/+22
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need a replacement for ICU.getScript(String), Locale.getScript() can be used instead. The old definition of the function has been left public for the support library to use (though we could remove it if we modify the support lib). Note that addLikelySubtag returns a String that's language tag like, but uses underscores instead of hyphens to separate subtags. bug: 15876704 Change-Id: I6c7d289c4b725a83900e38dd5bbed026afd9ac4e
* | | Merge "Fix SimpleDateFormatTest when run outside California"Neil Fuller2014-07-291-325/+282
|\ \ \
| * | | Fix SimpleDateFormatTest when run outside CaliforniaNeil Fuller2014-07-301-325/+282
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the device was set to a timezone besides America/Los_Angeles the test would fail. Under cts-tradefed the SimpleDateFormat was being created at class load time (using the device default) and then the timezone default was being set to America/Los_Angeles during setUp(). Contains refactoring to remove nested test case and reformatting. Change-Id: I26a7a2c6ce0d6205cf6d20c9b4cbebf550da19ce
* | | Merge "Make some DateFormatSymbols fields private"Neil Fuller2014-07-291-2/+2
|\ \ \
| * | | Make some DateFormatSymbols fields privateNeil Fuller2014-07-311-2/+2
|/ / / | | | | | | | | | | | | | | | | | | | | | locale and zoneStrings are not accessed outside of DateFormatSymbols. Bug: 16502916 Change-Id: I67907cf6b0ebc2e6a2dd0bfe8728ba6d0487d5a3
* | | Merge "Fix the OOME in ScannerParseLargeFileBenchmarkTest"Neil Fuller2014-07-293-62/+93
|\ \ \
| * | | Fix the OOME in ScannerParseLargeFileBenchmarkTestNeil Fuller2014-07-303-62/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Scanner had no mechanism for recovering buffer space it didn't need. Now, if the buffer is more than 50% full of ignorable characters the remaining characters are shuffled to the beginning to recover space. For most expected usecases this means that the buffer will stay 1k and contain up to 512 characters of useful data. A growable, circular character buffer could have been introduced to avoid the copy but is not worth the effort. Previously the buffer would double in size until the data or memory was exhausted, and each read would also double in size to fill the empty half of the buffer. This was fine providing the input could fit in memory. On top of that the 1k, 2k, 4k, etc. buffer was repeatedly turned into a String and passed to the (native) matcher, and then the matcher was told to ignore more than half of it. As a consequence of keeping the buffer a fixed size (and only filling 50% of it at a time), this change may cause a performance regression: for most usecases where delimiters are closer together than 512 bytes, reads after the first will now usually be 512 bytes and not the 1k, 2k, 4k, etc. it was previously. Having fixed the test so it doesn't OOM, the test now takes 6 minutes to pass on host and so is unsuitable for inclusion in CTS tests and so is being suppressed. This change also includes so tidy up changes to the test and the Scanner class. The implementation could no doubt be improved but the API makes it inherently slow. It would be surprising if anybody uses the Scanner class on Android with so many better alternatives. Bug: 14865710 Change-Id: I40a7fc0c2bfaf6db4e42108efe417303e76bde24