aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/regress/regress-typedarray-length.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/mjsunit/regress/regress-typedarray-length.js')
-rw-r--r--deps/v8/test/mjsunit/regress/regress-typedarray-length.js139
1 files changed, 76 insertions, 63 deletions
diff --git a/deps/v8/test/mjsunit/regress/regress-typedarray-length.js b/deps/v8/test/mjsunit/regress/regress-typedarray-length.js
index 0dde61fc27..22ede7c096 100644
--- a/deps/v8/test/mjsunit/regress/regress-typedarray-length.js
+++ b/deps/v8/test/mjsunit/regress/regress-typedarray-length.js
@@ -9,8 +9,8 @@ a.__proto__ = null;
function get(a) {
return a.length;
-}
-
+};
+%PrepareFunctionForOptimization(get);
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
@@ -19,8 +19,9 @@ assertEquals(undefined, get(a));
get = function(a) {
return a.byteLength;
-}
-
+};
+;
+%PrepareFunctionForOptimization(get);
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
@@ -29,8 +30,9 @@ assertEquals(undefined, get(a));
get = function(a) {
return a.byteOffset;
-}
-
+};
+;
+%PrepareFunctionForOptimization(get);
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
@@ -38,74 +40,82 @@ assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
(function() {
- "use strict";
+"use strict";
- class MyTypedArray extends Int32Array {
- get length() {
- return "length";
- }
- }
-
- a = new MyTypedArray();
-
- get = function(a) {
- return a.length;
+class MyTypedArray extends Int32Array {
+ get length() {
+ return "length";
}
+}
- assertEquals("length", get(a));
- assertEquals("length", get(a));
- assertEquals("length", get(a));
- %OptimizeFunctionOnNextCall(get);
- assertEquals("length", get(a));
+a = new MyTypedArray();
- a.__proto__ = null;
+get = function(a) {
+ return a.length;
+};
+;
+%PrepareFunctionForOptimization(get);
+assertEquals("length", get(a));
+assertEquals("length", get(a));
+assertEquals("length", get(a));
+%OptimizeFunctionOnNextCall(get);
+assertEquals("length", get(a));
- get = function(a) {
- return a.length;
- }
+a.__proto__ = null;
- assertEquals(undefined, get(a));
- assertEquals(undefined, get(a));
- assertEquals(undefined, get(a));
- %OptimizeFunctionOnNextCall(get);
- assertEquals(undefined, get(a));
+get = function(a) {
+ return a.length;
+};
+;
+%PrepareFunctionForOptimization(get);
+assertEquals(undefined, get(a));
+assertEquals(undefined, get(a));
+assertEquals(undefined, get(a));
+%OptimizeFunctionOnNextCall(get);
+assertEquals(undefined, get(a));
})();
(function() {
- "use strict";
+"use strict";
- class MyTypedArray extends Int32Array {
- constructor(length) {
- super(length);
- }
+class MyTypedArray extends Int32Array {
+ constructor(length) {
+ super(length);
}
+}
- a = new MyTypedArray(1024);
-
- get = function(a) {
- return a.length;
- }
+a = new MyTypedArray(1024);
- assertEquals(1024, get(a));
- assertEquals(1024, get(a));
- assertEquals(1024, get(a));
- %OptimizeFunctionOnNextCall(get);
- assertEquals(1024, get(a));
+get = function(a) {
+ return a.length;
+};
+;
+%PrepareFunctionForOptimization(get);
+assertEquals(1024, get(a));
+assertEquals(1024, get(a));
+assertEquals(1024, get(a));
+%OptimizeFunctionOnNextCall(get);
+assertEquals(1024, get(a));
})();
(function() {
- "use strict";
- var a = new Uint8Array(4);
- Object.defineProperty(a, "length", {get: function() { return "blah"; }});
- get = function(a) {
- return a.length;
+"use strict";
+var a = new Uint8Array(4);
+Object.defineProperty(a, 'length', {
+ get: function() {
+ return 'blah';
}
-
- assertEquals("blah", get(a));
- assertEquals("blah", get(a));
- assertEquals("blah", get(a));
- %OptimizeFunctionOnNextCall(get);
- assertEquals("blah", get(a));
+});
+get = function(a) {
+ return a.length;
+};
+;
+%PrepareFunctionForOptimization(get);
+assertEquals("blah", get(a));
+assertEquals("blah", get(a));
+assertEquals("blah", get(a));
+%OptimizeFunctionOnNextCall(get);
+assertEquals("blah", get(a));
})();
// Ensure we can delete length, byteOffset, byteLength.
@@ -120,8 +130,9 @@ a = new Int32Array(100);
get = function(a) {
return a.length;
-}
-
+};
+;
+%PrepareFunctionForOptimization(get);
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
@@ -130,8 +141,9 @@ assertEquals(undefined, get(a));
get = function(a) {
return a.byteLength;
-}
-
+};
+;
+%PrepareFunctionForOptimization(get);
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
@@ -140,8 +152,9 @@ assertEquals(undefined, get(a));
get = function(a) {
return a.byteOffset;
-}
-
+};
+;
+%PrepareFunctionForOptimization(get);
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));
assertEquals(undefined, get(a));