Class RegisterUtils

java.lang.Object
com.mebigfatguy.fbcontrib.utils.RegisterUtils

public final class RegisterUtils extends Object
an auxiliary class for managing and manipulating registers
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
    private to reinforce the helper status of the class
  • Method Summary

    Modifier and Type
    Method
    Description
    static int
    getALoadReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
    returns the register used to load a reference
    static int
    getAStoreReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
    returns the register used to store a reference
    static int
    getLoadReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
    returns the register used in a load operation
    static int
    getLocalVariableEndRange(org.apache.bcel.classfile.LocalVariableTable lvt, int reg, int curPC)
    returns the end pc of the visible range of this register at this pc
    static int[]
    getParameterRegisters(org.apache.bcel.classfile.Method obj)
    gets the set of registers used for parameters
    static int
    getStoreReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
    returns the register used in a store operation

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RegisterUtils

      private RegisterUtils()
      private to reinforce the helper status of the class
  • Method Details

    • getAStoreReg

      public static int getAStoreReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
      returns the register used to store a reference
      Parameters:
      dbc - the dismantle byte code parsing the class
      seen - the opcode of the store
      Returns:
      the register stored into
    • getALoadReg

      public static int getALoadReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
      returns the register used to load a reference
      Parameters:
      dbc - the dismantle byte code parsing the class
      seen - the opcode of the load
      Returns:
      the register loaded from
    • getStoreReg

      public static int getStoreReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
      returns the register used in a store operation
      Parameters:
      dbc - the dismantle byte code parsing the class
      seen - the opcode of the store
      Returns:
      the register stored into
    • getLoadReg

      public static int getLoadReg(edu.umd.cs.findbugs.visitclass.DismantleBytecode dbc, int seen)
      returns the register used in a load operation
      Parameters:
      dbc - the dismantle byte code parsing the class
      seen - the opcode of the load
      Returns:
      the register stored into
    • getLocalVariableEndRange

      public static int getLocalVariableEndRange(org.apache.bcel.classfile.LocalVariableTable lvt, int reg, int curPC)
      returns the end pc of the visible range of this register at this pc
      Parameters:
      lvt - the local variable table for this method
      reg - the register to examine
      curPC - the pc of the current instruction
      Returns:
      the endpc
    • getParameterRegisters

      public static int[] getParameterRegisters(org.apache.bcel.classfile.Method obj)
      gets the set of registers used for parameters
      Parameters:
      obj - the context object for the method to find the parameter registers of
      Returns:
      the set of registers that parameters are using