Skip to content

Commit b542cfa

Browse files
committed
Some rewording
1 parent 2d05f42 commit b542cfa

File tree

1 file changed

+12
-9
lines changed

1 file changed

+12
-9
lines changed

libyul/backends/wasm/polyfill/Interface.yul

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -67,24 +67,27 @@ function calldatacopy(x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4) {
6767
let cds:i32 := eth.getCallDataSize()
6868
let destination:i32 := u256_to_i32(x1, x2, x3, x4)
6969
let offset:i32 := u256_to_i32(y1, y2, y3, y4)
70-
let size:i32 := u256_to_i32(z1, z2, z3, z4)
71-
let copy_size:i32 := size
70+
let requested_size:i32 := u256_to_i32(z1, z2, z3, z4)
7271
// overflow?
73-
if i32.gt_u(offset, i32.sub(0xffffffff:i32, size)) {
72+
if i32.gt_u(offset, i32.sub(0xffffffff:i32, requested_size)) {
7473
eth.revert(0:i32, 0:i32)
7574
}
76-
if i32.gt_u(i32.add(offset, size), cds) {
77-
copy_size := i32.sub(cds, offset)
75+
76+
let available_size := i32.sub(cds, offset)
77+
if i32.lt_u(offset, cds) {
78+
available_size := 0:i32
7879
}
79-
if i32.gt_u(copy_size, 0:i32) {
80+
81+
if i32.gt_u(available_size, 0:i32) {
8082
eth.callDataCopy(
8183
destination,
8284
offset,
83-
copy_size
85+
available_size
8486
)
8587
}
86-
if i32.gt_u(size, copy_size) {
87-
memset(i32.add(destination, copy_size), 0:i32, i32.sub(size, copy_size))
88+
89+
if i32.gt_u(requested_size, available_size) {
90+
memset(i32.add(destination, available_size), 0:i32, i32.sub(requested_size, available_size))
8891
}
8992
}
9093

0 commit comments

Comments
 (0)