Skip to content

Commit 620ca01

Browse files
authored
Merge pull request #42 from fjl/geas-0.3
all: update constructor codes for geas v0.3.0
2 parents f1c13e2 + 582ff6b commit 620ca01

File tree

4 files changed

+46
-54
lines changed

4 files changed

+46
-54
lines changed

src/beacon_root/ctor.eas

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
1-
;; Copy and return code.
2-
push @.end - @.start
3-
dup1
4-
push @.start
5-
push0
6-
codecopy
7-
push0
8-
return
1+
;; Copy and return code.
2+
push len(code) ; [len]
3+
dup1 ; [len, len]
4+
push @code ; [codeOffset, len, len]
5+
push 0 ; [dest, codeOffset, len, len]
6+
codecopy ; [len]
7+
push 0 ; [ptr, len]
8+
return ; []
99

10-
.start:
11-
#assemble "main.eas"
12-
.end:
10+
#bytes code: assemble("main.eas")

src/consolidations/ctor.eas

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
1-
;; Store 0xff..ff as a temporary excess value to avoid requests being queued
2-
;; before the fork.
3-
push 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
4-
push0
5-
sstore
1+
;; Store 0xff..ff as a temporary excess value to avoid requests being queued
2+
;; before the fork.
3+
push (1<<256)-1 ; [excess]
4+
push 0 ; [slot, excess]
5+
sstore ; []
66

7-
;; Copy and return code.
8-
push @.end - @.start
9-
dup1
10-
push @.start
11-
push0
12-
codecopy
13-
push0
14-
return
7+
;; Copy and return code.
8+
push len(code) ; [len]
9+
dup1 ; [len, len]
10+
push @code ; [codeOffset, len, len]
11+
push 0 ; [dest, codeOffset, len, len]
12+
codecopy ; [len]
13+
push 0 ; [ptr, len]
14+
return ; []
1515

16-
.start:
17-
#assemble "main.eas"
18-
.end:
16+
#bytes code: assemble("main.eas")

src/execution_hash/ctor.eas

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
1-
;; Copy and return code.
2-
push @.end - @.start
3-
dup1
4-
push @.start
5-
push0
6-
codecopy
7-
push0
8-
return
1+
;; Copy and return code.
2+
push len(code) ; [len]
3+
dup1 ; [len, len]
4+
push @code ; [codeOffset, len, len]
5+
push 0 ; [dest, codeOffset, len, len]
6+
codecopy ; [len]
7+
push 0 ; [ptr, len]
8+
return ; []
99

10-
.start:
11-
#assemble "main.eas"
12-
.end:
10+
#bytes code: assemble("main.eas")

src/withdrawals/ctor.eas

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
1-
;; Store 0xff..ff as a temporary excess value to avoid requests being queued
2-
;; before the fork.
3-
push 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
4-
push0
5-
sstore
1+
;; Store 0xff..ff as a temporary excess value to avoid requests being queued
2+
;; before the fork.
3+
push (1<<256)-1 ; [excess]
4+
push 0 ; [slot, excess]
5+
sstore ; []
66

7-
;; Copy and return code.
8-
push @.end - @.start
9-
dup1
10-
push @.start
11-
push0
12-
codecopy
13-
push0
14-
return
7+
;; Copy and return code.
8+
push len(code) ; [len]
9+
dup1 ; [len, len]
10+
push @code ; [codeOffset, len, len]
11+
push 0 ; [dest, codeOffset, len, len]
12+
codecopy ; [len]
13+
push 0 ; [ptr, len]
14+
return ; []
1515

16-
.start:
17-
#assemble "main.eas"
18-
.end:
16+
#bytes code: assemble("main.eas")

0 commit comments

Comments
 (0)