Main Page   Packages   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

ASTORE.java

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 ASTORE extends Instruction {
00010   private int index;
00011   
00012   public Instruction execute(SystemState ss, KernelState ks, ThreadInfo th) {
00013     //** warning: an ASTORE should store an object reference. However   **//
00014     //**          it is used for subroutines program counters as well.  **//
00015     boolean ref = th.isOperandRef();
00016 
00017     th.setLocalVariable(index, th.pop(), ref);
00018 
00019     return th.getPC().getNext();
00020   }  
00021   public void setPeer(de.fub.bytecode.generic.Instruction i, ConstantPool cp) {
00022     index = ((de.fub.bytecode.generic.ASTORE)i).getIndex();
00023   }  
00024 }

Generated at Thu Feb 7 06:39:58 2002 for Bandera by doxygen1.2.10 written by Dimitri van Heesch, © 1997-2001