Commit 7c23e00a authored by malenov's avatar malenov
Browse files

add BASOP instrumentation

parent eb5e7aac
Loading
Loading
Loading
Loading
Loading
+65 −3
Original line number Diff line number Diff line
@@ -142,6 +142,9 @@ static __inline Word40 L40_set( Word40 L40_var1 )
        L40_var_out = L40_var_out | 0xffffff0000000000LL;
#endif

#ifdef WMOPS
    multiCounter[currCounter].L40_set++;
#endif 

    return ( L40_var_out );
}
@@ -154,6 +157,9 @@ static __inline UWord16 Extract40_H( Word40 L40_var1 )

    var_out = (UWord16) ( L40_var1 >> 16 );

#ifdef WMOPS
    multiCounter[currCounter].Extract40_H++;
#endif 

    return ( var_out );
}
@@ -165,6 +171,9 @@ static __inline UWord16 Extract40_L( Word40 L40_var1 )

    var_out = (UWord16) ( L40_var1 );

#ifdef WMOPS
    multiCounter[currCounter].Extract40_L++;
#endif 

    return ( var_out );
}
@@ -176,6 +185,9 @@ static __inline UWord32 L_Extract40( Word40 L40_var1 )

    L_var_out = (UWord32) L40_var1;

#ifdef WMOPS
    multiCounter[currCounter].L_Extract40++;
#endif 

    return ( L_var_out );
}
@@ -191,13 +203,25 @@ static __inline Word40 L40_deposit_h( Word16 var1 )
    if ( var1 & 0x8000 )
    {
        L40_var_out = L40_set( L40_var_out | 0xff00000000 );

#ifdef WMOPS
        multiCounter[currCounter].L40_set--;
#endif 
    }
#else
    if ( var1 & 0x8000 )
    {
        L40_var_out = L40_set( L40_var_out | 0xff00000000LL );

#ifdef WMOPS
        multiCounter[currCounter].L40_set--;
#endif 
    }
#endif

#ifdef WMOPS
    multiCounter[currCounter].L40_deposit_h++;
#endif 

    return ( L40_var_out );
}
@@ -213,13 +237,25 @@ static __inline Word40 L40_deposit_l( Word16 var1 )
    if ( var1 & 0x8000 )
    {
        L40_var_out = L40_set( L40_var_out | 0xffffff0000 );

#ifdef WMOPS
        multiCounter[currCounter].L40_set--;
#endif 
    }
#else
    if ( var1 & 0x8000 )
    {
        L40_var_out = L40_set( L40_var_out | 0xffffff0000LL );

#ifdef WMOPS
        multiCounter[currCounter].L40_set--;
#endif 
    }
#endif

#ifdef WMOPS
    multiCounter[currCounter].L40_deposit_l++;
#endif 

    return ( L40_var_out );
}
@@ -235,13 +271,25 @@ static __inline Word40 L40_deposit32( Word32 L_var1 )
    if ( L_var1 & 0x80000000 )
    {
        L40_var_out = L40_set( L40_var_out | 0xff00000000 );

#ifdef WMOPS
        multiCounter[currCounter].L40_set--;
#endif 
    }
#else
    if ( L_var1 & 0x80000000 )
    {
        L40_var_out = L40_set( L40_var_out | 0xff00000000LL );

#ifdef WMOPS
        multiCounter[currCounter].L40_set--;
#endif 
    }
#endif

#ifdef WMOPS
    multiCounter[currCounter].L40_deposit32++;
#endif 

    return ( L40_var_out );
}
@@ -261,6 +309,11 @@ static __inline Word40 L40_round( Word40 L40_var1 )
    L40_var_out = L40_add( 0x8000, L40_var1 );
    L40_var_out = L40_var_out & L40_constant;

#ifdef WMOPS
    multiCounter[currCounter].L40_set--;
    multiCounter[currCounter].L40_add--;
    multiCounter[currCounter].L40_round++;
#endif 

    return ( L40_var_out );
}
@@ -272,6 +325,12 @@ static __inline Word16 round40( Word40 L40_var1 )

    var_out = extract_h( L_saturate40( L40_round( L40_var1 ) ) );

#ifdef WMOPS
    multiCounter[currCounter].L40_round--;
    multiCounter[currCounter].L_saturate40--;
    multiCounter[currCounter].extract_h--;
    multiCounter[currCounter].round40++;
#endif 

    return ( var_out );
}
@@ -288,6 +347,9 @@ static __inline Word40 L40_mult( Word16 var1, Word16 var2 )
    /* Below line can not overflow, so we can use << instead of L40_shl. */
    L40_var_out = L40_var_out << 1;

#ifdef WMOPS
    multiCounter[currCounter].L40_mult++;
#endif 

    return ( L40_var_out );
}