Overview
Opcode:0x92
Introduced: Frontier (EVM genesis)
SWAP3 exchanges the top stack item with the 4th item from the top. Only these two positions change - all other items remain in place.
Specification
Stack Input:Behavior
SWAP3 exchanges positions of the top item and the item at position 4 from top. Requires stack depth ≥ 4. Key characteristics:- Requires stack depth ≥ 4
- Only two items change positions
- Middle items (items 1-3) unchanged
- StackUnderflow if depth < 4
- Stack depth unchanged
Examples
Basic Usage
Solidity Compilation
Assembly Usage
Gas Cost
Cost: 3 gas (GasFastestStep) All SWAP1-16 operations cost the same despite different stack depths accessed. Comparison:| Operation | Gas | Note |
|---|---|---|
| SWAP3 | 3 | Swap with 4th item |
| DUP1-16 | 3 | Same cost tier |
| POP | 2 | Cheaper |
Common Usage
Deep Stack Manipulation
Storage Optimization
Stack Depth Requirements
Minimum Depth
Safe Usage
Implementation
- TypeScript
Edge Cases
Stack Underflow
Out of Gas
Identity Swap
Maximum Values
References
- Yellow Paper - Section 9.1 (Stack Operations)
- EVM Codes - SWAP3
- Solidity Assembly - swap3

