Skip to content

Commit

Permalink
Add_all_cairo_stwo_layout
Browse files Browse the repository at this point in the history
  • Loading branch information
YairVaknin-starkware committed Feb 16, 2025
1 parent 153d3a8 commit bc25090
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 0 deletions.
22 changes: 22 additions & 0 deletions vm/src/types/instance_definitions/builtins_instance_def.rs
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,28 @@ impl BuiltinsInstanceDef {
}
}

pub(crate) fn all_cairo_stwo() -> BuiltinsInstanceDef {
BuiltinsInstanceDef {
output: true,
pedersen: Some(PedersenInstanceDef::new(Some(256))),
range_check: Some(RangeCheckInstanceDef::default()),
ecdsa: None,
bitwise: Some(BitwiseInstanceDef::new(Some(16))),
ec_op: None,
keccak: None,
poseidon: Some(PoseidonInstanceDef::new(Some(256))),
range_check96: Some(RangeCheckInstanceDef::new(Some(8))),
#[cfg(feature = "mod_builtin")]
add_mod: Some(ModInstanceDef::new(Some(128), 1, 96)),
#[cfg(feature = "mod_builtin")]
mul_mod: Some(ModInstanceDef::new(Some(256), 1, 96)),
#[cfg(not(feature = "mod_builtin"))]
add_mod: None,
#[cfg(not(feature = "mod_builtin"))]
mul_mod: None,
}
}

Check warning on line 202 in vm/src/types/instance_definitions/builtins_instance_def.rs

View check run for this annotation

Codecov / codecov/patch

vm/src/types/instance_definitions/builtins_instance_def.rs#L182-L202

Added lines #L182 - L202 were not covered by tests

pub(crate) fn all_solidity() -> BuiltinsInstanceDef {
BuiltinsInstanceDef {
output: true,
Expand Down
12 changes: 12 additions & 0 deletions vm/src/types/layout.rs
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,18 @@ impl CairoLayout {
}
}

pub(crate) fn all_cairo_stwo_instance() -> CairoLayout {
CairoLayout {
name: LayoutName::all_cairo_stwo,
rc_units: 4,
cpu_component_step: DEFAULT_CPU_COMPONENT_STEP,
memory_units_per_step: DEFAULT_MEMORY_UNITS_PER_STEP,
builtins: BuiltinsInstanceDef::all_cairo_stwo(),
public_memory_fraction: 8,
diluted_pool_instance_def: Some(DilutedPoolInstanceDef::default()),
}
}

Check warning on line 145 in vm/src/types/layout.rs

View check run for this annotation

Codecov / codecov/patch

vm/src/types/layout.rs#L135-L145

Added lines #L135 - L145 were not covered by tests

pub(crate) fn all_solidity_instance() -> CairoLayout {
CairoLayout {
name: LayoutName::all_solidity,
Expand Down
3 changes: 3 additions & 0 deletions vm/src/types/layout_name.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ pub enum LayoutName {
all_solidity,
all_cairo,
dynamic,
all_cairo_stwo,
}

impl LayoutName {
Expand All @@ -37,6 +38,7 @@ impl LayoutName {
LayoutName::all_solidity => "all_solidity",
LayoutName::all_cairo => "all_cairo",
LayoutName::dynamic => "dynamic",
LayoutName::all_cairo_stwo => "all_cairo_stwo",
}
}
}
Expand All @@ -62,6 +64,7 @@ impl ValueEnum for LayoutName {
Self::all_solidity,
Self::all_cairo,
Self::dynamic,
Self::all_cairo_stwo,
]
}

Expand Down
1 change: 1 addition & 0 deletions vm/src/vm/runners/cairo_runner.rs
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,7 @@ impl CairoRunner {
LayoutName::recursive_large_output => CairoLayout::recursive_large_output_instance(),
LayoutName::recursive_with_poseidon => CairoLayout::recursive_with_poseidon(),
LayoutName::all_cairo => CairoLayout::all_cairo_instance(),
LayoutName::all_cairo_stwo => CairoLayout::all_cairo_stwo_instance(),

Check warning on line 191 in vm/src/vm/runners/cairo_runner.rs

View check run for this annotation

Codecov / codecov/patch

vm/src/vm/runners/cairo_runner.rs#L191

Added line #L191 was not covered by tests
LayoutName::all_solidity => CairoLayout::all_solidity_instance(),
LayoutName::dynamic => {
let params =
Expand Down

0 comments on commit bc25090

Please sign in to comment.