Commit 7bdee194 authored by vaillancour's avatar vaillancour
Browse files

Merge branch 'sgi_ignore_basop_warnings_in_evs' into basop_noglob

parents 4a81ef79 3ce2c9d9
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -171,8 +171,7 @@ Flag Carry = 0;

#ifdef BASOP_NOGLOB
#if defined BASOP_NOGLOB_DEV_ABORT
#define BASOP_TRIGGER_OVERFLOW_ERROR_OR_WARNING(error_enable, warning_enable) do { if ((1) || (warning_enable)) { assert(0); } } while(0)
//#define BASOP_TRIGGER_OVERFLOW_ERROR_OR_WARNING(error_enable, warning_enable) do { if ((error_enable) || (warning_enable)) { assert(0); } } while(0)
#define BASOP_TRIGGER_OVERFLOW_ERROR_OR_WARNING(error_enable, warning_enable) do { if ((error_enable) || (warning_enable)) { assert(0); } } while(0)
#elif defined BASOP_NOGLOB_DEV_PRINT
#define BASOP_TRIGGER_OVERFLOW_ERROR_OR_WARNING(error_enable, warning_enable) do { if (error_enable) { print_basop_noglob_error(); } else if (warning_enable) { print_basop_noglob_warning(); } } while(0)
#else
+8 −3
Original line number Diff line number Diff line
@@ -32,11 +32,16 @@
#define BASOP_NOGLOB

/* If enabled, global Overflow and Carry flags are used, like before BASOP_NOGLOB,
 * but overflow warnings and errors are still reported */
 * but overflow warnings and errors are still triggered */
//#define BASOP_NOGLOB_DEV_USE_GLOBALS

//#define BASOP_NOGLOB_DEV_PRINT /* If enabled, warnings will be printed to stdout when an unexpected overflow occurs */
#define BASOP_NOGLOB_DEV_ABORT /* If enabled, the program will abort when an unexpected overflow occurs */
/* If enabled, all overflow warnings and errors are disabled in EVS routines */
// #define BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS

/* Macros below configure the behavior when an overflow warning or error is triggered.
 * If none is enabled, overflow warnings and errors are ignored. */
//#define BASOP_NOGLOB_DEV_PRINT /* If enabled, warnings and errors will be printed to stdout */
#define BASOP_NOGLOB_DEV_ABORT /* If enabled, any warning or error will cause the program to abort */

#if defined BASOP_NOGLOB && !defined BASOP_NOGLOB_DEV_USE_GLOBALS
#define BASOP_NOGLOB_DECLARE_LOCAL
+21 −1
Original line number Diff line number Diff line
@@ -80,15 +80,19 @@ int main(int argc, char *argv[])

    IF(st_fx->Opt_VOIP_fx)
    {
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
        BASOP_SATURATE_WARNING_OFF
        BASOP_SATURATE_ERROR_OFF
#endif
#ifdef SUPPORT_JBM_TRACEFILE
        IF( decodeVoip(st_fx, f_stream, f_synth, jbmTraceFileName, jbmFECoffsetFileName, quietMode ) != 0 )
#else
        IF( decodeVoip(st_fx, f_stream, f_synth, jbmFECoffsetFileName, quietMode ) != 0 )
#endif
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
        BASOP_SATURATE_WARNING_ON
        BASOP_SATURATE_ERROR_ON
#endif
        {
            free( st_fx );
            fclose( f_synth );
@@ -163,38 +167,54 @@ int main(int argc, char *argv[])
            {
                IF ( st_fx->Opt_AMR_WB_fx )
                {
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_OFF
                    BASOP_SATURATE_ERROR_OFF
#endif
                    amr_wb_dec_fx( output,st_fx);
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_ON
                    BASOP_SATURATE_ERROR_ON
#endif
                }
                ELSE
                {
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_OFF
                    BASOP_SATURATE_ERROR_OFF
#endif
                    evs_dec_fx( st_fx, output, FRAMEMODE_NORMAL);
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_ON
                    BASOP_SATURATE_ERROR_ON
#endif
                }
            }
            ELSE
            {
                IF(st_fx->bfi_fx == 0)
                {
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_OFF
                    BASOP_SATURATE_ERROR_OFF
#endif
                    evs_dec_fx( st_fx, output, FRAMEMODE_NORMAL);
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_ON
                    BASOP_SATURATE_ERROR_ON
#endif
                }
                ELSE /* conceal */
                {
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_OFF
                    BASOP_SATURATE_ERROR_OFF
#endif
                    evs_dec_fx( st_fx, output, FRAMEMODE_MISSING);
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
                    BASOP_SATURATE_WARNING_ON
                    BASOP_SATURATE_ERROR_ON
#endif
                }
            }

+8 −0
Original line number Diff line number Diff line
@@ -237,22 +237,30 @@ int main( int argc, char** argv )
        IF ( st_fx->Opt_AMR_WB_fx )
        {
            SUB_WMOPS_INIT("amr_wb_enc");
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
            BASOP_SATURATE_WARNING_OFF
            BASOP_SATURATE_ERROR_OFF
#endif
            amr_wb_enc_fx( st_fx, data, n_samples);
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
            BASOP_SATURATE_WARNING_ON
            BASOP_SATURATE_ERROR_ON
#endif
            END_SUB_WMOPS;
        }
        ELSE
        {
            SUB_WMOPS_INIT("evs_enc");
            /* EVS encoder*/
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
            BASOP_SATURATE_WARNING_OFF
            BASOP_SATURATE_ERROR_OFF
#endif
            evs_enc_fx( st_fx, data, st_fx->mem_hp20_in_fx, n_samples);
#ifdef BASOP_IGNORE_WARNINGS_AND_ERRORS_IN_EVS
            BASOP_SATURATE_WARNING_ON
            BASOP_SATURATE_ERROR_ON
#endif
            END_SUB_WMOPS;
        }
        /* pack indices into serialized payload format */