L2OperandDispatcher

An L2OperandDispatcher acts as a visitor for the actual operands of level two instructions.

Author

Mark van Gulik

Todd L Smith

Inheritors

Functions

Link copied to clipboard
abstract fun doOperand(operand: L2ArbitraryConstantOperand)

Process an operand which is an arbitrary Java constant.

abstract fun doOperand(operand: L2CommentOperand)

Process an operand which is merely a comment.

abstract fun doOperand(operand: L2ConstantOperand)

Process an operand which is a constant.

abstract fun doOperand(operand: L2FloatImmediateOperand)

Process an operand which is a double immediate value.

abstract fun doOperand(operand: L2IntImmediateOperand)

Process an operand which is an Int immediate value.

abstract fun doOperand(operand: L2PcOperand)

Process an operand which is a constant level two offset into a level two chunk's L2Instruction sequence.

abstract fun doOperand(operand: L2PcVectorOperand)

Process an operand which is a vector of L2PcOperands.

abstract fun doOperand(operand: L2PrimitiveOperand)

Process an operand which is a Primitive number.

abstract fun doOperand(operand: L2ReadBoxedOperand)

Process an operand which is a read of an AvailObject register.

abstract fun doOperand(operand: L2ReadBoxedVectorOperand)

Process an operand which is a read of a vector of L2BoxedRegisters.

abstract fun doOperand(operand: L2ReadFloatOperand)

Process an operand which is a read of a double register.

abstract fun doOperand(operand: L2ReadFloatVectorOperand)

Process an operand which is a read of a vector of L2FloatRegisters.

abstract fun doOperand(operand: L2ReadIntOperand)

Process an operand which is a read of an Int register.

abstract fun doOperand(operand: L2ReadIntVectorOperand)

Process an operand which is a read of a vector of L2IntRegisters.

abstract fun doOperand(operand: L2SelectorOperand)

Process an operand which is a literal A_Bundle which the resulting L2Chunk should be dependent upon for invalidation.

abstract fun doOperand(operand: L2WriteBoxedOperand)

Process an operand which is a write of an AvailObject register.

abstract fun doOperand(operand: L2WriteFloatOperand)

Process an operand which is a write of a double register.

abstract fun doOperand(operand: L2WriteIntOperand)

Process an operand which is a write of an Int register.