Index: src/builtins/builtins-typedarray.cc |
diff --git a/src/builtins/builtins-typedarray.cc b/src/builtins/builtins-typedarray.cc |
index 3a85c18620c5d8f20cbd567e30ba275a8734d23a..cf09da50c26f5fb9858fdde7411da8892e91229d 100644 |
--- a/src/builtins/builtins-typedarray.cc |
+++ b/src/builtins/builtins-typedarray.cc |
@@ -206,5 +206,20 @@ BUILTIN(TypedArrayPrototypeLastIndexOf) { |
return *isolate->factory()->NewNumberFromInt64(result.FromJust()); |
} |
+BUILTIN(TypedArrayPrototypeReverse) { |
+ HandleScope scope(isolate); |
+ |
+ Handle<JSTypedArray> array; |
+ const char* method = "%TypedArray%.prototype.reverse"; |
+ ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
+ isolate, array, JSTypedArray::Validate(isolate, args.receiver(), method)); |
+ |
+ if (V8_UNLIKELY(array->WasNeutered())) return *array; |
+ |
+ ElementsAccessor* elements = array->GetElementsAccessor(); |
+ elements->Reverse(array); |
+ return *array; |
+} |
+ |
} // namespace internal |
} // namespace v8 |