Index: src/runtime/runtime-array.cc |
diff --git a/src/runtime/runtime-array.cc b/src/runtime/runtime-array.cc |
index 06cfa05fe40ba473e88c4261420a08065574a704..cc4a2e78a503c124c7ce7af19c11cf69b5a2542b 100644 |
--- a/src/runtime/runtime-array.cc |
+++ b/src/runtime/runtime-array.cc |
@@ -1302,87 +1302,6 @@ RUNTIME_FUNCTION(Runtime_HasComplexElements) { |
} |
-// TODO(dcarney): remove this function when TurboFan supports it. |
-// Takes the object to be iterated over and the result of GetPropertyNamesFast |
-// Returns pair (cache_array, cache_type). |
-RUNTIME_FUNCTION_RETURN_PAIR(Runtime_ForInInit) { |
- SealHandleScope scope(isolate); |
- DCHECK(args.length() == 2); |
- // This simulates CONVERT_ARG_HANDLE_CHECKED for calls returning pairs. |
- // Not worth creating a macro atm as this function should be removed. |
- if (!args[0]->IsJSReceiver() || !args[1]->IsObject()) { |
- Object* error = isolate->ThrowIllegalOperation(); |
- return MakePair(error, isolate->heap()->undefined_value()); |
- } |
- Handle<JSReceiver> object = args.at<JSReceiver>(0); |
- Handle<Object> cache_type = args.at<Object>(1); |
- if (cache_type->IsMap()) { |
- // Enum cache case. |
- return MakePair(Map::cast(*cache_type)->EnumLength() != 0 |
- ? object->map()->instance_descriptors()->GetEnumCache() |
- : isolate->heap()->empty_fixed_array(), |
- *cache_type); |
- } else { |
- // FixedArray case. |
- Smi* new_cache_type = Smi::FromInt(object->IsJSProxy() ? 0 : 1); |
- return MakePair(*Handle<FixedArray>::cast(cache_type), new_cache_type); |
- } |
-} |
- |
- |
-// TODO(dcarney): remove this function when TurboFan supports it. |
-RUNTIME_FUNCTION(Runtime_ForInCacheArrayLength) { |
- SealHandleScope shs(isolate); |
- DCHECK(args.length() == 2); |
- CONVERT_ARG_HANDLE_CHECKED(Object, cache_type, 0); |
- CONVERT_ARG_HANDLE_CHECKED(FixedArray, array, 1); |
- int length = 0; |
- if (cache_type->IsMap()) { |
- length = Map::cast(*cache_type)->EnumLength(); |
- } else { |
- DCHECK(cache_type->IsSmi()); |
- length = array->length(); |
- } |
- return Smi::FromInt(length); |
-} |
- |
- |
-// TODO(dcarney): remove this function when TurboFan supports it. |
-// Takes (the object to be iterated over, |
-// cache_array from ForInInit, |
-// cache_type from ForInInit, |
-// the current index) |
-// Returns pair (array[index], needs_filtering). |
-RUNTIME_FUNCTION_RETURN_PAIR(Runtime_ForInNext) { |
- SealHandleScope scope(isolate); |
- DCHECK(args.length() == 4); |
- int32_t index; |
- // This simulates CONVERT_ARG_HANDLE_CHECKED for calls returning pairs. |
- // Not worth creating a macro atm as this function should be removed. |
- if (!args[0]->IsJSReceiver() || !args[1]->IsFixedArray() || |
- !args[2]->IsObject() || !args[3]->ToInt32(&index)) { |
- Object* error = isolate->ThrowIllegalOperation(); |
- return MakePair(error, isolate->heap()->undefined_value()); |
- } |
- Handle<JSReceiver> object = args.at<JSReceiver>(0); |
- Handle<FixedArray> array = args.at<FixedArray>(1); |
- Handle<Object> cache_type = args.at<Object>(2); |
- // Figure out first if a slow check is needed for this object. |
- bool slow_check_needed = false; |
- if (cache_type->IsMap()) { |
- if (object->map() != Map::cast(*cache_type)) { |
- // Object transitioned. Need slow check. |
- slow_check_needed = true; |
- } |
- } else { |
- // No slow check needed for proxies. |
- slow_check_needed = Smi::cast(*cache_type)->value() == 1; |
- } |
- return MakePair(array->get(index), |
- isolate->heap()->ToBoolean(slow_check_needed)); |
-} |
- |
- |
RUNTIME_FUNCTION(Runtime_IsArray) { |
SealHandleScope shs(isolate); |
DCHECK(args.length() == 1); |