summaryrefslogtreecommitdiff
path: root/deps/v8/src/fast-dtoa.h
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2010-09-22 11:14:58 -0700
committerRyan Dahl <ry@tinyclouds.org>2010-09-22 19:20:06 -0700
commit4df999f85f2cb7ac687d3281af012d9df9699657 (patch)
treefebaced149ed8843bdbe3f3a8759fdf137c809ec /deps/v8/src/fast-dtoa.h
parent893ebe72305ea599c32c99e3ca4fda050ae7c983 (diff)
downloadnode-4df999f85f2cb7ac687d3281af012d9df9699657.tar.gz
Revert "Upgrade V8 to 2.4.5"
This reverts commit e2274412488ab310decb8494ab41009342b3c2f6. Build fails on mac
Diffstat (limited to 'deps/v8/src/fast-dtoa.h')
-rw-r--r--deps/v8/src/fast-dtoa.h47
1 files changed, 11 insertions, 36 deletions
diff --git a/deps/v8/src/fast-dtoa.h b/deps/v8/src/fast-dtoa.h
index 94c22ecd7..4403a7502 100644
--- a/deps/v8/src/fast-dtoa.h
+++ b/deps/v8/src/fast-dtoa.h
@@ -31,52 +31,27 @@
namespace v8 {
namespace internal {
-enum FastDtoaMode {
- // Computes the shortest representation of the given input. The returned
- // result will be the most accurate number of this length. Longer
- // representations might be more accurate.
- FAST_DTOA_SHORTEST,
- // Computes a representation where the precision (number of digits) is
- // given as input. The precision is independent of the decimal point.
- FAST_DTOA_PRECISION
-};
-
// FastDtoa will produce at most kFastDtoaMaximalLength digits. This does not
// include the terminating '\0' character.
static const int kFastDtoaMaximalLength = 17;
// Provides a decimal representation of v.
-// The result should be interpreted as buffer * 10^(point - length).
-//
-// Precondition:
-// * v must be a strictly positive finite double.
-//
+// v must be a strictly positive finite double.
// Returns true if it succeeds, otherwise the result can not be trusted.
// There will be *length digits inside the buffer followed by a null terminator.
-// If the function returns true and mode equals
-// - FAST_DTOA_SHORTEST, then
-// the parameter requested_digits is ignored.
-// The result satisfies
-// v == (double) (buffer * 10^(point - length)).
-// The digits in the buffer are the shortest representation possible. E.g.
-// if 0.099999999999 and 0.1 represent the same double then "1" is returned
-// with point = 0.
-// The last digit will be closest to the actual v. That is, even if several
-// digits might correctly yield 'v' when read again, the buffer will contain
-// the one closest to v.
-// - FAST_DTOA_PRECISION, then
-// the buffer contains requested_digits digits.
-// the difference v - (buffer * 10^(point-length)) is closest to zero for
-// all possible representations of requested_digits digits.
-// If there are two values that are equally close, then FastDtoa returns
-// false.
-// For both modes the buffer must be large enough to hold the result.
+// If the function returns true then
+// v == (double) (buffer * 10^(point - length)).
+// The digits in the buffer are the shortest representation possible: no
+// 0.099999999999 instead of 0.1.
+// The last digit will be closest to the actual v. That is, even if several
+// digits might correctly yield 'v' when read again, the buffer will contain the
+// one closest to v.
+// The variable 'sign' will be '0' if the given number is positive, and '1'
+// otherwise.
bool FastDtoa(double d,
- FastDtoaMode mode,
- int requested_digits,
Vector<char> buffer,
int* length,
- int* decimal_point);
+ int* point);
} } // namespace v8::internal