EPFL-LAP / dynamatic

DHLS (Dynamic High-Level Synthesis) compiler based on MLIR
Other
65 stars 19 forks source link

Fixed HandshakeSpeculationPass #158

Closed shundroid closed 1 month ago

shundroid commented 1 month ago

Now:

Fixes:

  1. A bug in SpeculatorOp::parse (the order of arguments was wrong)

  2. Relaxed types from ChannelType to HandshakeType to support control tokens as well

    1. Handshake_SpecOp dataIn/Out
    2. Speculator dataIn/Out
    3. SpeculatingBranch dataOperand, trueResult, falseResult
  3. Changed the type of SpeculatingBranch's tagFromOperand arg

    • Previously BoolChannel, changed to HandshakeChannel
  4. Updated test MLIR files under experimental/test/lib/Transforms/Speculation to use the latest type system

    • Didn't change CHECKS comments but all tests passed