Skip to content

Commit b1903a1

Browse files
committed
Remove EIP-3869 charge from TXCREATE
The cost of validation is covered by transaction's initcode cost (part of intrinsic cost.)
1 parent fc6a529 commit b1903a1

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

spec/eof.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -242,13 +242,12 @@ The following instructions are introduced in EOF code:
242242
- fails (returns 0 on the stack) if such initcode does not exist in the transaction, or if called from a transaction of `TransactionType` other than `INITCODE_TX_TYPE`
243243
- caller's nonce is not updated and gas for initcode execution is not consumed. Only `TXCREATE` constant gas was consumed
244244
- let `initcontainer` be that EOF container, and `initcontainer_size` its length in bytes
245-
- deduct `2 * ((initcontainer_size + 31) // 32)` gas (EIP-3860 charge)
246245
- just before executing the initcode container:
247246
- **validates the initcode container and all its subcontainers recursively**
248247
- validation includes checking that the `initcontainer` does not contain `RETURN` or `STOP`
249248
- in addition to this, checks if the initcode container has its `len(data_section)` equal to `data_size`, i.e. data section content is exactly as the size declared in the header (see [Data section lifecycle](#data-section-lifecycle))
250249
- fails (returns 0 on the stack) if any of those was invalid
251-
- caller’s nonce is not updated and gas for initcode execution is not consumed. Only `TXCREATE` constant and EIP-3860 gas were consumed
250+
- caller’s nonce is not updated and gas for initcode execution is not consumed. Only `TXCREATE` constant gas was consumed
252251
- `RETURNCONTRACT (0xee)` instruction
253252
- loads `uint8` immediate `deploy_container_index`
254253
- pops two values from the stack: `aux_data_offset`, `aux_data_size` referring to memory section that will be appended to deployed container's data

0 commit comments

Comments
 (0)