[PSA] ODS Op `parser`/`printer` fields are being removed!

Hi all!

This is a PSA that the ODS operation parser and printer code block fields are being removed in favor of a hasCustomAssemblyFormat bit field.

What this means is that instead of specifying a code block for the parser/printer, you will instead define a ParseResult MyOp::parse(OpAsmParser &parser, OperationState &result) and void MyOp::print(OpAsmPrinter &p) functions in the source file (see D119054). This is an important transition that we’ve been meaning to do for a while, and will solve a bunch of awkwardness surrounding the current parser/printer code blocks (lots of code in tablegen, people defining their own patterns for parser definition, etc.). I’ll be leaving the current fields up for a while to give time for a transition. This would also be a good time to consider switching to the declarative format specification if you haven’t already!

– River

1 Like