-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinfo.ts
More file actions
36 lines (34 loc) · 1.77 KB
/
Copy pathinfo.ts
File metadata and controls
36 lines (34 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import type { Exploration } from '@/explorations/REGISTRY'
import { Tag } from '@/explorations/TAGS'
import image from './image.jpg'
import imageSmall from './image_small.jpg'
export const INFO: Exploration = {
id: 'eip-8024',
path: '/eip-8024-stack-opcodes-dupn-swapn-exchange',
title: 'EIP-8024 DUPN, SWAPN & EXCHANGE Stack Opcodes',
seoDescription:
'Interactive EVM explainer for EIP-8024 DUPN, SWAPN, and EXCHANGE stack opcodes — step through deep stack access in an Amsterdam-fork EVM in your browser.',
infoURL: 'https://eips.ethereum.org/EIPS/eip-8024',
topic: 'robustness',
timeline: 'glamsterdam',
tags: [Tag.EVM],
image,
imageSmall,
imageBoxHeight: '19rem',
rightPanel: true,
introText:
'<b>How do you reach deep stack items without blowing the 1024 limit?</b> ' +
'Solidity contracts often hit "stack too deep" when juggling many locals. EIP-8024 adds three ' +
'backward-compatible opcodes — <code>DUPN</code> (0xe6), <code>SWAPN</code> (0xe7), and ' +
'<code>EXCHANGE</code> (0xe8) — that extend <code>DUP</code>/<code>SWAP</code> to depths ' +
'17–235 using a single-byte immediate.',
usageText:
'Pick an example, then use <b>Step</b> to walk opcode by opcode or <b>Run</b> for the full ' +
'sequence. Watch the stack panel update after each step; the immediate decoder on the right ' +
'latches when you rest on DUPN, SWAPN, or EXCHANGE. The DUPN demo uses a 17-item stack ' +
'(the minimum for depth 16); SWAPN needs one slot more at the same depth; EXCHANGE fits in ' +
'four pushes. Execution runs on an Amsterdam-fork EVM via EthereumJS.',
creatorName: 'HolgerD77',
creatorURL: 'https://x.com/HolgerD77',
poweredBy: [{ name: 'EthereumJS', href: 'https://github.com/ethereumjs/ethereumjs-monorepo' }],
}