Implements some math functions for faster performance

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 "Remove memory leak."
Remove memory leak.

Call EndIteration in IterationHandle destructor. This will free the
memory allocated for cookie in StartIteration.

Change-Id: I12c861c7da2437113c669a0c7f41b5585ed94c72
Stop keeping iteration prefix around.

zip archive makes a copy of a prefix and maintains it's lifecycle now.

Change-Id: I55adc4c9eefee96b80038fb7dbb95dbe498d5a73
Merge "Stop keeping iteration prefix around."
Variants are case sensitive.

Yet we were incorrectly upper-casing them inside forLanguageTag.

bug: 16811867
Change-Id: I088161c4c7769908f35b9f2b7d945fb1cd1fd7ac
Merge "Variants are case sensitive."
Merge "Implements some math functions for faster performance"
Fix TimeZone.getAvailableIDs(int).

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 "Fix TimeZone.getAvailableIDs(int)."
Don't allow Class.class.getDeclaredConstructor().setAccessible().

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 "Don't allow Class.class.getDeclaredConstructor().setAccessible()."
Implements some StrictMath functions for improved performance.

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 "Implements some StrictMath functions for improved performance."
Make parameter name match comments for sdk build.

Change-Id: I4dba2cfe07cf0c5ce28a0ff4540aa68d9c664a2a
Merge "Make parameter name match comments for sdk build."
Allow Calendar.getInstance to be called with a null Locale.

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 "Allow Calendar.getInstance to be called with a null Locale."
Fix parsing of fractional seconds.

We were just parsing them as millisecond values, which is wrong.
".1" fractional second is 100 milliseconds (we were parsing it as 1 ms),
and ".765432" fractional seconds is 765 milliseconds (we were
parsing it as 765432ms.

In most cases, this was hidden by the fact that we were formatting
such values incorrectly as well.

bug: 16969112
Change-Id: Id287684f78691090ac4a6c3029d7909f2c1e1310
Merge "Fix parsing of fractional seconds."