dspl.backend.x86.operands
Class X86ImmediateOperand

java.lang.Object
  extended by dspl.backend.x86.operands.X86Operand
      extended by dspl.backend.x86.operands.X86ImmediateOperand

public class X86ImmediateOperand
extends X86Operand

An immediate operand is a constant

Author:
David

Field Summary
private  Variable var
           
 
Fields inherited from class dspl.backend.x86.operands.X86Operand
OPERAND_CLASS_ANY, OPERAND_CLASS_LVALUE, OPERAND_TYPE_IMMEDIATE, OPERAND_TYPE_INDEXED_MEMORY, OPERAND_TYPE_MEMORY, OPERAND_TYPE_REGISTER
 
Constructor Summary
X86ImmediateOperand(Variable var)
           
X86ImmediateOperand(Variable var, boolean treatArrayAsConst)
          Specifically intended for doing instructions like "mov $iC, %edx" where iC is begining of an array, and is ok to treat as a 4byte pointer constant
 
Method Summary
 void freeOperand()
          Frees any resources (registers) that have been allocated for the operand
 int getOperandSize()
          Returns the operand's byte size, should be either 1, 2, or 4
 int getOperandType()
          Returns the X86Operand type, must be one of X86Operand.OPERAND_TYPE_xxx
 java.lang.String toString()
           
 
Methods inherited from class dspl.backend.x86.operands.X86Operand
isMemoryType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

var

private Variable var
Constructor Detail

X86ImmediateOperand

public X86ImmediateOperand(Variable var)
Parameters:
var - Variable which is constant and atomic

X86ImmediateOperand

public X86ImmediateOperand(Variable var,
                           boolean treatArrayAsConst)
Specifically intended for doing instructions like "mov $iC, %edx" where iC is begining of an array, and is ok to treat as a 4byte pointer constant

Parameters:
var -
treatArrayAsConst -
Method Detail

freeOperand

public void freeOperand()
Description copied from class: X86Operand
Frees any resources (registers) that have been allocated for the operand

Specified by:
freeOperand in class X86Operand

getOperandType

public int getOperandType()
Description copied from class: X86Operand
Returns the X86Operand type, must be one of X86Operand.OPERAND_TYPE_xxx

Specified by:
getOperandType in class X86Operand
Returns:

toString

public java.lang.String toString()
Specified by:
toString in class X86Operand
Returns:
gnu assembler-friendly representation of the operand

getOperandSize

public int getOperandSize()
Description copied from class: X86Operand
Returns the operand's byte size, should be either 1, 2, or 4

Specified by:
getOperandSize in class X86Operand
Returns: