Commit 7cf627f 1 parent 3edaaa0 commit 7cf627f Copy full SHA for 7cf627f
File tree 2 files changed +19
-0
lines changed
2 files changed +19
-0
lines changed Original file line number Diff line number Diff line change 19
19
- [ Transaction Simulation] ( #transaction-simulation )
20
20
- [ Deposit Requests] ( #deposit-requests )
21
21
- [ Block Body Withdrawals List] ( #block-body-withdrawals-list )
22
+ - [ EVM Changes] ( #evm-changes )
22
23
- [ Block Sealing] ( #block-sealing )
23
24
- [ Engine API Updates] ( #engine-api-updates )
24
25
- [ Update to ` ExecutableData ` ] ( #update-to-executabledata )
@@ -149,6 +150,23 @@ deposit type requests may always be excluded.
149
150
150
151
Withdrawals list in the block body is encoded as an empty RLP list.
151
152
153
+ ## EVM Changes
154
+
155
+ Similar to the ` bn256Pairing ` precompile in the [ granite hardfork] ( ../granite/exec-engine.md ) ,
156
+ [ EIP-2537] ( https://eips.ethereum.org/EIPS/eip-2537 ) introduces a BLS
157
+ precompile that short-circuits depending on input size in the EVM.
158
+
159
+ The input size limits of the BLS precompile contracts are listed below:
160
+
161
+ - G1 multiple-scalar-multiply: ` input_size <= 513760 bytes `
162
+ - G2 multiple-scalar-multiply: ` input_size <= 488448 bytes `
163
+ - Pairing check: ` input_size <= 235008 bytes `
164
+
165
+ The rest of the BLS precompiles are fixed-size operations which have a fixed gas cost.
166
+
167
+ All of the BLS precompiles should be [ accelerated] ( ../../fault-proof/index.md#precompile-accelerators ) in fault proof
168
+ programs so they call out to the L1 instead of calculating the result inside the program.
169
+
152
170
## Block Sealing
153
171
154
172
[ EIP-7251] ( https://eips.ethereum.org/EIPS/eip-7251 ) introduces new request type ` 0x02 ` , the ` CONSOLIDATION_REQUEST_TYPE ` .
Original file line number Diff line number Diff line change @@ -17,6 +17,7 @@ This document is not finalized and should be considered experimental.
17
17
- [ Pectra] ( https://eips.ethereum.org/EIPS/eip-7600 ) (Execution Layer):
18
18
- [ EIP-7702] ( https://eips.ethereum.org/EIPS/eip-7702 )
19
19
- [ Span Batch Updates] ( ./derivation.md#span-batch-updates )
20
+ - [ EIP-2537] ( https://eips.ethereum.org/EIPS/eip-2537 )
20
21
- [ EIP-2935] ( https://eips.ethereum.org/EIPS/eip-2935 )
21
22
- [ EIP-7002] ( https://eips.ethereum.org/EIPS/eip-7002 )
22
23
- The EIP-7002 predeploy contract and syscall are not adopted as part of the OP Stack.
You can’t perform that action at this time.
0 commit comments