]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/java/JavaModule.java
Databoard and SCL enchancements.
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / elaboration / java / JavaModule.java
index 39c2dbec6ce87f2187eee6fabbfa70f24457c74d..cb39346e4a730483b2948e304c803d4805b9af20 100755 (executable)
@@ -56,6 +56,16 @@ public class JavaModule extends ConcreteModule {
         addValue("sor", JavaMathOperation.SOR);
         addValue("sxor", JavaMathOperation.SXOR);
         
+        addValue("badd", JavaMathOperation.BADD);
+        addValue("bsub", JavaMathOperation.BSUB);
+        addValue("bmul", JavaMathOperation.BMUL);
+        addValue("bdiv", JavaMathOperation.BDIV);
+        addValue("brem", JavaMathOperation.BREM);
+        addValue("bneg", JavaMathOperation.BNEG);
+        addValue("band", JavaMathOperation.BAND);
+        addValue("bor", JavaMathOperation.BOR);
+        addValue("bxor", JavaMathOperation.BXOR);
+        
         // Conversions
         for(JavaConversionOperation operation : JavaConversionOperation.OPCODES)
             addValue(operation.getMnemonic(), operation);
@@ -75,6 +85,13 @@ public class JavaModule extends ConcreteModule {
         addValue("lcmpgt", new JavaComparisonOperation(">", Types.LONG));
         addValue("lcmpge", new JavaComparisonOperation(">=", Types.LONG));     
         
+        addValue("bcmpeq", new JavaComparisonOperation("==", Types.BYTE));
+        addValue("bcmpne", new JavaComparisonOperation("!=", Types.BYTE));
+        addValue("bcmplt", new JavaComparisonOperation("<", Types.BYTE));
+        addValue("bcmple", new JavaComparisonOperation("<=", Types.BYTE));
+        addValue("bcmpgt", new JavaComparisonOperation(">", Types.BYTE));
+        addValue("bcmpge", new JavaComparisonOperation(">=", Types.BYTE));
+        
         addValue("scmpeq", new JavaComparisonOperation("==", Types.SHORT));
         addValue("scmpne", new JavaComparisonOperation("!=", Types.SHORT));
         addValue("scmplt", new JavaComparisonOperation("<", Types.SHORT));
@@ -112,7 +129,6 @@ public class JavaModule extends ConcreteModule {
         addValue("ifge", new JavaComparisonToZeroOperation(">="));
         
         TVar A = Types.var(Kinds.STAR);
-        TVar B = Types.var(Kinds.STAR);
         
         addValue("unsafeCoerce", UnsafeCoerce.INSTANCE);
         addValue("equals", new JavaMethod(true,