Upgrade V8 to version 4.9.385.28
https://chromium.googlesource.com/v8/v8/+/4.9.385.28
FPIIM-449
Change-Id: I4b2e74289d4bf3667f2f3dc8aa2e541f63e26eb4
diff --git a/test/mjsunit/fast-prototype.js b/test/mjsunit/fast-prototype.js
index c59ec94..7432ecc 100644
--- a/test/mjsunit/fast-prototype.js
+++ b/test/mjsunit/fast-prototype.js
@@ -50,13 +50,14 @@
(new Sub()).__proto__ = proto;
} else {
Sub.prototype = proto;
- // Need to instantiate Sub to mark .prototype as prototype.
- new Sub();
+ // Need to instantiate Sub to mark .prototype as prototype. Make sure the
+ // instantiated object is used so that the allocation is not optimized away.
+ %DebugPrint(new Sub());
}
}
-function test(use_new, add_first, set__proto__, same_map_as) {
+function test(use_new, add_first, set__proto__) {
var proto = use_new ? new Super() : {};
// New object is fast.
@@ -74,16 +75,8 @@
// Still fast
assertTrue(%HasFastProperties(proto));
AddProps(proto);
- if (set__proto__) {
- // After we add all those properties it went slow mode again :-(
- assertFalse(%HasFastProperties(proto));
- } else {
- // .prototype keeps it fast.
- assertTrue(%HasFastProperties(proto));
- }
- }
- if (same_map_as && !add_first && set__proto__) {
- assertTrue(%HaveSameMap(same_map_as, proto));
+ // Still fast.
+ assertTrue(%HasFastProperties(proto));
}
return proto;
}
@@ -96,9 +89,7 @@
var use_new = ((i & 2) != 0);
test(use_new, true, set__proto__);
-
- var last = test(use_new, false, set__proto__);
- test(use_new, false, set__proto__, last);
+ test(use_new, false, set__proto__);
}