C# Class ABT.BinaryOpSupportingArithmeticOperands

Show file Open project: phisiart/C-Compiler

Public Methods

Method Description
CGenArithmetic ( CGenState state ) : void

1. %st(0) = left, %st(1) = right, stack unchanged 2. Operate{Float, Double}

CGenDouble ( CGenState state ) : void

1. %st(0) = left, %st(1) = right, stack unchanged 2. OperateDouble

CGenFloat ( CGenState state ) : void

1. %st(0) = left, %st(1) = right, stack unchanged 2. OperateDouble

OperateDouble ( CGenState state ) : void

Before: %st(0) = left, %st(1) = right, stack unchanged. After: 'left op right' stored in the correct register.

OperateFloat ( CGenState state ) : void

Before: %st(0) = left, %st(1) = right, stack unchanged. After: 'left op right' stored in the correct register.

Protected Methods

Method Description
BinaryOpSupportingArithmeticOperands ( Expr left, Expr right ) : System

Method Details

BinaryOpSupportingArithmeticOperands() protected method

protected BinaryOpSupportingArithmeticOperands ( Expr left, Expr right ) : System
left Expr
right Expr
return System

CGenArithmetic() public method

1. %st(0) = left, %st(1) = right, stack unchanged 2. Operate{Float, Double}
public CGenArithmetic ( CGenState state ) : void
state CodeGeneration.CGenState
return void

CGenDouble() public method

1. %st(0) = left, %st(1) = right, stack unchanged 2. OperateDouble
public CGenDouble ( CGenState state ) : void
state CodeGeneration.CGenState
return void

CGenFloat() public method

1. %st(0) = left, %st(1) = right, stack unchanged 2. OperateDouble
public CGenFloat ( CGenState state ) : void
state CodeGeneration.CGenState
return void

OperateDouble() public abstract method

Before: %st(0) = left, %st(1) = right, stack unchanged. After: 'left op right' stored in the correct register.
public abstract OperateDouble ( CGenState state ) : void
state CodeGeneration.CGenState
return void

OperateFloat() public abstract method

Before: %st(0) = left, %st(1) = right, stack unchanged. After: 'left op right' stored in the correct register.
public abstract OperateFloat ( CGenState state ) : void
state CodeGeneration.CGenState
return void