History log of /libcore/luni/src/main/java/java/lang/RealToString.java
Revision Date Author Comments
30ae871abe462723f78b2981178a9d5a73f5e129 11-Jan-2011 Elliott Hughes <enh@google.com> Fix Double.toString.

I accidentally changed unsigned division to signed division here in gingerbread.

Bug: 3238333
Change-Id: I72cb80adbfc12082a222310929c90f8740b568da
620666783267ed3a6f7f2b4309a66f1c1f18de53 02-Sep-2010 Elliott Hughes <enh@google.com> Make StringBuilder.append(float) and append(double) 2x faster.

Actually a bit more than 2x --- 40us down to 15us for "small" (but non-trivial)
floats.

Also StringBuffer.

[cherry-pick of 0d041e2cea528066bb87c7891ef746b977f18b9d from dalvik-dev into gingerbread]

Bug: 2243821
10a17e23b22dc0ff6363d15bce67d668b6d44dd0 27-Aug-2010 Elliott Hughes <enh@google.com> Speed up Float.toString (and Double.toString).

The special cases (NaN, infinities, and zeros) go from 30us to 1us.

There are basically three other paths through the code, depending on the value:

The small case goes from 60us to 30us.
The medium case goes from 70us to 31us.
The large case goes from 100us to 50us.

There's way less garbage produced, and now we're using StringBuilder, we're
in a position to take advantage of future optimization of
StringBuilder.append(int).

[cherry-pick of 2164031488f9788e5ee9ad2545b3aec34b65e06c from dalvik-dev to gingerbread]

Bug: 2934304
706de1164836051ab31cc69eb77a6bba1a723896 27-Aug-2010 Elliott Hughes <enh@google.com> Minor tidy-up of Float.toString and Double.toString.

This patch looks larger than it is. I've moved duplicated constants out of
Math and StrictMath and into Float and Double where they belong. I've also
moved a table out of BigDecimal so I can reuse it in NumberConverter, which
I've renamed to RealToString.

The main active ingredient here is that there's no longer StringBuilder usage
to prepend '-'. This actually brings us down from 74ns to 62ns for an easy
case like 123.45f.

[cherry-pick of 910106e29fe98f14b2c36312a7498287273ba826 from dalvik-dev to gingerbread; plus build fix]

Bug: 2934304
Change-Id: Id79a6fb0d739e673b7428d240fc48bdae9b8bb43