summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/bug909401.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/ion/bug909401.js')
-rw-r--r--js/src/jit-test/tests/ion/bug909401.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/bug909401.js b/js/src/jit-test/tests/ion/bug909401.js
new file mode 100644
index 000000000..a79e6c271
--- /dev/null
+++ b/js/src/jit-test/tests/ion/bug909401.js
@@ -0,0 +1,26 @@
+var TZ_PST = -8;
+var TZ_DIFF = GetTimezoneOffset();
+var PST_DIFF = TZ_DIFF - TZ_PST;
+function GetTimezoneOffset() {}
+function adjustResultArray(ResultArray) {
+ var t = ResultArray[TIME] - PST_DIFF;
+ ResultArray[UTC_YEAR] = YearFromTime(t);
+}
+function TimeInYear( y ) {}
+function YearFromTime( t ) {
+ var sign = ( t < 0 ) ? -1 : 1;
+ var year = ( sign < 0 ) ? 1969 : 1970;
+ for ( var timeToTimeZero = t; ; ) {
+ timeToTimeZero -= sign * TimeInYear(year)
+ break;
+ }
+ return ( year );
+}
+gczeal(4);
+evaluate("\
+var TIME = 0;\
+var UTC_YEAR = 1;\
+adjustResultArray([]);\
+adjustResultArray([946684800000-1]);\
+adjustResultArray([]);\
+", { noScriptRval : true });