Index: src/execution.cc |
diff --git a/src/execution.cc b/src/execution.cc |
index 687c0f99f9d8be23d213c1b647000fc51c428f0a..52cff2f7900eabe3b554724f3525f449f850a6ad 100644 |
--- a/src/execution.cc |
+++ b/src/execution.cc |
@@ -554,18 +554,6 @@ MaybeHandle<Object> Execution::ToInteger( |
} |
-MaybeHandle<Object> Execution::ToUint32( |
- Isolate* isolate, Handle<Object> obj) { |
- RETURN_NATIVE_CALL(to_uint32, { obj }); |
-} |
- |
- |
-MaybeHandle<Object> Execution::ToInt32( |
- Isolate* isolate, Handle<Object> obj) { |
- RETURN_NATIVE_CALL(to_int32, { obj }); |
-} |
- |
- |
MaybeHandle<Object> Execution::ToLength( |
Isolate* isolate, Handle<Object> obj) { |
RETURN_NATIVE_CALL(to_length, { obj }); |
@@ -581,6 +569,13 @@ MaybeHandle<Object> Execution::NewDate(Isolate* isolate, double time) { |
#undef RETURN_NATIVE_CALL |
+MaybeHandle<Object> Execution::ToInt32(Isolate* isolate, Handle<Object> obj) { |
+ ASSIGN_RETURN_ON_EXCEPTION(isolate, obj, Execution::ToNumber(isolate, obj), |
+ Object); |
+ return isolate->factory()->NewNumberFromInt(DoubleToInt32(obj->Number())); |
+} |
+ |
+ |
MaybeHandle<Object> Execution::ToObject(Isolate* isolate, Handle<Object> obj) { |
Handle<JSReceiver> receiver; |
if (JSReceiver::ToObject(isolate, obj).ToHandle(&receiver)) { |
@@ -591,6 +586,13 @@ MaybeHandle<Object> Execution::ToObject(Isolate* isolate, Handle<Object> obj) { |
} |
+MaybeHandle<Object> Execution::ToUint32(Isolate* isolate, Handle<Object> obj) { |
+ ASSIGN_RETURN_ON_EXCEPTION(isolate, obj, Execution::ToNumber(isolate, obj), |
+ Object); |
+ return isolate->factory()->NewNumberFromUint(DoubleToUint32(obj->Number())); |
+} |
+ |
+ |
MaybeHandle<JSRegExp> Execution::NewJSRegExp(Handle<String> pattern, |
Handle<String> flags) { |
Isolate* isolate = pattern->GetIsolate(); |