C# 클래스 Mosa.Compiler.Framework.RegisterAllocator.BasicRegisterAllocator

상속: BaseRegisterAllocator
파일 보기 프로젝트 열기: tgiphil/MOSA-Project

공개 메소드들

메소드 설명
BasicRegisterAllocator ( BasicBlocks basicBlocks, VirtualRegisters virtualRegisters, BaseArchitecture architecture, AddStackLocalDelegate addStackLocal, Operand stackFrame, ITraceFactory traceFactory ) : Mosa.Compiler.Trace

보호된 메소드들

메소드 설명
AdditionalSetup ( ) : void
CalculatePriorityValue ( LiveInterval liveInterval ) : int
CalculateSpillCost ( LiveInterval liveInterval ) : void
SplitIntervalAtCallSite ( LiveInterval liveInterval, SlotIndex callSite ) : void
SplitIntervalsAtCallSites ( ) : void
TrySplitInterval ( LiveInterval liveInterval, int level ) : bool

비공개 메소드들

메소드 설명
GetSpillCost ( SlotIndex use, int factor ) : int

메소드 상세

AdditionalSetup() 보호된 메소드

protected AdditionalSetup ( ) : void
리턴 void

BasicRegisterAllocator() 공개 메소드

public BasicRegisterAllocator ( BasicBlocks basicBlocks, VirtualRegisters virtualRegisters, BaseArchitecture architecture, AddStackLocalDelegate addStackLocal, Operand stackFrame, ITraceFactory traceFactory ) : Mosa.Compiler.Trace
basicBlocks BasicBlocks
virtualRegisters VirtualRegisters
architecture BaseArchitecture
addStackLocal AddStackLocalDelegate
stackFrame Operand
traceFactory ITraceFactory
리턴 Mosa.Compiler.Trace

CalculatePriorityValue() 보호된 메소드

protected CalculatePriorityValue ( LiveInterval liveInterval ) : int
liveInterval LiveInterval
리턴 int

CalculateSpillCost() 보호된 메소드

protected CalculateSpillCost ( LiveInterval liveInterval ) : void
liveInterval LiveInterval
리턴 void

SplitIntervalAtCallSite() 보호된 메소드

protected SplitIntervalAtCallSite ( LiveInterval liveInterval, SlotIndex callSite ) : void
liveInterval LiveInterval
callSite SlotIndex
리턴 void

SplitIntervalsAtCallSites() 보호된 메소드

protected SplitIntervalsAtCallSites ( ) : void
리턴 void

TrySplitInterval() 보호된 메소드

protected TrySplitInterval ( LiveInterval liveInterval, int level ) : bool
liveInterval LiveInterval
level int
리턴 bool