Skip to content

Commit 08df1c6

Browse files
author
dev-aditya-hub
committed
fix: pin csr_frm_val=4 for dyn frm coverpoints
1 parent 623c0a4 commit 08df1c6

3 files changed

Lines changed: 4 additions & 4 deletions

File tree

generators/testgen/src/testgen/coverpoints/cp_fp_reg_edges.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def make_fs1_edges(instr_name: str, instr_type: str, coverpoint: str, test_data:
3535
test_chunks: list[TestChunk] = []
3636
for edge_val in edges:
3737
for frm_mode in frm_modes:
38-
params = generate_random_params(test_data, instr_type, exclude_regs=[0], fs1val=edge_val, frm=frm_mode)
38+
params = generate_random_params(test_data, instr_type, exclude_regs=[0], fs1val=edge_val, frm=frm_mode, csr_frm_val=4 if frm_mode == "dyn" else None)
3939
bin_name = f"b{edge_val:#x}{f'_{frm_mode}' if frm_mode is not None else ''}"
4040
desc = f"{coverpoint} (Test source fs1 value = {test_data.flen_format_str.format(edge_val)}{f', frm = {frm_mode}' if frm_mode is not None else ''})"
4141
tc = format_single_testcase(instr_name, instr_type, test_data, params, desc, bin_name, coverpoint)

generators/testgen/src/testgen/coverpoints/cp_frm.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def make_frm(instr_name: str, instr_type: str, coverpoint: str, test_data: TestD
2424
frm_modes = ("dyn", "rdn", "rmm", "rne", "rtz", "rup")
2525
test_chunks: list[TestChunk] = []
2626
for frm_mode in frm_modes:
27-
params = generate_random_params(test_data, instr_type, exclude_regs=[0], frm=frm_mode)
27+
params = generate_random_params(test_data, instr_type, exclude_regs=[0], frm=frm_mode, csr_frm_val=4 if frm_mode == "dyn" else None)
2828
desc = f"{coverpoint} (Test frm, mode = {frm_mode})"
2929
tc = format_single_testcase(instr_name, instr_type, test_data, params, desc, f"b{frm_mode}", coverpoint)
3030
test_chunks.append(tc)

generators/testgen/src/testgen/coverpoints/cr_fp_reg_edges.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def make_cr_fs1_fs2_edges(instr_name: str, instr_type: str, coverpoint: str, tes
4242
# Explicit rounding modes (if needed)
4343
for frm_mode in frm_modes:
4444
params = generate_random_params(
45-
test_data, instr_type, exclude_regs=[0], fs1val=edge_val1, fs2val=edge_val2, frm=frm_mode
45+
test_data, instr_type, exclude_regs=[0], fs1val=edge_val1, fs2val=edge_val2, frm=frm_mode, csr_frm_val=4 if frm_mode == "dyn" else None
4646
)
4747
bin_name = f"fs1val={edge_val1:#x}, fs2val={edge_val2:#x}, frm={frm_mode}"
4848
desc = f"{coverpoint} (Test source fs1 = {test_data.flen_format_str.format(edge_val1)} fs2 = {test_data.flen_format_str.format(edge_val2)}{f', frm = {frm_mode}' if frm_mode is not None else ''})"
@@ -79,7 +79,7 @@ def make_cr_fs1_fs3_edges(instr_name: str, instr_type: str, coverpoint: str, tes
7979
# Explicit rounding modes (if needed)
8080
for frm_mode in frm_modes:
8181
params = generate_random_params(
82-
test_data, instr_type, exclude_regs=[0], fs1val=edge_val1, fs3val=edge_val2, frm=frm_mode
82+
test_data, instr_type, exclude_regs=[0], fs1val=edge_val1, fs3val=edge_val2, frm=frm_mode, csr_frm_val=4 if frm_mode == "dyn" else None
8383
)
8484
desc = f"{coverpoint} (Test source fs1 = {test_data.flen_format_str.format(edge_val1)} fs3 = {test_data.flen_format_str.format(edge_val2)}{f', frm = {frm_mode}' if frm_mode is not None else ''})"
8585
bin_name = f"fs1val={edge_val1:#x}, fs3val={edge_val2:#x}, frm={frm_mode}"

0 commit comments

Comments
 (0)