[Complexity] Optimize minimum_s()
# Basic info
This is a subtask of #1009 - it splits off the complexity optimization of the function minimum_s(). This optimization is BE.
# Bug description
The proposed patch removes the `IF()` condition in the `FOR`-loop and replaces it by an `if()`. The minimum value is not stored, just the array index, which allows for this optimization.
```
Word16 minimum_s(
const Word16 *vec, /* i : Input vector */
const Word16 lvec, /* i : Vector length */
Word16 *min_val /* o : minimum value in the input vector */
)
{
#ifdef PATCH
Word16 i, ind;
#else
Word16 i, ind, tmp;
#endif
ind = 0;
move16();
#ifndef PATCH
tmp = vec[0];
move16();
#endif
FOR( i = 1; i < lvec; i++ )
{
#ifdef PATCH
if ( LT_16( vec[i], vec[ind] ) )
{
ind = add( i, 0 );
}
#else
IF( LT_16( vec[i], tmp ) )
{
ind = i;
move16();
tmp = vec[i];
move16();
}
#endif
}
if ( min_val != NULL )
{
#ifdef PATCH
*min_val = vec[ind];
#else
*min_val = tmp;
#endif
move16();
}
return ind;
}
```
The proposed patch saves 4 cycles per `FOR` iteration.
# Ways to reproduce
(Clear steps or refer to a failing automated test, e.g. with a pipeline link)
issue