History log of /libcore/ojluni/src/main/java/java/lang/Character.java
Revision Date Author Comments
a636fa97391c782e1249891c7c5a513bc2a384e1 15-Feb-2018 Vladimir Marko <vmarko@google.com> Add Class.getPrimitiveClass().

And revert workarounds for initialization of
java.lang.<boxed-primitive-type>.TYPE
to use the Class.getPrimitiveClass() just like upstream;
source files for Boolean, Double, Float, Short and Void
are now identical to OpenJDK8u121-b13.

Companion art/ change:
https://android-review.googlesource.com/619306

Test: m test-art-host-gtest
Test: tstrunner.py --host --optimizing
Test: Pixel 2 XL boots.
Bug: 73346078
Change-Id: I4490b80ecfec80b1369da15bf393ff95b8d30a3a
e09f203cc6322441d0b1d3c75fe1e191d1ed0386 13-Feb-2018 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix incorrect reference in java.lang.Character

Test: make docs
Bug: 68154037
Change-Id: Iefb64fc2c09cfe76fb9136fc2a12bca578ed7883
aac8234b40ade7f8e4c27e571e4ee2ba32051fbe 11-Oct-2017 Pete Gillin <peteg@google.com> Add some Android-changed markers to boxed primitive types.

This change adds or clarifies some markers of changes relative to
OpenJDK 8u121-b13.

N.B. There are still unmarked changes in Character.java.

Test: make checkbuild
Change-Id: I9cd8f2e8e9ee042cd6ac2dff2b4531651f5ced64
fa5b565a3f6c6d7cbd6106ee8d360304c3a939a3 17-Feb-2017 Igor Murashkin <iam@google.com> jni: Switch to @FastNative for all JNI functions.

Switches all (248) methods that previously used !bang JNI in art/libcore
to all use @FastNative.

As a nice benefit, this should be about 1.5x faster than before for those method calls.
This measures out to a 3% startup time improvement for system_server.

Test: make test-art-host
Bug: 34955272
Change-Id: I0881f401c7660c79f275235362777bfa58241deb
bc19426f72ce4d06523733634fc01398054346cb 03-Feb-2017 Przemyslaw Szczepaniak <pszczepaniak@google.com> Javadoc changes from openjdk8u112

Test: make -j 32 docs
Bug: 31028374
Change-Id: I5388664f6a3ed0fcff3cd0a695f698ed95eee3e7
2121c3aa0a5d5d5a08b5d9ed24a459b309d94568 28-Jul-2016 Narayan Kamath <narayan@google.com> Character: Add special case for case folding ASCII codepoints.

Makes things between 5x faster (String.length() == 2) and 2.5x faster
(String.length() = 512k).

Results from the relevant benchmarks in CaseMappingBenchmark, measured
on an aosp_angler-userdebug device.

BEFORE:
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=29.33, 1st qu.=29.69, median=30.31, mean=30.13, 3rd qu.=30.43, max=30.85
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=167.03, 1st qu.=167.52, median=167.98, mean=168.83, 3rd qu.=169.97, max=173.85
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=405.06, 1st qu.=411.69, median=435.16, mean=445.40, 3rd qu.=478.26, max=488.99
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=366.95, 1st qu.=370.45, median=373.08, mean=380.19, 3rd qu.=378.89, max=436.75
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=2268.15, 1st qu.=2270.07, median=2290.65, mean=2292.02, 3rd qu.=2315.40, max=2327.49
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=4428.02, 1st qu.=4472.99, median=4519.30, mean=4519.92, 3rd qu.=4570.19, max=4607.35
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=3890.73, 1st qu.=3951.55, median=4014.90, mean=4096.84, 3rd qu.=4218.43, max=4567.76
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=35690.86, 1st qu.=35824.60, median=35900.18, mean=35981.11, 3rd qu.=36147.33, max=36455.45
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=70513.94, 1st qu.=71086.43, median=72158.54, mean=72223.58, 3rd qu.=73076.69, max=74707.14
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=57307.61, 1st qu.=58459.23, median=59048.19, mean=59167.31, 3rd qu.=60155.00, max=60359.01
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=36841180.78, 1st qu.=37000630.38, median=37142450.15, mean=37691891.48, 3rd qu.=38551476.34, max=39473916.14
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=74462017.10, 1st qu.=75833598.15, median=76662149.75, mean=76405214.68, 3rd qu.=76823769.02, max=78451533.67
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=60461248.56, 1st qu.=60817389.36, median=61201595.22, mean=61526397.40, 3rd qu.=61940429.61, max=63920845.00
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=41.46, 1st qu.=41.55, median=41.76, mean=41.94, 3rd qu.=42.32, max=42.97
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=404.06, 1st qu.=413.38, median=435.10, mean=443.76, 3rd qu.=480.60, max=487.89
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=195.31, 1st qu.=199.50, median=202.54, mean=202.51, 3rd qu.=206.54, max=208.45
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=486.76, 1st qu.=514.60, median=533.90, mean=532.89, 3rd qu.=548.47, max=584.56
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=5172.51, 1st qu.=5223.29, median=5286.72, mean=5314.42, 3rd qu.=5411.71, max=5526.16
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=2480.97, 1st qu.=2492.86, median=2516.02, mean=2526.47, 3rd qu.=2565.40, max=2585.49
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=3931.96, 1st qu.=3980.45, median=4063.81, mean=4107.68, 3rd qu.=4085.00, max=4743.90
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=74818.73, 1st qu.=75630.06, median=76430.63, mean=76364.52, 3rd qu.=76938.18, max=77972.01
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=39525.59, 1st qu.=39674.51, median=39736.68, mean=39905.31, 3rd qu.=40165.96, max=40706.11
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=71553.80, 1st qu.=71903.59, median=72500.07, mean=73109.80, 3rd qu.=74679.62, max=74806.78
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=74578900.63, 1st qu.=74946573.83, median=76355137.33, mean=76343448.14, 3rd qu.=77729727.63, max=78529524.29
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=53752902.31, 1st qu.=54508879.46, median=54837568.30, mean=55070280.74, 3rd qu.=55629185.94, max=56985816.50
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=64566357.67, 1st qu.=64789150.65, median=65193903.78, mean=65287320.85, 3rd qu.=65439559.50, max=66975228.29

AFTER:
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=29.50, 1st qu.=29.64, median=29.83, mean=29.87, 3rd qu.=30.15, max=30.30
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=52.73, 1st qu.=53.21, median=53.91, mean=53.79, 3rd qu.=54.36, max=54.45
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=228.74, 1st qu.=230.99, median=233.61, mean=244.29, 3rd qu.=248.56, max=307.34
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=246.12, 1st qu.=248.73, median=253.27, mean=268.97, 3rd qu.=294.01, max=300.26
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=462.39, 1st qu.=467.24, median=473.52, mean=471.96, 3rd qu.=475.60, max=481.23
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=2523.50, 1st qu.=2548.12, median=2562.96, mean=2574.52, 3rd qu.=2596.62, max=2653.68
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=1620.11, 1st qu.=1659.76, median=1693.29, mean=1689.57, 3rd qu.=1725.38, max=1744.43
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=6829.39, 1st qu.=6837.58, median=6958.84, mean=6931.43, 3rd qu.=7006.52, max=7058.49
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=37175.86, 1st qu.=38590.32, median=39973.00, mean=39766.09, 3rd qu.=40767.48, max=41835.71
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=25269.69, 1st qu.=25640.28, median=25860.75, mean=26025.64, 3rd qu.=26554.05, max=26729.05
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=7173773.72, 1st qu.=7243974.33, median=7279164.88, mean=7308423.63, 3rd qu.=7367634.38, max=7555233.88
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=39979613.64, 1st qu.=40416298.99, median=41803666.55, mean=41670501.80, 3rd qu.=42319604.58, max=44349411.78
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=25571413.96, 1st qu.=26046572.32, median=26167446.79, mean=26249992.58, 3rd qu.=26349891.47, max=27474270.67
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=41.10, 1st qu.=41.21, median=41.37, mean=41.36, 3rd qu.=41.52, max=41.60
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=287.67, 1st qu.=289.43, median=293.33, mean=305.43, 3rd qu.=326.01, max=349.69
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=76.77, 1st qu.=77.08, median=78.36, mean=78.31, 3rd qu.=79.60, max=80.06
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=290.54, 1st qu.=292.96, median=297.54, mean=303.62, 3rd qu.=309.00, max=349.45
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=2707.35, 1st qu.=2737.79, median=2770.07, mean=2778.04, 3rd qu.=2829.40, max=2846.53
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=647.52, 1st qu.=652.92, median=665.31, mean=664.16, 3rd qu.=671.39, max=688.44
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=2021.43, 1st qu.=2033.67, median=2048.96, mean=2061.61, 3rd qu.=2081.64, max=2155.44
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=41283.61, 1st qu.=41952.42, median=42908.06, mean=42727.25, 3rd qu.=43374.28, max=43670.23
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=9655.72, 1st qu.=9746.66, median=9880.92, mean=9870.98, 3rd qu.=9987.42, max=10031.96
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=29421.76, 1st qu.=29604.36, median=30114.47, mean=30175.07, 3rd qu.=30432.06, max=31606.85
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=43452037.44, 1st qu.=44075696.74, median=44410247.09, mean=44611581.35, 3rd qu.=45077490.18, max=46559968.00
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=10173340.94, 1st qu.=10281587.15, median=10416552.27, mean=10475390.19, 3rd qu.=10665954.83, max=10922523.97
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=30191040.48, 1st qu.=30827827.89, median=31024588.42, mean=31420622.90, 3rd qu.=32222205.19, max=33431317.29

bug: 30455775
Test: StringCaseMapperBenchmark, CharacterTest, StringTest

(cherry picked from commit c7d9fcb197e503e8577c83500efef0b062856edf)

Change-Id: Ic8f36ac88ab1976070ed121169e1564f0eab1846
dfb36ac5c1f20a0cfa02e37119187b1b13ccd533 28-Jul-2016 Narayan Kamath <narayan@google.com> Character: Add special case for case folding ASCII codepoints.

Makes things between 5x faster (String.length() == 2) and 2.5x faster
(String.length() = 512k).

Results from the relevant benchmarks in CaseMappingBenchmark, measured
on an aosp_angler-userdebug device.

BEFORE:
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=29.33, 1st qu.=29.69, median=30.31, mean=30.13, 3rd qu.=30.43, max=30.85
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=167.03, 1st qu.=167.52, median=167.98, mean=168.83, 3rd qu.=169.97, max=173.85
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=405.06, 1st qu.=411.69, median=435.16, mean=445.40, 3rd qu.=478.26, max=488.99
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=366.95, 1st qu.=370.45, median=373.08, mean=380.19, 3rd qu.=378.89, max=436.75
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=2268.15, 1st qu.=2270.07, median=2290.65, mean=2292.02, 3rd qu.=2315.40, max=2327.49
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=4428.02, 1st qu.=4472.99, median=4519.30, mean=4519.92, 3rd qu.=4570.19, max=4607.35
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=3890.73, 1st qu.=3951.55, median=4014.90, mean=4096.84, 3rd qu.=4218.43, max=4567.76
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=35690.86, 1st qu.=35824.60, median=35900.18, mean=35981.11, 3rd qu.=36147.33, max=36455.45
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=70513.94, 1st qu.=71086.43, median=72158.54, mean=72223.58, 3rd qu.=73076.69, max=74707.14
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=57307.61, 1st qu.=58459.23, median=59048.19, mean=59167.31, 3rd qu.=60155.00, max=60359.01
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=36841180.78, 1st qu.=37000630.38, median=37142450.15, mean=37691891.48, 3rd qu.=38551476.34, max=39473916.14
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=74462017.10, 1st qu.=75833598.15, median=76662149.75, mean=76405214.68, 3rd qu.=76823769.02, max=78451533.67
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=60461248.56, 1st qu.=60817389.36, median=61201595.22, mean=61526397.40, 3rd qu.=61940429.61, max=63920845.00
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=41.46, 1st qu.=41.55, median=41.76, mean=41.94, 3rd qu.=42.32, max=42.97
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=404.06, 1st qu.=413.38, median=435.10, mean=443.76, 3rd qu.=480.60, max=487.89
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=195.31, 1st qu.=199.50, median=202.54, mean=202.51, 3rd qu.=206.54, max=208.45
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=486.76, 1st qu.=514.60, median=533.90, mean=532.89, 3rd qu.=548.47, max=584.56
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=5172.51, 1st qu.=5223.29, median=5286.72, mean=5314.42, 3rd qu.=5411.71, max=5526.16
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=2480.97, 1st qu.=2492.86, median=2516.02, mean=2526.47, 3rd qu.=2565.40, max=2585.49
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=3931.96, 1st qu.=3980.45, median=4063.81, mean=4107.68, 3rd qu.=4085.00, max=4743.90
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=74818.73, 1st qu.=75630.06, median=76430.63, mean=76364.52, 3rd qu.=76938.18, max=77972.01
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=39525.59, 1st qu.=39674.51, median=39736.68, mean=39905.31, 3rd qu.=40165.96, max=40706.11
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=71553.80, 1st qu.=71903.59, median=72500.07, mean=73109.80, 3rd qu.=74679.62, max=74806.78
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=74578900.63, 1st qu.=74946573.83, median=76355137.33, mean=76343448.14, 3rd qu.=77729727.63, max=78529524.29
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=53752902.31, 1st qu.=54508879.46, median=54837568.30, mean=55070280.74, 3rd qu.=55629185.94, max=56985816.50
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=64566357.67, 1st qu.=64789150.65, median=65193903.78, mean=65287320.85, 3rd qu.=65439559.50, max=66975228.29

AFTER:
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=29.50, 1st qu.=29.64, median=29.83, mean=29.87, 3rd qu.=30.15, max=30.30
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=52.73, 1st qu.=53.21, median=53.91, mean=53.79, 3rd qu.=54.36, max=54.45
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=228.74, 1st qu.=230.99, median=233.61, mean=244.29, 3rd qu.=248.56, max=307.34
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=246.12, 1st qu.=248.73, median=253.27, mean=268.97, 3rd qu.=294.01, max=300.26
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=462.39, 1st qu.=467.24, median=473.52, mean=471.96, 3rd qu.=475.60, max=481.23
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=2523.50, 1st qu.=2548.12, median=2562.96, mean=2574.52, 3rd qu.=2596.62, max=2653.68
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=1620.11, 1st qu.=1659.76, median=1693.29, mean=1689.57, 3rd qu.=1725.38, max=1744.43
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=6829.39, 1st qu.=6837.58, median=6958.84, mean=6931.43, 3rd qu.=7006.52, max=7058.49
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=37175.86, 1st qu.=38590.32, median=39973.00, mean=39766.09, 3rd qu.=40767.48, max=41835.71
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=25269.69, 1st qu.=25640.28, median=25860.75, mean=26025.64, 3rd qu.=26554.05, max=26729.05
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=7173773.72, 1st qu.=7243974.33, median=7279164.88, mean=7308423.63, 3rd qu.=7367634.38, max=7555233.88
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=39979613.64, 1st qu.=40416298.99, median=41803666.55, mean=41670501.80, 3rd qu.=42319604.58, max=44349411.78
Experiment {instrument=runtime, benchmarkMethod=timeToLowerCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=25571413.96, 1st qu.=26046572.32, median=26167446.79, mean=26249992.58, 3rd qu.=26349891.47, max=27474270.67
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=EMPTY}}
runtime(ns): min=41.10, 1st qu.=41.21, median=41.37, mean=41.36, 3rd qu.=41.52, max=41.60
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER2}}
runtime(ns): min=287.67, 1st qu.=289.43, median=293.33, mean=305.43, 3rd qu.=326.01, max=349.69
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER2}}
runtime(ns): min=76.77, 1st qu.=77.08, median=78.36, mean=78.31, 3rd qu.=79.60, max=80.06
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED2}}
runtime(ns): min=290.54, 1st qu.=292.96, median=297.54, mean=303.62, 3rd qu.=309.00, max=349.45
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER32}}
runtime(ns): min=2707.35, 1st qu.=2737.79, median=2770.07, mean=2778.04, 3rd qu.=2829.40, max=2846.53
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER32}}
runtime(ns): min=647.52, 1st qu.=652.92, median=665.31, mean=664.16, 3rd qu.=671.39, max=688.44
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED32}}
runtime(ns): min=2021.43, 1st qu.=2033.67, median=2048.96, mean=2061.61, 3rd qu.=2081.64, max=2155.44
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER512}}
runtime(ns): min=41283.61, 1st qu.=41952.42, median=42908.06, mean=42727.25, 3rd qu.=43374.28, max=43670.23
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER512}}
runtime(ns): min=9655.72, 1st qu.=9746.66, median=9880.92, mean=9870.98, 3rd qu.=9987.42, max=10031.96
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED512}}
runtime(ns): min=29421.76, 1st qu.=29604.36, median=30114.47, mean=30175.07, 3rd qu.=30432.06, max=31606.85
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=LOWER_512_K}}
runtime(ns): min=43452037.44, 1st qu.=44075696.74, median=44410247.09, mean=44611581.35, 3rd qu.=45077490.18, max=46559968.00
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=UPPER_512_K}}
runtime(ns): min=10173340.94, 1st qu.=10281587.15, median=10416552.27, mean=10475390.19, 3rd qu.=10665954.83, max=10922523.97
Experiment {instrument=runtime, benchmarkMethod=timeToUpperCase_US, vm=default, parameters={s=MIXED_512_K}}
runtime(ns): min=30191040.48, 1st qu.=30827827.89, median=31024588.42, mean=31420622.90, 3rd qu.=32222205.19, max=33431317.29

bug: 30455775
Test: StringCaseMapperBenchmark, CharacterTest, StringTest
Change-Id: I960fd7bd97c2a4e16598cea51ca0683b6e5856ef
fd7acb87f4d0321326abe4c8a529f6625435ed87 16-Jun-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Restore fix for SURROGATES_AREA UnicodeBlock

SURROGATES_AREA is deprecated and shouldn't be
mapped.

Bug: 28666126
Change-Id: Ic4b521ec48321b3ddff8ce5eee4f4746ea74bef2
(cherry picked from commit 945919f928f7d7ec26b4fcb57c77253d67e3553c)
945919f928f7d7ec26b4fcb57c77253d67e3553c 16-Jun-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Restore fix for SURROGATES_AREA UnicodeBlock

SURROGATES_AREA is deprecated and shouldn't be
mapped.

Bug: 28666126
Change-Id: Ic4b521ec48321b3ddff8ce5eee4f4746ea74bef2
25fbd653a83f3a22235eb61e6e34f46ef3e990b7 16-Jun-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Port openJdk8 java.lang package, part 1.

Bug: 28666126

Change-Id: I9138244ba1f30ec32b20c1c6394392742ffc3b2c
3fdfc1f28f4b42ed4a6fb1a1111942c8134fd9f6 07-Apr-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Add Character#digit(int, int) fastpath

Added a java fastpath for common cases in the
Character#digit(int, int) method. Improves performance
of conversions from string to numeric types.

Bug: 28008616
Change-Id: I28aacba520c3f51a5cb5a59e51d4ae593daa551c
(cherry picked from commit cff29861633f2d4907b79644dace4a6790982faf)
cff29861633f2d4907b79644dace4a6790982faf 07-Apr-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Add Character#digit(int, int) fastpath

Added a java fastpath for common cases in the
Character#digit(int, int) method. Improves performance
of conversions from string to numeric types.

Bug: 28008616
Change-Id: I28aacba520c3f51a5cb5a59e51d4ae593daa551c
8070af12e129cf6c9c82cf8dd3116aa20a2ebd6d 01-Apr-2016 Yi Kong <yikong@google.com> Port max,min,sum,hashCode,BYTES for basic data types

We implemented these methods/fields for some basic data types, we
should do the same for all the rest for consistency.

Bug: 27960078
Change-Id: I94711ee8d437e932c423579cd7146d63cbb3c615
(cherry picked from commit cf86f3319e738c76c5e97ad95bb8a4e30654a787)
cf86f3319e738c76c5e97ad95bb8a4e30654a787 01-Apr-2016 Yi Kong <yikong@google.com> Port max,min,sum,hashCode,BYTES for basic data types

We implemented these methods/fields for some basic data types, we
should do the same for all the rest for consistency.

Bug: 27960078
Change-Id: I94711ee8d437e932c423579cd7146d63cbb3c615
cbcc3cae4177272ae02a87d50c73ba5391f61fc0 23-Dec-2015 Shubham Ajmera <shubhamajmera@google.com> Fix java.lang.Character

Fixed Character_UnicodeBlockTest#test_forNameLjava_lang_StringExceptions
test. A new constructor has been introduced to avoid mapping of deprecated
UnicodeBlocks.

Bug: 26140229
Change-Id: I502b48c1b4b4a0a7f05434b4bbe5bca6e14acdbf
2c87ad3a45cecf9e344487cad1abfdebe79f2c7c 21-Dec-2015 Narayan Kamath <narayan@google.com> Update file headers.

Change-Id: I8149f41585768a1a4b72ab7bb4a1452376c05cc2
dcdf8113bed8181e2210b1379615cf772ce9b7fa 13-Nov-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> java.lang.Character implemented using icu4c

Removed CharacterData* and CharacterName classes.
+ bugfixes from mnc

Bug: 25442844
Change-Id: I8c20cdf32ca3530dc425c8117c637769463c1f93
(cherry picked from commit 2614ae16db0daf146227484c8e712dcbcc11e964)
2614ae16db0daf146227484c8e712dcbcc11e964 13-Nov-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> java.lang.Character implemented using icu4c DO NOT MERGE

Removed CharacterData* and CharacterName classes.
+ bugfixes from mnc

No longer breaks the build.

Bug: 25442844
Change-Id: I8c20cdf32ca3530dc425c8117c637769463c1f93
a5f312ce8bab81a5e658f4603874c98d95844c43 12-Nov-2015 Qiwen Zhao <zhao@google.com> break build.

Revert "java.lang.Character implemented using icu4c DO NOT MERGE"

This reverts commit c307caca005e95d33684a5d0c24d85ff2428c72a.

Change-Id: I1c8b6f7ba7b28d578b8081c409d6b8a774918284
c307caca005e95d33684a5d0c24d85ff2428c72a 03-Nov-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> java.lang.Character implemented using icu4c DO NOT MERGE

Removed CharacterData* and CharacterName classes.
+ bugfixes from mnc

Bug: 25442844
Change-Id: Iec64a29a6d2d70a5f4fcc1ada2c2446339965880
865b9d2c38284a486fc8608d3193f5b846822595 15-Apr-2015 Piotr Jastrzebski <haaawk@google.com> Use OpenJdk implementation of java.util.regex.*

Change-Id: I046bb48e645a717c8404d9fad7657157f716d49a
51b1b6997fd3f980076b8081f7f1165ccc2a4008 16-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and
src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes
directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to
libcore/ojluni/src/main/native:
jdk/src/solaris/native/java/io/canonicalize_md.c
build/linux-amd64/include/classfile_constants.h
jdk/src/share/native/java/net/DatagramPacket.c
jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c
jdk/src/share/native/java/lang/Double.c
jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h
jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c
jdk/src/solaris/native/java/io/FileDescriptor_md.c
jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c
jdk/src/share/native/java/io/FileInputStream.c
jdk/src/solaris/native/sun/nio/ch/FileKey.c
jdk/src/solaris/native/java/io/FileOutputStream_md.c
jdk/src/solaris/native/java/io/FileSystem_md.c
jdk/src/share/native/java/lang/Float.c
jdk/src/share/native/java/net/Inet4Address.c
jdk/src/solaris/native/java/net/Inet4AddressImpl.c
jdk/src/share/native/java/net/Inet6Address.c
jdk/src/solaris/native/java/net/Inet6AddressImpl.c
jdk/src/share/native/java/net/InetAddress.c
jdk/src/solaris/native/java/net/InetAddressImplFactory.c
jdk/src/share/native/java/io/io_util.c
jdk/src/solaris/native/sun/nio/ch/IOUtil.c
jdk/src/share/native/java/io/io_util.h
jdk/src/solaris/native/java/io/io_util_md.c
jdk/src/solaris/native/java/io/io_util_md.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/java_io_FileDescriptor.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileInputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileOutputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_ObjectStreamClass.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_UnixFileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Double.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Float.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Integer.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Long.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Runtime.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Shutdown.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_StrictMath.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_String.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_System.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Thread.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Throwable.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_DatagramPacket.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddress.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddressImplFactory.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_NetworkInterface.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainDatagramSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketInputStream.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOptions.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOutputStream.h
jdk/src/share/native/java/lang/java_props.h
jdk/src/solaris/native/java/lang/java_props_md.c
jdk/src/share/native/java/util/zip/Adler32.c as java_util_zip_Adler32.c
jdk/src/share/native/java/util/zip/CRC32.c as java_util_zip_CRC32.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_CRC32.h
jdk/src/share/native/java/util/zip/Deflater.c as java_util_zip_Deflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Deflater.h
jdk/src/share/native/java/util/zip/Inflater.c as java_util_zip_Inflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Inflater.h
jdk/src/share/native/java/util/zip/ZipFile.c as java_util_zip_ZipFile.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_ZipFile.h
jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h
jdk/src/share/native/common/jlong.h
jdk/src/solaris/native/common/jlong_md.h
jdk/src/share/native/common/jni_util.c
jdk/src/share/native/common/jni_util.h
jdk/src/solaris/native/common/jni_util_md.c
jdk/src/share/javavm/export/jvm.h
jdk/src/solaris/javavm/export/jvm_md.h
jdk/src/solaris/native/java/net/linux_close.c
jdk/src/share/native/sun/misc/NativeSignalHandler.c
jdk/src/solaris/native/sun/nio/ch/NativeThread.c
jdk/src/share/native/java/net/net_util.c
jdk/src/share/native/java/net/net_util.h
jdk/src/solaris/native/java/net/net_util_md.c
jdk/src/solaris/native/java/net/net_util_md.h
jdk/src/solaris/native/java/net/NetworkInterface.c
jdk/src/share/native/sun/nio/ch/nio.h
jdk/src/solaris/native/sun/nio/ch/nio_util.h
jdk/src/share/native/java/io/ObjectStreamClass.c
jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c
jdk/src/solaris/native/java/net/PlainSocketImpl.c
jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c
jdk/src/share/native/java/lang/Runtime.c
jdk/src/share/native/java/lang/Shutdown.c
jdk/src/share/native/sun/misc/Signal.c
jdk/src/solaris/native/java/net/SocketInputStream.c
jdk/src/solaris/native/java/net/SocketOutputStream.c
jdk/src/share/native/java/lang/StrictMath.c
jdk/src/share/native/java/lang/String.c
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_NativeSignalHandler.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_Signal.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/sun_net_spi_DefaultProxySelector.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileChannelImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileDispatcherImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileKey.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOStatus.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOUtil.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_NativeThread.h
jdk/src/share/native/java/lang/System.c
jdk/src/share/native/java/lang/Thread.c
jdk/src/share/native/java/lang/Throwable.c
jdk/src/solaris/native/java/io/UnixFileSystem_md.c
jdk/src/solaris/native/java/lang/UNIXProcess_md.c
jdk/src/share/native/java/util/zip/zip_util.c
jdk/src/share/native/java/util/zip/zip_util.h

Change-Id: Ib237df4e1b7b5b4d9f12e74d189e6ec9eed3c31d