Commit c5f5823d authored by lefort's avatar lefort
Browse files

Merge branch '1522_ref_PortFlpMR1349' into 'float-pc'

[non-BE] Port float MR1349 to BASOP FLP ref.

See merge request !1497
parents 042791c6 6cd829b4
Loading
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -206,6 +206,11 @@
#define NONBE_FIX_973_HODIRAC_BAND_GROUPING                   /* FhG: issue 973: empty parameter band in DirAC */
#define FIX_971_LOG2_IDX_GAIN_0                         /* VA: prevent -Inf due to log2(ratio==0)  */

#define BE_FIX_567_DOUBLE_STEREO_DMX                          /* NTT: Fix formal issues */   
#define NONBE_FIX_567_DOUBLE_STEREO_DMX                       /* Orange: Double-precision replaced by single-precision */   
#define NONBE_FIX_947_STEREO_DMX_EVS_POC                      /* Orange: Fix clicks on POC */
#define NONBE_FIX_947_STEREO_DMX_EVS_PHA                      /* Orange: Fix issues on PHA */

/* #################### End BASOP porting switches ############################ */

/* clang-format on */
+7 −0
Original line number Diff line number Diff line
@@ -132,6 +132,13 @@ float inv_sqrt(
    const float x /* i  : input value                                     */
);

#ifdef NONBE_FIX_567_DOUBLE_STEREO_DMX
/*! r: inverse square root of input value (float) */
float inv_sqrtf(
    const float x /* i  : input value                                     */
);
#endif

/*! r: output random value */
int16_t own_random(
    int16_t *seed /* i/o: random seed                                     */
+15 −0
Original line number Diff line number Diff line
@@ -768,6 +768,21 @@ float inv_sqrt(
    return (float) ( 1.0 / sqrt( x ) );
}

#ifdef NONBE_FIX_567_DOUBLE_STEREO_DMX
/*---------------------------------------------------------------------*
 * inv_sqrtf()
 *
 * Find the inverse square root of the input value (float)
 *---------------------------------------------------------------------*/

/*! r: inverse square root of input value (float) */
float inv_sqrtf(
    const float x /* i  : input value                        */
)
{
    return ( 1.0f / sqrtf( x ) );
}
#endif

/*-------------------------------------------------------------------*
 * conv()
+18 −21
Original line number Diff line number Diff line
@@ -263,7 +263,6 @@ void push_wmops_fct( const char *label, ... )
                }
                wmops[i].LastWOper = 0;
            }

        }

        strcpy( wmops[index_record].label, func_name );
@@ -2217,5 +2216,3 @@ void Reset_BASOP_WMOPS_counter( void )
}

#endif

+105 −81
Original line number Diff line number Diff line
@@ -1220,9 +1220,14 @@ void Reset_BASOP_WMOPS_counter( void );
#define FOR( a ) for ( a )

#else
#define FOR( a) if( incrFor(), 0); else for( a)
#define FOR( a )        \
    if ( incrFor(), 0 ) \
        ;               \
    else                \
        for ( a )

static __inline void incrFor( void) {
static __inline void incrFor( void )
{
    multiCounter[currCounter].For++;
}
#endif
@@ -1247,7 +1252,8 @@ static __inline void incrFor( void) {
#else
#define WHILE( a ) while ( incrWhile(), a )

static __inline void incrWhile( void) {
static __inline void incrWhile( void )
{
    multiCounter[currCounter].While++;
}
#endif
@@ -1299,7 +1305,8 @@ static __inline void incrWhile( void) {
#else
#define IF( a ) if ( incrIf(), a )

static __inline void incrIf( void) {
static __inline void incrIf( void )
{
    /* Technical note :
     * If the "IF" operator comes just after an "ELSE", its counter
     * must not be incremented.
@@ -1330,9 +1337,12 @@ static __inline void incrIf( void) {
#define ELSE else

#else
#define ELSE else if( incrElse(), 0) ; else
#define ELSE                   \
    else if ( incrElse(), 0 ); \
    else

static __inline void incrElse( void) {
static __inline void incrElse( void )
{
    multiCounter[currCounter].If++;

    /* We keep track of the funcId of the last function
@@ -1369,7 +1379,8 @@ static __inline void incrElse( void) {
#else
#define SWITCH( a ) switch ( incrSwitch(), a )

static __inline void incrSwitch( void) {
static __inline void incrSwitch( void )
{
    multiCounter[currCounter].Switch++;
}
#endif
@@ -1390,9 +1401,14 @@ static __inline void incrSwitch( void) {
#define CONTINUE continue

#else
#define CONTINUE if( incrContinue(), 0); else continue
#define CONTINUE             \
    if ( incrContinue(), 0 ) \
        ;                    \
    else                     \
        continue

static __inline void incrContinue( void) {
static __inline void incrContinue( void )
{
    multiCounter[currCounter].Continue++;
}
#endif
@@ -1413,9 +1429,14 @@ static __inline void incrContinue( void) {
#define BREAK break

#else
#define BREAK if( incrBreak(), 0) break; else break
#define BREAK             \
    if ( incrBreak(), 0 ) \
        break;            \
    else                  \
        break

static __inline void incrBreak( void) {
static __inline void incrBreak( void )
{
    multiCounter[currCounter].Break++;
}
#endif
@@ -1436,13 +1457,16 @@ static __inline void incrBreak( void) {
#define GOTO goto

#else
#define GOTO if( incrGoto(), 0); else goto
#define GOTO             \
    if ( incrGoto(), 0 ) \
        ;                \
    else                 \
        goto

static __inline void incrGoto( void) {
static __inline void incrGoto( void )
{
    multiCounter[currCounter].Goto++;
}
#endif

#endif /* WMOPS_H */

Loading