Overview
Opcode:0x96
Introduced: Frontier (EVM genesis)
SWAP7 exchanges the top stack item with the 8th item from the top. Only these two positions change - all other items remain in place.
Specification
Stack Input:Behavior
SWAP7 exchanges positions of the top item and the item at position 8 from top. Requires stack depth ≥ 8. Key characteristics:- Requires stack depth ≥ 8
- Only two items change positions
- Middle items (items 1-7) unchanged
- StackUnderflow if depth < 8
- 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 |
|---|---|---|
| SWAP7 | 3 | Swap with 8th 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 - SWAP7
- Solidity Assembly - swap7

