C# Класс Mosa.Compiler.Framework.BaseMethodCompiler

Base class of a method compiler.
A method compiler is responsible for compiling a single function of an object. There are various classes derived from BaseMethodCompiler, which provide specific features, such as jit compilation, runtime optimized jitting and others. MethodCompilerBase instances are usually created by invoking CreateMethodCompiler on a specific compiler instance.
Наследование: IMethodCompiler, IDisposable
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
ConstantZero Operand
StackFrame Operand

Открытые методы

Метод Описание
AddStackLocal ( MosaType type ) : Operand

Adds the stack local.

AddStackLocal ( MosaType type, bool pinned ) : Operand

Adds the stack local.

AllocateVirtualRegisterOrStackSlot ( MosaType type ) : Operand

Allocates the virtual register or stack slot.

Compile ( ) : void

Compiles the method referenced by this method compiler.

CreateVirtualRegister ( MosaType type ) : Operand

Creates a new virtual register operand.

FormatStageName ( IPipelineStage stage ) : string
GetStage ( Type stageType ) : IPipelineStage

Gets the stage.

SetLocalVariables ( IList locals ) : void

Allocates the local variable virtual registers.

SetProtectedRegions ( IList protectedRegions ) : void

Sets the protected regions.

Stop ( ) : void

Stops the method compiler.

StoreOnStack ( MosaType type ) : bool
ToString ( ) : string

Returns a System.String that represents this instance.

Защищенные методы

Метод Описание
BaseMethodCompiler ( BaseCompiler compiler, MosaMethod method, BasicBlocks basicBlocks, int threadID ) : System

Initializes a new instance of the BaseMethodCompiler class.

BeginCompile ( ) : void

Called before the method compiler begins compiling the method.

EndCompile ( ) : void

Called after the method compiler has finished compiling the method.

EvaluateParameterOperands ( ) : void

Evaluates the parameter operands.

InitializeType ( ) : void

Initializes the type.

Приватные методы

Метод Описание
LayoutParameters ( int offsetOfFirst ) : int
LayoutParameters ( ) : void
SetStackParameter ( int index, MosaType type, string name ) : Operand

Описание методов

AddStackLocal() публичный Метод

Adds the stack local.
public AddStackLocal ( MosaType type ) : Operand
type MosaType The type.
Результат Operand

AddStackLocal() публичный Метод

Adds the stack local.
public AddStackLocal ( MosaType type, bool pinned ) : Operand
type MosaType The type.
pinned bool
Результат Operand

AllocateVirtualRegisterOrStackSlot() публичный Метод

Allocates the virtual register or stack slot.
public AllocateVirtualRegisterOrStackSlot ( MosaType type ) : Operand
type MosaType The type.
Результат Operand

BaseMethodCompiler() защищенный Метод

Initializes a new instance of the BaseMethodCompiler class.
protected BaseMethodCompiler ( BaseCompiler compiler, MosaMethod method, BasicBlocks basicBlocks, int threadID ) : System
compiler BaseCompiler The assembly compiler.
method MosaMethod The method to compile by this instance.
basicBlocks BasicBlocks The basic blocks.
threadID int The thread identifier.
Результат System

BeginCompile() защищенный Метод

Called before the method compiler begins compiling the method.
protected BeginCompile ( ) : void
Результат void

Compile() публичный Метод

Compiles the method referenced by this method compiler.
public Compile ( ) : void
Результат void

CreateVirtualRegister() публичный Метод

Creates a new virtual register operand.
public CreateVirtualRegister ( MosaType type ) : Operand
type MosaType The signature type of the virtual register.
Результат Operand

EndCompile() защищенный Метод

Called after the method compiler has finished compiling the method.
protected EndCompile ( ) : void
Результат void

EvaluateParameterOperands() защищенный Метод

Evaluates the parameter operands.
protected EvaluateParameterOperands ( ) : void
Результат void

FormatStageName() публичный Метод

public FormatStageName ( IPipelineStage stage ) : string
stage IPipelineStage
Результат string

GetStage() публичный Метод

Gets the stage.
public GetStage ( Type stageType ) : IPipelineStage
stageType System.Type Type of the stage.
Результат IPipelineStage

InitializeType() защищенный Метод

Initializes the type.
protected InitializeType ( ) : void
Результат void

SetLocalVariables() публичный Метод

Allocates the local variable virtual registers.
public SetLocalVariables ( IList locals ) : void
locals IList The locals.
Результат void

SetProtectedRegions() публичный Метод

Sets the protected regions.
public SetProtectedRegions ( IList protectedRegions ) : void
protectedRegions IList The protected regions.
Результат void

Stop() публичный Метод

Stops the method compiler.
public Stop ( ) : void
Результат void

StoreOnStack() публичный Метод

public StoreOnStack ( MosaType type ) : bool
type MosaType
Результат bool

ToString() публичный Метод

Returns a System.String that represents this instance.
public ToString ( ) : string
Результат string

Описание свойств

ConstantZero публичное свойство

The constant zero
public Operand ConstantZero
Результат Operand

StackFrame публичное свойство

The stack frame
public Operand StackFrame
Результат Operand