I have a dialect (
iree_pydm) which defines
func op. Since the dialect is mostly self contained, I use the new
getDefaultDialect() feature with it to make it more readable – and it is quite nice.
However, there is some incidental use of the
std dialect, specifically for CFG primitives, and this is fine (my dialect bridges types properly). However, my dialect has a
select op, and so does the standard dialect. Some CFG patterns produce an
std.select on canonicalization but this just prints as
select without a prefix. This then fails to round-trip because the parser thinks it is part of my dialect, and it fails verification (mine does not take an
i1 condition value).
I’m poking through trying to refresh my memory on how all of this works, but figured I would ask: is there something that makes
std special so that its prefixes don’t print?