Skip to main content
This is an updated version of the PVM reference page at wolflo/evm-opcodes↗. Also drawn from the Ethereum’s Yellow Paper↗, the Jello Paper↗, and the Parallax client implementation. This is intended to be an accessible reference, but it is not particularly rigorous. If you want to be certain of correctness and aware of every edge case, using the Jello Paper or a client implementation is advisable. Looking for an interactive reference? Check out evm.codes↗. For operations with dynamic gas costs, see gas.md↗. Parallax runs the EVM as of Ethereum’s Berlin fork, with no later fork active: opcodes introduced afterwards, such as BASEFEE (0x48, London), PUSH0 (0x5F, Shanghai) and the Cancun opcodes (0x49, 0x4A, 0x5C-0x5E), are invalid, and 0x44 is DIFFICULTY. Compile Solidity with evmVersion: "berlin" (solc defaults to a later version and emits PUSH0 from 0.8.20). 💡 Quick tip: To view entire lines, use [shift] + scroll to scroll horizontally on desktop. \