Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 5 additions & 17 deletions compiler/noirc_evaluator/src/ssa/opt/brillig_array_get_and_set.rs
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ fn compute_index_and_offset(

#[cfg(test)]
mod tests {
use crate::{assert_ssa_snapshot, ssa::opt::assert_normalized_ssa_equals};
use crate::{assert_ssa_snapshot, ssa::opt::assert_ssa_does_not_change};

use super::Ssa;

Expand Down Expand Up @@ -197,10 +197,7 @@ mod tests {
return v2
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.brillig_array_get_and_set();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::brillig_array_get_and_set);
}

#[test]
Expand All @@ -212,10 +209,7 @@ mod tests {
return v2
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.brillig_array_get_and_set();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::brillig_array_get_and_set);
}

#[test]
Expand Down Expand Up @@ -271,10 +265,7 @@ mod tests {
return v2
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.brillig_array_get_and_set();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::brillig_array_get_and_set);
}

#[test]
Expand All @@ -286,9 +277,6 @@ mod tests {
return v2
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.brillig_array_get_and_set();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::brillig_array_get_and_set);
}
}
17 changes: 4 additions & 13 deletions compiler/noirc_evaluator/src/ssa/opt/check_u128_mul_overflow.rs
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ fn check_u128_mul_overflow(
mod tests {
use crate::{
assert_ssa_snapshot,
ssa::{opt::assert_normalized_ssa_equals, ssa_gen::Ssa},
ssa::{opt::assert_ssa_does_not_change, ssa_gen::Ssa},
};

#[test]
Expand All @@ -154,10 +154,7 @@ mod tests {
return
}
";
let ssa = Ssa::from_str(src).unwrap();

let ssa = ssa.check_u128_mul_overflow();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::check_u128_mul_overflow);
}

#[test]
Expand All @@ -169,10 +166,7 @@ mod tests {
return
}
";
let ssa = Ssa::from_str(src).unwrap();

let ssa = ssa.check_u128_mul_overflow();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::check_u128_mul_overflow);
}

#[test]
Expand Down Expand Up @@ -278,10 +272,7 @@ mod tests {
return
}
";
let ssa = Ssa::from_str(src).unwrap();

let ssa = ssa.check_u128_mul_overflow();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::check_u128_mul_overflow);
}
#[test]
fn predicate_overflow() {
Expand Down
14 changes: 4 additions & 10 deletions compiler/noirc_evaluator/src/ssa/opt/checked_to_unchecked.rs
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ fn get_max_num_bits(
mod tests {
use crate::{
assert_ssa_snapshot,
ssa::{opt::assert_normalized_ssa_equals, ssa_gen::Ssa},
ssa::{opt::assert_ssa_does_not_change, ssa_gen::Ssa},
};

#[test]
Expand Down Expand Up @@ -309,9 +309,7 @@ mod tests {
return v5
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.checked_to_unchecked();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::checked_to_unchecked);
}

#[test]
Expand All @@ -325,9 +323,7 @@ mod tests {
return v3
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.checked_to_unchecked();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::checked_to_unchecked);
}

#[test]
Expand All @@ -342,9 +338,7 @@ mod tests {
return v2
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.checked_to_unchecked();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::checked_to_unchecked);
}

#[test]
Expand Down
67 changes: 12 additions & 55 deletions compiler/noirc_evaluator/src/ssa/opt/constant_folding.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1013,7 +1013,7 @@ mod test {
types::{NumericType, Type},
value::ValueMapping,
},
opt::assert_normalized_ssa_equals,
opt::{assert_normalized_ssa_equals, assert_ssa_does_not_change},
},
};

Expand Down Expand Up @@ -1148,9 +1148,7 @@ mod test {
return v3
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand Down Expand Up @@ -1235,11 +1233,7 @@ mod test {
return
}
";
let ssa = Ssa::from_str(src).unwrap();

// Expected output is unchanged
let ssa = ssa.fold_constants();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand Down Expand Up @@ -1692,9 +1686,7 @@ mod test {
return
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants_using_constraints();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants_using_constraints);
}

#[test]
Expand All @@ -1716,9 +1708,7 @@ mod test {
return
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants_using_constraints();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants_using_constraints);
}

#[test]
Expand All @@ -1742,9 +1732,7 @@ mod test {
return
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants_using_constraints();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants_using_constraints);
}

#[test]
Expand Down Expand Up @@ -1795,12 +1783,7 @@ mod test {
return v6
}
";

let ssa = Ssa::from_str(src).unwrap();

let ssa = ssa.fold_constants_using_constraints();
// We expect the code to be unchanged
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants_using_constraints);
}

#[test]
Expand Down Expand Up @@ -1875,10 +1858,7 @@ mod test {
return
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand All @@ -1895,10 +1875,7 @@ mod test {
return
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand All @@ -1915,10 +1892,7 @@ mod test {
return
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand All @@ -1935,10 +1909,7 @@ mod test {
return
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand All @@ -1955,21 +1926,7 @@ mod test {
return
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.fold_constants();

assert_ssa_snapshot!(ssa, @r"
acir(inline) fn main f0 {
b0(v0: u32, v1: u32, v2: u1):
enable_side_effects v2
v4 = div v1, u32 2
v5 = not v2
enable_side_effects v5
v6 = div v1, u32 2
return
}
");
assert_ssa_does_not_change(src, Ssa::fold_constants);
}

#[test]
Expand Down
36 changes: 8 additions & 28 deletions compiler/noirc_evaluator/src/ssa/opt/die.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1004,7 +1004,7 @@ mod test {
map::Id,
types::{NumericType, Type},
},
opt::assert_normalized_ssa_equals,
opt::assert_ssa_does_not_change,
},
};

Expand Down Expand Up @@ -1106,11 +1106,7 @@ mod test {
return v2
}
";
let ssa = Ssa::from_str(src).unwrap();

// We expect the output to be unchanged
let ssa = ssa.dead_instruction_elimination();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination);
}

#[test]
Expand Down Expand Up @@ -1214,9 +1210,7 @@ mod test {
return
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.dead_instruction_elimination();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination);
}

#[test]
Expand Down Expand Up @@ -1306,10 +1300,7 @@ mod test {
return Field 1
}
";

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.dead_instruction_elimination();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination);
}

#[test]
Expand Down Expand Up @@ -1507,10 +1498,7 @@ mod test {
return v2
}
"#;

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.dead_instruction_elimination();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination);
}

#[test]
Expand All @@ -1525,10 +1513,7 @@ mod test {
return v0
}
"#;

let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.dead_instruction_elimination();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination);
}

#[test]
Expand Down Expand Up @@ -1584,9 +1569,7 @@ mod test {
return v3
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.dead_instruction_elimination_pre_flattening();
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination_pre_flattening);
}

#[test]
Expand Down Expand Up @@ -1712,11 +1695,8 @@ mod test {
jmp b1()
}
";
let ssa = Ssa::from_str(src).unwrap();
let ssa = ssa.dead_instruction_elimination();

// If `inc_rc v3` were removed, we risk it later being mutated in `v19 = array_set v18, index u32 0, value Field 1`.
// Thus, when we later go to do `v22 = array_set v21, index u32 0, value v3` once more, we will be writing [1] rather than [2].
assert_normalized_ssa_equals(ssa, src);
assert_ssa_does_not_change(src, Ssa::dead_instruction_elimination);
}
}
Loading
Loading