1.1 --- a/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_Number.js Tue Jan 26 08:43:29 2016 +0100
1.2 +++ b/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_Number.js Wed Jan 27 06:46:03 2016 +0100
1.3 @@ -541,6 +541,21 @@
1.4 var result = r64.toNumber();
1.5 return negateResult ? result.neg64() : result;
1.6 }
1.7 +
1.8 + var b = numberPrototype['__bit64'] = {};
1.9 + b.add64 = function(x,y) { return x.add64(y); };
1.10 + b.sub64 = function(x,y) { return x.sub64(y); };
1.11 + b.mul64 = function(x,y) { return x.mul64(y); };
1.12 + b.div64 = function(x,y) { return x.div64(y); };
1.13 + b.mod64 = function(x,y) { return x.mod64(y); };
1.14 + b.and64 = function(x,y) { return x.and64(y); };
1.15 + b.or64 = function(x,y) { return x.or64(y); };
1.16 + b.xor64 = function(x,y) { return x.xor64(y); };
1.17 + b.neg64 = function(x) { return x.neg64(); };
1.18 + b.shl64 = function(x,y) { return x.shl64(y); };
1.19 + b.shr64 = function(x,y) { return x.shr64(y); };
1.20 + b.ushr64 = function(x,y) { return x.ushr64(y); };
1.21 + b.compare64 = function(x,y) { return y.compare64(x); };
1.22 })(Number.prototype);
1.23
1.24 vm.java_lang_Number(false);
2.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/NumberOperations.java Tue Jan 26 08:43:29 2016 +0100
2.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/NumberOperations.java Wed Jan 27 06:46:03 2016 +0100
2.3 @@ -149,19 +149,19 @@
2.4 }
2.5 if ((used & BIT64) != 0) {
2.6 sb.append(
2.7 - " var __add64 = function(x,y) { return x.add64(y); };\n" +
2.8 - " var __sub64 = function(x,y) { return x.sub64(y); };\n" +
2.9 - " var __mul64 = function(x,y) { return x.mul64(y); };\n" +
2.10 - " var __div64 = function(x,y) { return x.div64(y); };\n" +
2.11 - " var __mod64 = function(x,y) { return x.mod64(y); };\n" +
2.12 - " var __and64 = function(x,y) { return x.and64(y); };\n" +
2.13 - " var __or64 = function(x,y) { return x.or64(y); };\n" +
2.14 - " var __xor64 = function(x,y) { return x.xor64(y); };\n" +
2.15 + " var __add64 = Number.prototype['__bit64']['add64'];\n" +
2.16 + " var __sub64 = Number.prototype['__bit64']['sub64'];\n" +
2.17 + " var __mul64 = Number.prototype['__bit64']['mul64'];\n" +
2.18 + " var __div64 = Number.prototype['__bit64']['div64'];\n" +
2.19 + " var __mod64 = Number.prototype['__bit64']['mod64'];\n" +
2.20 + " var __and64 = Number.prototype['__bit64']['and64'];\n" +
2.21 + " var __or64 = Number.prototype['__bit64']['or64'];\n" +
2.22 + " var __xor64 = Number.prototype['__bit64']['xor64'];\n" +
2.23 " var __neg64 = function(x) { return x.neg64(); };\n" +
2.24 - " var __shl64 = function(x,y) { return x.shl64(y); };\n" +
2.25 - " var __shr64 = function(x,y) { return x.shr64(y); };\n" +
2.26 - " var __ushr64 = function(x,y) { return x.ushr64(y); };\n" +
2.27 - " var __compare64 = function(x,y) { return y.compare64(x); };\n" +
2.28 + " var __shl64 = Number.prototype['__bit64']['shl64'];\n" +
2.29 + " var __shr64 = Number.prototype['__bit64']['shr64'];\n" +
2.30 + " var __ushr64 = Number.prototype['__bit64']['ushr64'];\n" +
2.31 + " var __compare64 = Number.prototype['__bit64']['compare64'];\n" +
2.32 ""
2.33 );
2.34 }