Skip to content

Commit 244ef7e

Browse files
dbanks12Maddiaa0jeanmon
authored
chore: generate PIL constants from via constants gen (#7258)
Co-authored-by: Maddiaa <47148561+Maddiaa0@users.noreply.github.com> Co-authored-by: Jean M <132435771+jeanmon@users.noreply.github.com>
1 parent 9e67e7d commit 244ef7e

File tree

15 files changed

+303
-168
lines changed

15 files changed

+303
-168
lines changed

barretenberg/cpp/pil/avm/constants.pil

Lines changed: 0 additions & 46 deletions
This file was deleted.
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants in circuits.js
2+
namespace constants(256);
3+
pol MAX_NEW_NOTE_HASHES_PER_CALL = 16;
4+
pol MAX_NEW_NULLIFIERS_PER_CALL = 16;
5+
pol MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL = 16;
6+
pol MAX_NEW_L2_TO_L1_MSGS_PER_CALL = 2;
7+
pol MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL = 32;
8+
pol MAX_PUBLIC_DATA_READS_PER_CALL = 32;
9+
pol MAX_NOTE_HASH_READ_REQUESTS_PER_CALL = 32;
10+
pol MAX_NULLIFIER_READ_REQUESTS_PER_CALL = 32;
11+
pol MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL = 32;
12+
pol MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL = 16;
13+
pol MAX_UNENCRYPTED_LOGS_PER_CALL = 4;
14+
pol SENDER_SELECTOR = 0;
15+
pol ADDRESS_SELECTOR = 1;
16+
pol STORAGE_ADDRESS_SELECTOR = 1;
17+
pol FUNCTION_SELECTOR_SELECTOR = 2;
18+
pol START_GLOBAL_VARIABLES = 29;
19+
pol CHAIN_ID_SELECTOR = 29;
20+
pol VERSION_SELECTOR = 30;
21+
pol BLOCK_NUMBER_SELECTOR = 31;
22+
pol TIMESTAMP_SELECTOR = 32;
23+
pol COINBASE_SELECTOR = 33;
24+
pol FEE_PER_DA_GAS_SELECTOR = 35;
25+
pol FEE_PER_L2_GAS_SELECTOR = 36;
26+
pol END_GLOBAL_VARIABLES = 37;
27+
pol START_SIDE_EFFECT_COUNTER = 37;
28+
pol TRANSACTION_FEE_SELECTOR = 40;
29+
pol START_NOTE_HASH_EXISTS_WRITE_OFFSET = 0;
30+
pol START_NULLIFIER_EXISTS_OFFSET = 32;
31+
pol START_NULLIFIER_NON_EXISTS_OFFSET = 64;
32+
pol START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET = 96;
33+
pol START_SSTORE_WRITE_OFFSET = 112;
34+
pol START_SLOAD_WRITE_OFFSET = 144;
35+
pol START_EMIT_NOTE_HASH_WRITE_OFFSET = 176;
36+
pol START_EMIT_NULLIFIER_WRITE_OFFSET = 192;
37+
pol START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET = 208;
38+
pol START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET = 210;
39+
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
namespace constants_misc(256);
2+
pol INTERNAL_CALL_SPACE_ID = 255;

barretenberg/cpp/pil/avm/kernel.pil

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
include "main.pil";
2-
include "constants.pil";
2+
include "constants_gen.pil";
33

44
namespace kernel(256);
55
pol public kernel_inputs;
@@ -24,24 +24,6 @@ namespace kernel(256);
2424
// Global side effect counter; incremented after each side effect is produced.
2525
pol commit side_effect_counter;
2626

27-
// FIXED INDEXES
28-
// Exists checks
29-
pol START_NOTE_HASH_EXISTS_WRITE_OFFSET = 0;
30-
pol START_NULLIFIER_EXISTS_OFFSET = 32; // START_NOTE_HASH_EXISTS_WRITE_OFFSET + MAX_NOTE_HASH_READ_REQUESTS_PER_CALL
31-
pol START_NULLIFIER_NON_EXISTS_OFFSET = 64; // START_NULLIFIER_EXISTS_OFFSET + MAX_NULLIFIER_READ_REQUESTS_PER_CALL
32-
pol START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET = 96; // START_NULLIFIER_EXISTS_OFFET + (MAX_NULLIFIER_READ_REQUESTS_PER_CALL + MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL)
33-
34-
// Public storage requests
35-
pol START_SSTORE_WRITE_OFFSET = 112; // START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET + MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL
36-
pol START_SLOAD_WRITE_OFFSET = 144; // START_SSTORE_WRITE_OFFSET + MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL
37-
38-
// Emit data
39-
pol START_EMIT_NOTE_HASH_WRITE_OFFSET = 176; // START_SLOAD_WRITE_OFFSET + MAX_PUBLIC_DATA_READS_PER_CALL
40-
pol START_EMIT_NULLIFIER_WRITE_OFFSET = 192; // START_EMIT_NOTE_HASH_WRITE_OFFSET + MAX_NEW_NOTE_HASHES_PER_CALL
41-
pol START_EMIT_L2_TO_l1_MSG = 208; // START_EMIT_NULLIFIER_WRITE_OFFSET + MAX_NEW_NULLIFIERS_PER_CALL
42-
pol START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET = 210; // START_EMIT_L2_TO_L1_MSG + MAX_NEW_L2_TO_L1_MSGS_PER_CALL
43-
44-
4527
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/6465): Must constrain write_offset counters to be less than side effect MAX
4628
// Current write offsets for each opcode
4729
pol commit note_hash_exist_write_offset;

barretenberg/cpp/pil/avm/main.pil

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
include "mem.pil";
22
include "alu.pil";
33
include "binary.pil";
4-
include "constants.pil";
4+
include "constants_gen.pil";
5+
include "constants_misc.pil";
56
include "kernel.pil";
67
include "fixed/gas.pil";
78
include "fixed/powers.pil";
@@ -506,7 +507,7 @@ namespace main(256);
506507

507508
//====== SPACE ID CONSTRAINTS ===============================================
508509
#[SPACE_ID_INTERNAL]
509-
(sel_op_internal_call + sel_op_internal_return) * (space_id - constants.INTERNAL_CALL_SPACE_ID) = 0;
510+
(sel_op_internal_call + sel_op_internal_return) * (space_id - constants_misc.INTERNAL_CALL_SPACE_ID) = 0;
510511

511512
#[SPACE_ID_STANDARD_OPCODES]
512513
OPCODE_SELECTORS * (call_ptr - space_id) = 0;
@@ -612,43 +613,43 @@ namespace main(256);
612613
// OUTPUTS LOOKUPS
613614
// Constrain the value of kernel_out_offset to be the correct offset for the operation being performed
614615
#[NOTE_HASH_KERNEL_OUTPUT]
615-
sel_op_note_hash_exists * (kernel.kernel_out_offset - (kernel.START_NOTE_HASH_EXISTS_WRITE_OFFSET + kernel.note_hash_exist_write_offset)) = 0;
616+
sel_op_note_hash_exists * (kernel.kernel_out_offset - (constants.START_NOTE_HASH_EXISTS_WRITE_OFFSET + kernel.note_hash_exist_write_offset)) = 0;
616617
sel_first * kernel.note_hash_exist_write_offset = 0;
617618

618619

619620
#[EMIT_NOTE_HASH_KERNEL_OUTPUT]
620-
sel_op_emit_note_hash * (kernel.kernel_out_offset - (kernel.START_EMIT_NOTE_HASH_WRITE_OFFSET + kernel.emit_note_hash_write_offset)) = 0;
621+
sel_op_emit_note_hash * (kernel.kernel_out_offset - (constants.START_EMIT_NOTE_HASH_WRITE_OFFSET + kernel.emit_note_hash_write_offset)) = 0;
621622
sel_first * kernel.emit_note_hash_write_offset = 0;
622623

623624
#[NULLIFIER_EXISTS_KERNEL_OUTPUT]
624-
sel_op_nullifier_exists * (kernel.kernel_out_offset - ((ib * (kernel.START_NULLIFIER_EXISTS_OFFSET + kernel.nullifier_exists_write_offset)) + ((1 - ib) * (kernel.START_NULLIFIER_NON_EXISTS_OFFSET + kernel.nullifier_non_exists_write_offset)))) = 0;
625+
sel_op_nullifier_exists * (kernel.kernel_out_offset - ((ib * (constants.START_NULLIFIER_EXISTS_OFFSET + kernel.nullifier_exists_write_offset)) + ((1 - ib) * (constants.START_NULLIFIER_NON_EXISTS_OFFSET + kernel.nullifier_non_exists_write_offset)))) = 0;
625626
sel_first * kernel.nullifier_exists_write_offset = 0;
626627
sel_first * kernel.nullifier_non_exists_write_offset = 0;
627628

628629
#[EMIT_NULLIFIER_KERNEL_OUTPUT]
629-
sel_op_emit_nullifier * (kernel.kernel_out_offset - (kernel.START_EMIT_NULLIFIER_WRITE_OFFSET + kernel.emit_nullifier_write_offset)) = 0;
630+
sel_op_emit_nullifier * (kernel.kernel_out_offset - (constants.START_EMIT_NULLIFIER_WRITE_OFFSET + kernel.emit_nullifier_write_offset)) = 0;
630631
sel_first * kernel.emit_nullifier_write_offset = 0;
631632

632633
#[L1_TO_L2_MSG_EXISTS_KERNEL_OUTPUT]
633-
sel_op_l1_to_l2_msg_exists * (kernel.kernel_out_offset - (kernel.START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET + kernel.l1_to_l2_msg_exists_write_offset)) = 0;
634+
sel_op_l1_to_l2_msg_exists * (kernel.kernel_out_offset - (constants.START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET + kernel.l1_to_l2_msg_exists_write_offset)) = 0;
634635
sel_first * kernel.l1_to_l2_msg_exists_write_offset = 0;
635636

636637
#[EMIT_UNENCRYPTED_LOG_KERNEL_OUTPUT]
637-
sel_op_emit_unencrypted_log * (kernel.kernel_out_offset - (kernel.START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET + kernel.emit_unencrypted_log_write_offset)) = 0;
638+
sel_op_emit_unencrypted_log * (kernel.kernel_out_offset - (constants.START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET + kernel.emit_unencrypted_log_write_offset)) = 0;
638639
sel_first * kernel.emit_unencrypted_log_write_offset = 0;
639640

640641
// TODO: Add the equivalent for GETCONTRACTINSTANCE?
641642

642643
#[EMIT_L2_TO_L1_MSGS_KERNEL_OUTPUT]
643-
sel_op_emit_l2_to_l1_msg * (kernel.kernel_out_offset - (kernel.START_EMIT_L2_TO_l1_MSG + kernel.emit_l2_to_l1_msg_write_offset)) = 0;
644+
sel_op_emit_l2_to_l1_msg * (kernel.kernel_out_offset - (constants.START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET + kernel.emit_l2_to_l1_msg_write_offset)) = 0;
644645
sel_first * kernel.emit_l2_to_l1_msg_write_offset = 0;
645646

646647
#[SLOAD_KERNEL_OUTPUT]
647-
sel_op_sload * (kernel.kernel_out_offset - (kernel.START_SLOAD_WRITE_OFFSET + kernel.sload_write_offset)) = 0;
648+
sel_op_sload * (kernel.kernel_out_offset - (constants.START_SLOAD_WRITE_OFFSET + kernel.sload_write_offset)) = 0;
648649
sel_first * kernel.sload_write_offset = 0;
649650

650651
#[SSTORE_KERNEL_OUTPUT]
651-
sel_op_sstore * (kernel.kernel_out_offset - (kernel.START_SSTORE_WRITE_OFFSET + kernel.sstore_write_offset)) = 0;
652+
sel_op_sstore * (kernel.kernel_out_offset - (constants.START_SSTORE_WRITE_OFFSET + kernel.sstore_write_offset)) = 0;
652653
sel_first * kernel.sstore_write_offset = 0;
653654

654655
// When we encounter a state writing opcode

barretenberg/cpp/src/barretenberg/vm/avm_trace/avm_execution.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -165,15 +165,15 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
165165
// We copy each type of the kernel outputs into their respective columns, each has differeing lengths / data
166166
// For NOTEHASHEXISTS
167167
for (size_t i = 0; i < MAX_NOTE_HASH_READ_REQUESTS_PER_CALL; i++) {
168-
size_t dest_offset = AvmKernelTraceBuilder::START_NOTE_HASH_EXISTS_WRITE_OFFSET + i;
168+
size_t dest_offset = START_NOTE_HASH_EXISTS_WRITE_OFFSET + i;
169169
size_t pcpi_offset = PCPI_NOTE_HASH_EXISTS_OFFSET + (i * READ_REQUEST_LENGTH);
170170

171171
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];
172172
ko_side_effect[dest_offset] = public_inputs_vec[pcpi_offset + 1];
173173
}
174174
// For NULLIFIEREXISTS
175175
for (size_t i = 0; i < MAX_NULLIFIER_READ_REQUESTS_PER_CALL; i++) {
176-
size_t dest_offset = AvmKernelTraceBuilder::START_NULLIFIER_EXISTS_OFFSET + i;
176+
size_t dest_offset = START_NULLIFIER_EXISTS_OFFSET + i;
177177
size_t pcpi_offset = PCPI_NULLIFIER_EXISTS_OFFSET + (i * READ_REQUEST_LENGTH);
178178

179179
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];
@@ -182,7 +182,7 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
182182
}
183183
// For NULLIFIEREXISTS - non existent
184184
for (size_t i = 0; i < MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL; i++) {
185-
size_t dest_offset = AvmKernelTraceBuilder::START_NULLIFIER_NON_EXISTS_OFFSET + i;
185+
size_t dest_offset = START_NULLIFIER_NON_EXISTS_OFFSET + i;
186186
size_t pcpi_offset = PCPI_NULLIFIER_NON_EXISTS_OFFSET + (i * READ_REQUEST_LENGTH);
187187

188188
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];
@@ -191,15 +191,15 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
191191
}
192192
// For L1TOL2MSGEXISTS
193193
for (size_t i = 0; i < MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL; i++) {
194-
size_t dest_offset = AvmKernelTraceBuilder::START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET + i;
194+
size_t dest_offset = START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET + i;
195195
size_t pcpi_offset = PCPI_L1_TO_L2_MSG_READ_REQUESTS_OFFSET + (i * READ_REQUEST_LENGTH);
196196

197197
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];
198198
ko_side_effect[dest_offset] = public_inputs_vec[pcpi_offset + 1];
199199
}
200200
// For SSTORE
201201
for (size_t i = 0; i < MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL; i++) {
202-
size_t dest_offset = AvmKernelTraceBuilder::START_SSTORE_WRITE_OFFSET + i;
202+
size_t dest_offset = START_SSTORE_WRITE_OFFSET + i;
203203
size_t pcpi_offset = PCPI_PUBLIC_DATA_UPDATE_OFFSET + (i * CONTRACT_STORAGE_UPDATE_REQUEST_LENGTH);
204204

205205
// slot, value, side effect
@@ -209,7 +209,7 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
209209
}
210210
// For SLOAD
211211
for (size_t i = 0; i < MAX_PUBLIC_DATA_READS_PER_CALL; i++) {
212-
size_t dest_offset = AvmKernelTraceBuilder::START_SLOAD_WRITE_OFFSET + i;
212+
size_t dest_offset = START_SLOAD_WRITE_OFFSET + i;
213213
size_t pcpi_offset = PCPI_PUBLIC_DATA_READ_OFFSET + (i * CONTRACT_STORAGE_READ_LENGTH);
214214

215215
// slot, value, side effect
@@ -219,23 +219,23 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
219219
}
220220
// For EMITNOTEHASH
221221
for (size_t i = 0; i < MAX_NEW_NOTE_HASHES_PER_CALL; i++) {
222-
size_t dest_offset = AvmKernelTraceBuilder::START_EMIT_NOTE_HASH_WRITE_OFFSET + i;
222+
size_t dest_offset = START_EMIT_NOTE_HASH_WRITE_OFFSET + i;
223223
size_t pcpi_offset = PCPI_NEW_NOTE_HASHES_OFFSET + (i * NOTE_HASH_LENGTH);
224224

225225
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];
226226
ko_side_effect[dest_offset] = public_inputs_vec[pcpi_offset + 1];
227227
}
228228
// For EMITNULLIFIER
229229
for (size_t i = 0; i < MAX_NEW_NULLIFIERS_PER_CALL; i++) {
230-
size_t dest_offset = AvmKernelTraceBuilder::START_EMIT_NULLIFIER_WRITE_OFFSET + i;
230+
size_t dest_offset = START_EMIT_NULLIFIER_WRITE_OFFSET + i;
231231
size_t pcpi_offset = PCPI_NEW_NULLIFIERS_OFFSET + (i * NULLIFIER_LENGTH);
232232

233233
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];
234234
ko_side_effect[dest_offset] = public_inputs_vec[pcpi_offset + 1];
235235
}
236236
// For EMITL2TOL1MSG
237237
for (size_t i = 0; i < MAX_NEW_L2_TO_L1_MSGS_PER_CALL; i++) {
238-
size_t dest_offset = AvmKernelTraceBuilder::START_L2_TO_L1_MSG_WRITE_OFFSET + i;
238+
size_t dest_offset = START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET + i;
239239
size_t pcpi_offset = PCPI_NEW_L2_TO_L1_MSGS_OFFSET + (i * L2_TO_L1_MESSAGE_LENGTH);
240240

241241
// Note: unorthadox order
@@ -245,7 +245,7 @@ VmPublicInputs Execution::convert_public_inputs(std::vector<FF> const& public_in
245245
}
246246
// For EMITUNENCRYPTEDLOG
247247
for (size_t i = 0; i < MAX_UNENCRYPTED_LOGS_PER_CALL; i++) {
248-
size_t dest_offset = AvmKernelTraceBuilder::START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET + i;
248+
size_t dest_offset = START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET + i;
249249
size_t pcpi_offset = PCPI_NEW_UNENCRYPTED_LOGS_OFFSET + (i * 2);
250250

251251
ko_values[dest_offset] = public_inputs_vec[pcpi_offset];

barretenberg/cpp/src/barretenberg/vm/avm_trace/avm_kernel_trace.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ void AvmKernelTraceBuilder::op_emit_l2_to_l1_msg(uint32_t clk,
225225
const FF& l2_to_l1_msg,
226226
const FF& recipient)
227227
{
228-
uint32_t offset = START_L2_TO_L1_MSG_WRITE_OFFSET + emit_l2_to_l1_msg_offset;
228+
uint32_t offset = START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET + emit_l2_to_l1_msg_offset;
229229
perform_kernel_output_lookup(offset, side_effect_counter, l2_to_l1_msg, recipient);
230230
emit_l2_to_l1_msg_offset++;
231231

barretenberg/cpp/src/barretenberg/vm/avm_trace/avm_kernel_trace.hpp

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,6 @@
99
#include <unordered_map>
1010
#include <vector>
1111

12-
inline const uint32_t SENDER_SELECTOR = 0;
13-
// address doesn't actually exist in PublicCircuitPublicInputs, but storageAddress does
14-
// so we just make a address & storageAddress an alias of each other for now
15-
inline const uint32_t ADDRESS_SELECTOR = 1;
16-
inline const uint32_t STORAGE_ADDRESS_SELECTOR = ADDRESS_SELECTOR;
17-
inline const uint32_t FUNCTION_SELECTOR_SELECTOR = 2;
18-
19-
inline const uint32_t START_GLOBAL_VARIABLES = CALL_CONTEXT_LENGTH + HEADER_LENGTH;
20-
21-
inline const uint32_t CHAIN_ID_SELECTOR = START_GLOBAL_VARIABLES;
22-
inline const uint32_t VERSION_SELECTOR = START_GLOBAL_VARIABLES + 1;
23-
inline const uint32_t BLOCK_NUMBER_SELECTOR = START_GLOBAL_VARIABLES + 2;
24-
inline const uint32_t TIMESTAMP_SELECTOR = START_GLOBAL_VARIABLES + 3;
25-
inline const uint32_t COINBASE_SELECTOR = START_GLOBAL_VARIABLES + 4;
26-
inline const uint32_t FEE_PER_DA_GAS_SELECTOR = START_GLOBAL_VARIABLES + 6;
27-
inline const uint32_t FEE_PER_L2_GAS_SELECTOR = START_GLOBAL_VARIABLES + 7;
28-
29-
inline const uint32_t END_GLOBAL_VARIABLES = START_GLOBAL_VARIABLES + GLOBAL_VARIABLES_LENGTH;
30-
inline const uint32_t START_SIDE_EFFECT_COUNTER = END_GLOBAL_VARIABLES;
31-
32-
inline const uint32_t TRANSACTION_FEE_SELECTOR = KERNEL_INPUTS_LENGTH - 1;
33-
3412
namespace bb::avm_trace {
3513

3614
class AvmKernelTraceBuilder {
@@ -99,28 +77,6 @@ class AvmKernelTraceBuilder {
9977
void op_emit_unencrypted_log(uint32_t clk, uint32_t side_effect_counter, const FF& log_hash);
10078
void op_emit_l2_to_l1_msg(uint32_t clk, uint32_t side_effect_counter, const FF& l2_to_l1_msg, const FF& recipient);
10179

102-
// TODO: Move into constants.hpp?
103-
static const uint32_t START_NOTE_HASH_EXISTS_WRITE_OFFSET = 0;
104-
static const uint32_t START_NULLIFIER_EXISTS_OFFSET =
105-
START_NOTE_HASH_EXISTS_WRITE_OFFSET + MAX_NOTE_HASH_READ_REQUESTS_PER_CALL;
106-
static const uint32_t START_NULLIFIER_NON_EXISTS_OFFSET =
107-
START_NULLIFIER_EXISTS_OFFSET + MAX_NULLIFIER_READ_REQUESTS_PER_CALL;
108-
static const uint32_t START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET =
109-
START_NULLIFIER_NON_EXISTS_OFFSET + MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL;
110-
111-
static const uint32_t START_SSTORE_WRITE_OFFSET =
112-
START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET + MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL;
113-
static const uint32_t START_SLOAD_WRITE_OFFSET =
114-
START_SSTORE_WRITE_OFFSET + MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL;
115-
116-
static const uint32_t START_EMIT_NOTE_HASH_WRITE_OFFSET = START_SLOAD_WRITE_OFFSET + MAX_PUBLIC_DATA_READS_PER_CALL;
117-
static const uint32_t START_EMIT_NULLIFIER_WRITE_OFFSET =
118-
START_EMIT_NOTE_HASH_WRITE_OFFSET + MAX_NEW_NOTE_HASHES_PER_CALL;
119-
static const uint32_t START_L2_TO_L1_MSG_WRITE_OFFSET =
120-
START_EMIT_NULLIFIER_WRITE_OFFSET + MAX_NEW_NULLIFIERS_PER_CALL;
121-
static const uint32_t START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET =
122-
START_L2_TO_L1_MSG_WRITE_OFFSET + MAX_NEW_L2_TO_L1_MSGS_PER_CALL;
123-
12480
private:
12581
std::vector<KernelTraceEntry> kernel_trace;
12682

barretenberg/cpp/src/barretenberg/vm/avm_trace/aztec_constants.hpp

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,28 @@
3232
#define HEADER_LENGTH 23
3333
#define PUBLIC_CIRCUIT_PUBLIC_INPUTS_LENGTH 578
3434
#define PUBLIC_CONTEXT_INPUTS_LENGTH 41
35+
#define SENDER_SELECTOR 0
36+
#define ADDRESS_SELECTOR 1
37+
#define STORAGE_ADDRESS_SELECTOR 1
38+
#define FUNCTION_SELECTOR_SELECTOR 2
39+
#define START_GLOBAL_VARIABLES 29
40+
#define CHAIN_ID_SELECTOR 29
41+
#define VERSION_SELECTOR 30
42+
#define BLOCK_NUMBER_SELECTOR 31
43+
#define TIMESTAMP_SELECTOR 32
44+
#define COINBASE_SELECTOR 33
45+
#define FEE_PER_DA_GAS_SELECTOR 35
46+
#define FEE_PER_L2_GAS_SELECTOR 36
47+
#define END_GLOBAL_VARIABLES 37
48+
#define START_SIDE_EFFECT_COUNTER 37
49+
#define TRANSACTION_FEE_SELECTOR 40
50+
#define START_NOTE_HASH_EXISTS_WRITE_OFFSET 0
51+
#define START_NULLIFIER_EXISTS_OFFSET 32
52+
#define START_NULLIFIER_NON_EXISTS_OFFSET 64
53+
#define START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET 96
54+
#define START_SSTORE_WRITE_OFFSET 112
55+
#define START_SLOAD_WRITE_OFFSET 144
56+
#define START_EMIT_NOTE_HASH_WRITE_OFFSET 176
57+
#define START_EMIT_NULLIFIER_WRITE_OFFSET 192
58+
#define START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET 208
59+
#define START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET 210

0 commit comments

Comments
 (0)