On Wed, Jun 03, 2020 at 02:09:11PM -0500, Segher Boessenkool wrote: > Yeah, but that is specific to the vectoriser, not something that the > RTL expander should have to deal with. A big impedance mismatch there.
It isn't specific to vectorizer, many named patterns aren't allowed to FAIL and many others are. E.g. if one looks at optabs.c, there are many calls to maybe_emit_* functions which are allowed to FAIL, and many calls to the corresponding emit_* functions that assert that it doesn't FAIL. It is true that the documentation documents this in some and not in all cases. Jakub