mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 04:32:19 +00:00
Better comments to explain buffered/unbuffered processor resources.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206625 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
fe030f3dcd
commit
939bc92c04
@ -699,10 +699,14 @@ void ScheduleDAGInstrs::initSUnits() {
|
||||
// Assign the Latency field of SU using target-provided information.
|
||||
SU->Latency = SchedModel.computeInstrLatency(SU->getInstr());
|
||||
|
||||
// If this SUnit uses an unbuffered resource, mark it as such.
|
||||
// These resources are used for in-order execution pipelines within an
|
||||
// out-of-order core and are identified by BufferSize=1. BufferSize=0 is
|
||||
// used for dispatch/issue groups and is not considered here.
|
||||
// If this SUnit uses a reserved or unbuffered resource, mark it as such.
|
||||
//
|
||||
// Reserved resources block an instruction from issueing and stall the
|
||||
// entire pipeline. These are identified by BufferSize=0.
|
||||
//
|
||||
// Unbuffered resources prevent execution of subsequeny instructions that
|
||||
// require the same resources. This is used for in-order execution pipelines
|
||||
// within an out-of-order core. These are identified by BufferSize=1.
|
||||
if (SchedModel.hasInstrSchedModel()) {
|
||||
const MCSchedClassDesc *SC = getSchedClass(SU);
|
||||
for (TargetSchedModel::ProcResIter
|
||||
|
Loading…
x
Reference in New Issue
Block a user