[Question] Handshake dialect doc

Hi everyone! I’m wondering if there is any doc for the handshake dialect. I’ve read 'handshake' Dialect - CIRCT and the Rational, but there are still a lot that I don’t understand. I’m designing a pass for my own dialect, which may manage the lowering to handshake. Anything more than these would be a great help!

The original slides linked from the Rationale might be the best introduction to “handshaking dataflow” representation of programs: handshake_dialect.pdf - Google Drive. There are other resources in the literature about this mechanism in general, but hopefully the examples starting on slide 12 help. A bit has changed in MLIR and Handshake since then, but I think you should be able to get the gist.

Otherwise, the best resources might be the tests, which should how example MLIR dialects convert into Handshake: circt/test/Conversion/StandardToHandshake at main · llvm/circt · GitHub

Thx for replying :wink: I thought there would be something more than these. I’ll investigate more into these examples.