Restrict the result of integer negation to 32-bits
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Tue, 26 Jan 2016 07:28:25 +0100
changeset 186444ade87ef2a4
parent 1863 14a122c18d73
child 1865 412cc2201b1a
Restrict the result of integer negation to 32-bits
rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java
     1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Tue Jan 26 06:57:30 2016 +0100
     1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Tue Jan 26 07:28:25 2016 +0100
     1.3 @@ -814,7 +814,7 @@
     1.4                      smapper.replace(this, VarType.LONG, numbers.xor64(), smapper.getL(1), smapper.popL());
     1.5                      break;
     1.6                  case opc_ineg:
     1.7 -                    smapper.replace(this, VarType.INTEGER, "(-(@1))", smapper.getI(0));
     1.8 +                    smapper.replace(this, VarType.INTEGER, "(-(@1) | 0)", smapper.getI(0));
     1.9                      break;
    1.10                  case opc_lneg:
    1.11                      smapper.replace(this, VarType.LONG, numbers.neg64(), smapper.getL(0));