Skip to content

Commit b3f104c

Browse files
Use builder in cairo pie test
1 parent fbc21fa commit b3f104c

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

vm/src/cairo_run.rs

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -187,16 +187,26 @@ pub fn cairo_run_pie(
187187
let allow_missing_builtins = cairo_run_config.allow_missing_builtins.unwrap_or_default();
188188

189189
let program = Program::from_stripped_program(&pie.metadata.program);
190-
let mut cairo_runner = CairoRunner::new(
190+
191+
let mut runner_builder = CairoRunnerBuilder::new(
191192
&program,
192193
cairo_run_config.layout,
193194
cairo_run_config.dynamic_layout_params.clone(),
194-
false,
195-
cairo_run_config.trace_enabled,
196-
cairo_run_config.disable_trace_padding,
195+
RunnerMode::ExecutionMode,
197196
)?;
197+
runner_builder.enable_trace(cairo_run_config.trace_enabled);
198+
runner_builder.disable_trace_padding(cairo_run_config.disable_trace_padding);
199+
runner_builder.allow_missing_builtins(allow_missing_builtins);
200+
runner_builder.initialize_builtin_runners_for_layout()?;
201+
runner_builder.initialize_base_segments();
202+
runner_builder.load_program()?;
203+
runner_builder.initialize_builtin_segments();
204+
runner_builder.initialize_builtin_zero_segments();
205+
let end = runner_builder.initialize_main_entrypoint()?;
206+
runner_builder.initialize_validation_rules()?;
207+
208+
let mut cairo_runner = runner_builder.build()?;
198209

199-
let end = cairo_runner.initialize(allow_missing_builtins)?;
200210
cairo_runner.vm.finalize_segments_by_cairo_pie(pie);
201211
// Load builtin additional data
202212
for (name, data) in pie.additional_data.0.iter() {

vm/src/vm/runners/cairo_runner.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,8 @@ impl ResourceTracker for RunResources {
156156
/// - Compiled hints
157157
/// - Decoded instructions
158158
/// - Loaded program segment
159+
///
160+
/// TODO: Add support for Cairo PIE
159161
pub struct CairoRunnerBuilder {
160162
program: Program,
161163
layout: CairoLayout,

0 commit comments

Comments
 (0)