I’m generally in favor of 2.1 – I think it’s the cleanest option so far as easy decoding and readability. The postfix PUSH is also good in that respect, and the extra byte “future-proofs” the immediate argument.
I propose the PUSH prefix in EIP-7979 because I am restricting validated uses of JUMP
to PUSH const JUMP
(and adding PUSH const CALLSUB
) and don’t want to change the syntax.
I do propose to use immediate arguments in EIP-8013 which is all new opcodes intended to work only in MAGIC
(0xE0) code.