1.1 --- a/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_Number.js Wed Jan 27 20:45:14 2016 +0100
1.2 +++ b/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_Number.js Wed Jan 27 20:57:20 2016 +0100
1.3 @@ -157,52 +157,52 @@
1.4 return low;
1.5 };
1.6
1.7 - numberPrototype.shl64 = function(x) {
1.8 + function shl64(thiz, x) {
1.9 x &= 0x3f;
1.10 - if (x == 0) return this;
1.11 + if (x == 0) return thiz;
1.12 if (x >= 32) {
1.13 - var hi = this << (x - 32);
1.14 + var hi = thiz << (x - 32);
1.15 return hi.next32(0);
1.16 } else {
1.17 - var hi = this.high32() << x;
1.18 - var low_reminder = this >> (32 - x);
1.19 + var hi = thiz.high32() << x;
1.20 + var low_reminder = thiz >> (32 - x);
1.21 hi |= low_reminder;
1.22 - var low = this << x;
1.23 + var low = thiz << x;
1.24 low += (low < 0) ? (__m32 + 1) : 0;
1.25 return hi.next32(low);
1.26 }
1.27 };
1.28
1.29 - numberPrototype.shr64 = function(x) {
1.30 + function shr64(thiz, x) {
1.31 x &= 0x3f;
1.32 - if (x == 0) return this;
1.33 + if (x == 0) return thiz;
1.34 if (x >= 32) {
1.35 - var low = this.high32() >> (x - 32);
1.36 + var low = thiz.high32() >> (x - 32);
1.37 low += (low < 0) ? (__m32 + 1) : 0;
1.38 return low;
1.39 } else {
1.40 - var low = this >>> x;
1.41 - var hi_reminder = this.high32() << (32 - x);
1.42 + var low = thiz >>> x;
1.43 + var hi_reminder = thiz.high32() << (32 - x);
1.44 low |= hi_reminder;
1.45 low += (low < 0) ? (__m32 + 1) : 0;
1.46 - var hi = this.high32() >> x;
1.47 + var hi = thiz.high32() >> x;
1.48 return hi.next32(low);
1.49 }
1.50 };
1.51
1.52 - numberPrototype.ushr64 = function(x) {
1.53 + function ushr64(thiz, x) {
1.54 x &= 0x3f;
1.55 - if (x == 0) return this;
1.56 + if (x == 0) return thiz;
1.57 if (x >= 32) {
1.58 - var low = this.high32() >>> (x - 32);
1.59 + var low = thiz.high32() >>> (x - 32);
1.60 low += (low < 0) ? (__m32 + 1) : 0;
1.61 return low;
1.62 } else {
1.63 - var low = this >>> x;
1.64 - var hi_reminder = this.high32() << (32 - x);
1.65 + var low = thiz >>> x;
1.66 + var hi_reminder = thiz.high32() << (32 - x);
1.67 low |= hi_reminder;
1.68 low += (low < 0) ? (__m32 + 1) : 0;
1.69 - var hi = this.high32() >>> x;
1.70 + var hi = thiz.high32() >>> x;
1.71 return hi.next32(low);
1.72 }
1.73 };
1.74 @@ -551,9 +551,9 @@
1.75 b.or64 = or64;
1.76 b.xor64 = xor64;
1.77 b.neg64 = function(x) { return x.neg64(); };
1.78 - b.shl64 = function(x,y) { return x.shl64(y); };
1.79 - b.shr64 = function(x,y) { return x.shr64(y); };
1.80 - b.ushr64 = function(x,y) { return x.ushr64(y); };
1.81 + b.shl64 = shl64;
1.82 + b.shr64 = shr64;
1.83 + b.ushr64 = ushr64;
1.84 b.compare64 = function(x,y) { return y.compare64(x); };
1.85 })(Number.prototype);
1.86