C# Class Mosa.Compiler.Framework.BaseCompiler

Base class for just-in-time and ahead-of-time compilers, which use the Mosa.Compiler.Framework framework.
Afficher le fichier Open project: tgiphil/MOSA-Project Class Usage Examples

Méthodes publiques

Méthode Description
CompileMethod ( MosaMethod method, BasicBlocks basicBlocks, int threadID ) : void

Compiles the method.

CreateLinkerMethod ( string methodName ) : MosaMethod

Compiles the linker method.

ExecuteCompile ( ) : void
ExecuteThreadedCompile ( int threads ) : void
ExtendCompilerSetup ( ) : void

Extends the compiler setup.

Initialize ( MosaCompiler compiler ) : void

Méthodes protégées

Méthode Description
CreateMethodCompiler ( MosaMethod method, BasicBlocks basicBlocks, int threadID ) : BaseMethodCompiler

Creates a method compiler

ExportCounters ( ) : void
GeInternalRuntimeType ( ) : MosaType
GetPlatformInternalRuntimeType ( ) : MosaType
NewCompilerTraceEvent ( CompilerEvent compilerEvent, string message ) : void

Traces the specified compiler event.

NewCompilerTraceEvent ( CompilerEvent compilerEvent, string message, int threadID ) : void

Traces the specified compiler event.

UpdateCounter ( string name, int count ) : void

Updates the counter.

Private Methods

Méthode Description
CompileWorker ( int threadID ) : void
ExecuteCompilePass ( ) : void
ExecuteThreadedCompilePass ( int threads ) : void
PostCompile ( ) : void

Executes the compiler post compiler stages.

The method iterates the compilation stage chain and runs each stage on the input.

PreCompile ( ) : void

Executes the compiler pre compiler stages.

The method iterates the compilation stage chain and runs each stage on the input.

Method Details

CompileMethod() public méthode

Compiles the method.
public CompileMethod ( MosaMethod method, BasicBlocks basicBlocks, int threadID ) : void
method MosaMethod The method.
basicBlocks BasicBlocks The basic blocks.
threadID int The thread identifier.
Résultat void

CreateLinkerMethod() public méthode

Compiles the linker method.
public CreateLinkerMethod ( string methodName ) : MosaMethod
methodName string Name of the method.
Résultat MosaMethod

CreateMethodCompiler() protected abstract méthode

Creates a method compiler
protected abstract CreateMethodCompiler ( MosaMethod method, BasicBlocks basicBlocks, int threadID ) : BaseMethodCompiler
method MosaMethod The method to compile.
basicBlocks BasicBlocks The basic blocks.
threadID int The thread identifier.
Résultat BaseMethodCompiler

ExecuteCompile() public méthode

public ExecuteCompile ( ) : void
Résultat void

ExecuteThreadedCompile() public méthode

public ExecuteThreadedCompile ( int threads ) : void
threads int
Résultat void

ExportCounters() protected méthode

protected ExportCounters ( ) : void
Résultat void

ExtendCompilerSetup() public méthode

Extends the compiler setup.
public ExtendCompilerSetup ( ) : void
Résultat void

GeInternalRuntimeType() protected méthode

protected GeInternalRuntimeType ( ) : MosaType
Résultat MosaType

GetPlatformInternalRuntimeType() protected méthode

protected GetPlatformInternalRuntimeType ( ) : MosaType
Résultat MosaType

Initialize() public méthode

public Initialize ( MosaCompiler compiler ) : void
compiler MosaCompiler
Résultat void

NewCompilerTraceEvent() protected méthode

Traces the specified compiler event.
protected NewCompilerTraceEvent ( CompilerEvent compilerEvent, string message ) : void
compilerEvent CompilerEvent The compiler event.
message string The message.
Résultat void

NewCompilerTraceEvent() protected méthode

Traces the specified compiler event.
protected NewCompilerTraceEvent ( CompilerEvent compilerEvent, string message, int threadID ) : void
compilerEvent CompilerEvent The compiler event.
message string The message.
threadID int
Résultat void

UpdateCounter() protected méthode

Updates the counter.
protected UpdateCounter ( string name, int count ) : void
name string The name.
count int The count.
Résultat void