summaryrefslogtreecommitdiffstats
path: root/js/src/tests/js1_8_1/jit/regress-462459-08.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/js1_8_1/jit/regress-462459-08.js')
-rw-r--r--js/src/tests/js1_8_1/jit/regress-462459-08.js71
1 files changed, 71 insertions, 0 deletions
diff --git a/js/src/tests/js1_8_1/jit/regress-462459-08.js b/js/src/tests/js1_8_1/jit/regress-462459-08.js
new file mode 100644
index 000000000..4d3431495
--- /dev/null
+++ b/js/src/tests/js1_8_1/jit/regress-462459-08.js
@@ -0,0 +1,71 @@
+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+//-----------------------------------------------------------------------------
+var BUGNUMBER = 462459;
+var summary = 'TM: trace new Array(1, 2, 3)';
+var actual = '';
+var expect = '';
+
+printBugNumber(BUGNUMBER);
+printStatus (summary);
+
+
+if (!this.tracemonkey || this.tracemonkey.adaptive)
+{
+ expect = actual = 'Test skipped due to lack of tracemonkey jitstats';
+ reportCompare(expect, actual, summary);
+}
+else
+{
+
+ expect = 'recorder started, recorder not aborted, trace completed';
+ actual = '';
+
+ var recorderStartedStart = this.tracemonkey.recorderStarted;
+ var recorderAbortedStart = this.tracemonkey.recorderAborted;
+ var traceCompletedStart = this.tracemonkey.traceCompleted;
+
+
+ for (var i = 0; i < RUNLOOP; i++)
+ {
+ new Array(1, 2, 3);
+ }
+
+
+ var recorderStartedEnd = this.tracemonkey.recorderStarted;
+ var recorderAbortedEnd = this.tracemonkey.recorderAborted;
+ var traceCompletedEnd = this.tracemonkey.traceCompleted;
+
+ if (recorderStartedEnd > recorderStartedStart)
+ {
+ actual = 'recorder started, ';
+ }
+ else
+ {
+ actual = 'recorder not started, ';
+ }
+
+ if (recorderAbortedEnd > recorderAbortedStart)
+ {
+ actual += 'recorder aborted, ';
+ }
+ else
+ {
+ actual += 'recorder not aborted, ';
+ }
+
+ if (traceCompletedEnd > traceCompletedStart)
+ {
+ actual += 'trace completed';
+ }
+ else
+ {
+ actual += 'trace not completed';
+ }
+
+ reportCompare(expect, actual, summary);
+}
+