Resolve "Assertion errors triggered when float code is compiled with "-funsafe-math-optimizations" option"

Reason why this change is needed

In the function ivas_get_dirac_sba_max_md_bits() the expression

*metadata_max_bits = (int16_t) min( (float) MAX16B, ceilf( (float) *metadata_max_bits * nbands / 5 ) );

might actually return different values for -funsafe-math-optimizations because of imprecisions of the division in combination with the ceilf()-operator.

Description of the change

Convert this expression to double-precision.

Affected operating points

  • Generally affecting SBA/OSBA, but the changes are BE.

Related to #1544 (closed)

Merge request reports

Loading