make-slp-tree ( pair definitions uses root? -- tree )


Vocabulary
compiler.cfg.slp

Inputs
pairan object
definitionsan object
usesan object
root?an object


Outputs
treean object


Definition


:: make-slp-tree ( pair definitions uses root? -- tree )
pair definitions uses root? slp-expandable? [
pair [ definitions at ] map
:> insns insns first slp-vector-op :> opcode insns
[ src1>> ] map definitions uses f make-slp-tree insns
[ src2>> ] map definitions uses f make-slp-tree 2array
pair opcode rot slp-tree boa
] [ pair f { } slp-tree boa ] if ;