summaryrefslogtreecommitdiff
path: root/deps/v8/test
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2014-05-23 14:01:17 +0000
committerTrevor Norris <trev.norris@gmail.com>2014-09-09 16:52:45 -0700
commit8d9493c315aad5487b5e2a0e48c33ceefb590f2e (patch)
tree00ac1963dd91ed5a9fd7ed78e274ca382db8638f /deps/v8/test
parentb8a8e5558d74333e141e3a72730eb72c3463c3ef (diff)
downloadnode-new-8d9493c315aad5487b5e2a0e48c33ceefb590f2e.tar.gz
deps: cherry-pick r21466 from v8 trunk
Check for cached transition to ExternalArray elements kind. See [1] and [2] for details. [1] https://code.google.com/p/v8/issues/detail?id=3337 [2] https://codereview.chromium.org/291193011 Signed-off-by: Fedor Indutny <fedor@indutny.com>
Diffstat (limited to 'deps/v8/test')
-rw-r--r--deps/v8/test/cctest/test-api.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/deps/v8/test/cctest/test-api.cc b/deps/v8/test/cctest/test-api.cc
index d8fa648bf2..14df05a8e8 100644
--- a/deps/v8/test/cctest/test-api.cc
+++ b/deps/v8/test/cctest/test-api.cc
@@ -21341,6 +21341,23 @@ THREADED_TEST(Regress142088) {
}
+THREADED_TEST(Regress3337) {
+ LocalContext context;
+ v8::Isolate* isolate = context->GetIsolate();
+ v8::HandleScope scope(isolate);
+ Local<v8::Object> o1 = Object::New(isolate);
+ Local<v8::Object> o2 = Object::New(isolate);
+ i::Handle<i::JSObject> io1 = v8::Utils::OpenHandle(*o1);
+ i::Handle<i::JSObject> io2 = v8::Utils::OpenHandle(*o2);
+ CHECK(io1->map() == io2->map());
+ o1->SetIndexedPropertiesToExternalArrayData(
+ NULL, v8::kExternalUint32Array, 0);
+ o2->SetIndexedPropertiesToExternalArrayData(
+ NULL, v8::kExternalUint32Array, 0);
+ CHECK(io1->map() == io2->map());
+}
+
+
THREADED_TEST(Regress137496) {
i::FLAG_expose_gc = true;
LocalContext context;