summaryrefslogtreecommitdiff
path: root/deps/v8/src/runtime/runtime-numbers.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/runtime/runtime-numbers.cc')
-rw-r--r--deps/v8/src/runtime/runtime-numbers.cc15
1 files changed, 8 insertions, 7 deletions
diff --git a/deps/v8/src/runtime/runtime-numbers.cc b/deps/v8/src/runtime/runtime-numbers.cc
index 643e1b7edb..2eac95923f 100644
--- a/deps/v8/src/runtime/runtime-numbers.cc
+++ b/deps/v8/src/runtime/runtime-numbers.cc
@@ -25,7 +25,7 @@ RUNTIME_FUNCTION(Runtime_StringToNumber) {
HandleScope handle_scope(isolate);
DCHECK_EQ(1, args.length());
CONVERT_ARG_HANDLE_CHECKED(String, subject, 0);
- return *String::ToNumber(subject);
+ return *String::ToNumber(isolate, subject);
}
@@ -40,15 +40,16 @@ RUNTIME_FUNCTION(Runtime_StringParseInt) {
Handle<String> subject;
ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, subject,
Object::ToString(isolate, string));
- subject = String::Flatten(subject);
+ subject = String::Flatten(isolate, subject);
// Convert {radix} to Int32.
if (!radix->IsNumber()) {
- ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, radix, Object::ToNumber(radix));
+ ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, radix,
+ Object::ToNumber(isolate, radix));
}
int radix32 = DoubleToInt32(radix->Number());
if (radix32 != 0 && (radix32 < 2 || radix32 > 36)) {
- return isolate->heap()->nan_value();
+ return ReadOnlyRoots(isolate).nan_value();
}
double result = StringToInt(isolate, subject, radix32);
@@ -62,9 +63,9 @@ RUNTIME_FUNCTION(Runtime_StringParseFloat) {
DCHECK_EQ(1, args.length());
CONVERT_ARG_HANDLE_CHECKED(String, subject, 0);
- double value =
- StringToDouble(isolate->unicode_cache(), subject, ALLOW_TRAILING_JUNK,
- std::numeric_limits<double>::quiet_NaN());
+ double value = StringToDouble(isolate, isolate->unicode_cache(), subject,
+ ALLOW_TRAILING_JUNK,
+ std::numeric_limits<double>::quiet_NaN());
return *isolate->factory()->NewNumber(value);
}