Skip to content

Commit b7766d6

Browse files
authored
refactor(avm): avm memory trace building (AztecProtocol#3835)
Resolves AztecProtocol#3834 Moving all AVM memory related trace building functions into a dedicated class. Furthermore, all AVM related trace files were moved into a dedicated folder in vm. The following files: - AvmMini_common.hpp - AvmMini_helper.cpp - AvmMini_helper.hpp - AvmMini_mem_trace.cpp - AvmMini_mem_trace.hpp - AvmMini_trace.cpp - AvmMini_trace.hpp were moved from barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/ to barretenberg/cpp/src/barretenberg/vm/avm_trace/ Finally, the namespace for these files were migrating from proof_system to avm_trace.
1 parent b1b2e7c commit b7766d6

14 files changed

+1100
-992
lines changed

barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/AvmMini_trace.cpp

-743
This file was deleted.

barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/AvmMini_trace.hpp

-114
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
#pragma once
22

3-
#include "barretenberg/ecc/curves/bn254/fr.hpp"
43
#include "barretenberg/proof_system/circuit_builder/circuit_builder_base.hpp"
5-
6-
#include "barretenberg/flavor/generated/AvmMini_flavor.hpp"
74
#include "barretenberg/proof_system/circuit_builder/generated/AvmMini_circuit_builder.hpp"
85

9-
namespace proof_system {
10-
116
using Flavor = proof_system::honk::flavor::AvmMiniFlavor;
127
using FF = Flavor::FF;
138
using Row = proof_system::AvmMiniFullRow<barretenberg::fr>;
149

15-
void log_avmMini_trace(std::vector<Row> const& trace, size_t beg, size_t end);
10+
namespace avm_trace {
11+
12+
// Number of rows
13+
static const size_t AVM_TRACE_SIZE = 256;
14+
enum class IntermRegister : uint32_t { ia = 0, ib = 1, ic = 2 };
15+
enum class AvmMemoryTag : uint32_t { u0 = 0, u8 = 1, u16 = 2, u32 = 3, u64 = 4, u128 = 5, ff = 6 };
1616

17-
} // namespace proof_system
17+
} // namespace avm_trace

barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/AvmMini_helper.cpp barretenberg/cpp/src/barretenberg/vm/avm_trace/AvmMini_helper.cpp

+3-8
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
1-
#include "barretenberg/ecc/curves/bn254/fr.hpp"
2-
#include "barretenberg/proof_system/circuit_builder/circuit_builder_base.hpp"
1+
#include "AvmMini_helper.hpp"
32

4-
#include "./AvmMini_helper.hpp"
5-
#include "barretenberg/flavor/generated/AvmMini_flavor.hpp"
6-
#include "barretenberg/relations/generated/AvmMini/avm_mini.hpp"
7-
8-
namespace proof_system {
3+
namespace avm_trace {
94

105
/**
116
* @brief Routine to log some slice of a trace of the AVM. Used to debug or in some unit tests.
@@ -70,4 +65,4 @@ void log_avmMini_trace(std::vector<Row> const& trace, size_t beg, size_t end)
7065
}
7166
}
7267

73-
} // namespace proof_system
68+
} // namespace avm_trace
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#pragma once
2+
3+
#include "AvmMini_common.hpp"
4+
5+
namespace avm_trace {
6+
7+
void log_avmMini_trace(std::vector<Row> const& trace, size_t beg, size_t end);
8+
9+
} // namespace avm_trace

0 commit comments

Comments
 (0)