You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"Unintern" DataInstForm (inlining its fields back into DataInstDef). (#12)
Effectively undoes:
- EmbarkStudios/spirt#28
Some quick unscientific testing reveals no significant perf impact (i.e.
the difference is lost in the noise).
The motivation for undoing this interning is the prospect of combining
`DataInstDef` into `NodeDef` (as mentioned in #7), and for unrelated
pragmatic reasons, `NodeDef` can't have its outputs interned (though
long-term maybe we could intern the `kind` field, if really necessary,
assuming we first take "child regions" out of it).
The one thing I realized too late there's no pre-existing consensus for,
is the `output_type`, which used to be between `kind` and `inputs`
(matching `DataInstFormDef`, in fact), while `NodeDef`'s `outputs` is
the last field.
The only argument to have outputs first is the `let (out0, out1) =
foo(in0, in1);` style syntax (though pretty-printed SPIR-T omits the
`let`), but I'm not sure that's worth flipping the order over.
0 commit comments