Source/Packages

Realization.Nvidia.SM86.StallCompaction

packages/realizations/cooperative/nvidia-sm86/src/Realization/Nvidia/SM86/StallCompaction.alpha

269 lines32 declarations15.0 KiBSHA-256 46e30c2c60d2

def · lines 173–195

sm86AnnotateProgram

Full file
one 37-branch split per instruction, up front: the summary answers reads, writes, predicate writes, wait and set keys and latency together, and the node carries the instruction itself for the rebuild with its new stall
173def sm86AnnotateProgram =
174  (lambda unrestricted program : (family SM86Program) .
175    (eliminate SM86Program
176      (lambda unrestricted current : (family SM86Program) . (family CompactionAnnotated))
177      program
178      (branch SM86ProgramEnd . (constructor CompactionAnnotated CompactionAnnotatedEnd))
179      (branch SM86ProgramNext instruction tail induction .
180        (eliminate SM86Instruction
181          (lambda unrestricted current : (family SM86Instruction) . (family CompactionAnnotated))
182          instruction
183          (branch SM86InstructionValue guard body .
184            (eliminate SM86OpSummary
185              (lambda unrestricted current : (family SM86OpSummary) . (family CompactionAnnotated))
186              (sm86OpSummaryOfBody body)
187              (branch SM86OpSummaryValue reads writes predicateWrites waitKeys setKeys stall latency variable minimum control .
188                (constructor CompactionAnnotated CompactionAnnotatedNext
189                  instruction
190                  (scNeedsMake reads writes (sm86GuardKeys instruction) predicateWrites waitKeys)
191                  (scIssueMake writes predicateWrites)
192                  setKeys
193                  latency
194                  minimum
195                  induction))))))))

The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.