If there is a design document describing the codegen backend to tblgen, and the type-inference system it uses, I would appreciate a pointer to it.
all I can find online, like “TableGen BackEnds” and “Writing an LLVM Backend”, don’t go into these details, but I seem to need a deeper understanding,
For example when I add “i32:” to an internal node of pattern tree, for example “i32:shl” in
[(set i32:$dst (i32:shl i32:rs1, i32:rs2))]
Then I get the error “expected variable name in dag operator”, and a source cursor pointing to the “shl”
I am able to jump to all kinds of conclusions about the nature of this “error”, but don’t have any hard facts to go by.
–Peter.