C# 클래스 Reko.Core.ProcessorArchitecture

상속: IProcessorArchitecture
파일 보기 프로젝트 열기: uxmal/reko

공개 메소드들

메소드 설명
CreateDisassembler ( Reko.Core.ImageReader imageReader ) : IEnumerable
CreateFrame ( ) : Frame
CreateImageReader ( MemoryArea img, Address addr ) : Reko.Core.ImageReader
CreateImageReader ( MemoryArea img, Address addrBegin, Address addrEnd ) : Reko.Core.ImageReader
CreateImageReader ( MemoryArea img, ulong off ) : Reko.Core.ImageReader
CreateImageWriter ( ) : Reko.Core.ImageWriter
CreateImageWriter ( MemoryArea img, Address addr ) : Reko.Core.ImageWriter
CreateInstructionComparer ( Normalize norm ) : IEqualityComparer
CreatePointerScanner ( Reko.Core.SegmentMap map, Reko.Core.ImageReader rdr, IEnumerable
knownAddresses, PointerScannerFlags flags ) : IEnumerable
CreateProcessorState ( ) : ProcessorState
CreateRewriter ( Reko.Core.ImageReader rdr, ProcessorState state, Frame frame, IRewriterHost host ) : IEnumerable
CreateStackAccess ( Frame frame, int cbOffset, DataType dataType ) : Expression
GetAliases ( RegisterStorage reg ) : IEnumerable
GetFlagGroup ( string name ) : FlagGroupStorage
GetFlagGroup ( uint grf ) : FlagGroupStorage
GetOpcodeNames ( ) : int>.SortedList

Returns a map of opcode names to their internal (Reko) numbers.

GetOpcodeNumber ( string name ) : int?

For a particular opcode name, returns its internal (Reko) number.

GetPart ( RegisterStorage reg, DataType dt ) : RegisterStorage
GetRegister ( int i ) : RegisterStorage
GetRegister ( string name ) : RegisterStorage
GetRegisters ( ) : RegisterStorage[]
GetSubregister ( RegisterStorage reg, int offset, int width ) : RegisterStorage

Get the improper subregister of reg that starts at offset offset and is of size width.

Most architectures not have subregisters, and will use this default implementation. This method is overridden for architectures like x86 and Z80, where subregisters (ah al etc) do exist.

GetWidestSubregister ( RegisterStorage reg, HashSet regs ) : RegisterStorage
GrfToString ( uint grf ) : string
LoadUserOptions ( object>.Dictionary options ) : void
MakeAddressFromConstant ( Constant c ) : Address
MakeSegmentedAddress ( Constant seg, Constant offset ) : Address
ReadCodeAddress ( int size, Reko.Core.ImageReader rdr, ProcessorState state ) : Address
RemoveAliases ( ISet ids, RegisterStorage reg ) : void
SaveUserOptions ( ) : object>.Dictionary
TryGetRegister ( string name, RegisterStorage &reg ) : bool
TryParseAddress ( string txtAddr, Address &addr ) : bool

메소드 상세

CreateDisassembler() 공개 추상적인 메소드

public abstract CreateDisassembler ( Reko.Core.ImageReader imageReader ) : IEnumerable
imageReader Reko.Core.ImageReader
리턴 IEnumerable

CreateFrame() 공개 메소드

public CreateFrame ( ) : Frame
리턴 Frame

CreateImageReader() 공개 추상적인 메소드

public abstract CreateImageReader ( MemoryArea img, Address addr ) : Reko.Core.ImageReader
img MemoryArea
addr Address
리턴 Reko.Core.ImageReader

CreateImageReader() 공개 추상적인 메소드

public abstract CreateImageReader ( MemoryArea img, Address addrBegin, Address addrEnd ) : Reko.Core.ImageReader
img MemoryArea
addrBegin Address
addrEnd Address
리턴 Reko.Core.ImageReader

CreateImageReader() 공개 추상적인 메소드

public abstract CreateImageReader ( MemoryArea img, ulong off ) : Reko.Core.ImageReader
img MemoryArea
off ulong
리턴 Reko.Core.ImageReader

CreateImageWriter() 공개 추상적인 메소드

public abstract CreateImageWriter ( ) : Reko.Core.ImageWriter
리턴 Reko.Core.ImageWriter

CreateImageWriter() 공개 추상적인 메소드

public abstract CreateImageWriter ( MemoryArea img, Address addr ) : Reko.Core.ImageWriter
img MemoryArea
addr Address
리턴 Reko.Core.ImageWriter

CreateInstructionComparer() 공개 추상적인 메소드

public abstract CreateInstructionComparer ( Normalize norm ) : IEqualityComparer
norm Normalize
리턴 IEqualityComparer

CreatePointerScanner() 공개 추상적인 메소드

public abstract CreatePointerScanner ( Reko.Core.SegmentMap map, Reko.Core.ImageReader rdr, IEnumerable
knownAddresses, PointerScannerFlags flags ) : IEnumerable
map Reko.Core.SegmentMap
rdr Reko.Core.ImageReader
knownAddresses IEnumerable
flags PointerScannerFlags
리턴 IEnumerable

CreateProcessorState() 공개 추상적인 메소드

public abstract CreateProcessorState ( ) : ProcessorState
리턴 ProcessorState

CreateRewriter() 공개 추상적인 메소드

public abstract CreateRewriter ( Reko.Core.ImageReader rdr, ProcessorState state, Frame frame, IRewriterHost host ) : IEnumerable
rdr Reko.Core.ImageReader
state ProcessorState
frame Frame
host IRewriterHost
리턴 IEnumerable

CreateStackAccess() 공개 추상적인 메소드

public abstract CreateStackAccess ( Frame frame, int cbOffset, DataType dataType ) : Expression
frame Frame
cbOffset int
dataType DataType
리턴 Expression

GetAliases() 공개 메소드

public GetAliases ( RegisterStorage reg ) : IEnumerable
reg RegisterStorage
리턴 IEnumerable

GetFlagGroup() 공개 추상적인 메소드

public abstract GetFlagGroup ( string name ) : FlagGroupStorage
name string
리턴 FlagGroupStorage

GetFlagGroup() 공개 추상적인 메소드

public abstract GetFlagGroup ( uint grf ) : FlagGroupStorage
grf uint
리턴 FlagGroupStorage

GetOpcodeNames() 공개 추상적인 메소드

Returns a map of opcode names to their internal (Reko) numbers.
public abstract GetOpcodeNames ( ) : int>.SortedList
리턴 int>.SortedList

GetOpcodeNumber() 공개 추상적인 메소드

For a particular opcode name, returns its internal (Reko) number.
public abstract GetOpcodeNumber ( string name ) : int?
name string
리턴 int?

GetPart() 공개 메소드

public GetPart ( RegisterStorage reg, DataType dt ) : RegisterStorage
reg RegisterStorage
dt DataType
리턴 RegisterStorage

GetRegister() 공개 추상적인 메소드

public abstract GetRegister ( int i ) : RegisterStorage
i int
리턴 RegisterStorage

GetRegister() 공개 추상적인 메소드

public abstract GetRegister ( string name ) : RegisterStorage
name string
리턴 RegisterStorage

GetRegisters() 공개 추상적인 메소드

public abstract GetRegisters ( ) : RegisterStorage[]
리턴 RegisterStorage[]

GetSubregister() 공개 메소드

Get the improper subregister of reg that starts at offset offset and is of size width.
Most architectures not have subregisters, and will use this default implementation. This method is overridden for architectures like x86 and Z80, where subregisters (ah al etc) do exist.
public GetSubregister ( RegisterStorage reg, int offset, int width ) : RegisterStorage
reg RegisterStorage
offset int
width int
리턴 RegisterStorage

GetWidestSubregister() 공개 메소드

public GetWidestSubregister ( RegisterStorage reg, HashSet regs ) : RegisterStorage
reg RegisterStorage
regs HashSet
리턴 RegisterStorage

GrfToString() 공개 추상적인 메소드

public abstract GrfToString ( uint grf ) : string
grf uint
리턴 string

LoadUserOptions() 공개 메소드

public LoadUserOptions ( object>.Dictionary options ) : void
options object>.Dictionary
리턴 void

MakeAddressFromConstant() 공개 추상적인 메소드

public abstract MakeAddressFromConstant ( Constant c ) : Address
c Constant
리턴 Address

MakeSegmentedAddress() 공개 메소드

public MakeSegmentedAddress ( Constant seg, Constant offset ) : Address
seg Constant
offset Constant
리턴 Address

ReadCodeAddress() 공개 추상적인 메소드

public abstract ReadCodeAddress ( int size, Reko.Core.ImageReader rdr, ProcessorState state ) : Address
size int
rdr Reko.Core.ImageReader
state ProcessorState
리턴 Address

RemoveAliases() 공개 메소드

public RemoveAliases ( ISet ids, RegisterStorage reg ) : void
ids ISet
reg RegisterStorage
리턴 void

SaveUserOptions() 공개 메소드

public SaveUserOptions ( ) : object>.Dictionary
리턴 object>.Dictionary

TryGetRegister() 공개 추상적인 메소드

public abstract TryGetRegister ( string name, RegisterStorage &reg ) : bool
name string
reg RegisterStorage
리턴 bool

TryParseAddress() 공개 추상적인 메소드

public abstract TryParseAddress ( string txtAddr, Address &addr ) : bool
txtAddr string
addr Address
리턴 bool