00001 package gov.nasa.arc.ase.jpf.jvm.bytecode; 00002 00003 import de.fub.bytecode.classfile.ConstantPool; 00004 import gov.nasa.arc.ase.jpf.jvm.SystemState; 00005 import gov.nasa.arc.ase.jpf.jvm.KernelState; 00006 import gov.nasa.arc.ase.jpf.jvm.ThreadInfo; 00007 import gov.nasa.arc.ase.util.Debug; 00008 00009 public class LDIV extends Instruction { 00010 public Instruction execute(SystemState ss, KernelState ks, ThreadInfo th) { 00011 long v1 = th.longPop(); 00012 long v2 = th.longPop(); 00013 00014 if(v1 == 0) 00015 return th.createAndThrowException("java.lang.ArithmeticException"); 00016 00017 th.longPush(v2 / v1); 00018 00019 return th.getPC().getNext(); 00020 } 00021 public void setPeer(de.fub.bytecode.generic.Instruction i, ConstantPool cp) { 00022 } 00023 }