Skip to content

Commit 70e87cd

Browse files
committed
fix: txndata nbrows per type
1 parent a931daf commit 70e87cd

File tree

6 files changed

+53
-28
lines changed

6 files changed

+53
-28
lines changed

arithmetization/src/main/java/net/consensys/linea/zktracer/module/txndata/module/LondonTxnData.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@
1515

1616
package net.consensys.linea.zktracer.module.txndata.module;
1717

18-
import static net.consensys.linea.zktracer.TraceLondon.Txndata.*;
18+
import static net.consensys.linea.zktracer.TraceLondon.Txndata.NB_ROWS_TYPE_0;
19+
import static net.consensys.linea.zktracer.TraceLondon.Txndata.NB_ROWS_TYPE_1;
20+
import static net.consensys.linea.zktracer.TraceLondon.Txndata.NB_ROWS_TYPE_2;
1921

2022
import net.consensys.linea.zktracer.module.euc.Euc;
2123
import net.consensys.linea.zktracer.module.hub.Hub;
@@ -25,15 +27,15 @@
2527

2628
public class LondonTxnData extends TxnData {
2729

28-
private static final int N_ROWS_TX_MAX_LONDON =
29-
Math.max(Math.max(NB_ROWS_TYPE_0, NB_ROWS_TYPE_1), NB_ROWS_TYPE_2);
30-
3130
public LondonTxnData(Hub hub, Wcp wcp, Euc euc) {
3231
super(hub, wcp, euc);
3332
}
3433

3534
@Override
3635
public void traceEndTx(TransactionProcessingMetadata tx) {
37-
operations().add(new LondonTxndataOperation(wcp(), euc(), tx, N_ROWS_TX_MAX_LONDON));
36+
operations()
37+
.add(
38+
new LondonTxndataOperation(
39+
wcp(), euc(), tx, NB_ROWS_TYPE_0, NB_ROWS_TYPE_1, NB_ROWS_TYPE_2));
3840
}
3941
}

arithmetization/src/main/java/net/consensys/linea/zktracer/module/txndata/module/ShanghaiTxnData.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@
1515

1616
package net.consensys.linea.zktracer.module.txndata.module;
1717

18-
import static net.consensys.linea.zktracer.TraceShanghai.Txndata.*;
18+
import static net.consensys.linea.zktracer.TraceShanghai.Txndata.NB_ROWS_TYPE_0;
19+
import static net.consensys.linea.zktracer.TraceShanghai.Txndata.NB_ROWS_TYPE_1;
20+
import static net.consensys.linea.zktracer.TraceShanghai.Txndata.NB_ROWS_TYPE_2;
1921

2022
import net.consensys.linea.zktracer.module.euc.Euc;
2123
import net.consensys.linea.zktracer.module.hub.Hub;
@@ -24,15 +26,16 @@
2426
import net.consensys.linea.zktracer.types.TransactionProcessingMetadata;
2527

2628
public class ShanghaiTxnData extends LondonTxnData {
27-
private static final int N_ROWS_TX_MAX_SHANGHAI =
28-
Math.max(Math.max(NB_ROWS_TYPE_0, NB_ROWS_TYPE_1), NB_ROWS_TYPE_2);
2929

3030
public ShanghaiTxnData(Hub hub, Wcp wcp, Euc euc) {
3131
super(hub, wcp, euc);
3232
}
3333

3434
@Override
3535
public void traceEndTx(TransactionProcessingMetadata tx) {
36-
operations().add(new ShanghaiTxndataOperation(wcp(), euc(), tx, N_ROWS_TX_MAX_SHANGHAI));
36+
operations()
37+
.add(
38+
new ShanghaiTxndataOperation(
39+
wcp(), euc(), tx, NB_ROWS_TYPE_0, NB_ROWS_TYPE_1, NB_ROWS_TYPE_2));
3740
}
3841
}

arithmetization/src/main/java/net/consensys/linea/zktracer/module/txndata/moduleOperation/LondonTxndataOperation.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,13 @@
2424
public class LondonTxndataOperation extends TxndataOperation {
2525

2626
public LondonTxndataOperation(
27-
Wcp wcp, Euc euc, TransactionProcessingMetadata tx, int nRowsTxMax) {
28-
super(wcp, euc, tx, nRowsTxMax);
27+
Wcp wcp,
28+
Euc euc,
29+
TransactionProcessingMetadata tx,
30+
int nbRowsType0,
31+
int nbRowsType1,
32+
int nbRowsType2) {
33+
super(wcp, euc, tx, nbRowsType0, nbRowsType1, nbRowsType0);
2934
}
3035

3136
@Override

arithmetization/src/main/java/net/consensys/linea/zktracer/module/txndata/moduleOperation/ShanghaiTxndataOperation.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,13 @@ public class ShanghaiTxndataOperation extends LondonTxndataOperation {
3030
private static final Bytes WORD_SIZE_BYTES = Bytes.ofUnsignedInt(WORD_SIZE);
3131

3232
public ShanghaiTxndataOperation(
33-
Wcp wcp, Euc euc, TransactionProcessingMetadata tx, int nbRowsTxMax) {
34-
super(wcp, euc, tx, nbRowsTxMax);
33+
Wcp wcp,
34+
Euc euc,
35+
TransactionProcessingMetadata tx,
36+
int nbRowsType0,
37+
int nbRowsType1,
38+
int nbRowsType2) {
39+
super(wcp, euc, tx, nbRowsType0, nbRowsType1, nbRowsType2);
3540
}
3641

3742
@Override

arithmetization/src/main/java/net/consensys/linea/zktracer/module/txndata/moduleOperation/TxndataOperation.java

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,6 @@
3131
import static net.consensys.linea.zktracer.Trace.Txndata.TYPE_1_RLP_TXN_PHASE_NUMBER_7;
3232
import static net.consensys.linea.zktracer.Trace.Txndata.TYPE_2_RLP_TXN_PHASE_NUMBER_6;
3333
import static net.consensys.linea.zktracer.Trace.Txndata.TYPE_2_RLP_TXN_PHASE_NUMBER_7;
34-
import static net.consensys.linea.zktracer.TraceLondon.Txndata.NB_ROWS_TYPE_0;
35-
import static net.consensys.linea.zktracer.TraceLondon.Txndata.NB_ROWS_TYPE_1;
36-
import static net.consensys.linea.zktracer.TraceLondon.Txndata.NB_ROWS_TYPE_2;
3734
import static net.consensys.linea.zktracer.module.Util.getTxTypeAsInt;
3835
import static net.consensys.linea.zktracer.types.AddressUtils.highPart;
3936
import static net.consensys.linea.zktracer.types.AddressUtils.lowPart;
@@ -67,21 +64,34 @@ public abstract class TxndataOperation extends ModuleOperation {
6764
private static final Bytes EIP_2681_MAX_NONCE = bigIntegerToBytes(EIP2681_MAX_NONCE);
6865
private static final int NB_WCP_EUC_ROWS_FRONTIER_ACCESS_LIST = 7;
6966

67+
private final int nbRowsType0;
68+
private final int nbRowsType1;
69+
private final int nbRowsType2;
7070
private final int nbRowsTxMax;
7171
protected final List<TxnDataComparisonRecord> callsToEucAndWcp;
7272
private final ArrayList<RlptxnOutgoing> valuesToRlptxn;
7373
private final ArrayList<RlptxrcptOutgoing> valuesToRlpTxrcpt;
7474
private static final Bytes BYTES_MAX_REFUND_QUOTIENT = Bytes.of(MAX_REFUND_QUOTIENT);
7575

76-
public TxndataOperation(Wcp wcp, Euc euc, TransactionProcessingMetadata tx, int nbRowsTxMax) {
76+
public TxndataOperation(
77+
Wcp wcp,
78+
Euc euc,
79+
TransactionProcessingMetadata tx,
80+
int nbRowsType0,
81+
int nbRowsType1,
82+
int nbRowsType2) {
7783

7884
this.wcp = wcp;
7985
this.euc = euc;
8086
this.tx = tx;
8187

82-
// The number of rows max depends on the fork so the parameter is passed in constructor and set
83-
// to be used in setRlptxrcptValues function
84-
this.nbRowsTxMax = nbRowsTxMax;
88+
// The number of rows type0, type1, typ2 and thereforeTxMax depends on the fork so the
89+
// parameters are passed in constructor and set
90+
// to be used in setter functions
91+
this.nbRowsType0 = nbRowsType0;
92+
this.nbRowsType1 = nbRowsType1;
93+
this.nbRowsType2 = nbRowsType2;
94+
this.nbRowsTxMax = Math.max(Math.max(nbRowsType0, nbRowsType1), nbRowsType2);
8595
this.callsToEucAndWcp = new ArrayList<>(nbRowsTxMax);
8696
this.valuesToRlptxn = new ArrayList<>(nbRowsTxMax);
8797
this.valuesToRlpTxrcpt = new ArrayList<>(nbRowsTxMax);
@@ -141,12 +151,12 @@ private void setCallsToEucAndWcp() {
141151

142152
switch (type) {
143153
case FRONTIER -> {
144-
for (int i = NB_WCP_EUC_ROWS_FRONTIER_ACCESS_LIST; i < NB_ROWS_TYPE_0; i++) {
154+
for (int i = NB_WCP_EUC_ROWS_FRONTIER_ACCESS_LIST; i < this.nbRowsType0; i++) {
145155
callsToEucAndWcp.add(TxnDataComparisonRecord.empty());
146156
}
147157
}
148158
case ACCESS_LIST -> {
149-
for (int i = NB_WCP_EUC_ROWS_FRONTIER_ACCESS_LIST; i < NB_ROWS_TYPE_1; i++) {
159+
for (int i = NB_WCP_EUC_ROWS_FRONTIER_ACCESS_LIST; i < this.nbRowsType1; i++) {
150160
callsToEucAndWcp.add(TxnDataComparisonRecord.empty());
151161
}
152162
}
@@ -228,7 +238,7 @@ private void setRlptxnValues() {
228238
(short) TYPE_0_RLP_TXN_PHASE_NUMBER_6,
229239
Bytes.EMPTY,
230240
Bytes.minimalBytes(tx.getEffectiveGasPrice())));
231-
for (int i = 7; i < NB_ROWS_TYPE_0 + 1; i++) {
241+
for (int i = 7; i < this.nbRowsType0 + 1; i++) {
232242
valuesToRlptxn.add(RlptxnOutgoing.empty());
233243
}
234244
}
@@ -247,7 +257,7 @@ private void setRlptxnValues() {
247257
Bytes.ofUnsignedInt(tx.numberWarmedKey()),
248258
Bytes.ofUnsignedInt(tx.numberWarmedAddress())));
249259

250-
for (int i = 8; i < NB_ROWS_TYPE_1 + 1; i++) {
260+
for (int i = 8; i < this.nbRowsType1 + 1; i++) {
251261
valuesToRlptxn.add(RlptxnOutgoing.empty());
252262
}
253263
}
@@ -268,7 +278,7 @@ private void setRlptxnValues() {
268278
Bytes.ofUnsignedInt(tx.numberWarmedKey()),
269279
Bytes.ofUnsignedInt(tx.numberWarmedAddress())));
270280

271-
for (int i = 8; i < NB_ROWS_TYPE_2 + 1; i++) {
281+
for (int i = 8; i < this.nbRowsType2 + 1; i++) {
272282
valuesToRlptxn.add(RlptxnOutgoing.empty());
273283
}
274284
}
@@ -288,7 +298,7 @@ public void setRlptxrcptValues() {
288298
this.valuesToRlpTxrcpt.add(
289299
RlptxrcptOutgoing.set(
290300
(short) RLP_RCPT_SUBPHASE_ID_CUMUL_GAS, tx.getAccumulatedGasUsedInBlock()));
291-
// i+3 to i+MAX_NB_ROWS
301+
// i+3 to i+nbRowsTxMax
292302
for (int ct = 3; ct < this.nbRowsTxMax; ct++) {
293303
this.valuesToRlpTxrcpt.add(RlptxrcptOutgoing.emptyValue());
294304
}

testing/src/main/java/net/consensys/linea/testing/ToyExecutionEnvironmentV2.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
package net.consensys.linea.testing;
1717

1818
import static net.consensys.linea.zktracer.ChainConfig.MAINNET_TESTCONFIG;
19-
import static net.consensys.linea.zktracer.Fork.SHANGHAI;
19+
import static net.consensys.linea.zktracer.Fork.LONDON;
2020
import static net.consensys.linea.zktracer.Trace.LINEA_BASE_FEE;
2121

2222
import java.util.*;
@@ -40,7 +40,7 @@
4040
@Builder
4141
@Slf4j
4242
public class ToyExecutionEnvironmentV2 {
43-
public static final ChainConfig UNIT_TEST_CHAIN = MAINNET_TESTCONFIG(SHANGHAI);
43+
public static final ChainConfig UNIT_TEST_CHAIN = MAINNET_TESTCONFIG(LONDON);
4444
public static final Address DEFAULT_COINBASE_ADDRESS =
4545
Address.fromHexString("0xc019ba5e00000000c019ba5e00000000c019ba5e");
4646
public static final long DEFAULT_BLOCK_NUMBER = 6678980;

0 commit comments

Comments
 (0)