From 1c1d782bf85ca3be75f7eca3e7a58547dcfa48e7 Mon Sep 17 00:00:00 2001 From: nella Date: Wed, 18 Mar 2026 12:36:31 +0100 Subject: [PATCH] Consolidate csa tests. --- tests/csa_tree/abc_bench_add8.v | 6 - tests/csa_tree/add_1bit.v | 9 -- tests/csa_tree/add_1bit_wide_out.v | 6 - tests/csa_tree/add_chain_16.v | 7 - tests/csa_tree/add_chain_2_neg.v | 8 -- tests/csa_tree/add_chain_3.v | 9 -- tests/csa_tree/add_chain_5.v | 7 - tests/csa_tree/add_chain_8.v | 7 - tests/csa_tree/add_mixed_widths.v | 10 -- tests/csa_tree/add_multi_const.v | 6 - tests/csa_tree/add_multi_fanout.v | 10 -- tests/csa_tree/add_partial_chain.v | 9 -- tests/csa_tree/add_repeated.v | 6 - tests/csa_tree/add_signed.v | 6 - tests/csa_tree/add_two_chains.v | 9 -- tests/csa_tree/add_wide_output.v | 6 - tests/csa_tree/add_with_const.v | 7 - tests/csa_tree/csa_tree_16input.ys | 8 -- tests/csa_tree/csa_tree_1bit.ys | 8 -- tests/csa_tree/csa_tree_1bit_wide_out.ys | 8 -- tests/csa_tree/csa_tree_2input_neg.ys | 11 -- tests/csa_tree/csa_tree_3input.ys | 8 -- tests/csa_tree/csa_tree_5input.ys | 8 -- tests/csa_tree/csa_tree_8input.ys | 8 -- tests/csa_tree/csa_tree_add_chains.ys | 61 ++++++++ tests/csa_tree/csa_tree_const.ys | 8 -- tests/csa_tree/csa_tree_edge_cases.ys | 147 +++++++++++++++++++ tests/csa_tree/csa_tree_equiv.ys | 165 +++++++++++++++++----- tests/csa_tree/csa_tree_fir.ys | 8 -- tests/csa_tree/csa_tree_idempotent.ys | 14 +- tests/csa_tree/csa_tree_mixed_widths.ys | 8 -- tests/csa_tree/csa_tree_multi_const.ys | 9 -- tests/csa_tree/csa_tree_multi_fanout.ys | 8 -- tests/csa_tree/csa_tree_negative.ys | 77 ++++++++++ tests/csa_tree/csa_tree_partial_chain.ys | 8 -- tests/csa_tree/csa_tree_repeated.ys | 8 -- tests/csa_tree/csa_tree_signed.ys | 8 -- tests/csa_tree/csa_tree_sim.ys | 77 ++++++++-- tests/csa_tree/csa_tree_sub_2op_neg.ys | 8 -- tests/csa_tree/csa_tree_sub_3op.ys | 10 -- tests/csa_tree/csa_tree_sub_5op.ys | 10 -- tests/csa_tree/csa_tree_sub_all.ys | 10 -- tests/csa_tree/csa_tree_sub_chains.ys | 102 +++++++++++++ tests/csa_tree/csa_tree_sub_double_neg.ys | 42 ------ tests/csa_tree/csa_tree_sub_equiv.ys | 39 ----- tests/csa_tree/csa_tree_sub_mixed.ys | 10 -- tests/csa_tree/csa_tree_sub_signed.ys | 10 -- tests/csa_tree/csa_tree_sub_sim.ys | 38 ----- tests/csa_tree/csa_tree_synth.ys | 87 +++++++----- tests/csa_tree/csa_tree_two_chains.ys | 8 -- tests/csa_tree/csa_tree_wide_output.ys | 8 -- tests/csa_tree/equiv_narrow.v | 59 -------- tests/csa_tree/equiv_sub_double_neg.v | 7 - tests/csa_tree/equiv_sub_narrow.v | 27 ---- tests/csa_tree/fir_4tap.v | 24 ---- tests/csa_tree/run-test.sh | 4 +- tests/csa_tree/sim_add4.v | 6 - tests/csa_tree/sub_2op_neg.v | 6 - tests/csa_tree/sub_3op.v | 6 - tests/csa_tree/sub_5op.v | 6 - tests/csa_tree/sub_all.v | 6 - tests/csa_tree/sub_double_neg.v | 7 - tests/csa_tree/sub_mixed.v | 6 - tests/csa_tree/sub_signed.v | 6 - 64 files changed, 641 insertions(+), 704 deletions(-) delete mode 100644 tests/csa_tree/abc_bench_add8.v delete mode 100644 tests/csa_tree/add_1bit.v delete mode 100644 tests/csa_tree/add_1bit_wide_out.v delete mode 100644 tests/csa_tree/add_chain_16.v delete mode 100644 tests/csa_tree/add_chain_2_neg.v delete mode 100644 tests/csa_tree/add_chain_3.v delete mode 100644 tests/csa_tree/add_chain_5.v delete mode 100644 tests/csa_tree/add_chain_8.v delete mode 100644 tests/csa_tree/add_mixed_widths.v delete mode 100644 tests/csa_tree/add_multi_const.v delete mode 100644 tests/csa_tree/add_multi_fanout.v delete mode 100644 tests/csa_tree/add_partial_chain.v delete mode 100644 tests/csa_tree/add_repeated.v delete mode 100644 tests/csa_tree/add_signed.v delete mode 100644 tests/csa_tree/add_two_chains.v delete mode 100644 tests/csa_tree/add_wide_output.v delete mode 100644 tests/csa_tree/add_with_const.v delete mode 100644 tests/csa_tree/csa_tree_16input.ys delete mode 100644 tests/csa_tree/csa_tree_1bit.ys delete mode 100644 tests/csa_tree/csa_tree_1bit_wide_out.ys delete mode 100644 tests/csa_tree/csa_tree_2input_neg.ys delete mode 100644 tests/csa_tree/csa_tree_3input.ys delete mode 100644 tests/csa_tree/csa_tree_5input.ys delete mode 100644 tests/csa_tree/csa_tree_8input.ys create mode 100644 tests/csa_tree/csa_tree_add_chains.ys delete mode 100644 tests/csa_tree/csa_tree_const.ys create mode 100644 tests/csa_tree/csa_tree_edge_cases.ys delete mode 100644 tests/csa_tree/csa_tree_fir.ys delete mode 100644 tests/csa_tree/csa_tree_mixed_widths.ys delete mode 100644 tests/csa_tree/csa_tree_multi_const.ys delete mode 100644 tests/csa_tree/csa_tree_multi_fanout.ys create mode 100644 tests/csa_tree/csa_tree_negative.ys delete mode 100644 tests/csa_tree/csa_tree_partial_chain.ys delete mode 100644 tests/csa_tree/csa_tree_repeated.ys delete mode 100644 tests/csa_tree/csa_tree_signed.ys delete mode 100644 tests/csa_tree/csa_tree_sub_2op_neg.ys delete mode 100644 tests/csa_tree/csa_tree_sub_3op.ys delete mode 100644 tests/csa_tree/csa_tree_sub_5op.ys delete mode 100644 tests/csa_tree/csa_tree_sub_all.ys create mode 100644 tests/csa_tree/csa_tree_sub_chains.ys delete mode 100644 tests/csa_tree/csa_tree_sub_double_neg.ys delete mode 100644 tests/csa_tree/csa_tree_sub_equiv.ys delete mode 100644 tests/csa_tree/csa_tree_sub_mixed.ys delete mode 100644 tests/csa_tree/csa_tree_sub_signed.ys delete mode 100644 tests/csa_tree/csa_tree_sub_sim.ys delete mode 100644 tests/csa_tree/csa_tree_two_chains.ys delete mode 100644 tests/csa_tree/csa_tree_wide_output.ys delete mode 100644 tests/csa_tree/equiv_narrow.v delete mode 100644 tests/csa_tree/equiv_sub_double_neg.v delete mode 100644 tests/csa_tree/equiv_sub_narrow.v delete mode 100644 tests/csa_tree/fir_4tap.v delete mode 100644 tests/csa_tree/sim_add4.v delete mode 100644 tests/csa_tree/sub_2op_neg.v delete mode 100644 tests/csa_tree/sub_3op.v delete mode 100644 tests/csa_tree/sub_5op.v delete mode 100644 tests/csa_tree/sub_all.v delete mode 100644 tests/csa_tree/sub_double_neg.v delete mode 100644 tests/csa_tree/sub_mixed.v delete mode 100644 tests/csa_tree/sub_signed.v diff --git a/tests/csa_tree/abc_bench_add8.v b/tests/csa_tree/abc_bench_add8.v deleted file mode 100644 index 7e61007c5..000000000 --- a/tests/csa_tree/abc_bench_add8.v +++ /dev/null @@ -1,6 +0,0 @@ -module abc_bench_add8( - input [7:0] a, b, c, d, e, f, g, h, - output [7:0] y -); - assign y = a + b + c + d + e + f + g + h; -endmodule diff --git a/tests/csa_tree/add_1bit.v b/tests/csa_tree/add_1bit.v deleted file mode 100644 index e4b93e8c0..000000000 --- a/tests/csa_tree/add_1bit.v +++ /dev/null @@ -1,9 +0,0 @@ -// Edge case for carry shifting - -module add_1bit( - input a, b, c, - output [1:0] y -); - assign y = a + b + c; -endmodule - diff --git a/tests/csa_tree/add_1bit_wide_out.v b/tests/csa_tree/add_1bit_wide_out.v deleted file mode 100644 index e1a6ceb51..000000000 --- a/tests/csa_tree/add_1bit_wide_out.v +++ /dev/null @@ -1,6 +0,0 @@ -module add_1bit_wide_out( - input a, b, c, d, - output [3:0] y -); - assign y = a + b + c + d; -endmodule diff --git a/tests/csa_tree/add_chain_16.v b/tests/csa_tree/add_chain_16.v deleted file mode 100644 index 0a1f12f8c..000000000 --- a/tests/csa_tree/add_chain_16.v +++ /dev/null @@ -1,7 +0,0 @@ -module add_chain_16( - input [15:0] a0, a1, a2, a3, a4, a5, a6, a7, - input [15:0] a8, a9, a10, a11, a12, a13, a14, a15, - output [15:0] y -); - assign y = a0 + a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15; -endmodule diff --git a/tests/csa_tree/add_chain_2_neg.v b/tests/csa_tree/add_chain_2_neg.v deleted file mode 100644 index 0e2896c78..000000000 --- a/tests/csa_tree/add_chain_2_neg.v +++ /dev/null @@ -1,8 +0,0 @@ -// Shouldnt generate csa tree - -module add_chain_2( - input [7:0] a, b, - output [7:0] y -); - assign y = a + b; -endmodule diff --git a/tests/csa_tree/add_chain_3.v b/tests/csa_tree/add_chain_3.v deleted file mode 100644 index eea529ead..000000000 --- a/tests/csa_tree/add_chain_3.v +++ /dev/null @@ -1,9 +0,0 @@ -// Min chain len - -module add_chain_3( - input [7:0] a, b, c, - output [7:0] y -); - assign y = a + b + c; -endmodule - diff --git a/tests/csa_tree/add_chain_5.v b/tests/csa_tree/add_chain_5.v deleted file mode 100644 index 25fb30e1d..000000000 --- a/tests/csa_tree/add_chain_5.v +++ /dev/null @@ -1,7 +0,0 @@ -module add_chain_5( - input [11:0] a, b, c, d, e, - output [11:0] y -); - assign y = a + b + c + d + e; -endmodule - diff --git a/tests/csa_tree/add_chain_8.v b/tests/csa_tree/add_chain_8.v deleted file mode 100644 index 96adbc37e..000000000 --- a/tests/csa_tree/add_chain_8.v +++ /dev/null @@ -1,7 +0,0 @@ -module add_chain_8( - input [15:0] a, b, c, d, e, f, g, h, - output [15:0] y -); - assign y = a + b + c + d + e + f + g + h; -endmodule - diff --git a/tests/csa_tree/add_mixed_widths.v b/tests/csa_tree/add_mixed_widths.v deleted file mode 100644 index 51836872a..000000000 --- a/tests/csa_tree/add_mixed_widths.v +++ /dev/null @@ -1,10 +0,0 @@ -module add_mixed_widths( - input [7:0] a, - input [3:0] b, - input [15:0] c, - input [7:0] d, - output [15:0] y -); - assign y = a + b + c + d; -endmodule - diff --git a/tests/csa_tree/add_multi_const.v b/tests/csa_tree/add_multi_const.v deleted file mode 100644 index 7da78f9de..000000000 --- a/tests/csa_tree/add_multi_const.v +++ /dev/null @@ -1,6 +0,0 @@ -module add_multi_const( - input [7:0] x, - output [7:0] y -); - assign y = 8'd1 + 8'd2 + 8'd3 + x; -endmodule diff --git a/tests/csa_tree/add_multi_fanout.v b/tests/csa_tree/add_multi_fanout.v deleted file mode 100644 index 4cc7ecab3..000000000 --- a/tests/csa_tree/add_multi_fanout.v +++ /dev/null @@ -1,10 +0,0 @@ -module add_multi_fanout( - input [7:0] a, b, c, - output [7:0] mid, - output [7:0] y -); - wire [7:0] ab = a + b; - assign mid = ab; - assign y = ab + c; -endmodule - diff --git a/tests/csa_tree/add_partial_chain.v b/tests/csa_tree/add_partial_chain.v deleted file mode 100644 index a4f20cfa4..000000000 --- a/tests/csa_tree/add_partial_chain.v +++ /dev/null @@ -1,9 +0,0 @@ -module add_partial_chain( - input [7:0] a, b, c, d, e, - output [7:0] mid, - output [7:0] y -); - wire [7:0] ab = a + b; - assign mid = ab; - assign y = ab + c + d + e; -endmodule diff --git a/tests/csa_tree/add_repeated.v b/tests/csa_tree/add_repeated.v deleted file mode 100644 index e3337097b..000000000 --- a/tests/csa_tree/add_repeated.v +++ /dev/null @@ -1,6 +0,0 @@ -module add_repeated( - input [7:0] a, - output [7:0] y -); - assign y = a + a + a + a; -endmodule diff --git a/tests/csa_tree/add_signed.v b/tests/csa_tree/add_signed.v deleted file mode 100644 index 42b9ca7fd..000000000 --- a/tests/csa_tree/add_signed.v +++ /dev/null @@ -1,6 +0,0 @@ -module add_signed( - input signed [7:0] a, b, c, d, - output signed [9:0] y -); - assign y = a + b + c + d; -endmodule diff --git a/tests/csa_tree/add_two_chains.v b/tests/csa_tree/add_two_chains.v deleted file mode 100644 index d79d9f3d6..000000000 --- a/tests/csa_tree/add_two_chains.v +++ /dev/null @@ -1,9 +0,0 @@ -module add_two_chains( - input [7:0] a, b, c, d, - input [7:0] e, f, g, h, - output [7:0] y1, - output [7:0] y2 -); - assign y1 = a + b + c + d; - assign y2 = e + f + g + h; -endmodule diff --git a/tests/csa_tree/add_wide_output.v b/tests/csa_tree/add_wide_output.v deleted file mode 100644 index 1f0342777..000000000 --- a/tests/csa_tree/add_wide_output.v +++ /dev/null @@ -1,6 +0,0 @@ -module add_wide_output( - input [7:0] a, b, c, d, - output [31:0] y -); - assign y = a + b + c + d; -endmodule diff --git a/tests/csa_tree/add_with_const.v b/tests/csa_tree/add_with_const.v deleted file mode 100644 index 570a399e4..000000000 --- a/tests/csa_tree/add_with_const.v +++ /dev/null @@ -1,7 +0,0 @@ -module add_with_const( - input [7:0] a, b, c, - output [7:0] y -); - assign y = a + b + c + 8'd42; -endmodule - diff --git a/tests/csa_tree/csa_tree_16input.ys b/tests/csa_tree/csa_tree_16input.ys deleted file mode 100644 index 46f51d44c..000000000 --- a/tests/csa_tree/csa_tree_16input.ys +++ /dev/null @@ -1,8 +0,0 @@ -read_verilog add_chain_16.v -hierarchy -auto-top -proc; opt_clean -csa_tree -stat - -select -assert-count 14 t:$fa -select -assert-count 1 t:$add diff --git a/tests/csa_tree/csa_tree_1bit.ys b/tests/csa_tree/csa_tree_1bit.ys deleted file mode 100644 index 4c1f7745a..000000000 --- a/tests/csa_tree/csa_tree_1bit.ys +++ /dev/null @@ -1,8 +0,0 @@ -read_verilog add_1bit.v -hierarchy -auto-top -proc; opt_clean -csa_tree -stat - -select -assert-count 1 t:$fa -select -assert-count 1 t:$add diff --git a/tests/csa_tree/csa_tree_1bit_wide_out.ys b/tests/csa_tree/csa_tree_1bit_wide_out.ys deleted file mode 100644 index 675fbc0a3..000000000 --- a/tests/csa_tree/csa_tree_1bit_wide_out.ys +++ /dev/null @@ -1,8 +0,0 @@ -read_verilog add_1bit_wide_out.v -hierarchy -auto-top -proc; opt_clean -csa_tree -stat - -select -assert-count 2 t:$fa -select -assert-count 1 t:$add diff --git a/tests/csa_tree/csa_tree_2input_neg.ys b/tests/csa_tree/csa_tree_2input_neg.ys deleted file mode 100644 index 810d1d8d9..000000000 --- a/tests/csa_tree/csa_tree_2input_neg.ys +++ /dev/null @@ -1,11 +0,0 @@ -# Test csa_tree on 2-operand — should not trigger - -read_verilog add_chain_2_neg.v -hierarchy -auto-top -proc; opt_clean -equiv_opt csa_tree -design -load postopt - -select -assert-none t:$fa -select -assert-count 1 t:$add - diff --git a/tests/csa_tree/csa_tree_3input.ys b/tests/csa_tree/csa_tree_3input.ys deleted file mode 100644 index 9e7c9aaf2..000000000 --- a/tests/csa_tree/csa_tree_3input.ys +++ /dev/null @@ -1,8 +0,0 @@ -read_verilog add_chain_3.v -hierarchy -auto-top -proc; opt_clean -csa_tree -stat - -select -assert-count 1 t:$fa -select -assert-count 1 t:$add diff --git a/tests/csa_tree/csa_tree_5input.ys b/tests/csa_tree/csa_tree_5input.ys deleted file mode 100644 index ef26e21ce..000000000 --- a/tests/csa_tree/csa_tree_5input.ys +++ /dev/null @@ -1,8 +0,0 @@ -read_verilog add_chain_5.v -hierarchy -auto-top -proc; opt_clean -csa_tree -stat - -select -assert-count 3 t:$fa -select -assert-count 1 t:$add diff --git a/tests/csa_tree/csa_tree_8input.ys b/tests/csa_tree/csa_tree_8input.ys deleted file mode 100644 index fc5148edf..000000000 --- a/tests/csa_tree/csa_tree_8input.ys +++ /dev/null @@ -1,8 +0,0 @@ -read_verilog add_chain_8.v -hierarchy -auto-top -proc; opt_clean -csa_tree -stat - -select -assert-count 6 t:$fa -select -assert-count 1 t:$add diff --git a/tests/csa_tree/csa_tree_add_chains.ys b/tests/csa_tree/csa_tree_add_chains.ys new file mode 100644 index 000000000..46e5868a9 --- /dev/null +++ b/tests/csa_tree/csa_tree_add_chains.ys @@ -0,0 +1,61 @@ +read_verilog <