@coreyqh There are a few bugs I found with the B19.svh:
- Issues w/ cross
B19_F128__norm_x_subnorm: cross FP_compare_ops, F128_operand_a_sign, F128_operand_b_sign, F128_a_norm, F128_b_subnorm,
/* a.EXP > b.EXP*/ F128_frac_compare, F128_result_fmt;
B19_F128__subnorm_x_norm: cross FP_compare_ops, F128_operand_a_sign, F128_operand_b_sign, F128_a_norm, F128_b_subnorm,
/* a.EXP < b.EXP*/ F128_frac_compare, F128_result_fmt;
B19_F128__subnorm_x_subnorm: cross FP_compare_ops, F128_operand_a_sign, F128_operand_b_sign, F128_a_norm, F128_b_subnorm,
F128_exp_compare, F128_frac_compare, F128_result_fmt;
- subnorm x norm is crossing a_norm and b_subnorm
- same w/ subnorm x subnorm
- GTE, LTE errors with subnormal x zero / zero x subnorm for F128
B19_F128__subnorm_x_zero: cross FP_compare_ops, F128_operand_a_sign, F128_operand_b_sign, F128_a_subnorm, F128_b_zero,
/* a.EXP < b.EXP*/ F128_frac_LT, F128_result_fmt;
B19_F128__zero_x_subnorm: cross FP_compare_ops, F128_operand_a_sign, F128_operand_b_sign, F128_a_zero, F128_b_subnorm,
/* a.EXP > b.EXP*/ F128_frac_GT, F128_result_fmt;
- for subnorm x zero: since sub_norm exp < zero_exp, then sub_norm_fraction can only be GTE to zero_fraction, but we have F128_frac_LT.
- inverse of above for zero x subnorm.
Changing the two above gets the coverage to ~82% (I have done the changes to B19.svh locally, let me know if I could just commit what I have currently or it would be better for you to make the adjustments @coreyqh)
@coreyqh A few more issues that I am looking into:
- For some reason, with any subnormal x (zero / normal), the
bin <*,neg,*,*,*,eq,*> is consistently missed. Unsure if it is a coverage problem or a testgen problem.
- Please look over coverage scenarios for subnormal x subnormal, with the following bins missed:
# bin <*,*,*,*,*,lt,gt,*> 0 1 20 ZERO
# bin <*,*,*,*,*,gt,eq,*> 0 1 20 ZERO
# bin <*,*,*,*,*,lt,eq,*> 0 1 20 ZERO
# bin <*,*,*,*,*,gt,lt,*> 0 1 20 ZERO
# bin <*,pos,neg,*,*,*,eq,*> 0 1 15 ZERO
# bin <*,neg,pos,*,*,*,eq,*> 0 1 15 ZERO
I believe the first 4 bins are impossible conditions for subnorm x subnorm, and the last two could be a testgen error or coverage.
@coreyqh There are a few bugs I found with the B19.svh:
Changing the two above gets the coverage to ~82% (I have done the changes to B19.svh locally, let me know if I could just commit what I have currently or it would be better for you to make the adjustments @coreyqh)
@coreyqh A few more issues that I am looking into:
bin <*,neg,*,*,*,eq,*>is consistently missed. Unsure if it is a coverage problem or a testgen problem.I believe the first 4 bins are impossible conditions for subnorm x subnorm, and the last two could be a testgen error or coverage.