Class Select

    • Field Detail

      • match

        @Deprecated
        protected int[] match
        Deprecated.
        (since 6.0) will be made private; do not access directly, use getter/setter
      • indices

        @Deprecated
        protected int[] indices
        Deprecated.
        (since 6.0) will be made private; do not access directly, use getter/setter
      • targets

        @Deprecated
        protected InstructionHandle[] targets
        Deprecated.
        (since 6.0) will be made private; do not access directly, use getter/setter
      • fixed_length

        @Deprecated
        protected int fixed_length
        Deprecated.
        (since 6.0) will be made private; do not access directly, use getter/setter
      • match_length

        @Deprecated
        protected int match_length
        Deprecated.
        (since 6.0) will be made private; do not access directly, use getter/setter
      • padding

        @Deprecated
        protected int padding
        Deprecated.
        (since 6.0) will be made private; do not access directly, use getter/setter
    • Method Detail

      • clone

        protected java.lang.Object clone()
                                  throws java.lang.CloneNotSupportedException
        Overrides:
        clone in class java.lang.Object
        Throws:
        java.lang.CloneNotSupportedException
      • dump

        public void dump​(java.io.DataOutputStream out)
                  throws java.io.IOException
        Dump instruction as byte code to stream out.
        Overrides:
        dump in class BranchInstruction
        Parameters:
        out - Output stream
        Throws:
        java.io.IOException - Thrown when an I/O exception of some sort has occurred.
      • getIndices

        public int[] getIndices()
        Returns:
        array of match target offsets
      • getMatchs

        public int[] getMatchs()
        Returns:
        array of match indices
      • initFromFile

        protected void initFromFile​(ByteSequence bytes,
                                    boolean wide)
                             throws java.io.IOException
        Read needed data (e.g. index) from file.
        Overrides:
        initFromFile in class BranchInstruction
        Parameters:
        bytes - input stream
        wide - wide prefix?
        Throws:
        java.io.IOException - may be thrown if the implementation needs to read data from the file
        See Also:
        InstructionList
      • toString

        public java.lang.String toString​(boolean verbose)
        Description copied from class: BranchInstruction
        Long output format: <position in byte code> <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"<target instruction>">" "@"<branch target offset>
        Overrides:
        toString in class BranchInstruction
        Parameters:
        verbose - long/short format switch
        Returns:
        mnemonic for instruction
      • updatePosition

        protected int updatePosition​(int offset,
                                     int maxOffset)
        Since this is a variable length instruction, it may shift the following instructions which then need to update their position. Called by InstructionList.setPositions when setting the position for every instruction. In the presence of variable length instructions 'setPositions' performs multiple passes over the instruction list to calculate the correct (byte) positions and offsets by calling this function.
        Overrides:
        updatePosition in class BranchInstruction
        Parameters:
        offset - additional offset caused by preceding (variable length) instructions
        maxOffset - the maximum offset that may be caused by these instructions
        Returns:
        additional offset caused by possible change of this instruction's length