calyxir/calyx

Create an `external-to-ref` pass

Closed this issue · 3 comments

To ease the integration of Calyx programs into our AXI-wrapper #1733 it would be helpful to have an external-to-ref pass that changes toplevel memories marked @external to ref memories. I believe this would require changing part of the wellformedness check, which doesn't currently allow for ref in the toplevel? Unless we want to limit this pass to cases where we're using --synthesis flags.

Hopefully this would also help with any future work to deprecate @external in favor of ref, as discussed here.

I will also say that this would be my first pass! So any pointing-in-the-right-direction would provide a big head start on this.

Yes, let's change that well-formedness check! IMO we should just disable it, as part of the @external deprecation effort (cf #1603 (comment)). --synthesis is also headed for the grave.

Closed by #1952