diff options
author | Ben Noordhuis <info@bnoordhuis.nl> | 2014-05-23 14:01:17 +0000 |
---|---|---|
committer | Fedor Indutny <fedor@indutny.com> | 2014-06-12 17:46:18 -0700 |
commit | d78a3787d26488c0848509b84b09c3fd30185f58 (patch) | |
tree | a37977fa3b1ec763bd538ae45a496d4af8a35f49 /deps/v8/test | |
parent | 5d178188a7c64267a0086d9f7bc04a7c6b95ad8e (diff) | |
download | node-new-d78a3787d26488c0848509b84b09c3fd30185f58.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.cc | 17 |
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; |