Now that we have some new “v4” instructions, it seems a good time to ask about

what it means to support (or comply with) the ISA RFC once published.  Does

it mean that a verifier/disassembler/JIT compiler/etc. MUST support *all* the
non-deprecated instructions in the document?   That is any runtime or tool that
doesn’t support the new instructions is considered non-compliant with the BPF ISA?

 

Or should we create some things that are SHOULDs, or finer grained units of
compliance so as to not declare existing deployments non-compliant?

Previously we only talked about cases where instructions were added in an
extension RFC which would naturally provide a separate RFC to conform to.

But I don’t think we discussed things like new instructions in the main spec like
we have now.

 

Dave