C# Class Mosa.Platform.ARMv6.MachineCodeEmitter

An ARMv6 machine code emitter.
Inheritance: Mosa.Compiler.Framework.BaseCodeEmitter
ファイルを表示 Open project: tgiphil/MOSA-Project Class Usage Examples

Public Methods

Method Description
EmitBranch ( ConditionCode conditionCode, int register ) : void
EmitBranch ( ConditionCode conditionCode, int offset, bool link ) : void
EmitInstructionWithImmediate ( ConditionCode conditionCode, byte opcode, bool setCondition, int firstRegister, int destinationRegister, int rotate, int immediate ) : void
EmitInstructionWithRegister ( ConditionCode conditionCode, byte opcode, bool setCondition, int firstRegister, int destinationRegister, ShiftType secondShiftType, int secondRegister ) : void
EmitMultiply ( ConditionCode conditionCode, bool setCondition, int firstRegister, int destinationRegister, int secondRegister ) : void
EmitMultiplyWithAccumulate ( ConditionCode conditionCode, bool setCondition, int firstRegister, int destinationRegister, int secondRegister, int accumulateRegister ) : void
EmitSingleDataTransfer ( ConditionCode conditionCode, Indexing indexing, OffsetDirection offsetDirection, TransferSize transferSize, WriteBack writeBack, TransferType transferType, int firstRegister, int destinationRegister, ShiftType secondShiftType, int secondRegister ) : void
EmitSingleDataTransfer ( ConditionCode conditionCode, Indexing indexing, OffsetDirection offsetDirection, TransferSize transferSize, WriteBack writeBack, TransferType transferType, int firstRegister, int destinationRegister, uint immediate ) : void
GetConditionCode ( ConditionCode condition ) : byte
GetShiftTypeCode ( ShiftType shiftType ) : byte
ResolvePatches ( ) : void
Write ( uint data ) : void

Writes the unsigned int.

Method Details

EmitBranch() public method

public EmitBranch ( ConditionCode conditionCode, int register ) : void
conditionCode ConditionCode
register int
return void

EmitBranch() public method

public EmitBranch ( ConditionCode conditionCode, int offset, bool link ) : void
conditionCode ConditionCode
offset int
link bool
return void

EmitInstructionWithImmediate() public method

public EmitInstructionWithImmediate ( ConditionCode conditionCode, byte opcode, bool setCondition, int firstRegister, int destinationRegister, int rotate, int immediate ) : void
conditionCode ConditionCode
opcode byte
setCondition bool
firstRegister int
destinationRegister int
rotate int
immediate int
return void

EmitInstructionWithRegister() public method

public EmitInstructionWithRegister ( ConditionCode conditionCode, byte opcode, bool setCondition, int firstRegister, int destinationRegister, ShiftType secondShiftType, int secondRegister ) : void
conditionCode ConditionCode
opcode byte
setCondition bool
firstRegister int
destinationRegister int
secondShiftType ShiftType
secondRegister int
return void

EmitMultiply() public method

public EmitMultiply ( ConditionCode conditionCode, bool setCondition, int firstRegister, int destinationRegister, int secondRegister ) : void
conditionCode ConditionCode
setCondition bool
firstRegister int
destinationRegister int
secondRegister int
return void

EmitMultiplyWithAccumulate() public method

public EmitMultiplyWithAccumulate ( ConditionCode conditionCode, bool setCondition, int firstRegister, int destinationRegister, int secondRegister, int accumulateRegister ) : void
conditionCode ConditionCode
setCondition bool
firstRegister int
destinationRegister int
secondRegister int
accumulateRegister int
return void

EmitSingleDataTransfer() public method

public EmitSingleDataTransfer ( ConditionCode conditionCode, Indexing indexing, OffsetDirection offsetDirection, TransferSize transferSize, WriteBack writeBack, TransferType transferType, int firstRegister, int destinationRegister, ShiftType secondShiftType, int secondRegister ) : void
conditionCode ConditionCode
indexing Indexing
offsetDirection OffsetDirection
transferSize TransferSize
writeBack WriteBack
transferType TransferType
firstRegister int
destinationRegister int
secondShiftType ShiftType
secondRegister int
return void

EmitSingleDataTransfer() public method

public EmitSingleDataTransfer ( ConditionCode conditionCode, Indexing indexing, OffsetDirection offsetDirection, TransferSize transferSize, WriteBack writeBack, TransferType transferType, int firstRegister, int destinationRegister, uint immediate ) : void
conditionCode ConditionCode
indexing Indexing
offsetDirection OffsetDirection
transferSize TransferSize
writeBack WriteBack
transferType TransferType
firstRegister int
destinationRegister int
immediate uint
return void

GetConditionCode() public static method

public static GetConditionCode ( ConditionCode condition ) : byte
condition ConditionCode
return byte

GetShiftTypeCode() public static method

public static GetShiftTypeCode ( ShiftType shiftType ) : byte
shiftType ShiftType
return byte

ResolvePatches() public method

public ResolvePatches ( ) : void
return void

Write() public method

Writes the unsigned int.
public Write ( uint data ) : void
data uint The data.
return void