< prev index next >

src/jdk/nashorn/internal/codegen/types/LongType.java

Print this page

        

@@ -26,24 +26,15 @@
 package jdk.nashorn.internal.codegen.types;
 
 import static jdk.internal.org.objectweb.asm.Opcodes.L2D;
 import static jdk.internal.org.objectweb.asm.Opcodes.L2I;
 import static jdk.internal.org.objectweb.asm.Opcodes.LADD;
-import static jdk.internal.org.objectweb.asm.Opcodes.LAND;
-import static jdk.internal.org.objectweb.asm.Opcodes.LCMP;
 import static jdk.internal.org.objectweb.asm.Opcodes.LCONST_0;
 import static jdk.internal.org.objectweb.asm.Opcodes.LCONST_1;
 import static jdk.internal.org.objectweb.asm.Opcodes.LLOAD;
-import static jdk.internal.org.objectweb.asm.Opcodes.LMUL;
-import static jdk.internal.org.objectweb.asm.Opcodes.LOR;
 import static jdk.internal.org.objectweb.asm.Opcodes.LRETURN;
-import static jdk.internal.org.objectweb.asm.Opcodes.LSHL;
-import static jdk.internal.org.objectweb.asm.Opcodes.LSHR;
 import static jdk.internal.org.objectweb.asm.Opcodes.LSTORE;
-import static jdk.internal.org.objectweb.asm.Opcodes.LSUB;
-import static jdk.internal.org.objectweb.asm.Opcodes.LUSHR;
-import static jdk.internal.org.objectweb.asm.Opcodes.LXOR;
 import static jdk.nashorn.internal.codegen.CompilerConstants.staticCallNoLookup;
 import static jdk.nashorn.internal.runtime.JSType.UNDEFINED_LONG;
 import static jdk.nashorn.internal.runtime.UnwarrantedOptimismException.INVALID_PROGRAM_POINT;
 
 import jdk.internal.org.objectweb.asm.MethodVisitor;

@@ -51,11 +42,11 @@
 import jdk.nashorn.internal.runtime.JSType;
 
 /**
  * Type class: LONG
  */
-class LongType extends BitwiseType {
+class LongType extends Type {
     private static final long serialVersionUID = 1L;
 
     private static final CompilerConstants.Call VALUE_OF = staticCallNoLookup(Long.class, "valueOf", Long.class, long.class);
 
     protected LongType(final String name) {

@@ -80,16 +71,10 @@
     public char getBytecodeStackType() {
         return 'J';
     }
 
     @Override
-    public Type cmp(final MethodVisitor method) {
-        method.visitInsn(LCMP);
-        return INT;
-    }
-
-    @Override
     public Type load(final MethodVisitor method, final int slot) {
         assert slot != -1;
         method.visitVarInsn(LLOAD, slot);
         return LONG;
     }

@@ -147,92 +132,10 @@
         }
         return LONG;
     }
 
     @Override
-    public Type sub(final MethodVisitor method, final int programPoint) {
-        if(programPoint == INVALID_PROGRAM_POINT) {
-            method.visitInsn(LSUB);
-        } else {
-            method.visitInvokeDynamicInsn("lsub", "(JJ)J", MATHBOOTSTRAP, programPoint);
-        }
-        return LONG;
-    }
-
-    @Override
-    public Type mul(final MethodVisitor method, final int programPoint) {
-        if(programPoint == INVALID_PROGRAM_POINT) {
-            method.visitInsn(LMUL);
-        } else {
-            method.visitInvokeDynamicInsn("lmul", "(JJ)J", MATHBOOTSTRAP, programPoint);
-        }
-        return LONG;
-    }
-
-    @Override
-    public Type div(final MethodVisitor method, final int programPoint) {
-        if (programPoint == INVALID_PROGRAM_POINT) {
-            JSType.DIV_ZERO_LONG.invoke(method);
-        } else {
-            method.visitInvokeDynamicInsn("ldiv", "(JJ)J", MATHBOOTSTRAP, programPoint);
-        }
-        return LONG;
-    }
-
-    @Override
-    public Type rem(final MethodVisitor method, final int programPoint) {
-        if (programPoint == INVALID_PROGRAM_POINT) {
-            JSType.REM_ZERO_LONG.invoke(method);
-        } else {
-            method.visitInvokeDynamicInsn("lrem", "(JJ)J", MATHBOOTSTRAP, programPoint);
-        }
-        return LONG;
-    }
-
-    @Override
-    public Type shr(final MethodVisitor method) {
-        method.visitInsn(LUSHR);
-        return LONG;
-    }
-
-    @Override
-    public Type sar(final MethodVisitor method) {
-        method.visitInsn(LSHR);
-        return LONG;
-    }
-
-    @Override
-    public Type shl(final MethodVisitor method) {
-        method.visitInsn(LSHL);
-        return LONG;
-    }
-
-    @Override
-    public Type and(final MethodVisitor method) {
-        method.visitInsn(LAND);
-        return LONG;
-    }
-
-    @Override
-    public Type or(final MethodVisitor method) {
-        method.visitInsn(LOR);
-        return LONG;
-    }
-
-    @Override
-    public Type xor(final MethodVisitor method) {
-        method.visitInsn(LXOR);
-        return LONG;
-    }
-
-    @Override
-    public Type neg(final MethodVisitor method, final int programPoint) {
-        method.visitInvokeDynamicInsn("lneg", "(J)J", MATHBOOTSTRAP, programPoint);
-        return LONG;
-    }
-
-    @Override
     public void _return(final MethodVisitor method) {
         method.visitInsn(LRETURN);
     }
 
     @Override

@@ -244,11 +147,6 @@
     @Override
     public Type loadForcedInitializer(final MethodVisitor method) {
         method.visitInsn(LCONST_0);
         return LONG;
     }
-
-    @Override
-    public Type cmp(final MethodVisitor method, final boolean isCmpG) {
-        return cmp(method);
-    }
 }
< prev index next >