Skip to content

Commit dd09b76

Browse files
authored
chore!: remove coinbase and unimplemented block gas limit opcodes from AVM (#8408)
1 parent e51d157 commit dd09b76

File tree

25 files changed

+69
-373
lines changed

25 files changed

+69
-373
lines changed

avm-transpiler/src/opcodes.rs

-6
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,8 @@ pub enum AvmOpcode {
2929
VERSION,
3030
BLOCKNUMBER,
3131
TIMESTAMP,
32-
COINBASE,
3332
FEEPERL2GAS,
3433
FEEPERDAGAS,
35-
BLOCKL2GASLIMIT,
36-
BLOCKDAGASLIMIT,
3734
CALLDATACOPY,
3835
// Gas
3936
L2GASLEFT,
@@ -116,11 +113,8 @@ impl AvmOpcode {
116113
AvmOpcode::VERSION => "VERSION",
117114
AvmOpcode::BLOCKNUMBER => "BLOCKNUMBER",
118115
AvmOpcode::TIMESTAMP => "TIMESTAMP",
119-
AvmOpcode::COINBASE => "COINBASE",
120116
AvmOpcode::FEEPERL2GAS => "FEEPERL2GAS",
121117
AvmOpcode::FEEPERDAGAS => "FEEPERDAGAS",
122-
AvmOpcode::BLOCKL2GASLIMIT => "BLOCKL2GASLIMIT",
123-
AvmOpcode::BLOCKDAGASLIMIT => "BLOCKDAGASLIMIT",
124118
// Execution Environment - Calldata
125119
AvmOpcode::CALLDATACOPY => "CALLDATACOPY",
126120

barretenberg/cpp/pil/avm/constants_gen.pil

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ namespace constants(256);
2020
pol VERSION_SELECTOR = 30;
2121
pol BLOCK_NUMBER_SELECTOR = 31;
2222
pol TIMESTAMP_SELECTOR = 33;
23-
pol COINBASE_SELECTOR = 34;
2423
pol FEE_PER_DA_GAS_SELECTOR = 36;
2524
pol FEE_PER_L2_GAS_SELECTOR = 37;
2625
pol END_GLOBAL_VARIABLES = 38;

barretenberg/cpp/pil/avm/kernel.pil

+1-4
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,6 @@ namespace main(256);
111111
#[TIMESTAMP_KERNEL]
112112
sel_op_timestamp * (kernel_in_offset - constants.TIMESTAMP_SELECTOR) = 0;
113113

114-
#[COINBASE_KERNEL]
115-
sel_op_coinbase * (kernel_in_offset - constants.COINBASE_SELECTOR) = 0;
116-
117114
// CONTEXT - ENVIRONMENT - GLOBALS - FEES
118115
#[FEE_DA_GAS_KERNEL]
119116
sel_op_fee_per_da_gas * (kernel_in_offset - constants.FEE_PER_DA_GAS_SELECTOR) = 0;
@@ -170,7 +167,7 @@ namespace main(256);
170167
//===== LOOKUPS INTO THE PUBLIC INPUTS ===========================================
171168
pol KERNEL_INPUT_SELECTORS = sel_op_address + sel_op_storage_address + sel_op_sender
172169
+ sel_op_function_selector + sel_op_transaction_fee + sel_op_chain_id
173-
+ sel_op_version + sel_op_block_number + sel_op_coinbase + sel_op_timestamp
170+
+ sel_op_version + sel_op_block_number + sel_op_timestamp
174171
+ sel_op_fee_per_l2_gas + sel_op_fee_per_da_gas;
175172
// Ensure that only one kernel lookup is active when the kernel_in_offset is active
176173
#[KERNEL_INPUT_ACTIVE_CHECK]

barretenberg/cpp/pil/avm/main.pil

-2
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@ namespace main(256);
5151
pol commit sel_op_chain_id;
5252
pol commit sel_op_version;
5353
pol commit sel_op_block_number;
54-
pol commit sel_op_coinbase;
5554
pol commit sel_op_timestamp;
5655
// CONTEXT - ENVIRONMENT - GLOBALS - FEES
5756
pol commit sel_op_fee_per_l2_gas;
@@ -224,7 +223,6 @@ namespace main(256);
224223
sel_op_chain_id * (1 - sel_op_chain_id) = 0;
225224
sel_op_version * (1 - sel_op_version) = 0;
226225
sel_op_block_number * (1 - sel_op_block_number) = 0;
227-
sel_op_coinbase * (1 - sel_op_coinbase) = 0;
228226
sel_op_timestamp * (1 - sel_op_timestamp) = 0;
229227
sel_op_fee_per_l2_gas * (1 - sel_op_fee_per_l2_gas) = 0;
230228
sel_op_fee_per_da_gas * (1 - sel_op_fee_per_da_gas) = 0;

barretenberg/cpp/src/barretenberg/vm/avm/tests/execution.test.cpp

+12-32
Original file line numberDiff line numberDiff line change
@@ -1418,20 +1418,16 @@ TEST_F(AvmExecutionTests, kernelInputOpcodes)
14181418
+ to_hex(OpCode::TIMESTAMP) + // opcode TIMESTAMP
14191419
"00" // Indirect flag
14201420
"00000009" // dst_offset
1421-
// Not in simulator
1422-
// + to_hex(OpCode::COINBASE) + // opcode COINBASE
1423-
// "00" // Indirect flag
1424-
// "00000009" // dst_offset
1425-
+ to_hex(OpCode::FEEPERL2GAS) + // opcode FEEPERL2GAS
1426-
"00" // Indirect flag
1427-
"0000000a" // dst_offset
1428-
+ to_hex(OpCode::FEEPERDAGAS) + // opcode FEEPERDAGAS
1429-
"00" // Indirect flag
1430-
"0000000b" // dst_offset
1431-
+ to_hex(OpCode::RETURN) + // opcode RETURN
1432-
"00" // Indirect flag
1433-
"00000001" // ret offset 1
1434-
"0000000b"; // ret size 11
1421+
+ to_hex(OpCode::FEEPERL2GAS) + // opcode FEEPERL2GAS
1422+
"00" // Indirect flag
1423+
"0000000a" // dst_offset
1424+
+ to_hex(OpCode::FEEPERDAGAS) + // opcode FEEPERDAGAS
1425+
"00" // Indirect flag
1426+
"0000000b" // dst_offset
1427+
+ to_hex(OpCode::RETURN) + // opcode RETURN
1428+
"00" // Indirect flag
1429+
"00000001" // ret offset 1
1430+
"0000000b"; // ret size 11
14351431

14361432
auto bytecode = hex_to_bytes(bytecode_hex);
14371433
auto instructions = Deserialization::parse(bytecode);
@@ -1483,13 +1479,6 @@ TEST_F(AvmExecutionTests, kernelInputOpcodes)
14831479
AllOf(Field(&Instruction::op_code, OpCode::TIMESTAMP),
14841480
Field(&Instruction::operands, ElementsAre(VariantWith<uint8_t>(0), VariantWith<uint32_t>(9)))));
14851481

1486-
// COINBASE
1487-
// Not in simulator
1488-
// EXPECT_THAT(instructions.at(8),
1489-
// AllOf(Field(&Instruction::op_code, OpCode::COINBASE),
1490-
// Field(&Instruction::operands, ElementsAre(VariantWith<uint8_t>(0),
1491-
// VariantWith<uint32_t>(10)))));
1492-
14931482
// FEEPERL2GAS
14941483
EXPECT_THAT(instructions.at(9),
14951484
AllOf(Field(&Instruction::op_code, OpCode::FEEPERL2GAS),
@@ -1514,15 +1503,14 @@ TEST_F(AvmExecutionTests, kernelInputOpcodes)
15141503
FF version = 7;
15151504
FF blocknumber = 8;
15161505
FF timestamp = 9;
1517-
// FF coinbase = 10; // Not in simulator
15181506
FF feeperl2gas = 10;
15191507
FF feeperdagas = 11;
15201508

15211509
// The return data for this test should be a the opcodes in sequence, as the opcodes dst address lines up with
15221510
// this array The returndata call above will then return this array
15231511
std::vector<FF> const expected_returndata = {
1524-
address, storage_address, sender, function_selector, transaction_fee, chainid, version,
1525-
blocknumber, /*coinbase,*/ timestamp, feeperl2gas, feeperdagas,
1512+
address, storage_address, sender, function_selector, transaction_fee, chainid,
1513+
version, blocknumber, timestamp, feeperl2gas, feeperdagas,
15261514
};
15271515

15281516
// Set up public inputs to contain the above values
@@ -1540,8 +1528,6 @@ TEST_F(AvmExecutionTests, kernelInputOpcodes)
15401528
public_inputs_vec[VERSION_OFFSET] = version;
15411529
public_inputs_vec[BLOCK_NUMBER_OFFSET] = blocknumber;
15421530
public_inputs_vec[TIMESTAMP_OFFSET] = timestamp;
1543-
// Not in the simulator yet
1544-
// public_inputs_vec[COINBASE_OFFSET] = coinbase;
15451531
// Global variables - Gas
15461532
public_inputs_vec[FEE_PER_DA_GAS_OFFSET] = feeperdagas;
15471533
public_inputs_vec[FEE_PER_L2_GAS_OFFSET] = feeperl2gas;
@@ -1597,12 +1583,6 @@ TEST_F(AvmExecutionTests, kernelInputOpcodes)
15971583
std::ranges::find_if(trace.begin(), trace.end(), [](Row r) { return r.main_sel_op_timestamp == 1; });
15981584
EXPECT_EQ(timestamp_row->main_ia, timestamp);
15991585

1600-
// // Check coinbase
1601-
// Not in simulator
1602-
// auto coinbase_row =
1603-
// std::ranges::find_if(trace.begin(), trace.end(), [](Row r) { return r.main_sel_op_coinbase == 1; });
1604-
// EXPECT_EQ(coinbase_row->main_ia, coinbase);
1605-
16061586
// Check feeperdagas
16071587
auto feeperdagas_row =
16081588
std::ranges::find_if(trace.begin(), trace.end(), [](Row r) { return r.main_sel_op_fee_per_da_gas == 1; });

barretenberg/cpp/src/barretenberg/vm/avm/tests/kernel.test.cpp

-60
Original file line numberDiff line numberDiff line change
@@ -525,40 +525,6 @@ TEST_F(AvmKernelPositiveTests, kernelBlockNumber)
525525
test_kernel_lookup(true, indirect_apply_opcodes, checks);
526526
}
527527

528-
TEST_F(AvmKernelPositiveTests, kernelCoinbase)
529-
{
530-
uint32_t dst_offset = 42;
531-
uint32_t indirect_dst_offset = 69;
532-
auto direct_apply_opcodes = [=](AvmTraceBuilder& trace_builder) {
533-
trace_builder.op_coinbase(/*indirect*/ false, dst_offset);
534-
};
535-
auto indirect_apply_opcodes = [=](AvmTraceBuilder& trace_builder) {
536-
trace_builder.op_set(
537-
/*indirect*/ false,
538-
/*value*/ dst_offset,
539-
/*dst_offset*/ indirect_dst_offset,
540-
AvmMemoryTag::U32);
541-
trace_builder.op_coinbase(/*indirect*/ true, indirect_dst_offset);
542-
};
543-
544-
auto checks = [=](bool indirect, const std::vector<Row>& trace) {
545-
auto fee_row =
546-
std::ranges::find_if(trace.begin(), trace.end(), [](Row r) { return r.main_sel_op_coinbase == FF(1); });
547-
EXPECT_TRUE(fee_row != trace.end());
548-
549-
expect_row(fee_row,
550-
/*kernel_in_offset=*/COINBASE_SELECTOR,
551-
/*ia=*/COINBASE_SELECTOR +
552-
1, // Note the value generated above for public inputs is the same as the index read + 1
553-
/*ind_a*/ indirect ? indirect_dst_offset : 0,
554-
/*mem_addr_a*/ dst_offset,
555-
/*w_in_tag=*/AvmMemoryTag::FF);
556-
};
557-
558-
test_kernel_lookup(false, direct_apply_opcodes, checks);
559-
test_kernel_lookup(true, indirect_apply_opcodes, checks);
560-
}
561-
562528
TEST_F(AvmKernelPositiveTests, kernelTimestamp)
563529
{
564530
uint32_t dst_offset = 42;
@@ -913,32 +879,6 @@ TEST_F(AvmKernelNegativeTests, incorrectIaTimestamp)
913879
negative_test_incorrect_ia_kernel_lookup(apply_opcodes, checks, incorrect_ia, BAD_LOOKUP);
914880
}
915881

916-
TEST_F(AvmKernelNegativeTests, incorrectIaCoinbase)
917-
{
918-
uint32_t dst_offset = 42;
919-
FF incorrect_ia = FF(69);
920-
921-
// We test that the sender opcode is inlcuded at index x in the public inputs
922-
auto apply_opcodes = [=](AvmTraceBuilder& trace_builder) {
923-
trace_builder.op_coinbase(/*indirect*/ false, dst_offset);
924-
};
925-
auto checks = [=](bool indirect, const std::vector<Row>& trace) {
926-
auto row =
927-
std::ranges::find_if(trace.begin(), trace.end(), [](Row r) { return r.main_sel_op_coinbase == FF(1); });
928-
EXPECT_TRUE(row != trace.end());
929-
930-
expect_row(
931-
row,
932-
/*kernel_in_offset=*/COINBASE_SELECTOR,
933-
/*ia=*/incorrect_ia, // Note the value generated above for public inputs is the same as the index read + 1
934-
/*ind_a*/ indirect,
935-
/*mem_addr_a=*/dst_offset,
936-
/*w_in_tag=*/AvmMemoryTag::FF);
937-
};
938-
939-
negative_test_incorrect_ia_kernel_lookup(apply_opcodes, checks, incorrect_ia, BAD_LOOKUP);
940-
}
941-
942882
// KERNEL OUTPUTS
943883
class AvmKernelOutputPositiveTests : public AvmKernelTests {
944884
protected:

barretenberg/cpp/src/barretenberg/vm/avm/trace/deserialization.cpp

+1-4
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,11 @@ const std::unordered_map<OpCode, std::vector<OperandType>> OPCODE_WIRE_FORMAT =
6868
{ OpCode::CHAINID, getter_format },
6969
{ OpCode::VERSION, getter_format },
7070
{ OpCode::BLOCKNUMBER, getter_format },
71-
// COINBASE, -- not in simulator
7271
{ OpCode::TIMESTAMP, getter_format },
7372
// Execution Environment - Globals - Gas
7473
{ OpCode::FEEPERL2GAS, getter_format },
7574
{ OpCode::FEEPERDAGAS, getter_format },
76-
// BLOCKL2GASLIMIT, -- not in simulator
77-
// BLOCKDAGASLIMIT, -- not in simulator
78-
//
75+
7976
// Execution Environment - Calldata
8077
{ OpCode::CALLDATACOPY, { OperandType::INDIRECT, OperandType::UINT32, OperandType::UINT32, OperandType::UINT32 } },
8178

barretenberg/cpp/src/barretenberg/vm/avm/trace/execution.cpp

-4
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,6 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
214214
kernel_inputs[VERSION_SELECTOR] = public_inputs_vec[VERSION_OFFSET]; // Version
215215
kernel_inputs[BLOCK_NUMBER_SELECTOR] = public_inputs_vec[BLOCK_NUMBER_OFFSET]; // Block Number
216216
kernel_inputs[TIMESTAMP_SELECTOR] = public_inputs_vec[TIMESTAMP_OFFSET]; // Timestamp
217-
kernel_inputs[COINBASE_SELECTOR] = public_inputs_vec[COINBASE_OFFSET]; // Coinbase
218217
// PublicCircuitPublicInputs - GlobalVariables - GasFees
219218
kernel_inputs[FEE_PER_DA_GAS_SELECTOR] = public_inputs_vec[FEE_PER_DA_GAS_OFFSET];
220219
kernel_inputs[FEE_PER_L2_GAS_SELECTOR] = public_inputs_vec[FEE_PER_L2_GAS_OFFSET];
@@ -548,9 +547,6 @@ std::vector<Row> Execution::gen_trace(std::vector<Instruction> const& instructio
548547
case OpCode::TIMESTAMP:
549548
trace_builder.op_timestamp(std::get<uint8_t>(inst.operands.at(0)), std::get<uint32_t>(inst.operands.at(1)));
550549
break;
551-
case OpCode::COINBASE:
552-
trace_builder.op_coinbase(std::get<uint8_t>(inst.operands.at(0)), std::get<uint32_t>(inst.operands.at(1)));
553-
break;
554550
case OpCode::FEEPERL2GAS:
555551
trace_builder.op_fee_per_l2_gas(std::get<uint8_t>(inst.operands.at(0)),
556552
std::get<uint32_t>(inst.operands.at(1)));

barretenberg/cpp/src/barretenberg/vm/avm/trace/fixed_gas.cpp

-3
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,8 @@ const std::unordered_map<OpCode, FixedGasTable::GasRow> GAS_COST_TABLE = {
4242
{ OpCode::VERSION, make_cost(AVM_VERSION_BASE_L2_GAS, 0, AVM_VERSION_DYN_L2_GAS, 0) },
4343
{ OpCode::BLOCKNUMBER, make_cost(AVM_BLOCKNUMBER_BASE_L2_GAS, 0, AVM_BLOCKNUMBER_DYN_L2_GAS, 0) },
4444
{ OpCode::TIMESTAMP, make_cost(AVM_TIMESTAMP_BASE_L2_GAS, 0, AVM_TIMESTAMP_DYN_L2_GAS, 0) },
45-
{ OpCode::COINBASE, make_cost(AVM_COINBASE_BASE_L2_GAS, 0, AVM_COINBASE_DYN_L2_GAS, 0) },
4645
{ OpCode::FEEPERL2GAS, make_cost(AVM_FEEPERL2GAS_BASE_L2_GAS, 0, AVM_FEEPERL2GAS_DYN_L2_GAS, 0) },
4746
{ OpCode::FEEPERDAGAS, make_cost(AVM_FEEPERDAGAS_BASE_L2_GAS, 0, AVM_FEEPERDAGAS_DYN_L2_GAS, 0) },
48-
{ OpCode::BLOCKL2GASLIMIT, make_cost(AVM_BLOCKL2GASLIMIT_BASE_L2_GAS, 0, AVM_BLOCKL2GASLIMIT_DYN_L2_GAS, 0) },
49-
{ OpCode::BLOCKDAGASLIMIT, make_cost(AVM_BLOCKDAGASLIMIT_BASE_L2_GAS, 0, AVM_BLOCKDAGASLIMIT_DYN_L2_GAS, 0) },
5047
{ OpCode::CALLDATACOPY, make_cost(AVM_CALLDATACOPY_BASE_L2_GAS, 0, AVM_CALLDATACOPY_DYN_L2_GAS, 0) },
5148
{ OpCode::L2GASLEFT, make_cost(AVM_L2GASLEFT_BASE_L2_GAS, 0, AVM_L2GASLEFT_DYN_L2_GAS, 0) },
5249
{ OpCode::DAGASLEFT, make_cost(AVM_DAGASLEFT_BASE_L2_GAS, 0, AVM_DAGASLEFT_DYN_L2_GAS, 0) },

barretenberg/cpp/src/barretenberg/vm/avm/trace/kernel_trace.cpp

-14
Original file line numberDiff line numberDiff line change
@@ -124,16 +124,6 @@ FF AvmKernelTraceBuilder::op_block_number(uint32_t clk)
124124
return perform_kernel_input_lookup(BLOCK_NUMBER_SELECTOR);
125125
}
126126

127-
FF AvmKernelTraceBuilder::op_coinbase(uint32_t clk)
128-
{
129-
KernelTraceEntry entry = {
130-
.clk = clk,
131-
.operation = KernelTraceOpType::COINBASE,
132-
};
133-
kernel_trace.push_back(entry);
134-
return perform_kernel_input_lookup(COINBASE_SELECTOR);
135-
}
136-
137127
FF AvmKernelTraceBuilder::op_timestamp(uint32_t clk)
138128
{
139129
KernelTraceEntry entry = {
@@ -393,10 +383,6 @@ void AvmKernelTraceBuilder::finalize(std::vector<AvmFullRow<FF>>& main_trace)
393383
dest.main_kernel_in_offset = BLOCK_NUMBER_SELECTOR;
394384
dest.main_sel_q_kernel_lookup = 1;
395385
break;
396-
case KernelTraceOpType::COINBASE:
397-
dest.main_kernel_in_offset = COINBASE_SELECTOR;
398-
dest.main_sel_q_kernel_lookup = 1;
399-
break;
400386
case KernelTraceOpType::TIMESTAMP:
401387
dest.main_kernel_in_offset = TIMESTAMP_SELECTOR;
402388
dest.main_sel_q_kernel_lookup = 1;

barretenberg/cpp/src/barretenberg/vm/avm/trace/kernel_trace.hpp

-2
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ class AvmKernelTraceBuilder {
2424
CHAIN_ID,
2525
VERSION,
2626
BLOCK_NUMBER,
27-
COINBASE,
2827
TIMESTAMP,
2928
FEE_PER_DA_GAS,
3029
FEE_PER_L2_GAS,
@@ -78,7 +77,6 @@ class AvmKernelTraceBuilder {
7877
FF op_chain_id(uint32_t clk);
7978
FF op_version(uint32_t clk);
8079
FF op_block_number(uint32_t clk);
81-
FF op_coinbase(uint32_t clk);
8280
FF op_timestamp(uint32_t clk);
8381
// Globals - Gas
8482
FF op_fee_per_da_gas(uint32_t clk);

barretenberg/cpp/src/barretenberg/vm/avm/trace/opcode.cpp

-6
Original file line numberDiff line numberDiff line change
@@ -79,16 +79,10 @@ std::string to_string(OpCode opcode)
7979
return "BLOCKNUMBER";
8080
case OpCode::TIMESTAMP:
8181
return "TIMESTAMP";
82-
case OpCode::COINBASE:
83-
return "COINBASE";
8482
case OpCode::FEEPERL2GAS:
8583
return "FEEPERL2GAS";
8684
case OpCode::FEEPERDAGAS:
8785
return "FEEPERDAGAS";
88-
case OpCode::BLOCKL2GASLIMIT:
89-
return "BLOCKL2GASLIMIT";
90-
case OpCode::BLOCKDAGASLIMIT:
91-
return "BLOCKDAGASLIMIT";
9286
// Execution Environment - Calldata
9387
case OpCode::CALLDATACOPY:
9488
return "CALLDATACOPY";

barretenberg/cpp/src/barretenberg/vm/avm/trace/opcode.hpp

-3
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,8 @@ enum class OpCode : uint8_t {
5252
VERSION,
5353
BLOCKNUMBER,
5454
TIMESTAMP,
55-
COINBASE,
5655
FEEPERL2GAS,
5756
FEEPERDAGAS,
58-
BLOCKL2GASLIMIT,
59-
BLOCKDAGASLIMIT,
6057
// Execution Environment - Calldata
6158
CALLDATACOPY,
6259

barretenberg/cpp/src/barretenberg/vm/avm/trace/trace.cpp

-13
Original file line numberDiff line numberDiff line change
@@ -1381,19 +1381,6 @@ void AvmTraceBuilder::op_timestamp(uint8_t indirect, uint32_t dst_offset)
13811381
main_trace.push_back(row);
13821382
}
13831383

1384-
void AvmTraceBuilder::op_coinbase(uint8_t indirect, uint32_t dst_offset)
1385-
{
1386-
auto const clk = static_cast<uint32_t>(main_trace.size()) + 1;
1387-
FF ia_value = kernel_trace_builder.op_coinbase(clk);
1388-
Row row = create_kernel_lookup_opcode(indirect, dst_offset, ia_value, AvmMemoryTag::FF);
1389-
row.main_sel_op_coinbase = FF(1);
1390-
1391-
// Constrain gas cost
1392-
gas_trace_builder.constrain_gas(static_cast<uint32_t>(row.main_clk), OpCode::COINBASE);
1393-
1394-
main_trace.push_back(row);
1395-
}
1396-
13971384
void AvmTraceBuilder::op_fee_per_l2_gas(uint8_t indirect, uint32_t dst_offset)
13981385
{
13991386
auto const clk = static_cast<uint32_t>(main_trace.size()) + 1;

barretenberg/cpp/src/barretenberg/vm/avm/trace/trace.hpp

-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ class AvmTraceBuilder {
9494
void op_version(uint8_t indirect, uint32_t dst_offset);
9595
void op_block_number(uint8_t indirect, uint32_t dst_offset);
9696
void op_timestamp(uint8_t indirect, uint32_t dst_offset);
97-
void op_coinbase(uint8_t indirect, uint32_t dst_offset);
9897
void op_fee_per_l2_gas(uint8_t indirect, uint32_t dst_offset);
9998
void op_fee_per_da_gas(uint8_t indirect, uint32_t dst_offset);
10099

0 commit comments

Comments
 (0)