]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - tests/stress/ftl-library-inlining-loops.js
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / tests / stress / ftl-library-inlining-loops.js
diff --git a/tests/stress/ftl-library-inlining-loops.js b/tests/stress/ftl-library-inlining-loops.js
new file mode 100644 (file)
index 0000000..160fcb9
--- /dev/null
@@ -0,0 +1,28 @@
+function foo(){
+    var count = 100;
+    var d = new DataView(new ArrayBuffer(count));
+
+    for (var i = 0; i < count / 4; i++){
+        d.setInt32(i, i);
+    }
+
+    for (var i = 0; i < count; i++){
+        d.setInt8(i, i);
+    }
+    var result = 0;
+    for (var i = 0; i < count; i++){
+        result += d.getInt8(i);
+    }
+    return result;
+}
+
+noInline(foo);
+
+var r = 0;
+for (var i = 0 ; i < 50000; i++){
+    r += foo();
+}
+
+if (r != 247500000)
+    throw "Bad result: " + r;
+